Release Notes 10.0.0 SP7

Important: The XML API 10.0.0 SP7 release changes some schema definitions. For the latest schema definitions, see the release notes announcements page. The features in this release are backward compatible with previous releases.

Overview

This release note describes the changes made in the release of Webex XML API 10.0.0 SP7. These changes apply to your integration with WBS 31. All features are backward compatible with existing integrations. The changes to the latest schema definitions are explained below.

What is New in this Release

This section describes the new features in XML API 10.0.0 SP7.

Detect meeting number according to site, callback number, and occurred time scope

A new API is introduced in this release, which allows a site administrator to check the list of Webex sessions using the callback teleconference number specified in the request during a specific time period.

Affected API

  • detectSessionByCallback

Schema changes

XML Request Schema:

![](/images/release-notes-10-0-sp7/01-image2016-9-22 16-3-26.png)

XML Request:

![](/images/release-notes-10-0-sp7/02-image2016-9-23 11-44-46.png)

XML Response Schema:

![](/images/release-notes-10-0-sp7/03-image2016-9-22 16-4-3.png)

XML Response:

![](/images/release-notes-10-0-sp7/04-image2016-9-23 0-18-30.png)

Changed Behavior

This is a new API, so there is no change in behavior.

Design

  1. Check if the login account is SiteAdmin role. If not, return exception.
  2. Check the format of callbackNumber. It should be all digits including country code and area code if there is one. Else, return exception.
  3. Check date scope of dataScopeGMT. If the time scope between occurredDateStart and occurredDateEnd is more than 5 minutes, return exception.
  4. Get SiteID based on login SiteAdmin account.
  5. Call Tahoe API (refer to TS API Design section) to get the list of meeting numbers (there may be none, one, or more than one). Tahoe queries and gets the meeting numbers by callbackNumber and occurred time scope.
  6. Loop all the meetingNumbers from Tahoe, show their meeting information one by one in the response. Refer to the Schema Changes section to know which elements should be returned.

Notes:

  1. Only a SiteAdmin has the ability to use this API for querying, else it returns exception 000001 (Message: You do not have the privilege to perform this request. New exception: No).
  2. The maximum occurred time scope is 5 minutes, else it returns exception 140015 (Message: Query time range cannot be over 5 minutes. New exception: Yes).
  3. The content of the callback number must be digits only (for example, 14086664444), else it throws exception 140016 (Message: The callbackNumber can be accepted only as numeric characters. New exception: Yes).
  4. If no meeting is found, it returns 000015 (Message: Sorry, no record found. New exception: No).
  5. This API supports ongoing meetings and the meetings that are already occurred, it does not support future meetings.

TSP API Design

** Query meeting number Request**

Type: Page to Telephony Server

Response Required: Yes

Description: Query meeting number request

Action: QMN

Field Data Type Description
siteName String The site Name.
siteID String The site ID.
ticketPKID String The ticket PKID for authentication
phoneNumber String Phone number (include country code must have, area code if have), digital only.
beginTime String GMT time: mm/dd/yyyy hh:mm:ss (9/8/2016 15:36:20)
endTime String GMT time: mm/dd/yyyy hh:mm:ss (9/8/2016 15:37:20)

Example:

<NG20>!!!!cmd=QMN&siteName=abcd&siteID =12345&ticketPKID=xxxxxxx& phoneNumber=86551123456789&beginTime=9/8/2016 15:36:20&endTime=9/8/2016 15:37:20</NG20>

** Query Meeting Number Response **

Type: Telephony Server to Page

Response Required: No

Description:Response to the Request

Action:

Field Data Type Description
resultCode Integer 0=success, 1=failure
meetingNumber String meetingNumber1%meetingNumber2

Example:

<NG20>resultCode=0&meetingNumber=123456789</NG20> <NG20>resultCode=0&meetingNumber=987654321%1234567</NG20>

XML API getSessionInfo to return extra StandaloneDialingIPAddress node for CMR meetings

getSessionInfo was enhanced to return the IP Dialing Address if it is enabled for a given site’s CMR meetings. Email invitations sent from scheduling APIs will include the Standalone IP Address associated with the meeting.

Affected API

  • GetSessionInfo

Schema changes

XML getSessionInfo API:

Sample response:

