Twilio 语音通话:更新通话拨出电话不起作用

问题描述 投票:0回答:1

我有一个简单的应用程序,应该能够拨打电话。该调用应该只询问一个问题并收集用户的 DTML 响应。棘手的部分是我想知道当调用完成时用户在状态更改回调中的响应。我无法在缓存、数据库或任何其他存储中保留调用的状态。这就是为什么我认为我可以在调用期间更改状态回调 url,以将用户的响应包含在查询参数中。所以在我处理用户响应的 http 处理程序中我有这个:

CallResource.Update(
    statusCallbackMethod: Twilio.Http.HttpMethod.Post,
    statusCallback: statusUrlWithUserResponseinQueryParameter,
    pathSid: id
);

它运行时没有任何异常,但似乎它没有达到我想要的效果。结果

statusUrlWithUserResponseinQueryParameter
没有被调用,仍然使用调用资源创建时指定的 url。这是一个错误还是我误解了什么?还有其他方法可以将用户的响应传递给状态更改回调吗?

c# twilio
1个回答
0
投票

根据此页面上的“更新活动呼叫的 Statuscallback”,您必须同时更新 URL 和 StatusCallbackUrl:

要更新呼叫上的 StatusCallback,需要在中设置 Url 同样的说法。

尝试更新您的代码以包含新的网址:

CallResource.Update(
    url: new Uri(yourNewUriThatHasNewOrTheSameTwiml),
    statusCallbackMethod: Twilio.Http.HttpMethod.Post,
    statusCallback: statusUrlWithUserResponseinQueryParameter,
    pathSid: id
);

但是,我认为您正在尝试做的是解决 Gather 的工作方式。典型的行为是让应用程序响应包含数字的 Gather webhook。 “收集后重定向” 可能会给您一些如何实现您想要完成的任务的想法。

© www.soinside.com 2019 - 2024. All rights reserved.