Testing (Recommended)


 

Action Name: DoNothing


 

Sample Usage: 

<ActionName>DoNothing</ActionName>


 

Required fields: (none) 


 

Response:

<XML>Nothing Done</XML>


 

Description: 


Run this simple test request to check that the authorization works and that you get a response. The correct response will be "Nothing Done"



Account and Information


 

Action Name: GetCallingCredit


 

Sample Usage: 

<ActionName>GetCallingCredit</ActionName>


 

Required fields: (none)


 

Description:


Gets the calling credit for both post-paid and prepaid customers, the calling credit limit field is in displayed in Rand.



SIP and Extension Information


 

Action Name: GetFullSipStatus


 

Required fields:  

UserName (Sip username, e.g. 100-Euphoria) 


 

Sample Usage: 

<ActionName>GetFullSipStatus</ActionName>

<UserName>100-Euphoria</UserName>


 

Description:

Gets the full real-time status of an extension including registration status.



Action Name: GetSimpleSipStatus


 

Required fields:  

UserName (Sip username, e.g. 100-Euphoria) 


 

Sample Usage: 

<ActionName>GetSimpleSipStatus</ActionName>

<UserName>100-Euphoria</UserName>


 

Description:

Gets a simplified version of the real-time status of an extension including registration status.


 


 

Action Name: GetExtensions


 

Required fields:  (None) 


 

Sample Usage: 

<ActionName>GetExtensions</ActionName>


 

Description:

Gets a list of extensions assigned to your tenant including status and device state.


Real-Time Calls


 

Action Name: GetCurrentCalls


 

Required fields:  (None) 


 

Sample Usage: 

<ActionName>GetCurrentCalls</ActionName>


 

Description:

Gets a list of the currently active calls.


 


 

Action Name: HangUpChannel


 

Required fields:

Channel (Active channel, e.g. SIP/100-Euphoria-dfd23sd)


 

Sample Usage: 

<ActionName>HangUpChannel</ActionName>

<Channel>SIP/100-Euphoria-dfd23sd</Channel>


 

Description:

Requests a hang-up on the channel. If bridged to an outgoing line, this channel will get hung up too.

The ChannelID can be found by first requesting GetCurrentCalls.


 



Action Name: Originate (Making a Call)


 

Required fields:

Extension (Calling Extension Channel, e.g. 100-Euphoria)

DialNumber (The number to dial out, e.g. ☎  0212000500 )


 

Sample Usage: 

<ActionName>Originate</ActionName>

<extension>100-Euphoria</extension>

<dialNumber> ☎ 0212000500 </dialNumber>


 

Description:

Originates a call by first calling the extension specified, then once picked up, begins the dial out leg to the remote party (extension to extension dialling is not possible).


 

Sequence of events:

1. The API validates the request and then executes it.

2. The Agent Extension that was provided will ring.


3. Once answered the API will then dial the number provided. 


 


 

Action Name: TransferChannel


 

Required fields:

Channel (source channel, e.g. “SIP/EuphoriaIn ☎ 1-0038484 ”)

Extension (destination extension, e.g. “100-Euphoria”)


 

Sample Usage: 

<ActionName>TransferChannel</ActionName>

<Channel>SIP/EuphoriaIn ☎ 1-0038484 </Channel>

<extension>100</extension>


 

Description:

Directs the waiting call (defined by the ChannelID) to an extension. Generally you would get this ChannelID from the queued calls. (It’s possible to “steal” a call from an already answered call.)




Call Queues


 

Action Name: GetQueuedCalls (Current)


 

Required fields:

queueName (the name of the queue e.g., “sales”)


 

Sample Usage: 

<ActionName>GetQueuedCalls</ActionName>

<queueName>sales</queueName>


 

Description:

Gets a list of calls currently waiting in a queue, once the calls are answered they no longer appear in this list. This will always respond with queue details and agents that have been assigned to the queue (both static and dynamic). The system will automatically append the “-TenantName” to make the full queue name like “sales-Euphoria”.


 


 

Action Name: GetQueueCalls (Historical)


 

Required fields:

queueName (the name of the queue e.g., “sales”)

pageSize (the number of rows to return. default: 100)

startAt (the start row of the entry. default: 0)

startDate (Unless specified it will be data from the past 7 days.)

endDate (Unless specified it will be data from the past 7 days.)


 

Sample Usage: 

