Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Cisco Webex is an app-centric, cloud-based service that provides a complete collaboration suite for teams to create, meet, message, call, care, white board, and share, regardless of whether they’re together or apart—in one continuous workstream before, during, and after meetings. It is built to help teams work seamlessly. It is simple, secure, complete, and open, and provides a space for people to work better. The core capabilities of Cisco Webex are Meetings, Messaging, and Calling. The Cisco Webex platform, app-centric design, hybrid services, and architecture of Cisco Webex create a unique and differentiated service. For more information on the solution, refer to Cisco Webex.

Cisco Webex Meetings provides a Messaging API that VFC is able to use to retrieve content from Webex Rooms. The Webex Import Source uses the Webex Messaging API to list and download available recordings, query and add participants prior to ingest. Separate recordings are created for each recorded Webex user. Each recording contains details of all meeting participants. Once triggered, Webex content is ingested indefinitely in near real-time with an unlimited retry attempts if the media is unavailable for any reason.  If the integration is restarted or the first recording start time reset, no duplicate content will be created within VFC.

For a general description of Verba Import sources, please refer to Import sourcesCisco Webex is an app-centric, cloud-based service that provides a complete collaboration suite for teams to create, meet, message, call, care, white board, and share, regardless of whether they are together or apart—in one continuous workstream before, during, and after meetings. It is built to help teams work seamlessly. It is simple, secure, complete, and open, and provides a space for people to work better. The core capabilities of Cisco Webex are Meetings, Messaging, and Calling. The Cisco Webex platform, app-centric design, hybrid services, and architecture of Cisco Webex create a unique and differentiated service. For more information on the solution, refer to Cisco Webex.

Cisco Webex Meetings provides a Messaging API that VFC is able to use to retrieve content from Webex Rooms. The Webex Import Source uses the Webex Messaging API to list and download available recordings, query and add participants before ingestion. Separate recordings are created for each recorded Webex user. Each recording contains details of all meeting participants. Once triggered, Webex content is ingested indefinitely in near real-time with an unlimited number of retry attempts if the media is unavailable for any reason. If the integration is restarted or the first recording start time reset, no duplicate content is created within VFC.

There are certain pre-requisite steps that must be performed within Cisco Webex Portal to ensure that Meetings are recorded and available for VFC to download:

Note
titlePre-requisites
  • Automatic Recording - As a site administrator, you can enable automatic recordings for your whole Webex site. With this feature enabled, when any of your users host a meeting or event, Webex automatically begins recording. See https://help.webex.com/en-us/article/nghqgucb/Enable-Automatic-Recording-of-All-Meetings-on-Your-Webex-Site
  • Limitation - If Automatic Recording is not enabled, then by default Webex only automatically records participation if the regulated user (configured for recording) hosts the meeting. When a user attends a meeting as a participant, then they are not automatically recorded. If this user joins as a participant, they are required to ask the meeting host to make them a co-host or presenter. The meeting host can also assign multiple participants as co-hosts for the meeting. Once the user is made a co-host or presenter, they have the recording options available.


Info

Recording is supported for the following modalities only:

  • MP4 Video (includes audio only content and video)
  • Audio only (all video converted to audio only)

For a general description of Verba Import sources, refer to Import sources.


Table of Contents

1. Prerequisites

  • Two components, a Cisco Webex integration application and a VFC Import Source are required.
  • Firewall access must be arranged as two-way internet communication is required between the Import Source and Webex.
    • Incoming authentication arrives from Webex to the Webex Integration redirect URI. The URL and port number is are fully configurable and is secured by are encrypted using TLS over HTTP.   The port number cannot be 443 as this is already used by the VFC Web Application.
    • Outgoing API calls to Webex for content and user queries is on Port 443 and via httpsthrough https://webexapis.com/v1
    • Outgoing calls to retrieve media is are on Port 443 and normally via typically through https://<company name>.webex.com/ <company name>.  The URI is determined by Webex alone Webex detemines this URI.
    • If used, Compliance Site URL must also be granted firewall access, including the port number.
  • VFC video or audio recording licencelicense.   If audio-only recording is used (Transcode Video to Audio is set), it is mandatory to install Windows Media Foundation (Windows Server 2012 or newer) on the server where the Webex Import Source runs.

