Не удалось отправить SMS-сообщение через Tropo

Мы используем TropoSharp для отправки SMS-сообщения на мой телефон. Странная часть в том, что я не получил никакого SMS-сообщения, скорее мне позвонили, и он очень короткий, и я не мог понять, что человек говорит по телефону.

Глядя на код, мы не могли понять, что не так:

            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 ответа

Для вашего приложения есть два токена: один для голоса и один для обмена сообщениями. Вы используете тот для обмена сообщениями? Кроме того, исходящие сообщения не включены по умолчанию для вашего приложения. Вы должны связаться со службой поддержки Tropo, чтобы включить ее для разработки. Они могут потребовать от вас положить деньги на свой счет, чтобы сделать это, но они не будут взимать плату, если вы не начнете злоупотреблять этой функцией во время разработки.

Вы используете подход сценариев, а не WebAPI, верно? Можете ли вы опубликовать сценарий, который использует ваше приложение? Насколько я понимаю, когда вы создаете сеанс, вы просто передаете переменные в ваш скрипт. Ваш скрипт может полностью игнорировать эти переменные и просто делать голосовой вызов.

Я согласен с вашей последней точкой. Этот ответ просто говорит вам, что ему удалось создать сеанс. Он не возвращает никакой дополнительной информации о других этапах процесса.

Другие вопросы по тегам