<ActionName>GetQueuedCalls</ActionName>

<queueName>sales</queueName>

<pageSize>100</pageSize>

<startAt>0</startAt>

<startDate>2016-01-01</startDate>

<endDate>2016-01-02</endDate>


 

Description:

Gets a list of past calls for a specific queue. The system will automatically append the “-TenantName” to make the full queue name like “sales-Euphoria”. Do not specify any TIME within the start and end dates, the API will automatically append “00:00:00” to StartDate and “23:59:59” to the EndDate.


 

Note: The data being returned is highly technical, for more clarity please refer to the TMS Call Analytics – Call Log page on details of how to interpret the data.


 



Action Name: AddToQueue


 

Required fields:

extension (New queue member, e.g. “100-Euphoria”)

queueName(the name of the queue e.g., “sales”) 


 

Sample Usage: 

<ActionName>AddToQueue</ActionName>

<extension>100</extension>

<queueName>sales</queueName >


 

Description:

Adds a dynamic member to the specified queue. The system will automatically append the “-Tenantname”. The system will automatically append the “SIP/” to the extension, to make up the required destination: “SIP/100-Euphoria”.


 


 

Action Name: RemoveFromQueue


 

Required fields:

extension (queue member to remove, e.g. “100-Euphoria”)

queueName (the name of the queue e.g., “sales”)


 

Sample Usage: 

<ActionName>RemoveFromQueue</ActionName>

<extension>100</extension>

<queueName>sales</queueName>


 

Description:

Removes the member from the specified queue. The system will automatically append the “SIP/” to the extension, to make up the required destination: “SIP/100-Euphoria”.


 


 

Action Name: PauseQueueMember


 

Required fields:

extension (queue member to pause, e.g. “100-Euphoria”)

queueName (the name of the queue e.g., “sales”)


 

Sample Usage: 

<ActionName>PauseQueueMember</ActionName>

<extension>100</extension>

<queueName>sales</queueName>


 

Description:

Pauses the member so that no more calls are sent to the member. The system will automatically append the “SIP/” to the extension, to make up the required destination: “SIP/100-Euphoria”.


 



Action Name: ResumeQueueMember


 

Required fields:

extension (queue member to pause, e.g. “100-Euphoria”)

queueName (the name of the queue e.g., “sales”)


 

Sample Usage: 

<ActionName>ResumeQueueMember</ActionName>

<extension>100</extension>

<queueName>sales</queueName>


 

Description:

Resumes the member so that calls are now sent to the member. The system will automatically append the “SIP/” to the extension, to make up the required destination: “SIP/100-Euphoria”.


Training & Management


 

Action Name: SpyOnExtension


 

Required fields:

extension (destination extension, e.g. “100-Euphoria”)

SpyExtension (extension you want to spy on, e.g. “102-Euphoria”)


 

Sample Usage: 

<ActionName>SpyOnExtension</ActionName>

<extension>100</extension>

<SpyExtension>102</SpyExtension>


 

Description:

Spy’s on an extension in a continuous call, by dialing the extension first, once answered, the audio from the Spied on channel is also sent to the extension. Press 4 to change to “spy mode”. Press 5 to change to “train mode”. Press 6 to change to “barge mode”



 

Action Name: TrainExtension


 

Required fields:

extension (destination extension, e.g. “100-Euphoria”)

SpyExtension (extension you want to spy on, e.g. “102-Euphoria”)


 

Sample Usage: 

<ActionName>TrainExtension</ActionName>

<extension>100</extension>

<SpyExtension>102</SpyExtension>


Description:

Spy’s on an extension in a continuous call, by dialing the extension first, once answered, the audio from the Spied on channel is also sent to the extension. Audio from the extension is sent back to the Spied on extension. Press 4 to change to “spy mode”. Press 5 to change to “train mode”. Press 6 to change to “barge mode”


 



Action Name: BargeIntoExtension


 

Required fields:

extension (destination extension, e.g. “100-Euphoria”)

SpyExtension (extension you want to spy on, e.g. “102-Euphoria”)


 

Sample Usage: 

<ActionName>BargeIntoExtension</ActionName>

<extension>100</extension>

<SpyExtension>102-Euphora</SpyExtension>


 

Description:

Spy’s on an extension in a continuous call, by dialing the extension first, once answered, the audio from the Spied on channel is also sent to the extension. Audio from the extension is sent back to all channels. Press 4 to change to “spy mode”. Press 5 to change to “train mode”. Press 6 to change to “barge mode”