2. Create a Cisco Webex Integration

To create a Webex integration, a Webex account backed by Cisco Webex Common Identity (CI) is required. If no Webex account is available, sign up. If you 're are using Webex Meetings, your site will  must be on Common Identity.   Typically, the user creating the API Integration needs to be the Compliance Officer on Webex.   Navigate Go to https://developer.webex.com/my-apps and press the Create a new app button.   Then press the Create an integration button to create an OAuth Integration.

...

Configuration Item

Description

Value
Mobile SDK
(Webex iOS or Android SDK 3.0+)
No
Integration NameName of your integration as it will appear shown in Webex.VFC WebEx Meetings Ingestion
IconUpload your own or select from our defaults. Must be exactly 512x512px in JPEG or PNG format.Use VFC Logo provided.App Hub DescriptionWhat does your app do, how does it benefit users, how do users get started? Does your app require a non-Webex account? If your app is not free or has additional features for paid users, please note that and link to pricing information. 1024 character limit..Use VFC Logo provided.
App Hub Description

The description of the app as shown on the App Hub. The description is limited to 1024 characters.

For the description, consider including information about:

  • what the app does,
  • how the app benefits users,
  • how users can get started with the app,
  • if the app requires a non-Webex account,
  • if the app is not free or has extra features for paid users,
  • if the app is not free, link to the pricing information.

VFC WebEx Meetings Ingestion. 

(Note: the application will can not be shared on the app hub at presentcurrently.)

Redirect URI(s)

One or more URIs that a user will be is redirected to when completing an OAuth grant flow.


http(s)://<VFC Hostname>:<VFC Port>/Webex/RedirectURI/OAuth

VFC Hostname is the name of the VFC server

VFC Port is the port opened in the customer firewall for Webex access.

Make a note of this value as it is also required when configuring the VFC Webex import source.

The port number cannot be 443 as this port number is already used by the VFC Web Application.

Scopes

Scopes define the level of access that your integration requires.

Select the following 3 scopes:

    • meeting:recordings_read
    • meeting:recordings_write
    • meeting:participants_read

...

Once all the integration values have been entered, press the Add Integration button.   Make a note of the two important values shown, Client Id and Client Secret.   They are required during the next step, configuration of the VFC Webex Import Source.

3. Create a WebEx Import Source

Follow the steps in VFC to create a new Import source.   All settings are mandatory, apart from except the TLS configuration settings.

Step 1 - Open the VFC Web interface then select Data > Import Sources from the top menu

Step 2 - Click on the Select Add New Import Source link on the top right.Step 3 - Complete the configuration according to the requirements in the following table.

Step 3 - Complete the configuration according to the requirements in the following table


NOTE: Ingestion of Webex content is always behind real-time. The closest the ingestion can get to real-time is: Webex Recording Start Timestamp + (Webex Maximum Recording Length * 2) + Webex Availability Delay.

Configuration Item

Description

Value
NameMandatory.   Name your Import Source. This name will identify identifies the source across the system.Recommended to include the import source type and purpose.
TypeMandatory.   Import Source typeSelect WebEx (not Cisco Spark) from the Import Type drop-down
Webex Integration Client Id

Mandatory.   Client Id value obtained during previous step of Webex creation integration. Used during OAuth authentication.

Example:

M2lzY29zcGFyazovL3VzL0FQUExJQ0FUSU9OL0MzNWI4NmM0

ATg2Nzc3NmQxNzhiMjg1OGIwMTMzNTdiODJiMTFkZjVlNmM1N

GhiZTlkOGNjNzYyMDcyMTU3M2Mz

Webex Integration Client Secret

Mandatory.   Client Secret value obtained during previous step of Webex creation integration. Used during OAuth authentication.

Example:

0c2e71a7f2628596ad856a9e6ab7efddead07d6b272dc2a2ef3f9fc4cf74d0b7

Webex Integration Redirect URI

Mandatory.   URI called by Webex during authentication process. Same value used during configuration of the Webex integration.

http(s)://<VFC Hostname>:<VFC Port>/Webex/RedirectURI/OAuth

VFC Hostname is the name of the VFC server

