Jump to: navigation, search

T-Library

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. Extension in the TrouteCall event to enable recording on trunk side or agent side. When calling TrouteCall, add the record key in the extension attribute and set the value to source for customer recording or destination for agent recording. This is an existing feature.
  3. Adding a new extension in the TrequestPrivateService event 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.

Note: 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, T-lib interface allows run-time control of the recording for pause, resume, and stop. The following table describes a new extension for TrequestPrivateService:

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 necessary 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 modifies the recording session.
AttrReasons The reasons. These are processed the same as for all other T-Library requests.

Note: 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

There are two mechanisms for SIP Server to provide recording indication:

  • After SIP Server successfully started recording on Media Server, SIP Server updates UserData to the call with GSIP_REC_FN with the file name of the recording. A T-lib client monitoring the call will receive an EventAttachedDataChanged with GSIP_REC_FN. This is an existing functionality for legacy Stream Manager recording. For clients who only want to know whether 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 UserData called GSIP_RECORD 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.
This page was last edited on October 2, 2019, at 19:20.
Comments or questions about this documentation? Contact us for support!