Études de cas
Comment AdRoll envoie & suit les emails dans son application Ruby à l’aide de l’API de Mailgun
Bonjour, je suis Peter, PDG d’userfox. userfox aide les entreprises à envoyer des emails de bienvenue meilleurs et plus efficaces. Aujourd’hui, la plupart des entreprises accueillent leurs nouveaux clients avec un unique email du type « bienvenue sur mon produit ! ».
Le problème avec cela, c’est que les gens sont occupés. Vous oubliez que vous vous êtes inscrit à des services, vous ne vous souvenez que des services dont vous avez besoin ou que vous aimez, et cela ne se produit généralement pas à la seconde où vous vous inscrivez.
userfox envoie donc une séquence d’emails : lors de votre inscription, quelques jours plus tard, une semaine plus tard, plus tard dans le mois, etc. L’industrie appelle cela une séquence « goutte-à-goutte ». Ces emails contiennent des trucs et astuces sympas sur votre produit, des anecdotes sur l’identité de vos clients et pourquoi ils vous aiment, et ainsi de suite.
Nous faisons cela très simplement. En fait, il est beaucoup plus rapide d’intégrer userfox à votre application que d’envoyer votre unique email de bienvenue médiocre. C’est une évidence, n’est-ce pas ? collez simplement un extrait de javascript dans votre pied de page – et voilà.
Framework : Ruby on Rails
Automatisation des emails & infrastructure : Mailgun
Base de données : MongoHQ pour MongoDB
Tests : Citrus
Comment nous utilisons Mailgun
Nous sommes une entreprise d’email marketing. Nous ne sommes pas une entreprise d’infrastructure, c’est pourquoi nous comptons sur Mailgun pour faire des choses que nous aurions dû construire autrement. Mailgun délivre tous les emails de nos clients. L’API de statistiques de Mailgun alimente les statistiques d’userfox. Pourquoi réinventer la roue avec ces éléments, alors que Mailgun fait un travail si génial ? D’ailleurs, avez-vous déjà essayé de gérer un serveur d’email ? Mailgun fait un travail divin….
Notre implémentation de base utilisant Mailgun ressemble à ceci. Nous construisons les données du message ensemble :
data = {:to => email, :from => get_from(trigger), :subject => get_subject(info, email,
trigger), :text => "#{text}", :html => "#{html}", "h:X-Mailgun-Variables" => "{"id": "" + id + ""}"}
Et ensuite nous le mettons en file d’attente dans une tâche via une requête POST REST. Mailgun permet l’envoi via SMTP mais nous préférons la flexibilité et la rapidité qui accompagnent l’utilisation de l’API. Notre requête POST ressemble à ceci.
RestClient.post Userfox::Application.config.mailgun_endpoint + '/' + domain + '/messages', data, :Authorization => Userfox::Application.config.mailgun_auth {
|response, request, result|
return response
}
Mailgun est vraiment puissant lorsqu’il s’agit d’envoyer des messages. Mais nous gérons également toutes nos statistiques à partir de Mailgun. Lorsqu’un message est envoyé, nous voulons savoir s’il a été livré et ce qu’il est devenu. A-t-il été ouvert, cliqué, signalé comme spam ? L’utilisateur a-t-il choisi de se désinscrire (bien sûr, cela n’arriverait jamais) ? Toutes ces données peuvent être envoyées à votre application avec des webhooks. Par exemple, si vous souhaitiez publier dans votre base de données lorsqu’un utilisateur clique sur un lien, vous pourriez procéder ainsi :
AdRoll Code 2require 'openssl'
def verify(api_key, token, timestamp, signature)
return signature == OpenSSL::HMAC.hexdigest(
OpenSSL::Digest::Digest.new('sha256'),
api_key,
'%s%s' % [timestamp, token])
end class PostsController "Name", :title => "Title",
:content => "#{user} clicked on #{link}").save
end
end
render :text => "OK"
end
end
Cela vous indiquerait qu’un utilisateur a cliqué sur un email et vous donnerait des informations sur l’identité de la personne qui a cliqué. Vous pouvez faire cela pour les clics, les ouvertures, les désinscriptions, les plaintes pour spam, les rebonds, les échecs et les livraisons.
Si vous avez une entreprise qui doit communiquer avec ses clients, essayez userfox . Nous avons fait le plus dur pour vous.
« L’utilisation de Mailgun nous permet d’assurer un meilleur service à nos marketeurs. Ils comptent sur nous, et nous comptons sur Mailgun : et cette relation nous aide à maintenir notre crédibilité auprès de nos clients. »
Comment nous avons conçu notre application