Stuur e-mailnieuwsbrieven via Command Line With Postman

Als u een nieuwe e-mailnieuwsbrief wilt starten of een betere manier wilt vinden om uw bestaande nieuwsbrief te verzenden, zijn er nogal wat tools voor u. Er zijn MailChimp en vele andere online e-maildiensten, evenals hulpmiddelen ingebouwd in Office-apps zoals Word en Outlook's Afdruk samenvoegen en een vergelijkbare functie met nieuwe invoegtoepassingen voor Google Documenten. Maar als u gewend bent om uw eigen sites te coderen en de terminal te gebruiken, is er een betere optie: de terminal-app Postman.

In deze zelfstudie laat ik u zien hoe u Postman effectief kunt gebruiken om uw e-mailnieuwsbrieven via elke SMTP-server te verzenden: uw eigen server of e-mailaccount of services zoals Amazon SES of Mandrill. We behandelen het maken van een elementaire ontvangerslijst, het maken van een standaard e-mailsjabloon, verschillende opties voor het verzenden van e-mail en uiteindelijk hoe een volledig voorbeeld eruitziet. Met die voorbeelden van bouwstenen onder uw riem, kunt u elke e-mailnieuwsbrief verzenden zoals u dat wilt.

Aan de slag met Postman

Deze tutorial gaat ervan uit dat je comfortabel bent met het installeren van ondersteuning voor de go-programmeertaal in je besturingssysteemomgeving en het instellen van een paar pad-gerelateerde omgevingsvariabelen.

Ik zal in het kort laten zien hoe je dit op je Mac kunt krijgen, maar verwijs eerst naar de documentatie die ik hierboven heb gekoppeld voordat ik verder ga - en merk op dat je het kunt laten werken met vergelijkbare stappen op elke Linux-computer, en met een beetje meer moeite op een Windows-pc.

Installatie op OS X

Een eerste vereiste voor installatie op OS X is homebrew. Lees de documentatie en stel de homebrew in voordat je verder gaat.

Nu dat je alles zelf hebt gemaakt en up-to-date hebt gezet, voer je het brouwselcommando uit om Go te installeren. Ik zal alle uitvoer tonen die je hieronder zou moeten zien.

[chadhs @ mac ~] $ brew install go ==> Downloaden van https://downloads.sf.net/project/machomebrew/Bottles/go-1.2.2.mavericks.bottle.tar.gz ####### ################################################## ############### 100.0% ==> Gieten go-1.2.2.mavericks.bottle.tar.gz ==> Voorbehoud Vanaf 1.2 is een geldige GOPATH vereist om te gebruiken de opdracht 'go get': http://golang.org/doc/code.html#GOPATH 'go vet' en 'go doc' maken nu deel uit van de rep.tools-repo: http://golang.org/ doc / go1.2 # go_tools_godoc Ga naar 'go vetvee' en 'go doc': ga naar code.google.com/p/go.tools/cmd/godoc ga naar code.google.com/p/go.tools / cmd / vet Misschien wilt u de op GOROOT gebaseerde installatielocatie toevoegen aan uw PATH: export PATH = $ PATH: / usr / local / opt / go / libexec / bin Bash-voltooiing is geïnstalleerd op: / usr / local / etc /bash_completion.d zsh completion is geïnstalleerd naar: / usr / local / share / zsh / site-functions ==> Samenvatting 🍺 /usr/local/Cellar/go/1.2.2: 3981 bestanden, 115M

Nu je ondersteuning voor de installatie hebt geïnstalleerd, kun je onze omgeving instellen.

[chadhs @ mac ~] $ mkdir $ HOME / go [chadhs @ mac ~] $ export GOPATH = $ HOME / go [chadhs @ mac ~] $ export PATH = $ PATH: $ GOPATH / bin

Om postbode of andere hulpprogramma's die gaan gebruiken te blijven gebruiken, moeten we deze omgevingsinstellingen blijvend maken. Je moet ze toevoegen aan het rc- of profielbestand van je shell dat wordt geladen bij het starten van een nieuwe terminalsessie. Ik moet me nog steeds fulltime aansluiten bij de rangen van de zsh folks, dus hier is wat ik in mijn .bashrc heb gestopt na PATH is gedefinieerd.

exporteren GOPATH = $ HOME / go export PATH = $ PATH: $ GOPATH / bin

Laten we nu de postbode met go installeren.

[chadhs @ mac ~] $ ga naar github.com/zachlatta/postman

Voer de postman-opdracht uit nadat de installatie is voltooid, om te controleren of u alles goed hebt gedaan. Je zou de volgende output moeten zien.

[chadhs @ mac ~] $ postman Postman is een hulpprogramma voor het verzenden van batch-e-mails. Gebruik: postbode [vlaggen] Vlaggen: -bevestig een lijst van door komma's gescheiden bestanden -c aantal gelijktijdige verzoeken om een ​​-csv-pad naar csv van contactlijst te hebben - debug e-mails afdrukken naar stdout in plaats van het verzenden van -html html-sjabloonpad -paswoord smtp wachtwoord -poort poort van smtp-server -sender e-mail om te verzenden vanaf -server url van smtp-server-onderwerp onderwerp van e-mail-tekst tekstsjabloon pad -gebruikers smtp gebruikersnaam

Een lijst met basisontvangers maken

Het volgende dat je nodig hebt is een lijst met contactpersonen om je e-mail naartoe te sturen. Voor ons voorbeeld moet u een leeg tekstbestand maken met de naam recipients.csv. In dat tekstbestand voer je 'E-mail, naam, type' in op de eerste regel en vervolgens al je contacten volgens dat formaat, één per regel. Zorg ervoor dat u het bestand opslaat als u klaar bent en controleert of alles correct is ingevoerd.