VFC Port is the port opened in the customer firewall for Webex access.

The port number cannot be 443 as this port number is already used by the VFC Web Application.

Must be exactly the same value used to configure the Webex Integration Redirect URI. Note case sensitivity and port restrictions.

Forward Proxy AddressOptional. IP address or FQDN of the forward proxy. When defined, the system will connect connects through a forward proxy.
Forward Proxy PortOptional. The port of the forward proxy.
Forward Proxy UsernameOptional. Username User name for basic authentication for the forward proxy server.
Forward Proxy PasswordOptional. Password for basic authentication for the forward proxy server.
Compliance Site URL

Optional.

 

The Webex site of the Compliance Officer

's Webex site

from which to retrieve recordings.

 

If not specified, the

user's

default site

will be

of the user is used.

Example: <company name>.webex.com or normally usually, leave blank.
TLS Certificate File or ThumbprintOptional.   Certificate file / certificate thumbprint used for the Webex connection.

The default VFC CA Certificate can


be used for HTTPS/TLS


communications between Webex


and the VFC Import Source by


setting HTTPS in the Redirect URI
and leaving all of these TLS
settings empty:
TLS Certificate File or Thumbprint
TLS Key File
TLS Key Password
TLS Trust List
TLS Key File

Optional.  File system location where the certificate key is stored.

TLS Key Password

Specify the password for the file that contains the certificate keys.

TLS Trust List

Certificate chain (or Chain of Trust) is made up of a list of certificates that start from a server's certificate and terminate with the root certificate. If your server's certificate is to be trusted, its signature has to be traceable back to its root CA.

Transcode Video to AudioOptional.  Store audio-only version of recording.Select required audio codec.
Recording TimezoneMandatory.  VFC Server timezone.Example:
GMT +09:00 - Japan
Webex Recording Start Timestamp

Mandatory.  Timestamp of the earliest WebEx recording to be ingested. This can be a timestamp in the past, e.g., 2020, if historic Webex content is required to be ingested.

The Import Source will gradually catchup with real-time as it is run by successive Data Management Policies, but will take longer to catch up depending on the number of historic recordings and the Recording Import Batch Duration setting (below).

Example:

2023.01.29 07:00:00

Webex Recording Import Batch Duration (minutes)

Mandatory.  Every time the Import Source is run by the Data Management Policy, it attempts to retrieve Webex content dated from the Webex Recording Timestamp to the Webex Recording Timestamp plus the Recording Import Batch Size in minutes.

If the duration of the batch size is too long, a large number of recordings will become available in the import batch, leading to less granular processing than expected.

This setting must be tuned in accordance with the  profile of Webex recording in the customer environment and the Recording Lag (below).

Example:

60

Recording Lag (minutes)

Mandatory. The recording lag is the nearest the batch start time plus the batch duration in minutes can be to the current time.

Once the import source has ingested any historic Webex content, on-going ingestion of new content is required.  New content is only available for ingestion after the Webex meeting has finished.  Therefore the Import Source must lag behind real-time.

This setting is dependent upon customer Webex use, so short meetings mean the recording lag can be closer to real-time, but longer meetings mean it must be set further behind real-time.

If the setting is not correctly made, the import source could unknowingly skip Webex content without any alert because the import will effectively overrun and be too close the current time.

This setting must be tuned in accordance with the  profile of Webex recording in the customer environment and the Max Batch Duration (above).setting HTTPS in the Redirect URI and leaving all of these TLS settings empty:


TLS Certificate File or Thumbprint
TLS Key File
TLS Key Password
TLS Trust List

TLS Key File

Optional. File system location where the certificate key is stored.


TLS Key Password

Specify the password for the file that contains the certificate keys.


TLS Trust List

Certificate chain (or Chain of Trust) is made up of a list of certificates that start from a server's certificate and terminate with the root certificate. If the certificate of your server is to be trusted, its signature has to be traceable back to its root CA.


Transcode Video to AudioOptional.  Store audio-only version of recording.Select required audio codec.
Recording TimezoneMandatory.  VFC Server timezone.Example:
GMT +09:00 - Japan
Webex Recording Start Timestamp

