Skicka e-post nyhetsbrev via kommandorad med postman

Om du vill starta ett nytt e-nyhetsbrev - eller hitta ett bättre sätt att skicka ut ditt befintliga nyhetsbrev - finns det en hel del verktyg för dig. Det finns MailChimp och många andra online-e-posttjänster, samt verktyg som är inbyggda i Office-appar som Word och Outlook Mail Merge och en liknande funktion med nya tillägg till Google Docs. Men om du är van att koda dina egna webbplatser och använda terminalen finns det ett bättre alternativ: terminalappen Postman.

I denna handledning visar jag dig hur du effektivt använder Postman för att skicka dina nyhetsbrev via e-post via någon SMTP-server: ditt eget server- eller e-postkonto eller tjänster som Amazon SES eller Mandrill. Vi täcker om att skapa en grundläggande mottagarlista, skapa en grundläggande e-postmall, olika sändningsalternativ för e-post och till sist hur ett fullständigt exempel ser ut. Med dessa byggstensexemplar under ditt bälte kommer du att kunna skicka ett e-postbrev så som du vill.

Komma igång med postman

Denna handledning kommer att anta att du är bekväm att installera stöd för go-programmeringsspråket i operativsystemets miljö och ställa in ett antal vägarelaterade miljövariabler.

Jag ska kort visa hur du får det här på din Mac, men hänvisa till dokumentationen som jag länkade till ovan innan du fortsätter - och notera att du kan få det att gå igång med liknande steg på en Linux-dator och med lite mer ansträngning på en Windows-dator.

Installation på OS X

En förutsättning för installation på OS X är homebrew. Var god läs dokumentationen och ställ in homebrew innan du går framåt.

Nu när du har homebrew all installation och uppdaterad, kör bryggkommandot för att installera go. Jag ska visa all produktion du ska se nedan.

[chadhs @ mac ~] $ brew install go ==> Hämtar https://downloads.sf.net/project/machomebrew/Bottles/go-1.2.2.mavericks.bottle.tar.gz ####### ################################################## ###### 100.0% ==> Hällning go-1.2.2.mavericks.bottle.tar.gz ==> Grunder När det gäller go 1.2 krävs en giltig GOPATH att använda kommandot 'go get': http://golang.org/doc/code.html#GOPATH 'go vet' och 'go doc' är nu en del av go.tools sub repo: http://golang.org/ doc / go1.2 # go_tools_godoc För att få "gå vet" och "gå doc" kör: gå till code.google.com/p/go.tools/cmd/godoc gå till code.google.com/p/go.tools / cmd / vet Du kanske vill lägga till den GOROOT-baserade installationsplatsen till din PATH: export PATH = $ PATH: / usr / local / opt / go / libexec / bin Bash-slutförandet har installerats till: / usr / local / etc /bash_completion.d zsh completion har installerats till: / usr / local / share / zsh / site-functions ==> Sammanfattning 🍺 /usr/local/Cellar/go/1.2.2: 3981 filer, 115M

Nu när du har gått installerad, låt oss konfigurera vår miljö.

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

För att fortsätta använda postman eller andra verktyg som kräver att gå, måste vi göra dessa miljöinställningar ihållande. Du måste lägga till dem i ditt skals rc- eller profilfil som laddas när du startar en ny terminalsession. Jag har ännu inte gått med i zshs folkens heltid, så här är vad jag lägger in i min .bashrc efter PATH definieras.

exportera GOPATH = $ HOME / gå export PATH = $ PATH: $ GOPATH / bin

Nu ska vi installera brevbärare med go.

[chadhs @ mac ~] $ gå till github.com/zachlatta/postman

Kör postman kommandot efter installationen, för att verifiera att du har gjort allt korrekt. Du bör se följande utmatning.

[chadhs @ mac ~] $ postman Postman är ett verktyg för att skicka batch-mail. Användning: postman [flaggor] Flaggor: -attach bifoga en lista med kommaseparerade filer-ett antal samtidiga förfrågningar om att ha -csv-sökväg till csv-kontaktlistan -debug skriva ut e-post till stdout istället för att skicka -html html-mallväg -password smtp lösenord -port port på smtp-server-sändare email för att skicka från -server url av smtp-server -subjekt ämne av e-post-text text mall väg-användarnamn smtp användarnamn

Skapa en grundläggande mottagarlista

Nästa sak du behöver är en lista över kontakter för att skicka din e-post till. För vårt exempel behöver du skapa en tom textfil med namnet recipients.csv. I den textfilen anger du "E-post, Namn, Typ" på första raden och sedan alla dina kontakter som följer det här formatet, en per rad. Var noga med att spara filen när du är klar med att kontrollera att allt har skrivits in korrekt.

E-post, Namn, Typ chadhs @ example.com, Chad Stovern, Human info @ techcraft.example.com, Techcraft Workshop, Robot cstovern @ work.example.com, Chad Wokerson, Human

