Jump to: navigation, search

How the T-Library Works for GIR

The following sections describes the T-Lib interface for recording.

Enabling Call Recording

The T-Lib interface allows recording to be enabled in three ways:

  1. Through configuration—Set the record option to true in the DN object to instruct SIP Server to enable full-time recording for this DN. This is an existing feature.
  2. Set the extension in the TRouteCall request to enable recording selectively. When calling TRouteCall, add the record key in the extension attribute and set the value to destination for recording of inbound or outbound calls. This is an existing feature.
  3. Add a new extension in the RequestPrivateService request to request call recording to be enabled on an existing connection as described in the following table:
    RequestPrivateService—Request services that are supported only by certain T-Servers, and which are not covered by general feature requests.
    Parameters Description
    AttrPrivateMsgID This parameter is mandatory and must be equal to GSIP_RECORD_START.
    AttrThisDN This parameter is mandatory, and is the DN on behalf of which the operation is requested. It must be registered by the T-Client, but not necessary be a party on the call (for example, the supervisor may request recording of the agent’s call).
    AttrConnectionID This parameter is mandatory and references the ID for the call to record.
    AttrExtensions Additional request parameters:
    • record (string)—Set to source to record from this DN referenced in this connection. Set to destination to record from the other DN referenced in this connection. This parameter is optional, and defaults to source.
    • Id (string)—Adds a recording identifier to the recording session. This identifier must be globally unique and is passed back in the recording session. This parameter is optional and if not present, Media Server constructs a unique identifier.
    • Dest (string)—Overrides the default SIP location of the recording server. This parameter is optional.
    • Dest2 (string)—Overrides a second SIP location of the recording server for duplication of recording. This parameter is optional.
    • Params (string)—Additional parameters can be passed as generic name-value pairs. These parameters will show up in the recording session.
    AttrReasons The reasons. These are processed the same as for all other T-Library requests.
    Important
    SIP Server responds to the request with either EventACK to confirm the acceptance of the request, or EventError if the operation cannot be performed.

Runtime Control of Recording

When the recording session is established, the T-Lib interface allows run-time control of the recording for pause, resume, and stop. The following table describes a new extension for RequestPrivateService:

RequestPrivateService—Request services that are supported only by certain T-Servers, and which are not covered by general feature requests.

Parameters Description
AttrPrivateMsgID Specifies the operation. Choose one of the following values:
  • GSIP_RECORD_STOP—Stop the recording.
  • GSIP_RECORD_PAUSE—Pause the recording.
  • GSIP_RECORD_RESUME—Resume the recording.
AttrThisDN The DN on behalf of which the operation is requested. It must be registered by the T-Client, but not necessarily be a party on the call.
AttrConnectionID References the ID for the call being recorded.
AttrExtensions Additional request parameters:
  • Params (string)—Additional parameters can be passed as generic name-value pairs that modify the recording session.
AttrReasons The reasons. These are processed the same as for all other T-Library requests.
Important
SIP Server responds to the request with either EventACK to confirm the acceptance of the request, or EventError if the operation cannot be performed.

Recording Indication

Two mechanisms that enable SIP Server to provide recording indication:

  • After SIP Server successfully starts recording on Media Server, SIP Server updates the UserData attribute of the call with GSIP_REC_FN using the file name of the recording. A T-Lib client monitoring the call receives an EventAttachedDataChanged with GSIP_REC_FN. This is existing functionality for legacy Stream Manager recording. For clients who only want to know if a recording has been enabled any time during the call, this userdata is sufficient.
  • For clients such as, Interaction Workspace, who need to render the current recording state for the call, GSIP_REC_FN is not sufficient as a recording indicator. SIP Server provides a new value GSIP_RECORD for the UserData attribute to provide the current state of recording for this call. Whenever SIP Server knows there is a change in recording, SIP Server sends an EventAttachedDataChanged with GSIP_RECORD to update the value of the key. This key has three values:
    • On—Recording is currently in progress.
    • Off—No recording in progress.
    • Paused—Recording is currently in progress but no media is currently captured.

Feedback

Comment on this article:

blog comments powered by Disqus
This page was last modified on April 15, 2018, at 22:10.