You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#中指定Twiml参数时Twilio CallResource.Create编译失败

问题描述

尝试按照Twilio官方文档的Call Resource API实现外呼功能,使用以下示例代码指定twiml参数发起请求:

var call = CallResource.Create(
    twiml: new Twilio.Types.Twiml("<Response><Say>Ahoy there!</Say></Response>"),
    to: new Twilio.Types.PhoneNumber("+15558675310"),
    from: new Twilio.Types.PhoneNumber("+15552223214")
);

但在Visual Studio编译时触发错误:The best overload for 'Create' does not contain a parameter named 'twiml',想确认是遗漏配置、文档有误或已过时?

解决方案

这是因为Twilio C# SDK版本更新后,Create方法的参数名发生了变更,官方文档的示例代码没有及时同步更新。

正确实现方式

  1. 推荐:使用公开可访问的TwiML URL
    将你的TwiML内容部署为公开URL(比如用Twilio自带的TwiML Bin生成),然后使用url参数替换原twiml参数:

    var call = CallResource.Create(
        url: new Uri("https://your-twiml-endpoint.example"),
        to: new Twilio.Types.PhoneNumber("+15558675310"),
        from: new Twilio.Types.PhoneNumber("+15552223214")
    );
    
  2. 直接传入TwiML内容
    如果不想部署外部URL,可以通过parameters字典传递Twiml参数值:

    var paramsDict = new Dictionary<string, string>
    {
        { "Twiml", "<Response><Say>Ahoy there!</Say></Response>" }
    };
    
    var call = CallResource.Create(
        parameters: paramsDict,
        to: new Twilio.Types.PhoneNumber("+15558675310"),
        from: new Twilio.Types.PhoneNumber("+15552223214")
    );
    

补充说明

  • 若坚持要用旧版的twiml参数,可以降级到对应版本的Twilio C# SDK,但不推荐,建议适配最新SDK的参数规范。
  • 官方文档偶尔会存在版本不同步的情况,遇到此类问题可以优先查看SDK的官方NuGet包文档或GitHub仓库的最新代码示例。

内容的提问来源于stack exchange,提问作者Brady

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 09:50:17