---
sourceDocument: Xanadu API Reference
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - en-US

ft:publication_title :

    - Xanadu API Reference

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# NotifyOnTaskClient - Client

# NotifyOnTaskClient - Client {#ariaid-title1}

* Release version: Xanadu
* 
* Updated August 1, 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 16 minutes to read

The NotifyOnTaskClient API provides methods for sending SMS messages or starting/managing a conference call for various telephony service providers, such as Zoom and Webex.

Any UI can consume the NotifyOnTaskClient API by explicitly including the
NotifyOnTaskClient UI script.

Using the NotifyOnTaskClient API you can:  
* Start a conference call
* End a conference call
* Add participants
* Perform actions that are available through the telephony driver such as:
  * mute/unmute participants
  * remove participants from a conference call
  * add participants to a conference call
  * start a conference call
  * end a conference call
  {#NotifyOnTaskClient__ul_e5f_pqy_4hb}
{#NotifyOnTaskClient__ul_qvb_kqy_4hb}

The Notify (com.snc.notify) plugin requires a separate subscription. For additional
information on activating the Notify plugin, see [Activate Notify](https://www.servicenow.com/docs/access?context=t_ActivateNotify&version=xanadu&pubname=xanadu-servicenow-platform&ft:locale=en-US).

## NotifyOnTaskClient - addParticipants(Object data) {#ariaid-title2}

Adds the specified participants to a specified conference call.
{#NClient-addParticipants_O__dataObject-table-NConf__entry__3}

| Name | Type | Description |
|-|-|-|
| data | Object | Object that describes the conference call. |
| data.addToWorkNotes | Boolean | Flag that indicates whether to add information about the participants that were included in the conference call in the work notes field of the associated record. For this functionality to work, you must also specify values in the data.table and data.sysId parameters. These parameters identify the record in which to add the work notes. Default: false |
| data.confId | String | Required. Sys ID of the conference call. The conference Sys ID is located in the Notify Conference Call \[notify_conference_call\] table. |
| data.items | Array | Required. Information for each participant to include in the conference call. Valid array values: * id: User Sys ID; located in the User \[sys_User\] table. * notifyParticipantId: Participant Sys ID; located in the Notify Participant \[notify_participant\] table. * phoneNumber: Phone number of the participant. If this value is passed in conjunction with either the id or notifyParticipantId, this value supersedes the phone numbers in the user/participant record and is used to place the call. * email: email address of the participant. {#NClient-addParticipants_O__ul_qzh_pqt_rhb} |
| data.message | String | Message that is read aloud when a user answers the call, such as, "P1 incident has been created please login to instance." |
| data.serviceProvider | String | Required. Name of conference service provider, such as Zoom or Webex. |
| data.sysId | String | Sys ID of the source record to associate with the conference call. For example, if a conference call is held to discuss a specific incident or problem, put the Sys ID of the incident or problem record in this value. This Sys ID is stored in the Source column of the NotifyConference Call \[notify_conference_call\] table and can later be tracked. This parameter is used in conjunction with the data.Table, data.addToWorkNotes, and allowMulticonference parameters. You should configure this value when the conference call is initially created through a "start" action. If required, you can also set this value through this method. |
| data.table | String | Table that contains the source record to associate with the conference call. A source record can be any record, such as an "incident" or "problem", that is the topic of discussion in the conference call. This table name is stored in the Table column of the NotifyConference Call \[notify_conference_call\] table and can be tracked. This parameter is used in conjunction with the data.sysId, data.addToWorkNotes, and allowMulticonference parameters. You should configure this value when the conference call is initially created through a "start" action. If required, you can also set this value through this method. |
[Table 1. Parameters]

{#NClient-addParticipants_O__dataObject-table-NConf} {#NClient-addParticipants_O__table_rpj_1y5_nhb__entry__2}

| Type | Description |
|-|-|
| Object | Results of the conference action. `<action>.status`: Status of the conference action. * Data type: Boolean * Valid values: * true: Conference action succeeded * false: Conference action failed {#NClient-addParticipants_O__ul_w5y_hyt_b3b} {#NClient-addParticipants_O__ul_psg_gyt_b3b} `<action>.successMessages`: If <var class="keyword varname">status</var> is true, success message(s), else empty. * Data type: Array of Strings {#NClient-addParticipants_O__ul_qm2_myt_b3b} `<action>.warnMessages`: If <var class="keyword varname">status</var> is false, any warning messages thrown during processing. * Data type: Array of Strings {#NClient-addParticipants_O__ul_xbz_nyt_b3b} `<action>.errorMessages`: If <var class="keyword varname">status</var> is false, any error messages thrown during processing. * Data type: Array of Strings {#NClient-addParticipants_O__ul_tht_4yt_b3b} |
[Table 2. Returns]

{#NClient-addParticipants_O__table_rpj_1y5_nhb}  

    function addToConferenceCall() {
        var data = NotifyOnTaskClient.getNotifyActionTemplate();
        data.serviceProvider = 'Telephony'; // e.g 'Zoom', 'WebEx'
        data.confId = 'Active conference sysId';
        data.items.push({ id: 'userSysId' });
        data.items.push({ phoneNumber: '+917799555331' });
        data.items.push({ email: 'yln99518@gmail.com' });

        NotifyOnTaskClient.addParticipants(data).then(function (result) {
            var joinActionResult = result[0];
            if(joinActionResult.status) {
                joinActionResult.successMessages.forEach(function(msg) {
                    console.log(msg);
                });
                return;
            }

            joinActionResult.warnMessages.forEach(function(msg) {
                console.warn(msg);
            });
            joinActionResult.errorMessages.forEach(function(msg) {
                console.error(msg);
            });
        }, function (errMsg) {
            console.log(errMsg);
        });
    }

## NotifyOnTaskClient - doConferenceAction(String action, Object data) {#ariaid-title3}

Performs the specified conference call action, such as starting/ending a conference
call or joining, removing, muting, or unmuting participants from a conference call.
You can start a new conference call and add participants within a single call to this method or call the method multiple times to start the call and then manage participants separately. In addition, through the passed in data object, you can configure the method to:

* Save pointers in the conference call record to the specific record (source record), such as an incident or problem, that is the topic of discussion for the conference call.
* Allow/disallow multiple conference calls for a source record.
* Automatically log the participants that were in the conference call in the Work notes field of the source record.
* Have a message read aloud when a participant answers an outgoing call from the conference.
{#NClient-doConferenceAction_S_O__ul_rqn_z2y_vhb}
{#NClient-doConferenceAction_S_O__table_qqs_vdv_nhb__entry__3}{#NClient-doConferenceAction_S_O__data.addToWorkNotes-p-NConf}{#NClient-doConferenceAction_S_O__data.allowMulticonference-p-NConf}{#NClient-doConferenceAction_S_O__data.confId-p-NConf}{#NClient-doConferenceAction_S_O__data.fromNumber-p-NConf}{#NClient-doConferenceAction_S_O__data.isNewConference-p-NConf}{#NClient-doConferenceAction_S_O__data.message-p-NConf}{#NClient-doConferenceAction_S_O__data.items-p-NConf}{#NClient-doConferenceAction_S_O__data.serviceProvider-p-NConf}{#NClient-doConferenceAction_S_O__data.sys_id-p-NConf}{#NClient-doConferenceAction_S_O__data.table-p-NConf}

| Name | Type | Description |
|-|-|-|
| action | String | Defines the conference call action to perform. The following are the available conference call actions: * start: Starts the conference call identified in data.confId * end: Terminates the conference call identified in data.confId * join: Adds the participant specified in the data.items array to the conference call identified in data.confId * multiJoin: Adds the participants specified in the data.items array to the conference call identified in data.confId * selfJoin: Adds the currently logged in user to the conference call (no entry in data.items required.) * kick: Removes the participant specified in the data.items array from the conference call identified in data.confId * multiKick: Removes the participants specified in the data.items array from the conference call identified in data.confId * mute: Mutes the participant specified in the data.items array on the conference call identified in data.confId * multiMute: Mutes the participants specified in the data.items array on the conference call identified in data.confId * unmute: Unmutes the participant specified in the data.items array from the conference call identified in data.confId * multiUnmute: Unmutes the participants specified in the data.items array from the conference call identified in data.confId {#NClient-doConferenceAction_S_O__ul_pq5_qfv_nhb} |
| data | Object | Object that describes the conference call. |
| data.addToWorkNotes | Boolean | Flag that indicates whether to add information about the participants that were included in the conference call in the work notes field of the associated record. For this functionality to work, you must also specify values in the data.table and data.sysId parameters. These parameters identify the record in which to add the work notes.{#NClient-doConferenceAction_S_O__data.addToWorkNotes2-p-NConf} Default: false Actions for which this parameter is valid: * start * join * multiJoin * selfJoin {#NClient-doConferenceAction_S_O__ul_kwg_ktx_vhb} |
| data.allowMulticonference | Boolean | Flag that indicates whether to allow multiple conference calls for a specific record at one time. For this functionality to work, you must also specify values in the data.table and data.sysId parameters. These parameters identify the record that is allowed to have multiple conference calls.{#NClient-doConferenceAction_S_O__data.allowMulticonference2-p-NConf} Default: false Actions for which this parameter is valid: * start {#NClient-doConferenceAction_S_O__ul_ay4_mtx_vhb} |
| data.confId | String | Sys ID of the conference call. The conference Sys ID is located in the Notify Conference Call \[notify_conference_call\] table.{#NClient-doConferenceAction_S_O__data.confId2-p-NConf} Actions for which this parameter is required: * end * join * multiJoin * selfJoin {#NClient-doConferenceAction_S_O__ul_afs_qsx_vhb} Note: Participant actions such as mute, unmute, and kick do not require this parameter to be set as the method obtains this information from the Notify Conference Call Participant \[notify_participant\] table. |
| data.fromNumber | String | Service provider number to call into for the conference call. Locate this value in the Number or Phone number column of the Notify Phone Number \[notify_number\] table.{#NClient-doConferenceAction_S_O__data.fromNumber2-p-NConf} Actions for which this parameter is required: * start {#NClient-doConferenceAction_S_O__ul_exs_stx_vhb} |
| data.isNewConference | Boolean | Flag that indicates whether this is a new or an existing conference call. Valid values: * true: New conference call * false: Existing conference call {#NClient-doConferenceAction_S_O__ul_q1m_wbv_nhb} Default: false Actions for which this parameter is valid: * start {#NClient-doConferenceAction_S_O__ul_d1d_stx_vhb} |
| data.message | String | Message that is read aloud when a user answers the call, such as, "P1 incident has been created please login to instance." Actions for which this parameter is valid: * start * join * multiJoin {#NClient-doConferenceAction_S_O__ul_jnl_ntx_vhb} |
| data.items | Array | Information for each participant to include in the conference call. Valid array values: * id: Sys ID of user; located in the User \[sys_User\] table.Valid actions: join, multiJoin, start * notifyParticipantId: Sys ID of the Notify participant; located in the Notify Participant \[notify_participant\] table.Valid actions: join, kick, multiJoin, mute, start, unmute * phoneNumber: Phone number of the participant. If this value is passed in conjunction with either the id or notifyParticipantId, this value supersedes the phone numbers in the user/participant record and is used to place the call. Valid actions: join, multiJoin, start * email: Email address of the participant.Valid actions: join, multiJoin, start {#NClient-doConferenceAction_S_O__ul_qzh_pqt_rhb} |
| data.serviceProvider | String | Required. Name of conference service provider, such as Zoom or Webex. Actions for which this parameter is required: * all {#NClient-doConferenceAction_S_O__ul_vwb_psx_vhb} |
| data.sysId | String | Sys ID of the source record to associate with the conference call. For example, if a conference call is held to discuss a specific incident or problem, put the Sys ID of the incident or problem record in this value. This Sys ID is stored in the Source column of the NotifyConference Call \[notify_conference_call\] table and can later be tracked. {#NClient-doConferenceAction_S_O__data.sys_id-p2-NConf} This parameter is used in conjunction with the data.Table, data.addToWorkNotes, and allowMulticonference parameters.{#NClient-doConferenceAction_S_O__data.sys_id-p3-NConf} Actions for which this parameter is valid: * start {#NClient-doConferenceAction_S_O__ul_h3l_qsx_vhb} |
| data.table | String | Table that contains the source record to associate with the conference call. A source record can be any record, such as an "incident" or "problem", that is the topic of discussion in the conference call. This table name is stored in the Table column of the NotifyConference Call \[notify_conference_call\] table and can be tracked.{#NClient-doConferenceAction_S_O__data.table-p2-NConf} This parameter is used in conjunction with the data.sysId, data.addToWorkNotes, and allowMulticonference parameters.{#NClient-doConferenceAction_S_O__data.table-p3-NConf} Actions for which this parameter is valid: * start {#NClient-doConferenceAction_S_O__ul_mj1_4sx_vhb} |
[Table 3. Parameters]

{#NClient-doConferenceAction_S_O__table_qqs_vdv_nhb} {#NClient-doConferenceAction_S_O__table_rqs_vdv_nhb__entry__2}

| Type | Description |
|-|-|
| Object | Results of the conference action. `<action>.status`: Status of the conference action. * Data type: Boolean * Valid values: * true: Conference action succeeded * false: Conference action failed {#NClient-doConferenceAction_S_O__ul_w5y_hyt_b3b} {#NClient-doConferenceAction_S_O__ul_psg_gyt_b3b} `<action>.successMessages`: If <var class="keyword varname">status</var> is true, success message(s), else empty. * Data type: Array of Strings {#NClient-doConferenceAction_S_O__ul_qm2_myt_b3b} `<action>.warnMessages`: If <var class="keyword varname">status</var> is false, any warning messages thrown during processing. * Data type: Array of Strings {#NClient-doConferenceAction_S_O__ul_xbz_nyt_b3b} `<action>.errorMessages`: If <var class="keyword varname">status</var> is false, any error messages thrown during processing. * Data type: Array of Strings {#NClient-doConferenceAction_S_O__ul_tht_4yt_b3b} |
[Table 4. Returns]

{#NClient-doConferenceAction_S_O__table_rqs_vdv_nhb}  
The following example shows how to create a function to call doConferenceAction() to
manipulate the participants in a conference call by passing in the action and the
participants.


    /**
     * 
     * @param {string} action - action to perform on the conference object or participant object
     * @param {Array} participants;
     */
    function doConferenceAction(action, participants) {
        var data = NotifyOnTaskClient.getNotifyActionTemplate();
        data.serviceProvider = 'Telephony'; // e.g 'Zoom', 'WebEx'
        data.confId = 'Active conference sysId';
        data.items = participants;

        NotifyOnTaskClient.doConferenceAction(action, data).then(function (result) {
            var kickActionResult = result[0];
            if (kickActionResult.status)
                console.log(action + ' succeeded');
            else {
                kickActionResult.warnMessages.forEach(function (msg) {
                    console.warn(msg);
                });
                kickActionResult.errorMessages.forEach(function (msg) {
                    console.error(msg);
                });
            }
        }, function (errMsg) {
                console.log(errMsg)
        });
    }

    // kick participants

    doConferenceAction('kick', [{notifyParticipantId: 'notifyParticipantSysId'}]);

    // kick multiple participants

    doConferenceAction('multiKick',
        [{notifyParticipantId: 'notifyParticipantSysId'},
        {notifyParticipantId: 'notifyParticipantSysId'}]);

    // Mute participants
    doConferenceAction('mute', [{notifyParticipantId: 'notifyParticipantSysId'}]);
    doConferenceAction('mute', [{notifyParticipantId: 'notifyParticipantSysId'}]);

    doConferenceAction('multiMute',
        [{notifyParticipantId: 'notifyParticipantSysId'},
        {notifyParticipantId: 'notifyParticipantSysId'}]);

    // self join to any confernece. 
    doConferenceAction('selfJoin', [{id: 'logged in userId'}]);

## NotifyOnTaskClient - endConference(Object data) {#ariaid-title4}

Terminates the specified conference call.
{#NClient-endConference_O__entry__3}{#NClient-endConference_O__data-row-NConf}{#NClient-endConference_O__data.confId-row-NConf}

| Name | Type | Description |
|-|-|-|
| data | Object | Object that describes the conference call. |
| data.confId | String | Sys ID of the conference call. |
| data.serviceProvider | String | Required. Name of conference service provider, such as Zoom or Webex. |
[Table 5. Parameters]

{#NClient-endConference_O__table_dqd_qcv_nhb__entry__2}

| Type | Description |
|-|-|
| Object | Results of the conference action. `<action>.status`: Status of the conference action. * Data type: Boolean * Valid values: * true: Conference action succeeded * false: Conference action failed {#NClient-endConference_O__ul_w5y_hyt_b3b} {#NClient-endConference_O__ul_psg_gyt_b3b} `<action>.successMessages`: If <var class="keyword varname">status</var> is true, success message(s), else empty. * Data type: Array of Strings {#NClient-endConference_O__ul_qm2_myt_b3b} `<action>.warnMessages`: If <var class="keyword varname">status</var> is false, any warning messages thrown during processing. * Data type: Array of Strings {#NClient-endConference_O__ul_xbz_nyt_b3b} `<action>.errorMessages`: If <var class="keyword varname">status</var> is false, any error messages thrown during processing. * Data type: Array of Strings {#NClient-endConference_O__ul_tht_4yt_b3b} |
[Table 6. Returns]

{#NClient-endConference_O__table_dqd_qcv_nhb}  

    function endConferenceCall() {
        var data = NotifyOnTaskClient.getNotifyActionTemplate();
        data.serviceProvider = 'Telephony'; // e.g 'Zoom', 'WebEx'
        data.confId = 'Active conference sysId';

        NotifyOnTaskClient.endConference(data).then(function (result) {
            var endActionResult = result[0];
            if (endActionResult.status)
                console.log('Conference has been ended');
            else {
                endActionResult.warnMessages.forEach(function (msg) {
                    console.warn(msg);
                });
                endActionResult.errorMessages.forEach(function (msg) {
                    console.error(msg);
                });
            }
        }, function (errMsg) {
            console.log(errMsg);
        });
    }

## NotifyOnTaskClient - getNotifyActionTemplate() {#ariaid-title5}

Returns a JSON data template to use with the doConferenceAction()
method. Using this template automatically structures the data object so that you don't have to
manually create it.
Call this method prior to calling the doConferenceAction() method. For
the desired conference call action, set the desired parameters within the template, and then
pass the template in the doConferenceAction() call. For additional
information on the valid parameters for each action, see [doConferenceAction()](https://servicenow-prod.fluidtopics.net/Fxag52nZAZvkIcxl2sn2Eg#NotifyOnTaskClient "The NotifyOnTaskClient API provides methods for sending SMS messages or starting/managing a conference call for various telephony service providers, such as Zoom and Webex.").  
Note:  
This is a helper method. You can also manually construct this object and pass it into the doConferenceAction() method and have the same outcome.
{#NClient-getNotifyActionTemplate__table_azh_qyg_nhb__entry__3}

| Name | Type | Description |
|-|-|-|
| None |   |   |
[Table 7. Parameters]

{#NClient-getNotifyActionTemplate__table_azh_qyg_nhb} {#NClient-getNotifyActionTemplate__table_c2h_cwd_vhb__entry__2}{#NClient-getNotifyActionTemplate__data.addToWorkNotes-p-NConf}{#NClient-getNotifyActionTemplate__data.allowMulticonference-p-NConf}{#NClient-getNotifyActionTemplate__data.confId-p-NConf}{#NClient-getNotifyActionTemplate__data.fromNumber-p-NConf}{#NClient-getNotifyActionTemplate__data.isNewConference-p-NConf}{#NClient-getNotifyActionTemplate__data.items-p-NConf}{#NClient-getNotifyActionTemplate__data.message-p-NConf}{#NClient-getNotifyActionTemplate__data.serviceProvider-p-NConf}{#NClient-getNotifyActionTemplate__data.sys_id-p-NConf}{#NClient-getNotifyActionTemplate__data.table-p-NConf}

| Type | Description |
|-|-|
| data | Object that describes the conference call. |
| data.addToWorkNotes | Flag that indicates whether to add information about the participants that were included in the conference call in the work notes field of the associated record. For this functionality to work, you must also specify values in the data.table and data.sysId parameters. These parameters identify the record in which to add the work notes.{#NClient-getNotifyActionTemplate__data.addToWorkNotes2-p-NConf} Default: false Actions for which this parameter is valid: * start * join * multiJoin * selfJoin {#NClient-getNotifyActionTemplate__ul_kwg_ktx_vhb} |
| data.allowMultconference | Flag that indicates whether to allow multiple conference calls for a specific record at one time. For this functionality to work, you must also specify values in the data.table and data.sysId parameters. These parameters identify the record that is allowed to have multiple conference calls.{#NClient-getNotifyActionTemplate__data.allowMulticonference2-p-NConf} Default: false Actions for which this parameter is valid: * start {#NClient-getNotifyActionTemplate__ul_ay4_mtx_vhb} |
| data.confId | Sys ID of the conference call. The conference Sys ID is located in the Notify Conference Call \[notify_conference_call\] table.{#NClient-getNotifyActionTemplate__data.confId2-p-NConf} Actions for which this parameter is required: * end * join * multiJoin * selfJoin {#NClient-getNotifyActionTemplate__ul_afs_qsx_vhb} Note: Participant actions such as mute, unmute, and kick do not require this parameter to be set as the method obtains this information from the Notify Conference Call Participant \[notify_participant\] table. |
| data.fromNumber | Service provider number to call into for the conference call. Locate this value in the Number or Phone number column of the Notify Phone Number \[notify_number\] table.{#NClient-getNotifyActionTemplate__data.fromNumber2-p-NConf} Actions for which this parameter is required: * start {#NClient-getNotifyActionTemplate__ul_exs_stx_vhb} |
| data.isNewConference | Flag that indicates whether this is a new or an existing conference call. Valid values: * true: New conference call * false: Existing conference call {#NClient-getNotifyActionTemplate__ul_q1m_wbv_nhb} Default: false Actions for which this parameter is valid: * start {#NClient-getNotifyActionTemplate__ul_d1d_stx_vhb} |
| data.items | Information for each participant to include in the conference call. Valid array values: * id: Sys ID of user; located in the User \[sys_User\] table.Valid actions: join, multiJoin, start * notifyParticipantId: Sys ID of the Notify participant; located in the Notify Participant \[notify_participant\] table.Valid actions: join, kick, multiJoin, mute, start, unmute * phoneNumber: Phone number of the participant. If this value is passed in conjunction with either the id or notifyParticipantId, this value supersedes the phone numbers in the user/participant record and is used to place the call. Valid actions: join, multiJoin, start * email: Email address of the participant.Valid actions: join, multiJoin, start {#NClient-getNotifyActionTemplate__ul_qzh_pqt_rhb} |
| data.message | Message that is read aloud when a user answers the call, such as, "P1 incident has been created please login to instance." Actions for which this parameter is valid: * start * join * multiJoin {#NClient-getNotifyActionTemplate__ul_jnl_ntx_vhb} |
| data.serviceProvider | Required. Name of conference service provider, such as Zoom or Webex. Actions for which this parameter is required: * all {#NClient-getNotifyActionTemplate__ul_vwb_psx_vhb} |
| data.sysId | Sys ID of the source record to associate with the conference call. For example, if a conference call is held to discuss a specific incident or problem, put the Sys ID of the incident or problem record in this value. This Sys ID is stored in the Source column of the NotifyConference Call \[notify_conference_call\] table and can later be tracked. {#NClient-getNotifyActionTemplate__data.sys_id-p2-NConf} This parameter is used in conjunction with the data.Table, data.addToWorkNotes, and allowMulticonference parameters.{#NClient-getNotifyActionTemplate__data.sys_id-p3-NConf} Actions for which this parameter is valid: * start {#NClient-getNotifyActionTemplate__ul_h3l_qsx_vhb} |
| data.table | Table that contains the source record to associate with the conference call. A source record can be any record, such as an "incident" or "problem", that is the topic of discussion in the conference call. This table name is stored in the Table column of the NotifyConference Call \[notify_conference_call\] table and can be tracked.{#NClient-getNotifyActionTemplate__data.table-p2-NConf} This parameter is used in conjunction with the data.sysId, data.addToWorkNotes, and allowMulticonference parameters.{#NClient-getNotifyActionTemplate__data.table-p3-NConf} Actions for which this parameter is valid: * start {#NClient-getNotifyActionTemplate__ul_mj1_4sx_vhb} |
[Table 8. Returns]

{#NClient-getNotifyActionTemplate__table_c2h_cwd_vhb}  
The following example shows how to call getNotifyActionTemplate() to obtain the data
template necessary to define the actions for doConferenceAction().


    /**
     * 
     * @param {string} action - action to perform on the conference object or participant object
     * @param {Array} participants;
     */
    function doConferenceAction(action, participants) {
        var data = NotifyOnTaskClient.getNotifyActionTemplate();
        data.serviceProvider = 'Telephony'; // e.g 'Zoom', 'WebEx'
        data.confId = 'Active conference sysId';
        data.items = participants;

        NotifyOnTaskClient.doConferenceAction(action, data).then(function (result) {
            var kickActionResult = result[0];
            if (kickActionResult.status)
                console.log(action + ' succeeded');
            else {
                kickActionResult.warnMessages.forEach(function (msg) {
                    console.warn(msg);
                });
                kickActionResult.errorMessages.forEach(function (msg) {
                    console.error(msg);
                });
            }
        }, function (errMsg) {
                console.log(errMsg)
        });
    }

    // kick participants

    doConferenceAction('kick', [{notifyParticipantId: 'notifyParticipantSysId'}]);

    // kick multiple participants

    doConferenceAction('multiKick',
        [{notifyParticipantId: 'notifyParticipantSysId'},
        {notifyParticipantId: 'notifyParticipantSysId'}]);

    // Mute participants
    doConferenceAction('mute', [{notifyParticipantId: 'notifyParticipantSysId'}]);
    doConferenceAction('mute', [{notifyParticipantId: 'notifyParticipantSysId'}]);

    doConferenceAction('multiMute',
        [{notifyParticipantId: 'notifyParticipantSysId'},
        {notifyParticipantId: 'notifyParticipantSysId'}]);

    // self join to any confernece. 
    doConferenceAction('selfJoin', [{id: 'logged in userId'}]);

## NotifyOnTaskClient - start(Object data) {#ariaid-title6}

Starts a new conference call.
{#NClient-start_O__entry__3}

| Name | Type | Description |
|-|-|-|
| data | Object | Object that describes the conference call. |
| data.addToWorkNotes | Boolean | Optional.Flag that indicates whether to add information about the participants that were included in the conference call in the work notes field of the associated record. For this functionality to work, you must also specify values for the data.table and data.sysId parameters to identify the record in which to add the work notes.{#NClient-start_O__data.addToWorkNotes2-p-NConf} Default: false |
| data.allowMulticonference | Boolean | Optional. Flag that indicates whether to allow multiple conference calls for a specific record at one time. For this functionality to work, you must also specify values in the data.table and data.sysId parameters. These parameters identify the record that is allowed to have multiple conference calls. Default: false |
| data.fromNumber | String | Required. Service provider number to call into for the conference call. Locate this value in the Number or Phone number column of the Notify Phone Number \[notify_number\] table. |
| data.items | Array | Optional. Information for each participant to include in the conference call. Valid array values: * id: User Sys ID; located in the User \[sys_User\] table. * notifyParticipantId: Participant Sys ID; located in the Notify Participant \[notify_participant\] table. * phoneNumber: Phone number of the participant. If this value is passed in conjunction with either the id or notifyParticipantId, this value supersedes the phone numbers in the user/participant record and is used to place the call. * email: Email address of the participant. {#NClient-start_O__ul_qzh_pqt_rhb} |
| data.message | String | Optional. Message that is read aloud when a user answers the call, such as, "P1 incident has been created please login to instance." |
| data.serviceProvider | String | Required. Name of conference service provider, such as Zoom or Webex. |
| data.sysId | String | Optional. Sys ID of the source record to associate with the conference call. For example, if a conference call is held to discuss a specific incident or problem, put the Sys ID of the incident or problem record in this value. This Sys ID is stored in the Source column of the NotifyConference Call \[notify_conference_call\] table and can later be tracked. This parameter is used in conjunction with the data.Table, data.addToWorkNotes, and allowMulticonference parameters. |
| data.table | String | Optional. Table that contains the source record to associate with the conference call. A source record can be any record, such as an "incident" or "problem", that is the topic of discussion in the conference call. This table name is stored in the Table column of the NotifyConference Call \[notify_conference_call\] table and can be tracked. This parameter is used in conjunction with the data.sysId, data.addToWorkNotes, and allowMulticonference parameters. |
[Table 9. Parameters]

{#NClient-start_O__table_jrr_133_nhb__entry__2}

| Type | Description |
|-|-|
| Object | Results of the conference action. `<action>.status`: Status of the conference action. * Data type: Boolean * Valid values: * true: Conference action succeeded * false: Conference action failed {#NClient-start_O__ul_w5y_hyt_b3b} {#NClient-start_O__ul_psg_gyt_b3b} `<action>.successMessages`: If <var class="keyword varname">status</var> is true, success message(s), else empty. * Data type: Array of Strings {#NClient-start_O__ul_qm2_myt_b3b} `<action>.warnMessages`: If <var class="keyword varname">status</var> is false, any warning messages thrown during processing. * Data type: Array of Strings {#NClient-start_O__ul_xbz_nyt_b3b} `<action>.errorMessages`: If <var class="keyword varname">status</var> is false, any error messages thrown during processing. * Data type: Array of Strings {#NClient-start_O__ul_tht_4yt_b3b} |
[Table 10. Returns]

{#NClient-start_O__table_jrr_133_nhb}  

    function startConferenceCall() {
        var data = NotifyOnTaskClient.getNotifyActionTemplate();
        data.table = 'incident';
        data.sysId = '1234';
        data.serviceProvider = serviceProvider;
        data.addToWorkNotes = true;
        data.fromNumber = 'Telephony Number';
        data.items.push({ id: 'userSysId' });
        data.items.push({ phoneNumber: '+917799555332' });
        data.items.push({ email: 'yln99517@gmail.com' });

        NotifyOnTaskClient.start(data).then(function (result) {
            var startActionResult = result[0];
            if(startActionResult.status) {
                startActionResult.successMessages.forEach(function(msg) {
                    console.log(msg);
                });
                return;
            }

            startActionResult.warnMessages.forEach(function(msg) {
                console.warn(msg);
            });
            startActionResult.errorMessages.forEach(function(msg) {
                console.error(msg);
            });
        }, function (errMsg) {
            console.log(errMsg);
        });
    }