Skapa grundläggande html och text e-postmallar

Nu när du har skapat din lista med e-postmottagare, låt oss skapa två e-postmallar som håller vårt meddelande. En mall kommer att vara en html-version och den andra kommer att vara en textversion för att göra vanliga textnekter som jag är lycklig. Känn dig fri att avvika från att kopiera och klistra in exakta exempel nedan. Spela runt med formuleringen och där du inkluderar de särskilda ".Name" och ".Type poster. Dessa poster är "variabler" som fyller i namn och typ från kontaktlistan recipients.csv.

Här handlar det om vad din HTML-version ska se ut:

Hej, .Name .Type!

Vi skulle gärna ta tillfället i akt att gratulera dig till att vara med som en av våra bästa 25 . Type kunder!

Klicka här för att hävda din GRATIS belöning

vänliga hälsningar,
Fake Marketing Robot

Här är ungefär vad din textversion ska se ut:

Hej, .Name .Type! Vi skulle gärna ta tillfället i akt att gratulera dig till att vara med som en av våra bästa 25 . Type kunder! Klicka här för att hävda din GRATIS belöning: http://rewards.example.com/freeoffer Med vänliga hälsningar, Fake Marketing Robot

Sändningsalternativ att överväga

Nu när du har alla nödvändiga bitar monterade, finns det ytterligare en bit att tänka på innan vi börjar skicka mail. För handledning är det bara bra att använda din gmail eller ett annat personligt konto för att skicka mail. När du sätter detta i praktiken "i den verkliga världen" vill du väga vissa alternativ.

Se till att du skickar mail från det konto du vill att folk ska se när du mottar ditt meddelande. Jag skulle kunna tänka mig mycket sämre råd än att ha en särskild [email protected] eller [email protected] för att skicka sådana meddelanden från. Den andra sak att tänka på är e-postgränser som du har infört. Det kan finnas gränser för hur många olika externa e-postadresser du kan skicka till under en viss 24-timmarsperiod. Om din lista är 500 eller mindre kommer du sannolikt att vara bra med din nuvarande e-posttjänst för att skicka ut en vecka e-postkampanj. Om du vill göra mycket mer än det här med postman som verktyg, skulle jag seriöst titta på en tjänst som Sendgrid, Amazon SES eller Mandrill för att skicka dina e-postmeddelanden. Bara registrera dig för ett konto hos någon av de respektive tjänsterna och använd deras serverinställningar med postman.

Samlar några få tekniska detaljer

Den sista delen av pusslet samlar in information om det postkonto du ska använda för att skicka ditt mail. Du måste känna till följande saker:

  • e-postadress
  • servernamn (till exempel: smtp.example.com)
  • serverport (till exempel: 587)
  • användarnamn (vanligtvis din e-postadress)
  • Lösenord

Du behöver dessa värden praktiskt innan du går vidare och skickar e-post.

Få alltid att falla på plats

Låt oss nu ta allt vårt arbete och göra ett levande test. Kör samma exempel som jag har nedan och ersätt med din egen information i stället för mig. Var noga med att välja en solid lydig ämnesrad som matchar innehållet i ditt meddelande, men skickar inte bort sirener i användarens huvud för att nå rakt på raderingsknappen. Du letar efter de magiska orden "Emailed recipient X of X ..." för att visas, bekräftar din framgång. Om brevbäraren bara hänger på obestämd tid eller om du ser ett annat fel, se till att kontrollera dina e-postserverinställningar (användarnamn, lösenord, server, port) igen för eventuella fel och kör sedan postman igen.

[chadhs @ mac postman] $ postman -html template.html -text template.txt -csv recipients.csv -sender "Chad Stovern "-subject" En gratis present för att vara vår kund! "-server smtp.example.com -port 587-användaren [email protected] -password" nice-try-not-my-password "Emailed mottagare 3 av 3 ... 

Om allt fungerade på kommandoraden, vänta tills e-postmeddelandena kommer in. Du vet att du följde vårt exempel korrekt om du får samma e-postinnehåll, men namnen och typfälten fylldes på korrekt med värdena från din mottagare lista.


Exempel e-post genererat via postman

Och ett annat exempel, med samma e-post anpassad för en annan mottagare:

Exempel e-post genererat via postman

Slutsats

Med dessa byggstensexemplar under ditt bälte är möjligheterna obegränsade. Du kan nu spendera tid att bygga några stora återanvändbara mallar som du äger och kontrollerar, utanför någon värdad marknadsföringstjänst. Jag rekommenderar starkt att du går över till Tuts + webbdesign för några bra idéer om hur man börjar bygga och försköna dessa mallar.

Om du har några ytterligare frågor om hur du använder postman eller är fast och vid din slut, låt mig veta i kommentarerna nedan. Som alltid tack för att du läste!