使用本地 xml 文件进行 twilio 调用

use local xml file for a twilio call

sample code on how-to-make-a-call 看起来像这样:

static void Main(string[] args)
{
    // Find your Account Sid and Auth Token at twilio.com/console
    const string accountSid = "ACc610c3a41a31c91a01396f7bf92c517d";
    const string authToken = "your_auth_token";
    TwilioClient.Init(accountSid, authToken);

    var to = new PhoneNumber("+14155551212");
    var from = new PhoneNumber("+15017122661");
    var call = CallResource.Create(to,
                                   from,
                                   url: new Uri("http://demo.twilio.com/docs/voice.xml"));

Console.WriteLine(call.Sid);
}

引用的 voice.xml 的 xml 如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Say voice="alice">Thanks for trying our documentation. Enjoy!</Say>
    <Play>http://demo.twilio.com/docs/classic.mp3</Play>
</Response>

我只想在内存中创建一个 xml 文件并引用它,而不是远程 uri。无论如何,有没有像下面这样的东西并将其附加到 CallResource.Create 参数?

    System.Xml.XmlDocument xmlDocument = new XmlDocument();
    String s = "My custom message!";
    xmlDocument.LoadXml(string.Format(@"<Response><Say voice=""alice"">{0}</Say></Response>", s));

这里是 Twilio 开发人员布道者。

目前无法通过创建呼叫的请求发送呼叫的 TwiML。您确实需要将 TwiML 托管在某个地方。

如果您难以托管 TwiML,那么您可以研究 TwiML Bins or Twilio Functions 以了解在 Twilio 中托管 TwiML 的静态和动态方式。

很好笑,以前问过类似的问题,现在来回答一下。试试这个: 我创建了一个将字符串消息作为参数的方法,这是我想通过调用传递的消息。我在执行 create 调用之前调用了此方法,然后中断,发现 xml 是在指定目录中以正确的格式创建的。<?xml version="1.0" encoding="utf-8"?> <Response>在此处输入代码 <Say>HELLO WORLD</Say> </Response> 第 43 行我创建了方法。然后在第 70 行,我调用了创建 Xml 文件的方法,如下所示:

enter code here 你好世界

My code

看来您实际上可以从本地 xml 文件发送它:

    client.calls
    .create({
        twiml: '<Response><Say>### THIS STRING CAN BE REPLACED WITH YOUR XML FILE CONTENT ###</Say></Response>',
        from: '',
        to: ''
    })
    .then(call => console.log(message.sid));