我们正在使用TropoSharp向我的手机发送短信。奇怪的是,我没有收到任何短信,相反,我接到了一个电话,而且很短,我不知道对方在电话里说了什么。
通过查看代码,我们无法找出问题出在哪里:
string voiceToken = "xxx";
string messagingToken = "xxx";
IDictionary<string, string> parameters = new Dictionary<String, String>();
parameters.Add("sendToNumber", "xxx");
parameters.Add("sendFromNumber", "+1 201-xxx-04xx");
string channel = Channel.Text;
parameters.Add("channel", channel);
string network = Network.SMS;
parameters.Add("network", network);
parameters.Add("msg", HttpUtility.UrlEncode("This is a test message from C#."));
Tropo tropo = new Tropo();
XmlDocument doc = new XmlDocument();
string token = channel == Channel.Text ? messagingToken : voiceToken;
doc.Load(tropo.CreateSession(token, parameters));
Console.WriteLine("Result: " + doc.SelectSingleNode("session/success").InnerText.ToUpper());
Console.WriteLine("Token: " + doc.SelectSingleNode("session/token").InnerText);
Console.ReadKey();这是http请求(删除了一些敏感信息)
GET http://api.tropo.com/1.0/sessions?action=create&token=xxxxx&sendToNumber=xxx&sendFromNumber=+1%20201-xxx-xxxx&channel=TEXT&network=SMS&msg=This+is+a+test+message+from+C%23.& HTTP/1.1
Host: api.tropo.com
Connection: Keep-Alive下面是响应(我猜这只意味着请求提交成功):
<session><success>true</success><token>xxxx</token><id>5c994e73ab85ff47fd1af4ffd4002e00
你知道我们哪里做错了吗?谢谢
发布于 2013-12-06 03:54:04
您使用的是脚本方法,而不是WebAPI,对吧?你能发布你的应用程序正在使用的脚本吗?我的理解是,当你创建一个会话时,你只是将变量传递给你的脚本。您的脚本可能会完全忽略这些变量,而只是进行语音呼叫。
我同意你的最后一点。该响应只是告诉您它成功地创建了会话。它不会返回有关该过程的其他步骤的任何附加信息。
发布于 2013-12-06 22:56:42
您的应用程序有两个令牌,一个用于语音,另一个用于消息。你是不是在用这个来发消息?此外,对于您的应用程序,出站消息传递不是默认打开的。您必须联系Tropo支持人员才能打开它以进行开发。他们可能会要求你在你的账户中存入一些钱,但他们不会向你收费,除非你在开发过程中开始滥用这一功能。
https://stackoverflow.com/questions/20379731
复制相似问题