2013-09-24 18 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開發者在這裏傳播者。

如上面的代碼所示,您不能將XML添加到CallOptions中。您需要找到一種方法將TwiML放入Twilio可訪問的URI中的XML文檔中。

如果該消息對於調用而言不是動態的,則可以在諸如Amazon的S3之類的服務上託管包含TwiML的靜態XML文件。我偶爾會使用Dropbox公開網址,但僅限於低容量測試。但有很多選項可供選擇,包括TwiMLBin服務。但是,如果您的消息以任何方式動態顯示,您將需要一個可以響應HTTP請求的應用程序。

是否有一些特定的限制,也許我可以建議一個解決辦法?

希望這有助於!

+0

任何想法,爲什麼我們不能只將xml放入CallOptions?似乎這將是最簡單的方法。我有一個C#MVC應用程序,你能告訴我一個示例使用Twilio .NET庫輸出XML嗎?我沒有在Twilio網站上的任何代碼示例中看到這一點。 – aSkywalker

+0

所以,這是一個公平的問題。但是在考慮Twilio的工作原理時,電話是非常事務性的,你通常會有一個IVR或一個需要多於一個XML塊的組件,並且你希望這個組件是動態的,這取決於用戶。所以使用URL是有道理的。如果你真的不需要這個,並且不需要服務器,我們有一組Twimlet可以提供幫助。 Echo Twimlet只會將您編碼的XML回顯到URL中:https://www.twilio.com/labs/twimlets/echo – xmjw