2013-09-24 3 views
0

Я пытаюсь уведомить вызывающего абонента автоматическим сообщением. Вот мой код ниже. строкаКак инициировать исходящий вызов с сообщением?

 string AccountSid = "***************"; 
     string AuthToken = "**************"; 

     var doc = new XDocument(); 
     var call = new XElement("call"); 

     call.Add(new XElement("Say", Message)); 

     doc.Add(call); 


     var twilio = new TwilioRestClient(AccountSid, AuthToken); 

     var options = new CallOptions(); 
     options.Url = doc.ToString(); //Don't have URL need to add XML doc instead 
     options.To = Phone; 
     options.From = "********"; 
     var callnow = twilio.InitiateOutboundCall(options); 

ответ

1

Twilio Developer Evangelist здесь.

Вы не можете добавить XML в CallOptions, как показано в приведенном выше коде. Вам нужно найти способ разместить TwiML в XML-документе на URI, доступном Twilio.

Если сообщение не является динамическим для вызова, вы можете разместить статический XML-файл, содержащий TwiML, на службе, такой как S3 Amazon. Я иногда использовал Dropbox Public URLs, но только для тестирования на низкой громкости. Но есть много доступных вариантов, включая услугу TwiMLBin. Но если ваше сообщение динамично, вам понадобится приложение, которое может отвечать на запросы HTTP.

Есть ли определенные ограничения, которые у вас есть, может быть, я могу предложить работу?

Надеюсь, это поможет!

+0

Любая идея, почему мы не можем просто поместить xml в CallOptions? Кажется, это было бы самым простым способом. У меня есть приложение C# MVC, можете ли вы показать мне образец для вывода XML с помощью библиотеки Twilio .NET? Я не вижу этого ни в одном из примеров кода на веб-сайте Twilio. – aSkywalker

+0

Итак, это справедливый вопрос. Но когда вы думаете о том, как работает Twilio, телефонные звонки довольно транзакционные, у вас обычно есть IVR или какой-то компонент, для которого требуется более одного блока XML, и вы хотите, чтобы он был динамическим в зависимости от пользователя. Поэтому имеет смысл использовать URL-адрес. Если вам это действительно не нужно и не нужен сервер, у нас есть набор Twimlets, который может помочь. Echo Twimlet просто повторит кодировку XML в URL-адрес: https://www.twilio.com/labs/twimlets/echo – xmjw

Смежные вопросы