在Swift中使用Twilio发送短信

Knu*_*way 8 twilio ios swift

我尝试使用Twilio作为服务提供商,但他们没有我理解的Swift示例.

我的任务是使用Swil的Twilio API向一个号码发送短信.

我有一个Twilio.com帐户 - 那个正在运行.但是我如何以简单的方式在Swift代码中执行此操作.

Twilio确实提供了一个库 - 但这适用于C#而不是Swift(并且使用桥接头看起来太复杂了!)

这是C#示例,我需要一个简单的Swift示例.

// Download the twilio-csharp library from twilio.com/docs/csharp/install
using System;
using Twilio;
class Example 
{
  static void Main(string[] args) 
  {
    // Find your Account Sid and Auth Token at twilio.com/user/account
    string AccountSid = "AC5ef8732a3c49700934481addd5ce1659";
    string AuthToken = "{{ auth_token }}";
    var twilio = new TwilioRestClient(AccountSid, AuthToken);


    var message = twilio.SendMessage("+14158141829", "+15558675309", "Jenny please?! I love you <3", new string[] {"http://www.example.com/hearts.png"});

    Console.WriteLine(message.Sid);
  }
}
Run Code Online (Sandbox Code Playgroud)

Dev*_*der 9

Twilio福音传教士在这里.

要从Swift发送文本消息,您只需直接向Twilios REST API发出请求即可.也就是说,我建议从iOS应用程序(或任何其他客户端应用程序)执行此操作,因为它要求您在应用程序中嵌入Twilio帐户凭据,这很危险.我建议从服务器端应用程序发送SMS.

如果您确实想从您的应用程序发送消息,我知道有几个Swift库可以简化HTTP请求:

  • Alamofire - 来自AFNetworking的创建者Mattt Thompson - 用于此处的示例:https://www.twilio.com/blog/2016/11/how-to-send-an-sms-from-ios-in-swift . HTML
  • SwiftRequest - 来自Twilio的Ricky Robinett

要使用SwiftRequest发出请求,它看起来像这样:

var swiftRequest = SwiftRequest();

var data = [
    "To" : "+15555555555",
    "From" : "+15555556666",
    "Body" : "Hello World"
];

swiftRequest.post("https://api.twilio.com/2010-04-01/Accounts/[YOUR_ACCOUNT_SID]/Messages", 
    auth: ["username" : "[YOUR_ACCOUNT_SID]", "password" : "YOUR_AUTH_TOKEN"]
    data: data, 
    callback: {err, response, body in
        if err == nil {
            println("Success: \(response)")
        } else {
            println("Error: \(err)")
        }
});
Run Code Online (Sandbox Code Playgroud)

希望有所帮助.


swi*_*Boy 5

最近我经历了Twilio文档和很少的SO帖子.

您可以使用Swift 2.0中的以下代码片段发送短信

func sendSMS()
    {

        let twilioSID = "your Sender ID here"
        let twilioSecret = "your token id here"

        //Note replace + = %2B , for To and From phone number
        let fromNumber = "%2B14806794445"// actual number is +14803606445
        let toNumber = "%2B919152346132"// actual number is +919152346132
        let message = "Your verification code is 2212 for signup with <app name here> "

        // Build the request
        let request = NSMutableURLRequest(URL: NSURL(string:"https://\(twilioSID):\(twilioSecret)@api.twilio.com/2010-04-01/Accounts/\(twilioSID)/SMS/Messages")!)
        request.HTTPMethod = "POST"
        request.HTTPBody = "From=\(fromNumber)&To=\(toNumber)&Body=\(message)".dataUsingEncoding(NSUTF8StringEncoding)

        // Build the completion block and send the request
        NSURLSession.sharedSession().dataTaskWithRequest(request, completionHandler: { (data, response, error) in
            print("Finished")
            if let data = data, responseDetails = NSString(data: data, encoding: NSUTF8StringEncoding) {
                // Success
                print("Response: \(responseDetails)")
            } else {
                // Failure
                print("Error: \(error)")
            }
        }).resume()
}
Run Code Online (Sandbox Code Playgroud)

如果一切顺利..你应该收到这样的消息..

在此输入图像描述