2017-04-18 3 views
0

Wenn der Sendevorgang der Kampagne gestartet wird, wird AttachRecipientsService mit dem Thema "ATTACH_SENDER_TOPIC_ARN" an SNS publiziert. In AWS/MoonMail gibt es jedoch keinen Abonnenten für diese Aktion. Irgendeine Idee, wie der "ATTACH_SENDER" gehandhabt wird?MoonMail: Kein Teilnehmer an attachSender

Es ist nicht möglich, eine Kampagne ohne diese Informationen zu senden.

Wie bereits erwähnt hier: https://github.com/microapps/MoonMail/wiki/Campaigns

Benutzer-Service erhalten die Nachricht und ein Senderobjekt anhängen, mit die tatsächlichen Absender Anmeldeinformationen, falls er in der Lage, die Kampagne (Pushing die Nachricht an das PrecompileCampaign Thema zu schicken) oder die Nachricht zum Thema Kampagnenfehler löschen.

Aber es gibt keinen Benutzerdienst. Irgendeine Idee?

Antwort

0

Ich ersetzte den Benutzerdienst durch Senden eines SNS-Ereignisses an die "PRECOMPILE_CAMPAIGN_TOPIC_ARN".

Ereignisse \ lib \ attach_recipients_count_service.js

_publishToSns(canonicalMessage) { 
     debug('= AttachRecipientsService._publishToSns', canonicalMessage); 
     const params = { 
      Message: JSON.stringify(canonicalMessage), 
      TopicArn: process.env.PRECOMPILE_CAMPAIGN_TOPIC_ARN 
     }; 
     return this.snsClient.publish(params).promise() 
      .then(() => canonicalMessage); 
     } 

Vergewissern Sie sich, dass die canonicalMessage "Sender" Objekt enthält:

"sender": { 
    "region": "...", 
    "apiKey": "...", 
    "apiSecret": "...", 
    "ratePerSecond": "...", 
    "emailAddress": "...", 
    "fromName": "..." 
    } 
1

Benutzer Service ist nicht Open Source, aber Sie können einen Blick auf die sendTestCampaign Funktion werfen. Wenn Sie es mit einem campaign und einem sender Objekt versehen, liefert es im Grunde sofort eine SNS-Nachricht an das PrecompileCampaign Thema.

+0

Wäre nett, diese Informationen in ihrem Wiki zu machen :) https://github.com/microapps/MoonMail/wiki/Campaigns Vielen Dank für Ihre Hilfe! –

Verwandte Themen