Hello,

o Eli Hayun [06/22/09 11:24]:
Hi
I am trying to get MusicOnHold. When I find out an HOLD request I am
doing the following in OpenSips

        append_hf("P-App-Name: announcement\r\n");
        rewritehostport("myhost:5080");
        t_relay();
        exit;
But I am getting an error
SIP/2.0 481 Call leg/Transaction does not exist

I think the problem is that I am in a middle of a transaction, but I
don't know how to avoid that error and actually run the application

Generally speaking, you can not break into an established SIP dialog, you need either support from the endpoints (telephones) for that, or a B2BUA in the call from the beginning.

Consider what would be happening if you just stripped the To-Tag in your proxy, and sent the call to the moh server. The moh server would create its dialog state locally and set it's own to-tag, which would not match the one from the endpoint sending the reinvite.

If you would be making the media server take the To-tag as given, and reply with 200 OK, things would break if the phone wants to unhold - the other endpoint would think CSeq is lower.

Have a look at sip service examples [1],[2]. Note that for historical reasons, SEMS does not yet support call flows with empty INVITE/SDP offer in 200/answer in ACK.

BR
Stefan

[1] http://tools.ietf.org/wg/sip/draft-ietf-sip-service-examples/
[2] http://tech-invite.com/Ti-sip-service-1.html

Thanks

Eli Hayun

_______________________________________________
Sems mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/sems

--
Stefan Sayer
VoIP Services

[email protected]
www.iptego.com

IPTEGO GmbH
Wittenbergplatz 1
10789 Berlin
Germany

Amtsgericht Charlottenburg, HRB 101010
Geschaeftsfuehrer: Alexander Hoffmann
_______________________________________________
Sems mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/sems

Reply via email to