You've got mail! - Transactional E-mail @ DrupalJam 2014 - Vincent van Scherpenseel

Download You've got mail!  - Transactional E-mail @ DrupalJam 2014 - Vincent van Scherpenseel

Post on 01-Nov-2014

394 views

Category:

Technology

1 download

Embed Size (px)

DESCRIPTION

Ondanks de sociale revolutie is e-mail verre van dood. Dankzij services als Mandrill, SendGrid en MailGun stuur je eenvoudig transactional e-mail vanuit je Drupal project, zonder dat je zelf een e-mail server hoeft te onderhouden. Maar hoe zit een succesvolle transactional e-mail strategie in elkaar, waar moet je op letten en hoe zet je dit medium het effectiefst in? In 45 minuten leer je alles over de mogelijkheden van transactional e-mail aan de hand van praktijkvoorbeelden en technische best-practices.

TRANSCRIPT

  • 1. youve got mail! drupaljam 2014 vincent van scherpenseel
  • 2. introductie Vincent van Scherpenseel Experience Designer Transactional e-mail Individuele e-mail uit je app.
  • 3. voorbeelden
  • 4. waarom niet zelf versturen? 1. Deliverability 2. Maintenance 3. Actionable insights + 4. Kosten
  • 5. services
  • 6. services 1. Goede deliverability 2. Developers-friendly 3. Geen kosten tot 12.000 e-mails
  • 7. programma 1. Templating Waarom een goede template, en hoe? 2. Versturen Hoe verstuur je de e-mail? 3. Meten en optimaliseren Hoe optimaliseer je je campagnes?
  • 8. templating
  • 9. versus
  • 10. round 1: e-mail templates
  • 11. round 2: website templates
  • 12. waarom een mooie template? 1. Transactional e-mail is vaak het laatste contact. 2. In geval van bevestigingen worden e-mails meerdere malen bekeken. 3. Waarom veel geld en tijd stoppen in een professionele website, maar niet in een e-mail uitstraling? 4. Branding opportunity.
  • 13. templating best-practices 90s revival! Gebruik maximaal 600px breedte. Gebruik standaard fonts (Arial, Georgia, Verdana, ...). Afbeeldingen worden standaard niet geladen. Beweging alleen mogelijk middels GIF animaties. Check wat mogelijk is per e-mail client. CSS ondersteuning: http://dotb.lu/emailcss.
  • 14. responsive web design Foto: Brad Frost
  • 15. responsive web design Ondersteuning van media queries is zeer redelijk! Google Mail client is de grootste uitzondering. Handig overzicht: www.campaignmonitor.com/guides/mobile/
  • 16. template testing
  • 17. template testing Vanaf $79 per maand. www.litmus.com Spam lter testing vanaf $149 per maand. Vanaf $45 per maand. www.emailonacid.com Spamlter testing standaard inbregrepen. Mozify vanaf $70 per maand.
  • 18. schema.org mark-up Follow-up acties direct uitvoeren in de inbox. Op basis van open standaard (schema.org). Eenvoudig te implementeren, op basis van JSON-LD (json-ld.org).
  • 19. schema.org mark-up
  • 20. schema.org mark-up Review Actions Initieer het achterlaten van reviews direct in Google Mail (of andere mail clients). http://dotb.lu/review RSVP Actions Direct afspraken bevestigen vanuit de inbox view. Let op: API preview, nog niet ondesteund. http://dotb.lu/rsvp
  • 21. schema.org mark-up Vluchtinformatie (http://dotb.lu/ight) Toon het reisschema direct bovenin de e-mail view. Mogelijkheid voor ontvanger om direct in te checken. Houd de ontvanger op dezelfde plek op de hoogte van wijzigingen (of zelfs annuleringen).
  • 22. truukje :)
  • 23. truukje :) ?
  • 24. versturen
  • 25. e-mail versturen
  • 26. versturen via smtp Host Port SMTP Username SMTP Password smtp.mandrillapp.com 587 drupaljam DRUPALJAM-API-KEY Eenvoudig te gebruiken en handig voor: Het versturen van systeem e-mails. Wanneer API integratie om wat voor reden dan ook niet mogelijk is. E-mail versturen via Mandrill vanuit je e-mail client.
  • 27. versturen via api call { "key": "DRUPALJAM-API-KEY", "template_name": "drupaljam", "template_content": [ { "name": "name", "content": "Bert Boerland" } ], "message": { "subject": "Bedankt voor je registratie!", "from_email": "info@drupaljam.nl", "from_name": "DrupalJam", "to": [ { "email": "bert@example.com", "name": "Bert Boerland", "type": "to" } ], "track_opens": true, "track_clicks": true, [..]
  • 28. [..] ! "attachments": [ { "type": "application/pdf", "name": "contract_007.pdf", "content": base64_encode($pdfContents) } ], ! [..] attachment bijvoegen
  • 29. queue e-mail sending Het uitvoeren van een synchrone API-call vertraagt de gebruikerservaring. Maak gebruik van de async-ag Maar houd ook rekening met mislukte API calls. Gebruik daarom een queue. Poor mans solution: crontab + SQL database. Cool mans solution: Gearman (gearman.org).
  • 30. queue e-mail sending
  • 31. api wrappers Generic PHP wrapper github.com/dotblue/Mandrill Drupal module drupal.org/project/mandrill
  • 32. reputatie Verzend quota } Reputatie score} Deliverability ratio}
  • 33. sender policy framework Middels SPF geef je aan welke hosts e-mail mogen versturen voor een speciek domein. local:~ vincent$ host -t txt saleschamp.nl ! saleschamp.nl descriptive text "v=spf1 a include:_spf.google.com include:spf.mandrillapp.com ~all" ! ! local:~ vincent$ host -t txt spf.mandrillapp.com ! spf.mandrillapp.com descriptive text "v=spf1 ip4:198.2.128.0/24 ip4:198.2.132.0/22 ip4:205.201.131.128/25 ip4:205.201.134.128/25 ip4:205.201.136.0/23 ip4:205.201.139.0/24 ?all" http://en.wikipedia.org/wiki/Sender_Policy_Framework
  • 34. domainkeys identied mail Middels DKIM bewijs je dat een bericht bij een domeinnaam hoort. Dankzij encryptie kan je bewijzen dat een bericht in- transit niet aangepast is. local:~ vincent$ host -t txt mandrill._domainkey.saleschamp.nl ! mandrill._domainkey.saleschamp.nl descriptive text "k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCrLHiExVd55zd/IQ/J/mRwSRMAocV/ hMB3jXwaHH36d9NaVynQFYV8NaWi69c1veUtRzGt7yAioXqLj7Z4TeEUoOLgrKsn8YnckGs9 i3B3tVFB+Ch/4mPhXWiNfNdynHWBcPcbJ8kjEQ2U8y78dHZj1YeRXXVvWob2OaKynO8/ lQIDAQAB;" http://en.wikipedia.org/wiki/DomainKeys_Identied_Mail
  • 35. sub-accounts Sub-accounts hebben een eigen reputatie. Handig voor: Testomgevingen Systeem e-mails Multi-tenant situaties [..] ! "subaccount": "development-env", ! [..]
  • 36. meten en optimaliseren
  • 37. kpis 1. Deliverability (bounces & rejects) 2.Opens 3.Clicks 4.Conversies
  • 38. een aantal voorbeelden 1. Registratie bevestiging? 2.Password reset? 3.Order bevestiging? 4.Back-in-stock noticatie? 5.Favourited-product campagne? 6.Campaign mail
  • 39. schets je e-mail ow
  • 40. a/b testing E-mail is net zo belangrijk als je website om te A/B testen. [..] ! "tags": [ "password-reset" ], ! [..]
  • 41. a/b testing
  • 42. google analytics integratie [..] ! "google_analytics_domains": [ "drupaljam.nl" ], "google_analytics_campaign": "registration_confirmation", ! [..] Belangrijk: congureer je doelen!
  • 43. veel conversies = goed bezig?
  • 44. gebruik alle data die je hebt
  • 45. gebruik alle data die je hebt
  • 46. webhooks