9.1 Retrieve Recording Meta Data

Retrieving Recording Meta data

Note: The API will only accept POST requests.

The core 'Retrieve Recording' method provides access to the calls audio data. If you want any information about the recording such as when it was made, the duration or the extension that answered the call then you need to retrieve the recordings 'meta data' via the 'retrieveMetaData' method.

The retreiveMetaData call also provides information about individual Legs of a recording.

When Noojee Contact records a call it is automatically split into separate recordings referred to a 'Legs'. A call is split each time the call goes through a transition. For example when a call enters a queue a split (Leg) is created, when the call is answered a second Leg is created. If the call is then transferred to a third party the call is once again split. Depending on the calls progress through the system a call could have many legs and 3-5 is typical.

In order to access all of the call recording you need to retrieve each individual leg. In order to identify what legs are available you need to first retrieve the calls meta data via this api entry point. From the meta data you can then uniquely identify and retrieve each Leg of the call in turn.

RetrieveMetaData

The RetrieveMetaData and RetrieveMetaDataByUniqueId commands allows you to retrieve the meta data of a call recording by its 'tag' and 'uniqueId' respectively.

https://<fqdn>/njadmin/rest/RecordingAPI/retrieveMetaData?apiKey=f863246a-973e-11e6-8784-08002718f5b5&tag=1234

https://<fqdn>/njadmin/rest/RecordingAPI/retrieveMetaDataByUniqueId?apiKey=f863246a-973e-11e6-8784-08002718f5b5&uniqueId=12341232.12

The method returns a json encoded array/map containing any matching calls. There will be an entry in the array for each leg of a call.

[{"Source":"400","Leg":"1","Start":"2014-02-13 17:06:52.0","Tag":"1234","Duration":"4","Username":"Fred","CallRecordId":"198348","UniqueId":"1392271611.238","DID":"internal","Direction":"2","Destination":"410"}]

The following fields are returned:

SourceThe phone number that originated the call. For outbound calls this will be the extension no. For inbound calls this is the caller id (if available).
LegThe leg no. of the call. The first Leg is leg 1.
StartThe date/time that the leg started. For the first leg this will usually be an approximation of the start date/time of the actual call. Note: there is often a small delay between the call's actual start date/time and the first legs actual start/date time. If recording is not turned on when the call first starts (but on a later transition) then the can be a significant gap between the legs start and the call startr.
TagThe tag attached to the call recording.
DurationThe duration of the call leg in seconds.
UsernameThe username of the user that owns this leg of the call. The owner is normally the agent that took the call. For legs where the call is not currently connected the Username will normally be the 'default' username attached to the route (for inbound calls) which is typically 'Administrator'.
CallRecordIdThe unique id of the legs database record.
UniqueIdThe unique Id of the call this leg is a recording off.
DIDIf the call is an inbound call then this is the DID that the caller dialed. For internal calls this is set to 'internal'.
DirectionThe direction of the call. For inbound calls this is set to 0, for outbound 1 and for Internal calls 2.
DestinationThe phone no. of the end point that took the call. For inbound and internal calls this will normally be the extension that answered the call. For outbound calls this will be the dialed no.