从ASP.NET网站发送SMS

时间:2011-03-29 04:31:07

标签: c# asp.net sms

有没有办法使用Web API从ASP.NET网站发送短信?我知道Web服务,但不知道如何从我的应用程序中调用这些服务。

3 个答案:

答案 0 :(得分:33)

Web服务是最好的方法。我在一个网站上使用Twilio,设置和工作非常容易。可伸缩性不是问题,您不仅要花费成本而不必花费开发人员时间来构建自己的解决方案。

Twilio:http://www.twilio.com/

适用于.NET的Twilio库:https://www.twilio.com/docs/csharp/install

在twilio-csharp项目中,以下是如何发送短信的示例(我从twilio-csharp中获取了这个。只是重新发布它以显示它是多么容易)

static void Main(string[] args)
{
    TwilioRestClient client;

    // ACCOUNT_SID and ACCOUNT_TOKEN are from your Twilio account
    client = new TwilioRestClient(ACCOUNT_SID, ACCOUNT_TOKEN);

    var result = client.SendMessage(CALLER_ID, "PHONE NUMBER TO SEND TO", "The answer is 42");
    if (result.RestException != null) {
        Debug.Writeline(result.RestException.Message);
    }    
}

答案 1 :(得分:11)

我觉得我有点迟到告诉你,你很幸运,但是对于那些后来发现这篇文章的人,我创建了一个视频,展示了如何使用你的Twilio帐户发送短信和asp.net:

i walk you through sending a text message using twilio and asp.net c#

如果您没有10分钟的时间观看视频,请输入以下代码:

using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using System.Configuration;
using Twilio;

namespace TwilioSMSHowTo
{
    public partial class _default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }

        protected void SendMessage_OnClick(object sender, EventArgs e)
        {
            string ACCOUNT_SID = ConfigurationManager.AppSettings["ACCOUNT_SID"];
            string AUTH_TOKEN = ConfigurationManager.AppSettings["AUTH_TOKEN"];

            TwilioRestClient client = new TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN);

            client.SendMessage("(502) 276-8990", ToNumber.Text, Message.Text);
        }
    }
}

要使此代码正常工作,您需要获取Twilio API并需要使用您的帐户ID和身份验证令牌替换我的configurationmanager.appsettings内容。

快乐的编码!

答案 2 :(得分:7)

如果您更喜欢与其他短信服务提供商Way2Sms.com合作,而不是使用Twilio API,我认为以下代码可以帮助您:

public void sendsms(object sender, EventArgs e)
{

    if (Page.IsValid)
    {
        HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create("http://ubaid.tk/sms/sms.aspx?uid=" + yourmobilenumber + "&pwd=" + yourpassword + "&msg=" + body.Text + "&phone=" + recipientNo.Text + "&provider=way2sms");
        HttpWebResponse myResp = (HttpWebResponse)myReq.GetResponse();
        System.IO.StreamReader respStreamReader = new System.IO.StreamReader(myResp.GetResponseStream());
        string responseString = respStreamReader.ReadToEnd();
        respStreamReader.Close();
        myResp.Close();

    }
}