This chapter provides information about how to control media servers in order to build applications that provide audio conferencing features.
To facilitate creating conferencing applications, the following XTML objects are provided:
Conference represents all the information related to a conference.
ConferenceArray is an array of one or more Conference objects.
Many of the PACs listed under Conferencing on the Actions tab in the workspace pane operate on a Conference object.
The properties and methods associated with a Conference object are described in the following tables. The ConferenceArray object is a somple JavaScript array and does not have any new properties or methods.
Property |
Type |
Description |
---|---|---|
asn |
Object |
Information related to active speaker notification. Note Active speaker notification is not available when using the Application Server software media server. |
asn_num_speakers |
Integer |
Number of speakers to report. |
asn_report_interval |
Integer |
Maximum interval, in milliseconds, between active speaker notification reports. |
max_parties |
Integer |
Maximum number of participants that are allowed in the conference. |
max_talkers |
Integer |
Maximum number of full-duplex talkers that are allowed in the conference. |
name |
String |
Name of the conference. |
n_loudest |
Integer |
Number of speakers that are mixed into the conference audio at any time. |
persistent |
Boolean |
If true, the conference continues until it is explicitly deleted. If false, the conference will be automatically deleted when the application session that created it terminates. |
sip_dialog |
String |
SIP dialog that is used to control this conference if the SIP interface to the media server is used. |
state |
Integer |
Current state of the conference.
|
Method |
Type |
Description |
---|---|---|
Clear() |
Void |
Clears the values of all properties and resets the message to an uninitialized state. |
LogDebug() |
Void |
Logs all of the message properties to the PS_SysLog.txt file at DEBUG level. |
LogInfo() |
Void |
Logs all of the message properties to the PS_SysLog.txt file at INFO level. |
Matches (SipMessage or SipDialog) |
Boolean |
Returns true if the SipMessage matches the SipMessage or SipDialog provided, according to matching rules specified in RFC3261. |
This section defines the unique tabs included in the Properties window and the standard results available for each PAC listed under Conferencing on the Actions tab in the workspace pane.
The Create a Conference PAC is used to create a conference on the media server and to specify the initial conference attributes.
The Create a Conference PAC includes the General tab.
Field Name |
Type |
Description |
---|---|---|
Conference object |
String |
Returns ID of the conference created. |
Persist |
Checkbox |
If selected, the conference remains active on the media server until it is explicitly deleted, even after the application session that created the conference has ended. If not selected, the conference is automatically deleted when the session that created the conference ends. |
Return Value |
Integer |
Return code indicating the outcome of the operation, such as timeout or messaging failure. |
Timeout |
Short, Integer, Float |
Time period (in seconds) in which a response is required. If there is no response within this period, the PAC returns a timeout error branch. |
Media Server Type |
String |
Type of media server used. Allowed values are CONV for Convedia media server or PCS for IMSWorkX software based media server. |
In addition to the default result exit path, the Create a Conference PAC includes the result exit paths listed in the following table.
Exit Path |
Description |
---|---|
Success |
Points to the next PAC to be executed in the event that the connection is successful. |
Error |
Points to the next PAC to be executed in the event that the operation returned an error. |
Timeout |
Points to the next PAC to be executed in the event that the operation times out. |
The Delete a Conference PAC is used to delete a specified conference. If the conference has active parties at the time it is removed, the parties are also deleted.
The Delete a Conference PAC includes the General tab.
Field Name |
Type |
Description |
---|---|---|
Conference object |
String |
Returns ID of the conference to delete. |
Return Value |
Integer |
Return code indicating the outcome of the operation, such as timeout or messaging failure. |
Timeout |
Short, Integer, Float |
Time period (in seconds) in which a response is required. If there is no response within this period, the PAC returns a timeout error branch. |
In addition to the default result exit path, the Delete a Conference PAC includes the result exit paths listed in the following table.
Exit Path |
Description |
---|---|
Success |
Points to the next PAC to be executed in the event that the connection is successful. |
Error |
Points to the next PAC to be executed in the event that the operation returned an error. |
Timeout |
Points to the next PAC to be executed in the event that the operation times out. |
The Modify a Conference PAC is used to modify the attributes of a conference.
The Modify a Conference PAC includes the General tab.
Field Name |
Type |
Description |
---|---|---|
Conference object |
String |
Returns ID of the conference to modify. |
Return Value |
Integer |
Return code indicating the outcome of the operation, such as timeout or messaging failure. |
Timeout |
Short, Integer, Float |
Time period (in seconds) in which a response is required. If there is no response within this period, the PAC returns a timeout error branch. |
In addition to the default result exit path, the Modify a Conference PAC includes the result exit paths listed in the following table.
Exit Path |
Description |
---|---|
Success |
Points to the next PAC to be executed in the event that the connection is successful. |
Error |
Points to the next PAC to be executed in the event that the operation returned an error. |
Timeout |
Points to the next PAC to be executed in the event that the operation times out. |
The Modify Party in Conference PAC is used to modify conference party parameters.
The Modify Party in Conference PAC includes the General tab.
Field Name |
Type |
Description |
---|---|---|
Action |
Drop-down List |
Modification action to take. You can modify a single participant or a group of participants. |
Conference object |
String |
Returns ID of the conference to delete. |
Endpoint |
String |
Endpoint associated with the party to be modified. |
Return Value |
Integer |
Return code indicating the outcome of the operation, such as timeout or messaging failure. |
Timeout |
Short, Integer, Float |
Time period (in seconds) in which a response is required. If there is no response within this period, the PAC returns a timeout error branch. |
In addition to the default result exit path, the Modify Party in Conference PAC includes the result exit paths listed in the following table.
Exit Path |
Description |
---|---|
Success |
Points to the next PAC to be executed in the event that the connection is successful. |
Error |
Points to the next PAC to be executed in the event that the operation returned an error. |
Timeout |
Points to the next PAC to be executed in the event that the operation times out. |
The Remove Party from Conference PAC is used to remove a specified party from a conference.
The Remove Party from Conference PAC includes the General tab.
Field Name |
Type |
Description |
---|---|---|
Conference object |
String |
ID of the conference containing the party to be removed. |
Endpoint |
String |
Endpoint associated with the party to be removed. |
Hang-up party/Put party on hold |
Radio Button |
Terminates this speaker’s dialog or puts this speaker on hold. |
Sip dialog |
String |
The dialog associated with this speaker. |
Return Value |
Integer |
Return code that indicates the outcome of the operation, such as timeout or messaging failure. |
Timeout |
Short, Integer, Float |
Time period (in seconds) in which a response is required. If there is no response within this period, the PAC returns a timeout error branch. |
In addition to the default result exit path, the Remove Party from Conference PAC includes the result exit paths listed in the following table.
Exit Path |
Description |
---|---|
Success |
Points to the next PAC to be executed in the event that the connection is successful. |
Error |
Points to the next PAC to be executed in the event that the operation returned an error. |
Timeout |
Points to the next PAC to be executed in the event that the operation times out. |
The following are guidelines to follow when developing applications:
To have an application create a conference when the first party calls in, you can use the Respond to SIP Dialog PAC or the Modify SIP Dialog PAC to connect the first caller to a newly-allocated conference.
To have an application create a scheduled conference at a specific start time, use the Create a Conference PAC to create the conference before any callers arrive.
To connect a caller directly into a conference without first connecting them to an IVR, use the Respond to SIP Dialog Request PAC.
To connect a caller who is currently in an IVR session or has an established SIP dialog, use the Modify SIP Dialog PAC and select Connect dialog to conference in the Action field on the SIP Dialog Modification tab.
To outdial from a conference and connect the called party into a conference, use the Generate SIP Dialog Request PAC and select Connect dialog to conference in the Action field on the SIP Dialog Configuration tab.