[OpenSIPS-Users] Distinction between two forked INVITE received from upstream

Yannick LE COENT yannick.lecoent at nexcom.fr
Thu Jan 21 15:50:04 CET 2010


Hello,

 

The next figure describes my problem.

 

                 openSIPS

                 +------+

--  INVITE(1) -->|      |--- INVITE(1) -->

                 |      |

--  INVITE(2) -->|      |--- INVITE(2) -->

<-- 180(2) ------|      |<-- 180(2) ------

<-- 200(2) ------|      |<-- 200(2) ------

                 |      |

--  CANCEL(1) -->|      |

<-- 200(CANCEL) -|      |

<-- 487(1) ------|      |

--  ACK(1) ----->|      |

                 |      |

--  ACK(2) ----->|      |--- ACK(2) ----->

                 |      |

                 +------+

                    |

                    |

                 +------+

                 |      |

                 |      |

                 +------+

                 RTP proxy

 

I use RTP proxy to relay media streams.

 

INVITE (1) and (2) have been forked from an upstream proxy, thus they have
the same Call-ID and From tag, and a different branch ID.

INVITE (2) is accepted, but INVITE (1) has no response.

The upstream proxy cancels INVITE (1).

 

In my script, on CANCEL(1) request I close the RTP session, but I should not
dot that since INVITE(2) has been accepted.

 

My questions are:

How can I know when I received CANCEL(1) that INVITE(2) has been accepted?

Do I need to use flags? Which ones ?

 

Thanks for any help,

Yannick

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.opensips.org/pipermail/users/attachments/20100121/3997354c/attachment.htm 


More information about the Users mailing list