增加通道超时

Increasing timeout on channel originate

使用 ARI(C#、AsterNET),我正在通过 Originate 命令创建一个频道:

   var channel = client.Channels.Originate($"SIP/{number}@{destination}", app: appName, callerId: CLI, timeout: timeout);

这很好用;然而,timeout 从创建频道时开始,实际上我希望超时仅在频道开始响铃后才强制执行。

是否有任何方法(通过 ARI)在创建通道后操纵 timeout 设置 - 例如,我可以创建具有任意超时的通道,然后(重新)设置通道状态更改为 RINGING?

后超时

没有办法根据星号中的振铃来超时。

不在拨号方案中,不在 ARI 或 AMI 或 AGI 中。完全没有。

只有复杂的事情,比如监听事件和手动挂断频道。

而不是使用起源:

POST /channels

你可以使用:

POST /channels/create

创建频道无需立即拨号。这允许您的 Stasis 应用程序在它被应答之前获得频道的控制权。

/channels/create 之前,您现在应该设置一个 StasisStart 事件处理程序来执行 /channels/dial 并在此请求中设置超时。

这不会 exactly 当频道开始响铃时(因为无法设置),但是 exactly 当频道被拨通时,希望它非常接近您正在寻找的内容。

注意:使用此方法时,您可能还希望在 StasisStart 事件处理程序中设置来电显示,因为它无法在/channels/create 请求。