Twilio API 实现短信服务的详细指南

最近,发现TwilioAPI的使用越来越流行。无论是SMS/MMS API还是VOICE API,都在频繁地使用它们。Twilio不断推出各种API的变体。本文将尝试以简单的方式介绍Twilio的SMS API。

前提条件

使用的是.NETFramework 4.5,猜电脑上应该也有。当然,还有MVC,因为它是编写代码的最简单方法。现在,假设已经在Visual Studio中创建了一个新的项目。那么,就直接进入正题吧。

安装Twilio

首先,需要从Nuget包管理器中安装Twilio。在Visual Studio菜单中,选择“项目”->“管理Nuget包”。Nuget包管理器窗口将会打开。在该窗口中搜索Twilio rest helper库,然后点击安装。

使用Twilio Rest Helper库

要访问Twilio rest helper库,请使用以下命名空间:

C# using Twilio;

发送短信的控制器函数

以下是用来发送短信的控制器函数:

[HttpPost] public JsonResult SendSMS( string message, string custid) { string AccountSid = "Your Twilio Account SID"; string AuthToken = "Your Twilio Authentication Token"; var twilio = new TwilioRestClient(AccountSid, AuthToken); var sms = twilio.SendMessage( "From Number", "To Number", message); var status = sms.Status; return Json(new { Status = status }); }

这是一个简单的控制器,但当获取状态时,它总是显示"queued",所以它不一定会被发送。它可能稍后也会失败。当开始使用Twilio时,在这里遇到了困难。所以需要做的是将MessageSID和状态一起保存在数据库中。可以使用以下代码获取SID:

var MessageSID = sms.Sid;

获取短信状态

现在,如果想自动获取消息的状态,将需要运行某种后端服务或定时任务,或者也可以在任何事件上获取它。以下是执行此操作的代码:

var Status = twilio.GetSMSMessage(MessageSID);

传递SMS消息的MessageSID,将获得此消息的状态。

接收传入的短信消息

为了从Twilio接收短信,需要在控制器中创建一个动作方法。假设有一个HomeController。在控制器中创建以下动作:

public ActionResult IncomingMessage( string From, string To, string Body) { // 可以使用这些参数做任何想做的事情。可以将它们保存在数据库中,可以向用户发送自动响应等。 }

现在将这个URL传递到专用号码消息回调框中(选择“配置”与“Webhooks/TwiML”):

http://yourdomain.com/Home/IncomingMessage
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485