Mandatory. Time stamp of the earliest WebEx content to be ingested. This value can be a time stamp in the past, for example, 2020, if historic Webex content is required to be ingested.

The Import Source gradually catches up with real-time as it is run by successive Data Management Policies, but it takes longer to catch up depending on the number of historic recordings, the Maximum Recording Length, and Availability Delay. In the case of mass historical ingest, it is recommended to set the Maximum Recording Length to a large number, for example, 999 and reduce the Availability Delay to a small number, for example, 10 minutes. Once the ingestion has caught up, adjust each of these parameters to their correct operational values.

Example:

2023.01.29 07:00:00

Webex Maximum Recording Length (minutes)

Mandatory. Maximum length of Webex content to be ingested. Content exceeding the maximum length may not be ingested or an alert generated.

Example: 60

Webex Availability Delay (minutes)

Mandatory. Maximum time the import source waits for a Webex meeting to become available for ingestion. If the meeting is not available after this time, it may not be ingested or an alert generated.

Example: 30
On Completion Delete Recordings Stored in Webex

Optional.   Allows Allows VFC to become the single repository for Webex content.

The recording deleted from Webex cannot be recovered, so this setting must be set with great care.

If a Compliance Officer deletes the recording of another user's recording, the recording will be becomes inaccessible to regular users (host, attendees, and shared), but will be still remains available to the Compliance Officer.

Only recordings of meetings hosted by the authenticated user can be deleted.

Tick to delete recordings from
Webex immediately after VFC
ingestion or leave unticked to have
recordings both in Webex and in
VFC.
Authentication Keep-Alive (minutes)

Mandatory.   Webex Webex Authentication cannot be completed unless the VFC Import Source is running because it depends on an OAuth HTTP(S) callback from Webex to the Import Source. This is why Due to this behavior, the VFC Import Source must be saved and an Active Data Management Policy created. The callback provides VFC with an Access Token that Webex content ingestion depends upon.

The Authentication Keep-Alive setting is a temporary configuration value which ensures the installation engineer has enough time to press the Authenticate Now button and authenticate with Webex before the VFC Import Source terminates inline with the VFC Data Management Policy.

Once the engineer has completed Webex authentication , the Authentication Keep-Alive must be reduced to zero because the Access Token has been obtained and saved locally on the server where the VFC Import Source is run.  When the Authentication Keep-Alive value is changed, the Import Service must be restarted.  If obtains the token, the Authentication Keep-Alive is not set must be reduced to zero and the import source is custom scheduled, it will not increment the Webex time boundary sliding window, so after the initial ingestion, no further content will be ingestedImport Service restarted.

The Access Token is securely encrypted . This value can be changed at any time during production hours. The updated value will be used the next time the Data Management Policy runs the Import Sourceand automatically updated during production.

Example:

99 - During initial installation

2 - If a periodic check of the VFC Webex Token/Authentication status web page webpage is required during production.

0 - During normal typical operation to avoid delay in completing processing of the Import Source.   The value can be updated at any time if an adhoc ad hoc check is required.

Webex

Mandatory.   Do not press this button until an active Data Management Policy has been created.

Until the VFC Import Source has been saved with settings for all of the above values and an active Data Management Policy created, this button will does not authenticate the VFC Import Source with Webex, and content will is not be ingested.

Once authenticate now has been Authenticate Now is pressed, it should not be used except on the very rare occasion again, only if the integration has was not been running active for along a long time, and the Webex Access Token has expired.

N/A

4. Create an active Data Management Policy

Follow the steps below to configure the Data Import action.   Note, the policy must be active before proceeding to authenticate the VFC Import Source with Webex.

Step 1 - In the Verba web interface, navigate go to Data > Data Management Policies.

Step 2 - Click on the Select Add New Data Management Policy button at the top-right corner of the page.

Step 3 - For the action, select Data Import.

Step 4 - Under Available Import Sources, select  select the Import Source that Source that you created, then click on the select Add button just below the text field.

Step 5 - Configure the policy details, based on the information that is shown in the configuration items summary table below.

Step 6 - Set up how frequently the Import should be run runs in the Scheduling section.

Step 7 - Click on Save

...

Configuration Parameter Name

...

Description

...

