这是一篇由客户(译者注:本文发表于Twilio官方blog)提交文章,作者是谷歌的云平台产品营销经理 Robert Do 。Robert毕业于宾夕法尼亚大学,经济学和信息系统学士学位,并自2009年起任职于谷歌。
Robert使用Google App Engine创建了一个新的、便利的方法,来通过 Twilio SMS发送名片。基于 Twilio API 和可扩展性强的Google App Engine,他创建的应用程序启动、运行非常快。
在这篇文章中,Robert 解释了如何直接通过手机短信发送电子邮件来发送商业名片。
你是否曾经碰到过派完了身上的名片么?我曾经亲身经历过,那时候我在一次研讨会上。我确实很讨厌带着笨重的名片在身上,然后我就会想,创建一个Twilio app并通过SMS发送虚拟名片是一个不错的想法。
几年前,有一个叫做DropCard的程序就是这个用途,但是它已经不存在了。我想,我应该自己构建一个应用,就这样我创建了SwapCard. 这是我第一个使用Twilio的项目,并且我发现它十分容易上手。几天之后我的应用SwapCard 就可以上线并运行了。看一看吧!你可以通过www.swapcard.co.发送你的名片了。
在你的email app中构建你自己的SMS
接下来我将介绍如何通过Python在App Engine 创建一个简单的应用,并通过这个应用输入一个email地址到Twilio号码,让你的App Engine 应用发送一个信息到这个邮件地址。这涉及设置你的Twilio帐号,获取你的Twilio号码并构建一个简单的App Engine应用处理来自Twilio的请求。具体如何操作请看下面:
使用webapp2架设App Engine应用
首先,我们将通过App Engine构建一个应用,当url被请求即发送一个邮件,并且使用TwilioAPI发送一个SMS确认信息。
第一步,在cloud.google.com注册你的应用,并创建它。
App Engine提供一个简单的webapp2框架,我们将利用它。它还提供一个简单的途径使用 Mail API.我建议使用App Engine launcher 来创建你的应用,因为它提供所有必要功能的文件。使用App Engine laucher创建一个新的应用。
在编辑器中打开main.py:
# 导入webapp2框架 import webapp2 from google.appengine.api import mail #当你的应用被访问时,这个handler将会被调用 class SendEmail(webapp2.RequestHandler): def get(self): # 从消息文本中获取接收者 # 接收者就是消息文本的主体 recipient = self.request.get('Body') # 创建邮件和分配它的属性 message = mail.EmailMessage() # 识别发送者或者邮件的发送地址 # 你需要替换为你创建应用的邮件地址 message.sender="Your Name <youremail@gmail.com>" message.subject="This email was sent by Twilio" message.to = recipient message.body = """ This is an email that is being sent to you from the sample app. """ #发送邮件 message.send() app = webapp2.WSGIApplication([ ('/', SendEmail) ], debug=True)
设置Twilio
现在,我们将添加Twilio API代码,发送确认信息给用。首先,你需要下载 twilio-python库. 你需要下载它所依赖的httplib2 和 six. 复制这些库到你的应用目录下。你需要输入Twilio.com的帐号。
然后,需要把库导入到你的应用中,并添加账户的SID和授权标识(auth token),你可以在Twilio账户页面的上方找到这些信息。
from twilio.rest import TwilioRestClient account = "ACXXXXXXXXXXXXXXXXX" token = "YYYYYYYYYYYYYYYYYY" client = TwilioRestClient(account, token)现在我们只需把发送SMS的代码添加到SendEmail handler的底部.
class SendEmail(webapp2.RequestHandler): def get(self): ... message.send() # 发送确认SMS信息 # 获取SMS发送者的号码 sms_sender = self.request.get('From') sms = client.sms.messages.create(to=sms_sender, from_="+16504253645", body="Your email has been sent to %s" % recipient)产品最终将是这样的:
# 导入webapp2框架, Mail API, 和 Twilio Rest Client import webapp2 from google.appengine.api import mail from twilio.rest import TwilioRestClient account = "ACXXXXXXXXXXXXXXXXX" token = "YYYYYYYYYYYYYYYYYY" client = TwilioRestClient(account, token) #当你的应用被反问的时候,将调用这个handler class SendEmail(webapp2.RequestHandler): def get(self): # 从消息文本中获取接收者. # 接收者就是消息文本的主体. recipient = self.request.get('Body') # 创建一个邮件并设置它的属性 message = mail.EmailMessage() # 识别发送者或者邮件的发送地址 # 你需要替换下面的email地址为你创建的应用的邮件地址 message.sender="Your Name <youremail@gmail.com>" message.subject="This email was sent by Twilio" message.to = recipient message.body = """ 这是来自sample app的一封邮件. """ # 发送邮件 message.send() # 发送确认SMS信息 # 获取SMS的发送者号码 sms_sender = self.request.get('From') sms = client.sms.messages.create(to=sms_sender, from_="+5555555555", body="Your email has been sent to %s" % recipient) app = webapp2.WSGIApplication([ ('/', SendEmail) ], debug=True)发布你的应用。现在你可以从github下载项目的原代码: https://github.com/robertdo/twilio-gae
评论删除后,数据将无法恢复
评论(0)