增加通道超时
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
请求。
使用 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
请求。