Estudios De Caso
Cómo AdRoll envía y rastrea emails en su aplicación Ruby usando la API de Mailgun
Hola, soy Peter, CEO de userfox. userfox ayuda a las empresas a enviar emails de bienvenida mejores y más eficaces. Hoy en día, la mayoría de las empresas dan la bienvenida a los nuevos clientes con un único email de «¡bienvenido a mi producto!».
El problema con esto es que la gente está ocupada. Olvidas que te registraste en servicios, solo recuerdas los servicios que necesitas o te encantan, y eso generalmente no ocurre en el instante en que te registras.
Así que userfox envía una secuencia de emails: cuando te registras, unos días después, una semana después, más adelante en el mes, y así sucesivamente. La industria llama a esto una secuencia de «goteo». Estos emails contienen consejos y trucos geniales sobre tu producto, anécdotas sobre quiénes son tus clientes y por qué les encantas, y demás.
Hacemos esto de forma muy sencilla. De hecho, es mucho más rápido integrar userfox con tu aplicación que enviar tu único y cutre email de bienvenida. Es obvio, ¿verdad? simplemente pega un único fragmento de javascript en tu pie de página y listo.
Cómo diseñamos la arquitectura de nuestra aplicación
Framework: Ruby on Rails
Automatización de emails e infraestructura: Mailgun
Base de datos: MongoHQ para MongoDB
Pruebas: Citrus
Cómo usamos Mailgun
Somos una empresa de email marketing. No somos una empresa de infraestructura, así que confiamos en Mailgun para hacer cosas que de otro modo tendríamos que crear. Mailgun entrega todos los emails de nuestros clientes. La API de analíticas de Mailgun impulsa las analíticas de userfox. ¿Por qué deberíamos reinventar la rueda con estas cosas, cuando Mailgun hace un trabajo tan genial? Además, ¿has intentado gestionar un servidor de email? Mailgun hace el trabajo de Dios….
Nuestra implementación básica usando Mailgun se ve así. Construimos los datos del mensaje juntos:
data = {:to => email, :from => get_from(trigger), :subject => get_subject(info, email,
trigger), :text => "#{text}", :html => "#{html}", "h:X-Mailgun-Variables" => "{"id": "" + id + ""}"}
Y luego lo ponemos en cola en un trabajo a través de un post REST. Mailgun permite enviar a través de SMTP, pero preferimos la flexibilidad y velocidad que conlleva usar la API. Nuestro post se ve así.
RestClient.post Userfox::Application.config.mailgun_endpoint + '/' + domain + '/messages', data, :Authorization => Userfox::Application.config.mailgun_auth {
|response, request, result|
return response
}
Mailgun es muy potente a la hora de enviar mensajes. Pero también ejecutamos todas nuestras analíticas a través de Mailgun. Cuando se envía un mensaje, queremos saber que se ha entregado y qué ha pasado con él. ¿Se ha abierto, se ha hecho clic en él o ha sido reportado como spam? ¿El usuario se dio de baja (por supuesto, esto nunca pasaría)? Todos estos datos se pueden enviar a tu aplicación con webhooks. Por ejemplo, si quisieras publicar en tu base de datos cuando un usuario hace clic en un enlace, podrías hacer esto:
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
Esto te diría que un usuario ha hecho clic en un email y te daría información sobre quién hizo clic. Puedes hacer esto para clics, aperturas, bajas, quejas por spam, rebotes, fallos y entregas.
Si tienes un negocio que necesita comunicarse con los clientes, prueba con userfox . Hemos hecho el trabajo duro por ti.
«Podemos garantizar un mejor servicio para nuestros profesionales del marketing al usar Mailgun. Ellos cuentan con nosotros y nosotros contamos con Mailgun: y esta relación nos ayuda a mantener la credibilidad ante nuestros clientes».