Hi,

I will put money on this being a "you're doing this all the wrong way" and
you're an idiot type issue.

We're running OpenSIPS 3.4.16 with rtpengine 14.0.1.1 and trying to use the
siprec module with rtp_relay for call recording to a VoIPMonitor SRS.

*Setup:*
  - rtp_relay_engage("rtpengine") called before siprec_start_recording()
  - rtp_relay handles the main call's media successfully (offer/answer
work, RTP flows)
  - SIPREC INVITE is sent to SRS, SRS responds with 200 OK
  - BYE sent to SRS immediately (~1ms after ACK)

What we see in rtpengine debug logs:

The subscribe request sent by rtp_relay uses from-tag: "1" rather than the
actual call participant's tag:

  subscribe request: {"call-id": "...", "flags": ["all", "siprec"],
    "from-tag": "1", "command": "subscribe request"}

This succeeds. But the subsequent subscribe answer uses the real callee tag:

  subscribe answer: {"call-id": "...", "from-tag": "ffc01bf7-...",
    "to-tag": "00e36c57...", "command": "subscribe answer"}

  rtpengine returns: Failed to process subscription answer

It appears the from-tag "1" in the subscribe request is wrong, because it
should be the actual SIP dialog tag (b2af6068 for caller, ffc01bf7-... for
callee), and so rtpengine can't correlate the subscribe answer back to the
subscription because the from-tag changed between request and answer.

We're using rtp_relay_engage("rtpengine") followed by
siprec_start_recording("sip:x.x.x.x:5099") in ROUTE_INVITE after
create_dialog("B"). Do we need to call siprec_start_recording later, like
in the reply route on the 200 OK?

Is what I'm doing wrong obviously wrong?

Thanks,
Andrew
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to