XML API 7.3.0 Release Notes
New Features
Lower Case email address modification
Description:
When creating meetings, events, and training sessions as well as creating or registering meeting attendees, email addresses will be converted to lower case when saved in the report DB to match with the URL APIs behavior that converts the email into lower case
Affected API's:
CreateMeeting/SetMeeting, CreateEvent/SetEvent, CreateTrainingSession/SetTraingSession,
CreateMeetingAttendee, RegisterMeetingAttendee,
CreateTeleconferenceSession/SetTeleconferenceSession
XSD Design:
No change
Backward compatibility:
Not backward compatible, this may impact the current APP that has attendee email in mixes case
GetSessionInfo returns more telephony info
Description:
To support mobile Android Meeting Client V3.0, it requires XMLAPI to return more telephony info as following:
- Return whether meeting is VoIP only meeting. (for TC only)
- Return whether meeting is a TSP meeting. (for TC only)
- Return toll/toll free flag setting in TSP account. (for TC only)
Affected API's:
GetSessionInfo
XSD Design:
GetSessionInfo response add the following element
Element | Parent | Definition | Type | Default |
---|---|---|---|---|
voip | telephony | Indicate whether meeting turn on VoIP. | boolean, 0..1, | false |
enableTSP | telephony | Indicate whether this meeting is using TSP telephony | boolean, 0..1 | false |
tollFreeCallInData | callInNum |
Comma delimited string containing country code and toll/tollfree flag for <tollFreeNum> fields. Format is: "TollFreeFlag1,CountryCodeExt1" |
String, 0..1 | |
tollCallInData | callInNum |
Comma delimited string containing country code and toll/tollfree flag for <tollNum> field. Format is: "TollFreeFlag2,CountryCodeExt2" |
String, 0..1 |
Backward compatibility:
No backward compatibility issue.
GetSesssionInfo returns meeting E2E info for MC
Description:
Mobile requires GetSessionInfo to return info about whether a MC meeting supports E2E (End-to-End). If both site and sessiontype enable E2E encryption and meeting support E2E, then return <supportE2E>=TRUE, otherwise, return as FALSE. This only applies to MC meeting since only MC supports E2E currently.
Affected API's:
GetSessionInfo
XSD Design:
GetSessionInfo response adds the following element
Element | Parent | Definition | Type | Default |
---|---|---|---|---|
supportE2E | root | Indicate whether MC meeting is an E2E enabled meeting | Boolean, 0..1, | false |
Backward compatibility:
No backward compatibility issue.
GetSessionInfo returns TC session fee
Description:
Mobile requires GetSessionInfo returns a TC session's session fee. This change allows both SuperAdmin and SiteAdmin to turn on /off meeting with fee. When it's on, <sessionFee> returns the value. When it's off, <sessionFee> is not returned.
Affected API's:
GetSessionInfo
XSD Design:
GetSessionInfo response add the following element
Element | Parent | Definition | Type | Default |
---|---|---|---|---|
sessionFee | metaData | Returns TC session fee | long, 0..1 |
Backward compatibility:
No backward compatibility issue.
GetSessionInfo returns the format of Agenda and Description
Description:
Mobile requires GetSessionInfo to return the format of TC session's Agenda and Description. This will return
Affected API's:
GetSessionInfo
XSD Design:
GetSessionInfo response adds the following element
Element | Parent | Definition | Type | Default |
---|---|---|---|---|
agendaFormat | <metaData> | The format of TC session's agenda. The value is like TEXT or HTML. |
Enum: TEXT, HTML |
TEXT |
descriptionFormat | <metaData> | The format of TC session's description. The value is like TEXT or HTML. |
Enum: TEXT, HTML |
TEXT |
Backward compatibility:
No backward compatibility issue.
GetSessionInfo returns meeting registration status
Description:
Mobile requires returning TC session's register status in following:
- Whether session registration is Full: When TC session reaches max registration number
- Whether session registration in Waitlist. When TC session already reaches registration full, but allow to register
- Whether session is still can be registered. If TC session is available to let attendee register
- Whether session registration is closed: When current time passed TC session's registration close date
Affected API's:
GetSessionInfo
XSD Design:
GetSessionInfo response adds following new element
Element | Parent | Definition | Type | Default |
---|---|---|---|---|
registrationStatus | <accessControl> | TC session's registration status |
Enum: FULL, CLOSED, WAITLIST, REGISTER |
Backward compatibility:
No backward compatibility issue.
GetSessionInfo return attendee's registration info
Description:
Mobile requires returning attendee's registration information in following:
- Return registration URL
- Return attendee's registration status.
- Return attendee's registration ID if registration successfully
Affected API's:
GetSessionInfo
XSD Design:
GetSessionInfo response add the following element.
Element | Parent | Definition | Type | Default |
---|---|---|---|---|
registrationURLForMobile | accessControl | Returns TC session registration URL for mobile | String, 0..1 | |
registerID | accessControl | Returns TC session attendee's registration ID | Long, 0..1 | |
joinStatus | accessControl | Returns TC session sttendee's meeting join status |
Enum (REGISTER, INVITE, REJECT, ACCEPT) |
Backward compatibility:
No backward compatibility issue.
GetSessionInfo returns TC single recurrence session info
Description:
For TC single recurring session, GetSessionInfo request provide a new element
Affected API's:
GetSessionInfo
XSD Design:
GetSessionInfo request add the following element
Element | Parent | Definition | Type | Default |
---|---|---|---|---|
subSessionNo | root | Indicate the TC single recurring session sub session No. | Long, 0..1 |
GetSessionInfo response adds the following element.
Element | Parent | Definition | Type | Default |
---|---|---|---|---|
subSessionNo | root | Indicate the TC single recurring session sub session No. | Long, 0..1 |
Backward compatibility:
No backward compatibility issue.
LstSummarySession support TC single recurrence session
Description:
- LstsummarySession returns <isTCSingleRecurrence>=true when the meeting is a TC single recurring session, otherwise, return as false.
- For TC single recurring session, LstsummarySession request add a new element <returnTCSingleRecurrence> to control whether return TC single recurrence session info. This will reduce impact and good for performance.
- For <subSessionNo>, if request with <returnTCSingleRecurrence>=true, response will return <subSessionNo> for TC single recurring session, otherwise not returned.
- For <startTime> of TC single recurring session, originally we calculate every session base on the repeat rule. But for TC single recurring session, it allows to edit every sub session's start time to a different time. When request with < returnTCSingleRecurrence>=true, get every sub session's correct start Time from wbxrecsession.starttime When <returnTCSingleRecurrence>=false or unspecified, the start time still base on repeat rule. It will be incorrect if the sub session's start time is changed.
Affected API's:
LstsummarySession
XSD Design:
LstsummarySession request add the following element
Element | Parent | Definition | Type | Default |
---|---|---|---|---|
returnTCSingleRecurrence | root | Indicate whether returns TC recurring session related info | Boolean, 0..1 |
LstsummarySession Response add the following element
Element | Parent | Definition | Type | Default |
---|---|---|---|---|
isTCSingleRecurrence | session | Returns whether this session is TC single recurring session | Boolean, 0..1 | |
subSessionNo | session | Returns the sub session number of TC single recurring session | long, 0..1 |
Backward compatibility:
No backward compatibility issue.
GetSessionInfo returns hostKey
Description:
Mobile requires GetSessionInfo to return hostKey for host and creator (schedule for case). Scope: Only for TC service.
Affected API's:
GetSessionInfo
XSD Design:
GetSessionInfo response adds following new elements
Element | Parent | Definition | Type | Default |
---|---|---|---|---|
hostKey | root | Returns TC meeting's hostKey | String, 0..1 |
Backward compatibility:
No backward compatibility issue.
GetSessionInfo returns the role of the caller and creator flag
Description:
Mobile device requires
- GetSessionInfo to return caller whether is creator;
- GetSessionInfo to return the role of the caller, like ATTENDEE, PRESENTER and ALTERNATEHOST.
NOTE: For MC and TC meeting
Affected API's:
GetSessionInfo
XSD Design:
GetSessionInfo response adds following new elements
Element | Parent | Definition | Type | Default |
---|---|---|---|---|
attendeeRole | root | Caller's role of the session. |
Enum, 0..1 {ATTTENDEE, PRESENTER, ALTERNATEHOST} |
Backward compatibility:
No backward compatibility issue.
Bug Fixes
CSCud80969: GetSessionInfo cannot show test info for in-session
Affected API's:
GetSessionInfo
Problem:
While test delivery status is ‘in-session', neither host nor attendee call GetSessionInfo can get <test> element info.
But on web page, host/schedule for case host and creator can see this test info on meeting info page, only attendee cannot see.
Root Cause:
It's old design The <test> element was not returned for both attendee and host while test is in-session test.
Solution:
Change to return the in-session test info for host and schedule for case (host and creator). And as mobile new requirement
- Return a flag <hasInSessionTest> = TRUE when there is in-session test on meeting, else return FALSE.
- Return a flag <hasWebSiteTest> = TRUE when there is web site test on meeting, else return FALSE.
Backward compatibility:
No backward compatibility issue.
Bug Fixes
CSCud80969: GetSessionInfo cannot show test info for in-session
Affected API's:
GetSessionInfo
Problem:
While test delivery status is ‘in-session', neither host nor attendee call GetSessionInfo can get <test> element info.
But on web page, host/schedule for case host and creator can see this test info on meeting info page, only attendee cannot see.
Root Cause:
It's old design The <test> element was not returned for both attendee and host while test is in-session test.
Solution:
Change to return the in-session test info for host and schedule for case (host and creator). And as mobile new requirement
- Return a flag <hasInSessionTest> = TRUE when there is in-session test on meeting, else return FALSE.
- Return a flag <hasWebSiteTest> = TRUE when there is web site test on meeting, else return FALSE.
Backward compatibility:
No backward compatibility issue.
Bug Fixes
CSCud80969: GetSessionInfo cannot show test info for in-session
Affected API's:
GetSessionInfo
Problem:
While test delivery status is ‘in-session', neither host nor attendee call GetSessionInfo can get <test> element info.
But on web page, host/schedule for case host and creator can see this test info on meeting info page, only attendee cannot see.
Root Cause:
It's old design The <test> element was not returned for both attendee and host while test is in-session test.
Solution:
Change to return the in-session test info for host and schedule for case (host and creator). And as mobile new requirement
- Return a flag <hasInSessionTest> = TRUE when there is in-session test on meeting, else return FALSE.
- Return a flag <hasWebSiteTest> = TRUE when there is web site test on meeting, else return FALSE.
Backward compatibility:
No backward compatibility issue.
Bug Fixes
CSCud80969: GetSessionInfo cannot show test info for in-session
Affected API's:
GetSessionInfo
Problem:
While test delivery status is ‘in-session', neither host nor attendee call GetSessionInfo can get <test> element info.
But on web page, host/schedule for case host and creator can see this test info on meeting info page, only attendee cannot see.
Root Cause:
It's old design The <test> element was not returned for both attendee and host while test is in-session test.
Solution:
Change to return the in-session test info for host and schedule for case (host and creator). And as mobile new requirement
- Return a flag <hasInSessionTest> = TRUE when there is in-session test on meeting, else return FALSE.
- Return a flag <hasWebSiteTest> = TRUE when there is web site test on meeting, else return FALSE.
Backward compatibility:
No backward compatibility issue.
Bug Fixes
CSCud80969: GetSessionInfo cannot show test info for in-session
Affected API's:
GetSessionInfo
Problem:
While test delivery status is ‘in-session', neither host nor attendee call GetSessionInfo can get <test> element info.
But on web page, host/schedule for case host and creator can see this test info on meeting info page, only attendee cannot see.
Root Cause:
It's old design The <test> element was not returned for both attendee and host while test is in-session test.
Solution:
Change to return the in-session test info for host and schedule for case (host and creator). And as mobile new requirement
- Return a flag <hasInSessionTest> = TRUE when there is in-session test on meeting, else return FALSE.
- Return a flag <hasWebSiteTest> = TRUE when there is web site test on meeting, else return FALSE.
Backward compatibility:
No backward compatibility issue.
CSCud80958: GetSessionInfo returns course material URL not work
Affected API's:
GetSessionInfo
Problem:
The course material URL returned in GetSessionInfo does not work.
New URL on web page:
While Security Batch2 fix, TC page change file Path to use new AES encryption.
br>Solution:
Update the URL with new AES encryption to keep the same with page
Backward compatibility:
No backward compatibility issue.
CSCud45080: XML server will get NullPointerException while corcontact has null value
Affected API's:
LstsummaryUser
Problem:
LstsummaryUser returns ServerError
Root Cause:
While site exits WebACD internal user designated chat user. It's email in table corcontact is null. While LstsummaryUser to query the user data by email, fail to get this user, and throw null point exception.
br>Solution:
Filter this internal user or any use the email value in corcontact table is null, which fail to query the user by email, add protection to skip this user.
Backward compatibility:
No backward compatibility issue.
CSCud52740: SZ(XML7.2.0) Reset passsword of user failure
Affected API's:
CreateUser, SetUser
Problem:
SiteAdmin turn off the option "Do not include passwords in emails; include link to password page instead".
Site admin sets the user with reset password. The use receives a reset password email, but it still contains old password in the email. It should include the temp password in the email.
Root Cause:
While SetUser reset password logic, it will keep original password in coruser table no change, but in the email should include the new temp password.
Our logic still uses the original password in email.
Solution:
Change to use the new temp password in the email content.
Backward compatibility:
No backward compatibility issue.
CSCud80972: GetSessinInfo still allow to access without login while site turn on 'Require login before site access'
Affected API's:
LstsummaryUser
Problem:
GetSessionInfo API allowed to call without <webexID> and <password>, and return limited session info. But SiteAdmin-> Site Settings -> Common -> Security section has an option named 'Require login before site access'
If site admin checks "Require login before site access", GetSessionInfo should not be called without user account. There exists a hole for GetSessionInfo API.
Root Cause:
LstsummarySession already considered this option, and throw exception while call without <webExID> and <password> but site checks on this option.
GetSessionInfo API missed this logic..
Solution:
If site admin checks "Require login before site access", GetSessionInfo should not be called without user account.
API returns exception "Require login before site access" (ExceptionID = 010038) if GetSessionInfo is called without <webExID> and <password> but site checks on this option.
Backward compatibility:
This is a behavior change about existing API, it is stricter than before.
This API returns error while called without <webExID> and <password> but site checks on this option.