E-mail, naam, type chadhs @ example.com, Chad Stovern, Human info @ techcraft.example.com, Techcraft Workshop, Robot cstovern @ work.example.com, Chad Wokerson, Human

Eenvoudige HTML- en tekst-e-mailsjablonen maken

Nu je lijst met e-mailontvangers hebt gemaakt, laten we twee e-mailsjablonen maken die ons bericht bevatten. Eén sjabloon zal een html-versie zijn en de andere zal een tekstversie zijn om onbewerkte tekst-geeks zoals ik gelukkig te maken. Aarzel niet om af te wijken van het kopiëren en plakken van mijn exacte voorbeelden hieronder. Speel rond met de tekst en waar u de speciale ".Name" en ". Type ingangen opneemt. Deze vermeldingen zijn "variabelen" die de naam en het type uit de lijst met recipients.csv-contactpersonen zullen invullen.

Hier is over hoe uw html-versie eruit zou moeten zien:

Hallo, .Name de .Type!

We willen graag van deze gelegenheid gebruik maken om u te feliciteren met uw aanwezigheid als een van onze top 25 . Type klanten!

Klik hier om uw GRATIS beloning te claimen

oprecht,
Fake Marketing Robot

Hier is ongeveer hoe uw platte tekstversie eruit zou moeten zien:

Hallo, .Name de .Type! We willen graag van deze gelegenheid gebruik maken om u te feliciteren met uw aanwezigheid als een van onze top 25 . Type klanten! Klik hier om uw GRATIS beloning te claimen: http://rewards.example.com/freeoffer Met vriendelijke groet, Fake Marketing Robot

Verzendopties om te overwegen

Nu je alle benodigde stukjes hebt verzameld, is er nog een stuk te overwegen voordat we beginnen met het verzenden van e-mail. Voor tutorials is het prima om je gmail of ander persoonlijk account te gebruiken om e-mail te verzenden. Wanneer je dit in de praktijk in de praktijk brengt, wil je sommige opties wegen.

Zorg er ten minste voor dat u e-mail verzendt van het account dat u mensen wilt laten zien wanneer u uw bericht ontvangt. Ik kan veel minder goed advies bedenken dan een speciaal [email protected] of [email protected] om dergelijke berichten naartoe te sturen. Het andere ding om te overwegen is e-maillimieten opgelegd door uw provider. Er kunnen limieten zijn aan het aantal verschillende externe e-mailadressen waarnaar u kunt verzenden in een bepaalde periode van 24 uur. Als uw lijst 500 of minder is, kunt u waarschijnlijk uw huidige e-mailservice gebruiken om een ​​wekelijkse e-mailcampagne te verzenden. Als je veel meer wilt doen dan postbode gebruiken als een tool, zou ik serieus naar een dienst als sendgrid, Amazon SES of Mandrill kijken om je e-mails te verzenden. Meld u aan voor een account bij een van de respectieve services en gebruik hun serverinstellingen met postbode.

Een paar technische details verzamelen

Het laatste stukje van de puzzel verzamelt wat informatie over het e-mailaccount dat je gaat gebruiken om je e-mail te verzenden. Je moet de volgende items kennen:

  • e-mailadres
  • servernaam (zoals: smtp.example.com)
  • serverpoort (zoals: 587)
  • gebruikersnaam (meestal uw e-mailadres)
  • wachtwoord

U hebt deze waarden handig voordat u doorgaat en e-mail verzendt.

Alles samenvoegen

Laten we nu al ons werk doen en een live test doen. Voer hetzelfde voorbeeld uit dat ik hieronder heb, vervangend in uw eigen informatie in plaats van de mijne. Zorg ervoor dat u een degelijk klinkende onderwerpregel kiest die overeenkomt met de inhoud van uw bericht, maar geen sirenes verzendt in het hoofd van een gebruiker om rechtstreeks naar de verwijderknop te gaan. U zoekt naar de magische woorden "Emailed recipient X of X ..." om te verschijnen, ter bevestiging van uw succes. Als de postbode gewoon voor onbepaalde tijd blijft hangen of als u een andere fout ziet, controleer dan nogmaals uw e-mailserverinstellingen (gebruiker, wachtwoord, server, poort) op eventuele fouten en voer de postbode opnieuw uit.

[chadhs @ mac postman] $ postman -html template.html -text template.txt -csv recipients.csv -sender "Chad Stovern "-onderwerp" Een GRATIS cadeau voor onze klant! "-server smtp.example.com -port 587 -user [email protected] -password" leuk-probeer-niet-mijn-wachtwoord "Emailed ontvanger 3 van 3 ... 

Als alles werkte op de opdrachtregel, wacht dan tot de e-mails binnenkomen. U weet dat u ons voorbeeld correct hebt gevolgd als u dezelfde e-mailinhoud krijgt, maar de velden naam en type zijn op de juiste manier ingevuld met de waarden van uw ontvanger lijst.


Voorbeeld van e-mail gegenereerd via postbode

En nog een voorbeeld, met dezelfde e-mail aangepast voor een andere ontvanger:

Voorbeeld van e-mail gegenereerd via postbode

Conclusie

Met die bouwsteenvoorbeelden onder je riem, zijn de mogelijkheden onbeperkt. U kunt nu tijd besteden aan het bouwen van enkele geweldige herbruikbare sjablonen die u bezit en beheert, buiten elke gehoste marketingservice. Ik raad je ten zeerste aan door te wandelen naar Tuts + webdesign voor enkele geweldige ideeën over hoe je die sjablonen kunt bouwen en verfraaien.

Als u nog vragen heeft over het gebruik van de postbode of vastzit en aan het einde van uw whit; laat het me weten in de reacties hieronder. Zoals altijd, bedankt voor het lezen!