Hello,
I tried this, but it didn't work. The second 200 Ok is still sent to the
caller.
I tried the simplest script, like this.
onreply_route[handle_nat] {
if (t_check_status("200")) {
drop();
}
}
But the drop doesn't seem to work for 200 Ok. According to the document,
the drop only discards the provisional reply.
volga629 <[email protected]> 於 2021年8月30日 週一 下午8:35寫道:
>
> Hello Fulo,
> Bogdan provided work around some time ago.
> Inside onreply route
>
> # Drop other 200 OK
> if(isbflagset("RETRY_200OK_BFLAG")) {
> if(is_method("INVITE|UPDATE") && t_check_status("200")) {
> drop();
> }
> }
>
> # mark first INVITE
> if(is_method("INVITE|UPDATE") && t_check_status("200")) {
> setbflag("RETRY_200OK_BFLAG");
>
> volga629
>
> On 8/30/21 4:22 AM, Fulo Lin wrote:
>
> When the user has two devices answering the phone at the same time, I
> expect the first device to answer the call and the second device to be
> cancelled.
>
> The current opensips will indeed cancel the second call, but the first
> call will have no sound, and the call will be disconnected after a few
> seconds.
>
> I found that opensips sends all 200 Ok (SDP) to the caller, and I expect
> that the second 200 Ok (SDP) should not be sent to the caller.
>
> I try to block the second 200 Ok(SDP) in onreply_route, like this.
>
> onreply_route[handle_nat] {
> if (t_check_status("200")) {
> # t_cancel_branch(); No effect
> # drop(); No effect
> #exit;
> }
> }
>
> But this seems to have no effect.
>
> Is there a way to block the second 200 Ok (SDP) in onreply_route?
>
> Or is there any other way to handle concurrent answering calls?
>
> I use opensips 3.1.5 and rtpproxy 2.2.0.
>
> _______________________________________________
> Users mailing
> [email protected]http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
>
>
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users