无法通过Tropo发送短信

时间:2013-12-04 15:46:23

标签: sms tropo

我们正在使用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

知道我们在哪里做错了吗?感谢

2 个答案:

答案 0 :(得分:0)

您使用的是脚本方法,而不是WebAPI,对吗?你可以发布你的应用程序正在使用的脚本吗?我的理解是,当您创建会话时,您只需将变量传递给您的脚本。您的脚本可能完全忽略这些变量,只是进行语音呼叫。

我同意你的最后一点。该响应只是告诉您它成功创建了会话。它不会返回有关该过程其他步骤的任何其他信息。

答案 1 :(得分:0)

您的应用程序有两个令牌,一个用于语音,一个用于消息传递。您是否正在使用该消息传递?此外,对于您的应用程序,默认情况下不启用出站消息传递。您必须联系Tropo支持才能将其打开以进行开发。他们可能会要求您在帐户中存入一些钱,但除非您在开发过程中开始滥用此功能,否则他们不会向您收费。