Пример Tropo C# JSON?
Я пытаюсь внедрить Tropo в мое приложение MVC4. У меня есть простой шлюз, который создает вызов на номер и говорит сообщение. Кажется, я не могу заставить его работать, все, что происходит, это то, что Тропо набирает номер и вешает трубку, когда человек отвечает.
Вот мой код шлюза:
public void SendAppointmentNotification()
{
var httpWReq =
(HttpWebRequest)WebRequest.Create("https://api.tropo.com/v1/sessions");
var encoding = new ASCIIEncoding();
var postDataTemplate = "<session>" +
"<token>{0}</token>" +
"<var name=\"numberToDial\" value=\"{1}\"></var>" +
"<var name=\"msg\" value=\"{2}\"></var>" +
"</session>";
var tokenToUse = [APIKEY]-Removed;
var numberToDial = "XXXXXXXXXX";
var message = "Greetings. This is a reminder that you have a service call appointment scheduled.";
var postData = string.Format(postDataTemplate, tokenToUse, numberToDial, message);
var data = encoding.GetBytes(postData);
httpWReq.Method = "POST";
httpWReq.Accept = "text/xml";
httpWReq.ContentType = "text/xml";
httpWReq.ContentLength = data.Length;
var newStream = httpWReq.GetRequestStream();
newStream.Write(data, 0, data.Length);
var response = (HttpWebResponse) httpWReq.GetResponse();
byte[] buffer = new byte[response.ContentLength];
using (var stream = response.GetResponseStream())
{
stream.Read(buffer, 0, (int) response.ContentLength);
}
var bufferAsString = buffer.Aggregate("", (current, t) => current + (char) t);
if (response.StatusCode != HttpStatusCode.OK)
{
throw new Exception("Did not get status OK 200 from POST");
}
newStream.Close();
}
Сайт Tropo, похоже, очень любит все языки, кроме C#, и репозиторий Github, который у них есть, довольно старый и не имеет документации.
Я просто хочу позвонить человеку и сказать сообщение... Кто-нибудь был на этом пути и может предложить мне пример их реализации?
1 ответ
Этот вопрос не относится к типу проблем, с которыми вы сталкиваетесь при попытке запустить это приложение. Но одна вещь, которую нужно проверить, - это то, что вы получили права на исходящие звонки. Если что-то не изменилось, вы должны запросить эту функцию у поддержки Tropo.
Хорошей платформой C#, которая работает на MVC 4 для разработки приложений Tropo, является VoiceModel. Это открытый исходный код под лицензией Apache и упрощает разработку голосовых приложений. Вы разрабатываете свое приложение один раз, и оно будет работать на Tropo и любой системе, совместимой с VoiceXML. Вот статья об использовании VoiceModel для создания исходящих приложений.