My question may sound naive. Please pardon my ignorance. I am a newbie to Genesys.
I am trying to implement call recording in two ways on a Genesys Sip Server using SDK 8.1
I am getting a span (mirror) for all call centre agents traffic. I would like to get all call metadata through the T-Server SDK while I get all media for recording from the span.
What request should I use to get call events for the monitored extensions ?
The SDK documentation mentions of two methods that I can think of -
a. Register a DN using RequestRegisterAddress with registermode as ModeMonitor. Does this register the DN to my application as a third party just to receive the call events on this extension ?
b. RequestStartCallMonitoring - I see that the events on this are relatively fewer than the earlier namespace request.
We will be using a single step conferencing type of method to record work from home agents. We will not be getting WFH agent traffic in the span. We would therefore need to get a copy of the media. We are thinking of registering a phone using sip endpoint sdk and based on call events for the WFH agents, put our phone in conference on the call thereby receiving a copy of the media to our recorder. Is this the correct method ? Can we get any sample code that implements this ?
The topic is so general and it is not possible to answer with few words. So, in general, in case when you have passive recording (span ports), you have to just register as an T-Server client and observe specified DNs. Then you can receive all attached data. You do not need use “RequestStartCallMonitoring” or any type of conference.
From my point of view, that SPAN ports are not necessary at all and you can use “active” recording mode, where the Genesys Media Server provide the media/stream replication to specified recording servers. The CTI integration is still same as is mentioned above.
If you want, send me PS and I will try to give you some hints.
I have successfully registered the DN’s that I am interested in receiving unsolicited call events. Except for the EventRegistered in response to my request I do not receive any unsolicited call events. I have tried RegisterMode.ModeMonitor as well as RegisterMode.ModeShare.
How do I request unsolicited call events as a third party application for the DN’s I have registered ?
We do not receive an invite on our listener socket. The above attributes indicates that the media server is creating a recording file and not duplicating and sending us the RTP packets.
How do we make the media server forward the packets to us ? Is that a change in the Genesys configuration ? Will the RTP packets be received on the same port as the invite ?
You have mixed T-Lib protocol with SIP and RTP protocols - that are totally different levels. When you start the active recording session, the SIP server contact RM, which should select MCP for required service basis on configured rules. Then MCP will invite the recorder server IP:PORT (by default IP:5060) , both endpoint send own SDP and within signalization will be one of them select and used. Afterthat the RTP from MCP should be replicated to the recording server. For properly working you have to of course deploy all necessary components and configure all objects like VoIP service, LRGs, etc. Did you configure LRG for recording client and recording server? Is the integration between SIP server and RM working? What says logs?
PS: If you want to help with configuration Genesys env, feel free to post me a PM.
According to the error message, it seems like the password value does not match the configured value on SIP server application object level. Try to attach or check logs records before the EventError is generated. There should be the root-cause visible.
It is not seems like the root-cause. Mentioned bug was related to RequestPrivateService with ID 3013 and not to ID 2. But, install the latest release of SIP server would be the best
[ol]- what version of SIP Server are you running? Is it the same affected by the bug described in that article?
is rtp-info-password option configured correctly in SIP Server? Which section did you configure it in?
Are you issuing the RequestPrivateService against a specific DN? I can’t see the AttributeThisDn
Can you please post the SIP Server log snippet covering from the RequestPrivateService until after the relevant EventError?
I guess you grabbed the log from your end rather than from SIP Server, hence the quotation marks may appear different: you got double quotes on both the AttributeErrorMessage and the RTP-PASSWORD:
We were successfully able to record both passively as well as actively.
For Passive recording, our code for passing AttributeExtension was correct. The password Genesys support had provided was wrong. On getting the correct password, we were able to get the UserEvent with the RTP info.
For active recording, we developed a sip stack which would receive the sip commands and provided appropriate responses. On sending a proper “200 OK”, we were able to receive the RTP.