Jak ustawić w polu Environment variables znak zastępujący wszystko ?? (ustawienie przekazywania maili)

Odpowiedz Nowy wątek
2019-05-21 13:00

Rejestracja: 1 rok temu

Ostatnio: 2 tygodnie temu

0

Mam małą funckje w Lambda do przekierowania emaili poprzez SNS oraz pole:

Environment variables, w nim z kolei musze ustawić dwa parametry:
from_address:
to_adress:

chce ustawić kilka adresów z których ma następować przekierowanie ale nie wiem jak to zrobić. Próbowałem dać je po przecinku ale nie działa.
pytanie:

a) Jak mogę dać kilka adresów
b) w jaki sposób mogę ustawić aby w zasadzie z dowolnego adresu przekazywane były maile?
czyl w pole from adres chce coś takiego: [email protected] , niematakiekontaktu150 @mojapierwszadomena.com.pl
oraz chce też w pole from adres : wzasadziecobymtuniewpisałtozadziała@mojapierwszadomena.com.pl

Wiem że mogę iść na łatwizne i stworzyć 100 tych samych funkcji lambda ale chyba nie w tym rzecz. Dzięki za pomoc dla NOOBA

edytowany 2x, ostatnio: efenc, 2019-05-21 13:01

Pozostało 580 znaków

2019-05-21 13:31

Rejestracja: 4 lata temu

Ostatnio: 19 godzin temu

0

Ja nie wiem, używałeś kiedyś maila?! Zdarzyło się kiedyś, żebyś dostał jednego maila od kilku nadawców?! Właśnie to próbujesz zrobić...


Wiedza to potęga

Pozostało 580 znaków

2019-05-21 13:34

Rejestracja: 1 rok temu

Ostatnio: 2 tygodnie temu

0
Haskell napisał(a):

Ja nie wiem, używałeś kiedyś maila?! Zdarzyło się kiedyś, żebyś dostał jednego maila od kilku nadawców?! Właśnie to próbujesz zrobić...

ale proszę pana wiem co próbuje zrobić bo już mi to działa ale dla jednego kontaktu.
Czyli:

email dochodzi na adres [email protected] -> i jest przekierowanie na moj prywatny mail.

i teraz chce dodać do tego pola kolejne adresy z których będzie następowało przekierowanie. Czyli np [email protected] , [email protected]
Co w tym jest niejasnego że musisz od razu atakować ?

Pozostało 580 znaków

2019-05-21 13:37

Rejestracja: 4 lata temu

Ostatnio: 19 godzin temu

0

Umieść adresy w tablicy, a następnie iterując po kolejnych elementach uruchamiaj wielokrotnie funkcję wykonującą przekierowanie.


Wiedza to potęga

Pozostało 580 znaków

2019-05-21 13:42

Rejestracja: 1 rok temu

Ostatnio: 2 tygodnie temu

0
Haskell napisał(a):

Umieść adresy w tablicy, a następnie iterując po kolejnych elementach uruchamiaj wielokrotnie funkcję wykonującą przekierowanie.

możesz podać gotowca jak mam to zrobić na tym konkretnie przykładzie ? Wybacz ale dopiero się uczę:

var forwardFrom = process.env.from_address;
var forwardTo = process.env.to_address;  
exports.handler = function(event, context) {
    var msgInfo = JSON.parse(event.Records[0].Sns.Message);

    // don't process spam messages
    if (msgInfo.receipt.spamVerdict.status === 'FAIL' || msgInfo.receipt.virusVerdict.status === 'FAIL') {
        console.log('Message is spam or contains virus, ignoring.');
        context.succeed();
    }

    var email = msgInfo.content, headers = "From: "+forwardFrom+"\r\n";
    headers += "Reply-To: "+msgInfo.mail.commonHeaders.from[0]+"\r\n";
    headers += "X-Original-To: "+msgInfo.mail.commonHeaders.to[0]+"\r\n";
    headers += "To: "+forwardTo+"\r\n";
    headers += "Subject: Fwd: "+msgInfo.mail.commonHeaders.subject+"\r\n";

    if (email) {
        var res;
        res = email.match(/Content-Type:.+\s*boundary.*/);
        if (res) {
            headers += res[0]+"\r\n";
        }
        else {
            res = email.match(/^Content-Type:(.*)/m);
            if (res) {
                headers += res[0]+"\r\n";
            }
        }

        res = email.match(/^Content-Transfer-Encoding:(.*)/m);
        if (res) {
            headers += res[0]+"\r\n";
        }

        res = email.match(/^MIME-Version:(.*)/m);
        if (res) {
            headers += res[0]+"\r\n";
        }

        var splitEmail = email.split("\r\n\r\n");
        splitEmail.shift();

        email = headers+"\r\n"+splitEmail.join("\r\n\r\n");
    }
    else {
        email = headers+"\r\n"+"Empty email";
    }

    new AWS.SES().sendRawEmail({
        RawMessage: { Data: email }
    }, function(err, data) {
        if (err) context.fail(err);
        else {
            console.log('Sent with MessageId: ' + data.MessageId);
            context.succeed();
        }
    });
}

Pozostało 580 znaków

2019-05-21 13:49

Rejestracja: 4 lata temu

Ostatnio: 19 godzin temu

1
exports.handler = function(event, context) {
var adresy = [adres1, adres2, adres3];
adresy.forEach(adres => przekieruj(event, context, adres))
}

funkcję przekieruj robisz sobie pod spodem, a jako ciało funkcji dajesz to co masz do tej pory, pamiętając żeby zmienić listę argumentów:

var przekieruj = function(event, context, forwardFrom) {
}

Wiedza to potęga

Pozostało 580 znaków

2019-05-21 20:11

Rejestracja: 1 rok temu

Ostatnio: 2 tygodnie temu

0
Haskell napisał(a):
exports.handler = function(event, context) {
var adresy = [adres1, adres2, adres3];
adresy.forEach(adres => przekieruj(event, context, adres))
}

funkcję przekieruj robisz sobie pod spodem, a jako ciało funkcji dajesz to co masz do tej pory, pamiętając żeby zmienić listę argumentów:

var przekieruj = function(event, context, forwardFrom) {
}

Dzięki za pomoc ale chyba muszę sie dokształcić bo coś mi to nie działa ...

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 0, botów: 1

Robot: CCBot