Call Recordings


Action Name: GetCallRecordings


 

Required fields:

pageSize (the number of rows to return. default: 100)

startAt (the start row of the entry. default: 0)

StartDate (Unless specified it will be data from the past 7 days.)

EndDate (Unless specified it will be data from the past 7 days.)


 

Optional fields:

direction (Either ASC or DESC for Ascending or Descending).

Extension (All Call Recordings this extension was part of, e.g. “100-Euphoria”)).


 

Sample Usage: 

<ActionName>GetCallRecordings</ActionName>

<pageSize>100</pageSize>

<startAt>0</startAt>

<direction>ASC</direction>

<StartDate>2016-01-01</StartDate>

<EndDate>2016-01-02</EndDate>

<extension>100</extension>


 

Description:

Returns a list of call recordings. Use the “pageSize” and “startAt” to page through the data. By default the order direction is date descending. Call recording voice data is not included in this list. If you need to validate a call recording use the MD5 hash supplied here to perform a check sum on the call data. Do not specify any TIME within the start and end dates, the API will automatically append “00:00:00” to StartDate and “23:59:59” to the EndDate. If an Extension is not specified then ALL Call Recording data for the date range will be returned.


 



Action Name: GetCallRecordingDetails


 

Required fields:

Uniqueid (the unique id of the call recording, e.g. pbx ☎ 1-1457960245 . ☎ 82845455 )

Path (the File Name of the call recording, e.gpbx ☎ 1-1457960245 . ☎ 82845455 -E ☎ 1457960127037176 .WAV)

Sample Usage: 

<ActionName>GetCallRecordingDetails</ActionName>

<Uniqueid>pbx ☎ 1-1457960245 . ☎ 82845455 </Uniqueid>

<Path>pbx ☎ 1-1457960245 . ☎ 82845455 -E ☎ 1457960127037176 .WAV</Path>


 

Description:

Returns a single row of the call recording details data and includes comment text and flagged status.


 



Action Name: DownloadCallRecordingByUniqueId


Required fields:

uniqueId (the unique id of the call recording, e.g. pbx ☎ 1-1457960273 .8281085)


 

Sample Usage: 

<ActionName>DownloadCallRecordingByUniqueId</ActionName>

<uniqueId> pbx ☎ 1-1457960273 .8281085</uniqueId >


 

Description:

Returns the BASE64 encoded text block containing the WAV file. The base64 code must be decoded and streamed to the disk to get the original WAV file. The WAV file audio stream will contain GSM codec compression. The file can be played back with most audio players.


Inbound & Outbound Calls


 

Action Name: GetOutboundCallingHistory


 

Required fields:

pageSize (The number of records to return. Max 500)

startAt (The starting number to return data from. E.g. 100)

startDate (Specifies a starting date. Format must be: YYYY-MM-DD)

endDate (Specifies an end date. Format must be: YYYY-MM-DD)


 

Optional fields:

OnlyAnswered (Only returns calls with a duration greater than 0 e.g.: yes / no)

filter (Specifies a string to filter result based on destination e.g. “083”)

Extension (All Call Recordings this extension was part of, e.g. “100-Euphoria”)).


 

Sample Usage: 

<ActionName>GetOutboundCallingHistory</ActionName>

<pageSize>100</pageSize>

<startAt>0</startAt>

<startDate>2016-01-01</startDate>

<endDate>2016-01-02</endDate>

<extension>100</extension>


 

Description:

Returns the outbound (billed) calls. Do not specify any TIME within the start and end dates, the API will automatically append “00:00:00” to StartDate and “23:59:59” to the EndDate. If an Extension is not specified then ALL Outbound data for the date range will be returned.


 

Note: There are two types of Call Detail Records:

1. Trunk calls: These are calls either out of Euphoria or into Euphoria and can be retrieved by using Get Inbound & Outbound Calls.

2. Extension Call Detail Records. These are any extension call detail records within your virtual PBX, this includes Inbound & Outbound and Inter-Extension Calls but does not include any billing data.


 

Note: The UniqueID returned in Inbound and Outbound Calls have no correlation with Call Detail Records and Call Recordings thus it cannot be used in the function “DownloadCallRecordingByUniqueId”, only the UniqueID returned by GetCallRecordings and GetCallDetailRecords are linked in any way.


 


 

