Methods
(static) azureDecodeAdIdsIntoUsers(azureAuthToken, azureAdUserIds) → {MapBy.<User>}
Take a list of Azure AD User IDs and try to match them into our application Users
Parameters:
| Name | Type | Description |
|---|---|---|
azureAuthToken |
string | Required: the Azure auth token |
azureAdUserIds |
Array.<string> | Required: the Azure auth token |
Returns:
A map that has Azure AD User ID as key and our application User as value
- Type
- MapBy.<User>
(static) createSambaliveSession(tenant, accountId, topic, startTime, duration, sessionType, displayParticipantsName, accessBeforeStart, privateAccess, screensharing, medialibrary, recording, requesttospeak, lobby, breakoutRooms, stageId, editionId, dayId, password) → {string}
Create a new SambaLive webinar
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
string | Required: Tenant for which the configuration will be retrieved |
accountId |
string | Required: SambaLive configured account identifier |
topic |
string | Required: The webinar name |
startTime |
Date | Required: The start time of the webinar |
duration |
number | Required: The duration of the webinar in minutes |
sessionType |
string | Required: Configurations that sets HTML5 (html5) or Flash (flash) |
displayParticipantsName |
string | Required: Configurations that sets the showed names of the attendees (full_name - Full Name (Emily Harper), last_name_first_name - Last Name, First Name (Harper, Emily), first_name_initial - First Name + Initial (Emily H.), initial_last_name - Initial + Last Name (E. Harper), first_name - First Name only (Emily), last_name - Last Name only (Harper), initials - Initials only (E. H.))) |
accessBeforeStart |
number | Optional: Configurations that sets minutes before invitees can join (null: no limit) |
privateAccess |
boolean | Optional: If true states that users can join even if not invited |
screensharing |
boolean | Optional: If true states that the feature is available |
medialibrary |
boolean | Optional: If true states that the feature is available |
recording |
boolean | Optional: If true states that the feature is available |
requesttospeak |
boolean | Optional: If true states that participants can request to speak/present |
lobby |
boolean | Optional: If true states that the feature is available |
breakoutRooms |
boolean | Optional: If true states that the feature is available |
stageId |
string | Optional: The id of the stage that originated this webinar (saved in "custom1" webinar field) |
editionId |
string | Optional: The id of the edition that originated this webinar (saved in "custom2" webinar field) |
dayId |
string | Optional: The id of the day that originated this webinar (saved in "custom3" webinar field) |
password |
string | Optional: The main password of the meeting |
Returns:
The sessionId of the new SambaLiveSession
- Type
- string
(static) deleteSambaliveRecording(tenant, accountId, recordingId) → {null}
Delete a SambaLive recording
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
string | Required: Tenant for which the configuration will be retrieved |
accountId |
string | Required: SambaLive configured account identifier |
recordingId |
string | Required: Recording ID |
Returns:
- Type
- null
(static) deleteSambaliveSession(tenant, accountId, sessionId) → {null}
Delete a SambaLive webinar
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
string | Required: Tenant for which the configuration will be retrieved |
accountId |
string | Required: SambaLive configured account identifier |
sessionId |
string | Required: Webinar ID |
Returns:
- Type
- null
(static) enrollSambaliveUser(tenant, accountId, sessionId, email, firstName, lastName, userRole) → {SambaLiveInvitee}
Enroll/Register a user for attending a SambaLive webinar
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
string | Required: Tenant for which the configuration will be retrieved |
accountId |
string | Required: SambaLive configured account identifier |
sessionId |
string | Required: Webinar ID |
email |
string | Required: User's email |
firstName |
string | Optional |
lastName |
string | Optional |
userRole |
number | Optional: 1 for moderator, 2 (default) for participants. Use SambaLiveUserRoleTypes costants |
Returns:
The registered invited user
- Type
- SambaLiveInvitee
(static) getSambaliveInvitee(tenant, accountId, sessionId, inviteeId) → {SambaLiveInvitee}
Get the created session invitee in SambaLive
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
string | Required: Tenant for which the configuration will be retrieved |
accountId |
string | Required: SambaLive configured account identifier |
sessionId |
string | Required: Session identifier |
inviteeId |
boolean | Required: Invitee identifier |
Returns:
SambaLive invitee
- Type
- SambaLiveInvitee
(static) getSambaliveInvitees(tenant, accountId, sessionId) → {SambaLiveInvitee}
Get all created session invitees in SambaLive
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
string | Required: Tenant for which the configuration will be retrieved |
accountId |
string | Required: SambaLive configured account identifier |
sessionId |
string | Required: Session identifier |
Returns:
SambaLive invitee
- Type
- SambaLiveInvitee
(static) getSambaliveRecordings(tenant, fromRecord, numRecords, accountIds, orderDir, orderField) → {Array.<SambaLiveRecording>}
Get a list of recordings in SambaLive
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
string | Required: Tenant for which the configuration will be retrieved |
fromRecord |
number | Required: Offset |
numRecords |
number | Required: Record to retrieve |
accountIds |
string | Array.<string> | Optional: SambaLive configured account identifier (if not specified all account will be retrieved) |
orderDir |
string | Optional: Return results in ascending or descending order. Default is desc. Accepted values: asc, desc. |
orderField |
string | Optional: Return results in order of this field. Default is start_time. Accepted values: id, topic, start_time, duration. |
Returns:
List of SambaLive recordings
- Type
- Array.<SambaLiveRecording>
(static) getSambaliveSession(tenant, accountId, sessionId, skipModerators, skipParticipants, skipPersonalLinks, skipAccesss, skipInvitations, skipMenuButtons) → {SambaLiveSession}
List the created sessions in SambaLive account
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
string | Required: Tenant for which the configuration will be retrieved |
accountId |
string | Required: SambaLive configured account identifier (if not specified all account will be retrieved) |
sessionId |
string | Required: Session identifier |
skipModerators |
boolean | Optional: Because of the fieldset seems not to work properly, this option if enabled remove the moderators list from the result |
skipParticipants |
boolean | Optional: Because of the fieldset seems not to work properly, this option if enabled remove the participants list from the result |
skipPersonalLinks |
boolean | Optional: Because of the fieldset seems not to work properly, this option if enabled remove the personal access link from the result |
skipAccesss |
boolean | Optional: Because of the fieldset seems not to work properly, this option if enabled remove the Access settings from the result |
skipInvitations |
boolean | Optional: Because of the fieldset seems not to work properly, this option if enabled remove the Invitations settings from the result |
skipMenuButtons |
boolean | Optional: Because of the fieldset seems not to work properly, this option if enabled remove the MenuButtons settings from the result |
Returns:
SambaLive session
- Type
- SambaLiveSession
(static) getSambaliveStatistics(tenant, fromDay, numDays, count, accountIds) → {Array.<SambaLiveStatistic>}
Get the list of user sessions and connection to every webinar for the specified timeframe
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
string | Required: Tenant for which the configuration will be retrieved |
fromDay |
number | Required: Offset |
numDays |
number | Required: Days to retrieve |
count |
number | Optional: Max records to retrieve (default 999999) |
accountIds |
string | Array.<string> | Optional: SambaLive configured account identifier (if not specified all account will be retrieved) |
Returns:
List of SambaLive statistics
- Type
- Array.<SambaLiveStatistic>
(static) listSambaliveSessions(tenant, fromRecord, numRecords, accountIds, orderDir, orderField, fieldset, skipModerators, skipParticipants, skipPersonalLinks, skipAccesss, skipInvitations, skipMenuButtons) → {Array.<SambaLiveSession>}
List the created sessions in SambaLive account
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
string | Required: Tenant for which the configuration will be retrieved |
fromRecord |
number | Required: Offset |
numRecords |
number | Required: Record to retrieve |
accountIds |
string | Array.<string> | Optional: SambaLive configured account identifier (if not specified all account will be retrieved) |
orderDir |
string | Optional: Return results in ascending or descending order. Default is desc. Accepted values: asc, desc. |
orderField |
string | Optional: Return results in order of this field. Default is start_time. Accepted values: id, topic, start_time, duration. |
fieldset |
string | Optional: Specify what fieldset should be in the results. Example: id;topic;start_time (field names separated by semicolons). |
skipModerators |
boolean | Optional: Because of the fieldset seems not to work properly, this option if enabled remove the moderators list from the result |
skipParticipants |
boolean | Optional: Because of the fieldset seems not to work properly, this option if enabled remove the participants list from the result |
skipPersonalLinks |
boolean | Optional: Because of the fieldset seems not to work properly, this option if enabled remove the personal access link from the result |
skipAccesss |
boolean | Optional: Because of the fieldset seems not to work properly, this option if enabled remove the Access settings from the result |
skipInvitations |
boolean | Optional: Because of the fieldset seems not to work properly, this option if enabled remove the Invitations settings from the result |
skipMenuButtons |
boolean | Optional: Because of the fieldset seems not to work properly, this option if enabled remove the MenuButtons settings from the result |
Returns:
List of SambaLive sessions
- Type
- Array.<SambaLiveSession>
(static) teamsAzureCreateMeeting(azureAuthToken, applicationUserAzureId, topic, startTime, endTime) → {Object}
Create a new Teams Online Meeting
Parameters:
| Name | Type | Description |
|---|---|---|
azureAuthToken |
string | Required: the Azure auth token |
applicationUserAzureId |
string | Required: Azure Teams configured account identifier |
topic |
string | Required: The webinar name |
startTime |
Date | Required: The start time of the webinar |
endTime |
Date | Required: The end time of the webinar |
Returns:
The meeting id and the web join url of the new Teams Meeting (unfortunetely this url will be the only matching key we can use to match callRecord and meeting, thanks Microsoft)
- Type
- Object
(static) teamsAzureCreateWebhookSubscription(azureAuthToken) → {Object}
Create a new webhook (subscription) to receive Teams call records events
Parameters:
| Name | Type | Description |
|---|---|---|
azureAuthToken |
string | Required: the Azure auth token |
Returns:
Id and expiration (ISO format)
- Type
- Object
(static) teamsAzureDeleteMeeting(azureAuthToken, meetingId) → {null}
Delete an existing Teams Online Meeting
Parameters:
| Name | Type | Description |
|---|---|---|
azureAuthToken |
string | Required: the Azure auth token |
meetingId |
string | Required: Teams meeting unique id |
Returns:
- Type
- null
(static) teamsAzureFindWebhookSubscription(azureAuthToken) → {Object}
Search if exists a webhook (subscription) to receive Teams call records events and returns its id and expiration
Parameters:
| Name | Type | Description |
|---|---|---|
azureAuthToken |
string | Required: the Azure auth token |
Returns:
Id and expiration (ISO format)
- Type
- Object
(static) teamsAzureLogin(clientId, clientSecret, azureTenant) → {string}
Creates and returns an Azure authentication token. Token will be stored in and eventually retrieved from the cache
Parameters:
| Name | Type | Description |
|---|---|---|
clientId |
string | Required: the login credential |
clientSecret |
string | Required: the login credential |
azureTenant |
string | Required: the login credential |
Returns:
The auth token
- Type
- string
(static) teamsAzureProcessCallRecord(callRecordId, azureTenant, forcedWebJoinUrl) → {null}
Retrieve the call record data from a web-hook event and update takers and engagements
Parameters:
| Name | Type | Description |
|---|---|---|
callRecordId |
string | Required: the Azure auth token |
azureTenant |
string | Required: the Azure tenant of the callRecord |
forcedWebJoinUrl |
string | Optional: this field force webJoinUrl passed as the one of the CallRecord that should be processed. It is used only to recover damaged sessions by incorrect behaviour of Azure API during the Beta |
Returns:
- Type
- null
(static) teamsAzureUpdateWebhookSubscription(azureAuthToken, hookId) → {Object}
Update the existing webhook (subscription) to increase its life-time
Parameters:
| Name | Type | Description |
|---|---|---|
azureAuthToken |
string | Required: the Azure auth token |
hookId |
string | Required: the id of the webhook to extend |
Returns:
Id and expiration (ISO format)
- Type
- Object
(static) unenrollSambaliveUser(tenant, accountId, sessionId, inviteeId) → {null}
Unenroll/Unregister a user for attending a SambaLive webinar
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
string | Required: Tenant for which the configuration will be retrieved |
accountId |
string | Required: SambaLive configured account identifier |
sessionId |
string | Required: Webinar ID |
inviteeId |
string | Required: ID of the invited user (not userId, but the inviteeId - the combination user/webinar) |
Returns:
- Type
- null
(static) updateSambaliveSession(tenant, accountId, sessionId, topic, startTime, duration, displayParticipantsName, accessBeforeStart, privateAccess, screensharing, medialibrary, recording, requesttospeak, lobby, breakoutRooms, stageId, editionId, dayId, password) → {string}
Update a SambaLive webinar
Parameters:
| Name | Type | Description |
|---|---|---|
tenant |
string | Required: Tenant for which the configuration will be retrieved |
accountId |
string | Required: SambaLive configured account identifier |
sessionId |
string | Required: The webinar id |
topic |
string | Required: The webinar name |
startTime |
Date | Required: The start time of the webinar |
duration |
number | Required: The duration of the webinar in minutes |
displayParticipantsName |
string | Required: Configurations that sets the showed names of the attendees (full_name - Full Name (Emily Harper), last_name_first_name - Last Name, First Name (Harper, Emily), first_name_initial - First Name + Initial (Emily H.), initial_last_name - Initial + Last Name (E. Harper), first_name - First Name only (Emily), last_name - Last Name only (Harper), initials - Initials only (E. H.))) |
accessBeforeStart |
number | Optional: Configurations that sets minutes before invitees can join (null: no limit) |
privateAccess |
boolean | Optional: If true states that users can join even if not invited |
screensharing |
boolean | Optional: If true states that the feature is available |
medialibrary |
boolean | Optional: If true states that the feature is available |
recording |
boolean | Optional: If true states that the feature is available |
requesttospeak |
boolean | Optional: If true states that participants can request to speak/present |
lobby |
boolean | Optional: If true states that the feature is available |
breakoutRooms |
boolean | Optional: If true states that the feature is available |
stageId |
string | Optional: The id of the stage that originated this webinar (saved in "custom1" webinar field) |
editionId |
string | Optional: The id of the edition that originated this webinar (saved in "custom2" webinar field) |
dayId |
string | Optional: The id of the day that originated this webinar (saved in "custom3" webinar field) |
password |
string | Optional: The main password of the meeting |
Returns:
The sessionId of the new SambaLiveSession
- Type
- string