Specifies if all data should be processed in the imported data set or just the records of the recorded users as configured in VFC.

...

If enabled, a specific server can be chosen that will run this policy

5. Authenticate the VFC Webex Import Source with Webex

...

Webex

Image Removed

...

Save.


Configuration Parameter Name

Description

Enable Recording Rules

Specifies if all data should be processed in the imported data set or just the records of the recorded users as configured in VFC.

Execute Only on Selected Servers

If enabled, a specific server can be chosen that runs this policy.

5. Authenticate the VFC Webex Import Source with Webex

Webex

Image Added

Once all previous steps have been completed, press this button. A dialog box appears which allows the Compliance Officer to authenticate the Import Source using Webex login. Once authenticated, an encrypted token is stored on the VFC Import Server. The token is automatically renewed when required by the VFC Webex Import Source. After authentication, token status information is displayed as shown below. Token status information can also be checked by entering the first part of the Redirect URI:

http(s)://<VFC Hostname>:<VFC Port>

VFC Hostname is the name of the VFC server

VFC Port is the port opened in the customer firewall for Webex
access.

Once Webex has Authenticated (step below), reduce Authentication Keep-Alive (minutes) to the required value and restart the Import Service.


6. Validate Webex Authentication

OAuth token status information can be displayed by entering the first part of the Redirect URI

...

in a web browser.

http(s)://<VFC Hostname>:<VFC Port>

VFC Hostname

...

 is the name of the VFC server

VFC Port

...

 is the port opened in the customer firewall for Webex access.

...

Once Webex has Authenticated (step below), reduce Authentication Keep-Alive (minutes) to the required value and restart the Import Service.

6. Validate Webex Authentication

OAuth token status information can be displayed by entering the first part of the Redirect URI in a web browser.

http(s)://<VFC Hostname>:<VFC Port>

VFC Hostname is the name of the VFC server

VFC Port is the port opened in the customer firewall for Webex access.

Image Removed

...

Image Added

7. Configure Users in VFC

Follow the steps below to configure users in VFC:

Step 1 - In the VFC web interface, go to Users > Users.

Step 2 - Click Add new User.

Step 3 - Enter the email address of the user is in lowercase and set the value to the same email address that the user joins Webex with.

Step 4 - Add user information, making sure the validity of the user extends to cover the range of their Webex recordings.

Step 5 - Click Save.


8. Configure Extensions in VFC

Follow the steps below to configure users extensions in VFC:

Step 1 - In the Verba VFC web interface, navigate go to Users > UsersExtensions.

Step 2 - Click Add new UserExtension.

Step 3 - Enter the user's e-Mail address is in lower-case and set to the same e-Mail address the user will join Webex with

Step 4 - Add user information as normal, making sure the user's validity extends to cover the range of their Webex recordings

Step 5 - Click Save

8. Configure Extensions in VFC

Follow the steps below to configure extensions in VFC:

Step 1 - In the Verba web interface, navigate to Users > Extensions

Step 2 - Click Add new Extension

Step 3 - Set the extension in lower-case to the same e-Mail address the user will join WebEx with

Step 4 - Set the Type to User/Agent Id

Step 5 - Set the Recording Settings to Voice and Video

Step 6 - Click Save

9. Resilience

...

Set the extension in lowercase to the same email address that the user joins WebEx with.

Step 4 - Set the Type to User/Agent Id.

Step 5 - Set the Recording Settings to Voice and Video.

Step 6 - Click Save.

9. Resilience

If Webex content failed to ingest, resilience is provided by the retry buffer. This buffer contains VFC CDR files in XML format that failed to be ingested and must be retried. The Webex import source automatically adds a batch of up to 25 of these files to the current ingestion each time it runs. Once added, the XML file is removed from the retry buffer, but is automatically readded if the ingestion fails again. If the CDR is successfully ingested, it appears in the ingestion status report alongside the other content. Files can be manually added or removed to the retry buffer if required for troubleshooting purposes. Retry buffer capability also enables the import source to track real-time, as it enables historic failures to be retried.

Alternatively, if the VFCImport Service is required to be stopped for reasons of troubleshooting or maintenance, the manual procedure below must be used:

Step 1 - In the Verba VFC web interface, disable the Data Management Policy associated with the Webex Import Source.
Step 2 - Open windows explorer Windows Explorer and navigate go to Program Files\Verba\work\cdrimport\webex\laststate\policyId_importSourceId
Step 3 - Open the policyId_importSourceId.cursor file in notepad - it is a text editor program. The file contains one line and will look looks similar to the following example:
c84f2f698fc9d64d64ed161d87b00c25_I_251182078220051266_19d0243a-9fd0-11d1-ac11-13453884b96c;2023.02.02 07:00:00.000
Step 4 - Set the highlighted date timestamp to a date and time before the failure ensuring this time stamp plus the import batch duration and the recording lag is less than the current time stamp and then save the file.
Step 5 - Re-enable the Data Management Policy associated with the Webex Import Source

10. Folders used by Webex Import Source

Folder LocationPurpose
Program Files\Verba\work\cdrimport\webex\work\policyId_importSourceIdEncrypted Token storage, temporary Webex content download.
Program Files\Verba\work\cdrimport\webex\laststate\policyId_importSourceIdCursor file containing current import status so that import source can be stopped and restarted from previous Webex Recording Start Timestamp value.
 
The cursor file also contains the meeting identifier of the last ingested Webex content for monitoring and troubleshooting purposes.
Program Files\Verba\work\cdrimport\webex\retryBuffer\policyId_importSourceIdContains VFC CDR files in XML format that failed to be ingested and must be retried.
 
The Webex import source automatically adds a batch of up to 25 of these files to the current ingestion each time it runs.
 
Once added, the XML file is removed from the retry buffer, but
will automatically be re-added should
is automatically readded if the ingestion
fail
fails again.
 
If the CDR is successfully ingested, it
will appear
appears in the ingestion status report alongside the other content.
 
Files can be manually added or removed to the retry buffer if required for troubleshooting purposes.
  
Retry buffer capability also enables the import source to track real-time as it enables historic failures to be retried.

11. Types of alerts raised by the Webex Import Source

Alert MessageExplanation/Resolution
Could not parse configuration of import sourceCheck import source configuration and restart import service if updated.
Conversation failed to importCheck network/firewall access and integration permissions/scopes within Webex.
Problem retrieving contentCheck network/firewall access and integration permissions/scopes within Webex.
Failed to delete content from WebexCheck network/firewall access and integration permissions/scopes within Webex.
Could not obtain timezone offsetsCheck database connectivity.
Missing media runtimeMedia Foundation (Windows Server 2012 or newer) is missing from the server where the Import Source is running.   Please install Install and restart the Import Service.
Failed to get authorization tokenCheck network/firewall access and integration permissions/scopes within Webex.
Failed to list recordings

Check network/firewall access, integration permissions/scopes within Webex and that Webex content exists.

Failed to list participantsCheck network/firewall access, integration permissions/scopes within Webex and that Webex participants exist.
Failed to obtain recording detailsCheck network/firewall access, integration permissions/scopes within Webex and that Webex content exists.


12. Webex Content Ingestion Status Reporting

No report files are generated by the The Webex Import Source .  However does not generate report files, but at the end of each batch, a notification alert is raised containing details of Webex content ingested into VFC.

Example alert :

...

shown below. Note that due to the overlap approach used in the sliding window mechanism, mention of conversations already imported is as expected.

Image Added

If no recordings are found in Webex for the time period of the Webex batch sliding window, an alert is generated.   This alert does not indicate an error, only that Webex has not no content for the time period specified.


13. Webex Metadata


Metadata FieldDescriptionTemplateAvailable

Start Date

Start date of the conversationStandardYes
Start TimeStart time of the conversationStandardYes
End DateEnd date of the conversationStandardYes
End TimeEnd time of the conversationStandardYes
DurationLength of the conversationStandardYes
UserName of the recorded userStandardYes
FromSubscriberStandardYes
From InfoUser / contact nameStandardYes
Conference ParticipantsParticipant details, join and leave timestamptime stampStandardYes
Native IdUnique VFC conversation identifierStandardYes
Technical IdUnique Webex Meeting Id conversation identifierStandardYes
Source PlatformWebExStandardYes
Conversation TypeVideo or AudioStandardYes

...