<serv:message
    xmlns:serv="http://www.webex.com/schemas/2002/06/service"
    xmlns:com="http://www.webex.com/schemas/2002/06/common"
    xmlns:ep="http://www.webex.com/schemas/2002/06/service/ep"
    xmlns:meet="http://www.webex.com/schemas/2002/06/service/meeting">
    <serv:header>
        <serv:response>
            <serv:result>SUCCESS</serv:result>
            <serv:gsbStatus>PRIMARY</serv:gsbStatus>
        </serv:response>
    </serv:header>
    <serv:body>
        <serv:bodyContent
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ep:getSessionInfoResponse">
            <ep:status>NOT_INPROGRESS</ep:status>
            ...
            ...
            <ep:sipURL>213213213@abc.webex.com</ep:sipURL>
            <ep:standaloneDialingIPAddress>12.34.56.78</ep:standaloneDialingIPAddress>
        </serv:bodyContent>
    </serv:body>
</serv:message>

Behavior Changed

Return StandaloneDialingIPAddress for a CMR meeting.

Design

if (the meeting is a CMR meeting)

if (site level itemValue for **"StandaloneDialingIPAddress"** in table **WbxSiteConfig**)

    use it

else if (web domain level itemValue for **"StandaloneDialingIPAddress"** in table **WbxWebDomainConfig**)

    use it

else

    standaloneDialingIPAddress=null

}

In order to support the new feature of joining meetings by IP, email invitations must be able to display the IP address in the message body.

Affected APIs

  • createMeeting
  • setMeeting
  • CreateMeetingAttendee

Schema changes

None.

Behavior Changed

Email invitations sent using createMeeting, setMeeting, or CreateMeetingAttendee APIs now display the IP address to join the meeting by IP.

Email invitation sample:

Design

For createMeeting/setMeeting/CreateMeetingAttendee:

if (the meeting is a CMR meeting)

append the following info in email template variables **%TPInformationHtml%**, **%TPInformationText%**, **%TPInformationHtml_Simple%**, **%TPInformationText_Simple%**

     \nAlternatively dial [**standaloneDialingIPAddress**] and enter your meeting number.

     or this for HTML variables:

     <tr style="margin:0px"><td>Alternatively dial [**standaloneDialingIPAddress**] and enter your meeting number.</td></tr>

}

Test Cases

Features Email Template Name When to Send Email Tested
Schedule Meeting Meeting Scheduled Host schedule mc meeting and It will send this email to host. Y
Meeting Invitation Host schedule meeting with inviting attendee, and send this email to invited attendee. Y
Update Meeting Meeting Information Updated Host updates the meeting info or only meeting’s time, system send this email to host. Y
Meeting Rescheduled Host changes the meeting's time, send this email to Attendee. Y
Updated Meeting Invitation Host updates the meeting info, system send this email to Attendee. Y
Registration Meeting Registration Confirmed* The meeting need registration and host approved the registration.
It will send this email to those registers.
Y

For email template "Meeting Registration Confirmed", use CreateMeetingAttendee with the following request as a sample to send the email:

<?xml version="1.0" encoding="UTF-8"?>
<serv:message
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:serv="http://www.webex.com/schemas/2002/06/service"
  xsi:schemaLocation="http://www.webex.com/schemas/2002/06/service
  http://www.webex.com/schemas/2002/06/service/service.xsd">
   <header>
       <securityContext>
           <webExID>user1</webExID>
           <password>xxxxx</password>
           <siteName>testsite1</siteName>
       </securityContext>
   </header>
   <body>
       <bodyContent xsi:type="java:com.webex.service.binding.attendee.CreateMeetingAttendee">
           <person>
               <name>user test 2</name>
               <email>ut2@qa.webex.com</email>
               <type>VISITOR</type>
           </person>
           <joinStatus>ACCEPT</joinStatus>
           <role>ATTENDEE</role>
           <sessionKey>987654321</sessionKey>
           <emailInvitations>true</emailInvitations>
           <!--<attendees>
               <person>
                   <name>user test 3</name>
                   <email>ut3@qa.webex.com</email>
                   <type>VISITOR</type>
               </person>
               <joinStatus>ACCEPT</joinStatus>
               <role>ATTENDEE</role>
               <emailInvitations>true</emailInvitations>
           </attendees>-->
       </bodyContent>
   </body>
</serv:message>

The XML API schemas and release notes are available at the Cisco Webex Developer Portal:

XML API Reference

The URL API release notes are available at the Cisco Webex Developer Portal:

URL API Reference