The Recording API service uses and provides two main models: Profile
and Recording
.
A Profile
entry specifies for a given remoteSipUri
, if and how the recording should take place.
email
- (String[255]; default: null) If set, will send an email with the recording to the address specified by the value of this field.remoteSipUri
- (String[255]; default: null) The remote endpoint to call when there's an incoming channel for this Profile id.record
- (Boolean; default: false) If enabled, record the call. Otherwise, no recording is started.recordFormat
- (String[12]; default: "wav") The file format to use when saving the recording. (passed to Asterisk)recordBeepAtStart
- (Boolean; default: true) Play a beep when the recording starts.recordBeepInterval
- (Integer[11]; default: 0) Play a beep at the given interval. Value is in seconds. If set to 0, no beeps will be played during the recording.recordPrompt
- (Enum: [none
,default
orcustom
]; default:none
) Play a prompt at the beginning of the call, announcing that the call is being recorded. If set tonone
, then no prompt will be play. Setting todefault
, uses the default system prompt. Setting tocustom
(NOT IMPLEMENTED) will play a prompt with the sound identified byrecordPromptCustomId
.recordPromptCustomId
- (UUIDv4 / String(36)) not implemented.
The following RESTful JSON routes are available:
Route | Method | Required Parameters | Response | Description |
---|---|---|---|---|
Handling Profiles | ||||
/profiles | GET | Array of Profile |
Retrieve a list of all profiles stored in the database | |
/profiles | PUT | Object |
Profile |
Create a new Profile |
/profiles/:id |
GET | id |
Profile |
Retrieve the Profile identified by id |
/profiles/:id |
POST | id , Object |
Profile |
Update the Profile identified by id |
/profiles/:id |
DELETE | id |
Delete a Profile identified by id |
|
Handling Recordings | ||||
/recordings | GET | Array of Recording |
Retrieve a list of all recordings in the database | |
/recordings | PUT | Object |
Recording |
Create a new Recording |
/recordings/:id |
GET | id |
Recording |
Retrieve the Recording identified by id |
/recordings/:id |
POST | id , Object |
Recording |
Update the Recording identified by id |
/recordings/:id |
DELETE | id |
Delete a Recording identified by id |
|
Handling Recordings for a specific Profile (identified by profileId ) |
||||
/profiles/:profileId /recordings |
GET | profileId |
Array of Recording |
Retrieve the list of Recordings generated by the Profile identified by profileId |
/profiles/:profileId /recordings |
PUT | profileId , Object |
Array of Recording |
Retrieve the list of Recordings generated by the Profile identified by profileId |
/profiles/:profileId /recordings/:id |
GET | profileId , id |
Recording |
Retrieve the Recording identified by id , which belongs to the Profile identified by profileId |
/profiles/:profileId /recordings/:id |
POST | profileId , id , Object |
Recording |
Update the Recording identified by id , which belongs to the Profile identified by profileId |
/profiles/:profileId /recordings/:id |
DELETE | profileId , id |
Delete the Recording identified by id , which belongs to the Profile identified by profileId |