【发布时间】:2011-01-12 19:18:48
【问题描述】:
我正在使用 C#.NET 在 ASP.NET 中构建一个 Web 应用程序,它使用 clickatell 发送 SMS。
我试图通过创建一个名为 ClickatellCallBack.aspx 的回调页面从 clickatell 接收返回的状态,但未成功这是该页面的代码隐藏:
公共部分类 ClickatellCallBack : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
// 从 QueryString 中检索值。
字符串 apiID = Request.QueryString["api_id"];
字符串来自 = Request.QueryString["from"];
字符串 to = Request.QueryString["to"];
字符串时间戳 = Request.QueryString["timestamp"];
字符串 apiMsgId = Request.QueryString["apiMsgId"];
字符串 cliMsgId = Request.QueryString["cliMsgId"];
字符串状态 = Request.QueryString["status"];
字符串费用 = Request.QueryString["charge"];// Insert the SMS Status values into the database. int smsStatusID = SMSManager.InsertSMSStatus(apiID, from, to, timestamp, apiMsgId, cliMsgId, status, charge);}
}
基本上,此页面检索从 clickatell 发送的查询字符串值并将它们插入到数据库表中。
我使用 clickatell 注册了以下回调 URL:http://www.mydomain.com/ClickatellCallBack.aspx 并选择了回调类型:HTTP GET
在我的“sendmsg”命令中,我将发送确认和回调请求设置如下:deliv_ack=1 和 callback=3
唯一的问题是似乎什么都没有发生。 clickatell 似乎无法访问回调 URL。
我错过了什么吗?难道我做错了什么。我是否需要使用 ASP.NET 页面以外的东西来实现这个回调 URL?我缺少一些 clickatell 设置吗?
任何帮助将不胜感激。
问候
沃尔特
【问题讨论】:
-
您的短信是否正在发送?大约一个月前,我使用 Clickatell 做了一个测试项目。我发现如果我使用他们的 SendMsg REST api,我的文本并不总是被传递。我切换到他们的 SOAP api(他们发布 WSDL,所以它只是一个 Web 服务参考),一切都开始工作了。我没有使用他们的回调 API,所以我不知道这是否会对您有所帮助。但是他们的 REST api 似乎并不可靠。
-
我正在使用他们的 HTTP API 并且正在发送和接收消息。
标签: c# asp.net callback clickatell