Action Name: GetInboundCallingHistory


 

Required fields:

pageSize (The number of records to return. Max 500)

startAt (The starting number to return data from. E.g. 100)

startDate (Specifies a starting date. Format must be: YYYY-MM-DD)

endDate (Specifies an end date. Format must be: YYYY-MM-DD)


 

Optional fields:

OnlyAnswered (Only returns calls with a duration greater than 0)

filter (Specifies a string to filter result based on source)


 

Sample Usage: 

<ActionName>GetInboundCallingHistory</ActionName>

<pageSize>100</pageSize>

<startAt>0</startAt>

<startDate>2016-01-01</startDate>

<endDate>2016-01-02</endDate>


 

Description:

Returns the Inbound calls coming into Euphoria destined for any of your registered DID’s. Do not specify any TIME within the start and end dates, the API will automatically append “00:00:00” to StartDate and “23:59:59” to the EndDate.


 

Note: There are two types of Call Detail Records:

1. Trunk calls: These are calls either out of Euphoria or into Euphoria and can be retrieved by using Get Inbound & Outbound Calls.

2. Extension Call Detail Records. These are any extension call detail records within your virtual PBX, this includes Inbound & Outbound and Inter-Extension Calls but does not include any billing data.


 

Note: The UniqueID returned in Inbound and Outbound Calls have no correlation with Call Detail Records and Call Recordings thus it cannot be used in the function “DownloadCallRecordingByUniqueId”, only the UniqueID returned by GetCallRecordings and GetCallDetailRecords are linked in any way.


Call Detail Records



Action Name: GetCallDetailRecords


 

Required fields:

pageSize (The number of records to return. Max 500)

startAt (The starting number to return data from. E.g. 100)

startDate (specifies a starting date. Format must be: YYYY-MM-DD)

endDate (specifies an end date. Format must be: YYYY-MM-DD)


 

Optional fields:

OnlyAnswered (Only returns calls with a duration greater than 0, specify 1 for Only Answered)

filter (specifies a string to filter result based on source or destination)

extension (All Call Detail Records this extension was part of, e.g. “100”)).

crmFilter (The CRM tag assigned to a specific record by you).


 

Sample Usage: 

<ActionName>GetCallDetailRecords</ActionName>

<pageSize>100</pageSize>

<startAt>0</startAt>

<startDate>2016-01-01</startDate>

<endDate>2016-01-02</endDate>


 

Description:

Returns the inbound and outbound calls coming into your virtual PBX as well as inter-extension calls and feature codes. Do not specify any TIME within the start and end dates, the API will automatically append “00:00:00” to StartDate and “23:59:59” to the EndDate.


 

Note: There are two types of Call Detail Records:

1. Trunk calls: These are calls either out of Euphoria or Into Euphoria and can be retrieved by using Get Inbound & Outbound Calls.

2. Extension Call Detail Records. These are any extension call detail records within your virtual PBX, this includes Inbound & Outbound and Inter-Extension Calls but does not include any billing data.


 

Note: The UniqueID returned in Inbound and Outbound Calls have no correlation with Call Detail Records and Call Recordings thus it cannot be used in the function “DownloadCallRecordingByUniqueId”, only the UniqueID returned by GetCallRecordings and GetCallDetailRecords are linked in any way.


 


Action Name: GetCdrDetails


 

Required fields:

CdrID (The unique CDR row id. You can get this by using GetCallDetailRecords)


 

Sample Usage: 

<ActionName>GetCdrDetails</ActionName>

<CdrID>12345</CdrID>


 

Description:

Returns the full details of the CDR. Includes most of the details found in the list, but includes some additional entries.


 


Action Name: SetCrmTag


 

Required fields:

cdrid (The unique CDR row id. You can get this by using GetCallDetailRecords)

UniqueID (The unique call id. You can get this by using GetCallDetailRecords)

CrmTag (The Tag you want to assign to this specific CDR entry)


 

Sample Usage: 

<ActionName>SetCrmTag</ActionName>

<UniqueID>12345.12345</UniqueID>

<CrmTag>123456Example</CrmTag>

<cdrid>12345</cdrid>


 

Description:

The SetCrmTag adds a tag to a specific Call Detail Record entry and can be used to identify and mark any record or file with the same tag on a client’s dataset. This is often used on CRM systems external to Euphoria. Get Call Detail Records allows you to search for a CrmTag once it has been set.