Symptom
Click to go back to the main page |
Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental.
LMS VLS (Virtual Learning Session) KNOWLEDGE SESSION FOR CUSTOMERS, PARTNERS AND SAP PRODUCT SUPPORT
1. What is VLS?
2. How is it used in the LMS?
3. Configure VLS
4. Configure VLS with Webex
4.1. Common Errors when Scheduling a Webex Offering
4.2. Common Errors when Synching Instructors
5. Configure VLS with Adobe Connect
5.1. Common Errors when using Adobe Connect
6. Configure VLS with Skype/Lync
6.1. Common Errors when using Skype/Lync
7. VLS Attendance Processing APM
7.1. VLS Attendance APM Troubleshooting
8. VLS Template
1. What is VLS?
VLS is a term in the Learning Management System (LMS) referring to a Virtual Learning Session, or a Virtual Meeting. In the LMS, you can create items that are Instructor-Led. You can schedule these items to either be training session at a physical location, or a Virtual Session where users can attend training via the Web.
These offerings have segments, or block of time for the training, and the segments can be made to be virtual so that users can attend the training via a Webex or Adobe Connect Session and now also Skype or Lync since Q1 2016 (B1602). VLS is a widely used piece of the LMS’ functionality and customers often schedule offering segments as Virtual so that a physical location is not needed, or in the case that users are unable to physically attend.
You can find the latest configuration guides for VLS on the SAP Help Portal.
2. How is it used in the LMS?
In the LMS, segments (blocks of time) of scheduled offerings are made to be Virtual where the segment takes place via a Webex or Adobe Connect meeting or Skype/Lync. The Segment must have a LMS Instructor associated with it that serves as the meeting host.
Users in the LMS are then registered in the offering and are able to launch the meeting directly from their Home Page Learning Plan OR via their mail client calendar through an .ics attachment (calendar invite in outlook) attached in a notification sent by the LMS once they have been registered.
Once the VLS session is launched, the LMS will open the associated meeting the LMS created on the VLS vendors server (Webex or Adobe) when the virtual segment was created. From there, users participate in the meeting as attendees, and the Instructor in the LMS leads the meeting as the host. The virtual segments MUST have an Instructor in order to be created as Virtual.
3. Configure VLS
INITIAL SETUP
- Customer license must include "Virtual Learning" Module
- Set vleEnabled = true in System Admin->Configuration->System Configuration->LMS_ADMIN configuration file
- Add the completed VLS Connector XML document as a new VLS Configuration (‘System Admin’ -> Configuration -> VLS Configuration -> add new)
The Configuring VLS Help Guide has a sample of the XML appearance or individual XML file samples can be downloaded here, but these are provided from testing with vendors and the vendor should be consulted with the XML with exact details to be used. Note XML files are not normal text files and spaces, return characters, or other special characters can have affect. Please consult your partner or vendor to supply all details when populating the XML file in LMS.
Notes:
- The account specified in the VLS Connector XML document needs to be an admin account on the VLS server with rights to create/modify user accounts
- The ‘elms_url_prefix’ element should be populated with “/vle”. The recommendation from engineering to use the relative path (“/vle”) and not the absolute path with the FQDN of the LMS.
Example of VLS Configuration file (Provided by Vendor)
- Can you login as the VLS adobe via the VLS configuration being used xml file in Sys Admin>Configuration
EXAMPLE:
SITE : <server_address>https://westernfg.adobeconnect.com</server_address>
<!-- Breeze Administrator User Credentials-->
USER - <username>USERID(email address)</username>
PW - <password>PASSWORD</password>
If any of the below have issues, the problem is with the id values on the VLS side (not LMS side)
- Can a new instructor be created? If so - this shouldn’t be an issue:
<!-- Breeze Instructor Group ID-->
<instructor_group_id>VALUEGOESHERE</instructor_group_id> - Can you add that instructor to a VLS segment successfully? If so, this also shouldn’t be an issue:
<!-- Breeze Folder ID in which new Meetings are created. Obtain from Breeze Installation-->
<folder_id>VALUEGOESHERE</folder_id>
- Can you attend a VLS segment session as a user? If so, this also shouldn’t be an issue:
<!-- Breeze Learner Group ID-->
<learner_group_id>VALUEGOESHERE</learner_group_id>
Synchronize LMS Instructor accounts with VLS Server
An Instructor in the LMS is the meeting host on the Virtual Meeting side. When an Instructor is created in the LMS, the VLS API communicates with the Virtual Meeting Server (Webex or Adobe Connect or Skype/Lync) and creates an account there.
In order to synchronize (or create) an LMS instructor account with a VLS Server account we require that the first name, last name, and email address fields need to be populated on the instructor record in the LMS.
You can also relate the Instructor to a user and when you login as the user, you can launch the course once its time and Join as the Meeting Host from the My Classes tab at the top of the user side home page. My Classes will only appear for users related to an Instructor.
- Instructor Required Fields
- VLS Settings Instructor Record
Note: WEBEX will use a unique ID as the account ID (can be an email address) and ADOBE/ will use an email address as the account ID. Even if you set the VLS side to not require an email address, the users in LMS will need a valid email address. Zoom requires that the email address for the instructor be the VLS Account ID (will throw a Null error if not filled in).
Multiple Instructors can have the same VLS ID linked to it.
The ‘Account ID’ field should be populated with the account name of the VLS server host account.
The ‘Account Password’ field should be populated with the password for the host account.
If the account already exists on the VLS server, the Action should be set to “Use Existing Account”.
If the account does not already exist on the VLS server, the Action should be set to “Create New Account”. This will create a new host account on the VLS server for the LMS instructor.
After you populate the VLS host account credentials and click ‘Apply Change’ you need to wait for synchronization to complete. There are no messages displayed stating that the account synchronized successfully if the action was successful. If the synchronization is not successful, an error message will be presented. To verify that the synchronization completed successfully, you should click on a different tab on the LMS instructor record and then click back on the VLS Settings tab. If the account credentials are populated when the VLS Settings tab is reloaded, then the synchronization was successful.
Notes for Skype/Lync VLS:
Microsoft Skype for Business and Microsoft Lync are useful for your Virtual Learning Service (VLS) when you want to lead smaller scale training for your internal employees who all have a Skype or Lync user name.
We built the VLS connection to Skype/Lync to be a very lightweight implementation for companies who have an on-premises installation of Skype for Business 2015 or an on-premises Lync 2013. We assume that all users have an account to Lync or Skype and that you are using it for internal training. Because of these assumptions and because we wanted it to be easy to configure, some options are not available or are reduced.
Synchronize LMS Scheduled Offerings with VLS Server
Using Scheduled Offering Creation Wizard
- Primary Instructor – the LMS instructor account that is synchronized with the VLS host account
- VLS Server – the applicable VLS server
- Password – this is the meeting/session password (not instructor password)
All scheduled offering segments will be setup for VLS using the SO creation wizard.
Synching/Updating an existing VLS Segment
The actual Virtual meeting is created on the segment of the offering. Once it is saved, the meeting is created/updated on the Virtual Meeting Vendors server via an API (Webex API or Breeze API for Adobe Connect or Skype/Lync) that communicates with the VLS vendor site. Its important to note, the SuccessFactors VLS API only posts data to the Vendor. The Vendor will only send SF back a Success/Fail response and does not send data back to the LMS. Therefore any changes on the Vendor site will not sync back with the LMS.
Here is the view of the Edit Segment Window:
- Add instructor account that is sync’d with VLS host account. Set the instructor to primary
- Check the ‘Segment is virtual’ checkbox
- Select the VLS server
- Password – this is the meeting/session password (not instructor password)
This will update the specific segment. Other segments will need to be updated individually.
Launching A Session from the LMS:
Admin Side:
User Side:
Launching a Segment:
- Instructors can also launch from the User Side via their Related User on their Instructor record from the admin side.
- When related to a user and logged in as that user, they will see a “My Classes’ tab/section where they can launch the meeting as a host.
4. Configure VLS with Webex
Some important Configurations that are available on Webex and Adobe:
- Configuration Settings for a Customer WebEx site
- The main settings you should be concerned with when looking at a customer’s WebEx VLS Configuration file are:
- xml_api_address
- url_api_address
- site_name
- Username
- password
- listing_type
- elms_url_prefix – should always be /vle
Note: Older customers may have a ‘meeting_type’ element in their WebEx configuration XML. This field is no longer used and is not sent in WebEx API requests. This field was deprecated in version 6.1 of the LMS and was replaced with ‘listing_type’.
- The customer will need to obtain the specific values they should be using for their integration.
- However, if we know the WebEx site name, the api address URLs can usually be derived.
- The common formats are:
xml_api_address – http(s)://<site_name>.webex.com/WBXService/XMLService
url_api_address – http(s)://<site_name>.webex.com/<site_name>
- The username and password fields should be valid credentials for a WebEx admin account.
- This needs to be a “Site Administrator” account, not a “Site Admin – View only” account.
The elms_url_prefix element should be populated with “/vle”
- Login as the admin into Webex using the username and password in the configuration file.
- The site will be listed in the <url_api_address>. Go to Site Administration at the top right and then Site Settings.
Note: Only Meeting Center and Training Center Webex meeting types are currently supported.
4.1. Common Errors when Scheduling a Webex Offering
VLS Error Code: All meetings must be unlisted
The meeting could not be updated on the VLS server. Please try again later or note the error code and contact your VLS administrator.
Cause:
The WebEx site you are attempting schedule the session on has “All meetings must be unlisted” enabled. This means all scheduled sessions must be created as unlisted meetings (not visible on the public WebEx calendar).
Resolution:
There are two options available to correct this issue.
- Update the WebEx VLS Connector configuration file to include ‘listing_type’ is “UNLISTED”
- Alternatively, the “All meetings must be unlisted” setting can be disabled in WebEx. To access this, log in to WebEx site using administrator account. Click “Site Administration” link and then on “Site Settings” link. Find the “All meetings must be unlisted” option, uncheck it and then click the “Update” button.
VLS Error Code: Invalid Password
The meeting could not be updated on the VLS server. Please try again later or note the error code and contact your VLS administrator.
Cause:
The password the LMS has stored for the instructor’s
WebEx account is no longer valid.
Resolution:
Update the instructor’s password for WebEx on the instructor record in the LMS. Use the “Use Existing” option when synchronizing with the WebEx account.
VLS Error Code: Corresponding Meeting Type not found
The meeting could not be updated on the VLS server. Please try again later or note the error code and contact your VLS administrator.
Cause:
Two possible causes:
- The WebEx site the customer is using does not include the Training service; or
- The instructor’s WebEx host account does not have access to any of the Training Service session types
Resolution:
For Cause #1, unfortunately, there is not much we can do here. The WebEx VLS integration requires the WebEx site license to include the Training service. In order to resolve this issue, the WebEx site will need to be updated to include Training. Customers would be required to work with their WebEx Account Rep to see what options they have to add the Training service to their site. This issue is typically seen with customers that only have the Meeting or Event services enabled.
You can view which WebEx services are enabled from the Site Admin Home page in WebEx.
For Cause #2, after you have verified that the customer WebEx site has Training service, you need to verify that the instructor’s WebEx host account has access to Training service session types. To do this, from the WebEx Site Administration page, click the ‘Edit User List’ link and then search for the instructor’s WebEx host account. In the screenshot listed below, you will see that none of the session types are enabled for this instructor.
In order to resolve, the customer will need to check-off the session types the instructor should have access to and then click the ‘Update’ button.
VLS ERROR: admin or instructor get a JAVA trace when using the "launch session" link on a VLS offering
com.plateausystems.elms.framework.vle.impl.VleException: Failed to retrieve getHostMeetingURL
The admin account configured in the VLS configuration does not have Training Center privileges in Webex. If you are not sure how to add those, please contact Webex support for assistance.
4.2. Common Errors when Synching Instructors
VLS Error: You cannot reuse any of your last 3 password(s):
The user account could not be updated on CSO WebEx VLS Server. Please try again later or note the error and contact your VLS administrator.
Cause:
This error can be seen when attempting to synchronize an LMS instructor with an existing WebEx host account. It is caused by the WebEx site password management setting “Do not allow reuse of the last X passwords”. We see this error when syncing an instructor with a WebEx account since a modify user API call is used during the synchronization. This API call is updating the WebEx host’s account password to what is provided in the LMS. This is necessary to ensure the password stored on the LMS side is the same as the password stored on the WebEx side.
Resolution:
In order to workaround this issue, the “Do not allow reuse of the last X passwords” setting will need to be disabled in WebEx. If needed, this can be done temporarily as the issue will only be seen when syncing the WebEx host and LMS instructor accounts.
The recommendation would be:
- Disable the “Do not allow reuse of the last X passwords” setting in WebEx
- Synchronize the LMS instructor accounts with the appropriate WebEx accounts
- Re-enable the “Do not allow reuse of the last X passwords” setting in WebEx
If the customer is only disabling this setting temporarily, they will need to keep in mind that it will need to be disabled again in the future when syncing new accounts.
To access this setting in WebEx, login to the WebEx site using an admin account. Click the ‘Site Administration’ link and then on the ‘Site Settings’ link. The “Do not allow reuse of the last X passwords” setting is included in the Password Management section.
VLS Error : java.lang.NumberFormatException: For input string: "“
The user account could not be updated on CSO WebEx VLS Server. Please try again later or note the error and contact your VLS administrator.
Possible Cause:
When synchronizing instructor accounts with Webex, the WebEx setUser API call includes a “timeZoneID” field. This is sent as an integer. The VLS Configuration file for WebEx contains a listing of timezone mappings that are used within this request. For example: <timezone name="US/Eastern" value="11"/>
Not all of the timezone mappings in the default WebEx configuration file come pre-populated. The java.lang.NumberFormatException: For input string: "" error can be seen when the timezone in the configuration file has no “value”. For example, if the VLS configuration contains the following:
java.lang.NumberFormatException: For input string: "“
<timezone name="US/Eastern" value=""/>
The NumberFormatException will be thrown if the LMS needs to send US/Eastern as the timezone in the setUser request.
The appropriate WebEx timezone ID number will need to be populated in the timezone mapping section of the WebEx VLS Configuration file.
It is important to note that the timezone that is sent is the database timezone, not the timezone listed on the instructor record in the LMS.
VLS Error : java.net.SocketException: Permission denied: connect or java.net.SocketException: Connection Timeout
The user account could not be updated on CSO WebEx VLS Server. Please try again later or note the error and contact your VLS administrator.
VLS Error : java.net.SocketException: Permission denied: connect
--
The user account could not be updated on CSO WebEx VLS Server. Please try again later or note the error and contact your VLS administrator.
VLS Error : java.net.SocketException: Connection Timeout
Possible Cause:
- The WebEx site you are attempting to connect to is currently down
- The datacenter firewall is blocking connections to webex
Resolution:
1. Check to make sure the VLS configuration file is setup correctly. Are the ‘xml_api_address’ and ‘url_api_address’ fields formatted correctly?
2. Test to see if you can connect to the URLs listed in the ‘xml_api_address’ field using a web browser. If the URL is valid and the site is up, you should receive a response similar to this:
3. If the URLs are valid and the site is up, test synchronizing the instructor account again. If you still receive the connection exceptions, you will need to work with Operations to ensure the firewall is open to allow communication to between the customer’s LMS app servers and WebEx.
VLS Error : VLE Enrollment Failed
VLE Enrollment Failed - Reason:java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0
Possible Cause:
This error can be seen when attempting to register users in WebEx scheduled offerings if the WebEx host modifies the registration settings on the WebEx session after it was created through the LMS integration. The following settings are required and should not be disabled on the WebEx sessions created through the integration:
- Require attendee registration
- Automatically approve all registration requests
Resolution:
The first step here is to determine if the registration settings on the WebEx session have been modified. To do this the WebEx host (LMS Instructor) or a WebEx admin account will need to login to WebEx. On the WebEx calendar, you will need to click the session that was created through the integration and then click the ‘Edit’ option. The required registration settings are listed under the ‘Registration’ heading.
To prevent this issue from occurring, the instructors will need to be advised not to modify these settings after the WebEx session was created through the integration.
5. Configure VLS with Adobe Connect
Similar settings are also available in Adobe Connect as in WebEx and are found in the Administration > More Settings section:
- These settings take effect once the Meetings begin and are only configurable from the VLS side and not from the LMS
- The Adobe VLS configuration file in the LMS differs slightly from that of the WebEx file in that Adobe requires that the locations where meetings, users, and Instructors (Hosts) are created be specified.
<lms_user_name_custom_field_id>x-1353965480</lms_user_name_custom_field_id>
<lms_user_type_custom_field_id>x-1353911905</lms_user_type_custom_field_id>
<!-- Breeze Folder ID in which new Meetings are created. Obtain from Breeze Installation-->
<folder_id>1353745885</folder_id>
<!-- Breeze Learner Group ID-->
<learner_group_id>1353883326</learner_group_id>
<!-- Breeze Instructor Group ID-->
<instructor_group_id>1353928519</instructor_group_id>
- Furthermore, Adobe requires that there is a group called 'Learner' and one called 'Instructor'.
- These groups will be shown in the user account in Adobe Connect on the Administration section and listed in the LMS_INST section.
5.1. Common Errors when using Adobe Connect
Deleting Accounts
When an account is deleted within the Adobe Connect UI, the account is not truly deleted, only inactivated. This can cause LMS/Adobe Connect integration issues if the account that was deleted was associated with an LMS User account.
Prior to 1305, this would result in a “Required Parameters missing” error when the LMS user that had their account on Adobe Connect deleted attempts to join an Adobe Connect VLS section. I believe in 1305 this error will be changed to note the account was deleted.
To prevent this issue from occurring, the custom fields used by the LMS integration should be cleared out before deleting the account from Adobe Connect (LMS User Name and LMS User Type fields). If these custom fields are cleared out prior to deleting the user’s account in Adobe Connect, this issue can be avoided.
Unique Emails
The account name for the Instructors needs to be the email address for the instructor’s host account in Adobe Connect. Unlike WebEx, when a learner joins an Adobe Connect session through the LMS, an account is created for the learner on the Adobe Connect site. Since accounts are created for hosts and learners on Adobe Connect through the VLS integration, LMS users cannot have the same email address as the LMS instructors.
Changing Adobe Connect Folder Structure
Customers/Partners or Customer Support should not mess with the folders other things that have already been created in the Adobe Meeting environment specifically for the VLS. We’ve been informed by our Adobe rep that it’s possible to irreparably damage the Connect environment by deleting folders that are being used by the LMS APIs (or some combination of APIs and removing templates and folders).
VLS Error : Status of Breeze Server response was Invalid
The user account could not be updated on SF_Adobe VLS Server. Please try again later or note the error and contact your VLS administrator.
VLS Error : Status of Breeze Server response was Invalid: <invalid field="email" type="string" subcode="format" />
Possible Cause:
An email address was not provided in the ‘Account ID’ field when you attempted to synchronize an instructor account.
Resolution:
When synchronizing an LMS instructor with an Adobe Connect host account, the ‘Account ID’ field on the instructor record in the LMS needs to be the email address associated with the instructor’s Adobe Connect account.
VLS Error : Status response: no-data“
The user account could not be created on ADOBE_CONNECT VLS Server. Please try again later or note the error and contact your VLS administrator.
ONLY CUSTOMER SUPPORT: See case #0020751294 0000006678 2015: There were only little changes necessary for the IDs of the learner/instructor group, coming from the browser-field of Adobe Connect. These IDs had to be changed in the VLS-settings for SF-Learning.
6. Configure VLS with Skype/Lync
Configuring Skype or Lync for VLS (Simplest: All Users Guests)
Configure Skype or Lync for Virtual Learning Service (VLS) to accept some functional limitations but also limit the chances for errors that prevent users from logging in to the VLS training session.
Prerequisites:
-
the URL format should be https://lyncdiscover.customerdomain.com
-
Your Skype or Lync administrator must allow your SAP SuccessFactors Learning URL on your server/network
-
SKYPE IDs need to contain the company domain: examples: domain\UserID or userID@domain.com.
Please note that since Skype is installed on premise, it will be within a domain (let's call it IT) which might have a different name than the email domain, so even if you choose the format userID@domain.com (example user@sap.com), when you will update the instructor VLS credentials in LMS, you need to populate the field with IT\UserID and NOT user@sap.com, otherwise you will get a validation error -usually a connection server error (in our logs we will see a 401 unauthorized)
Context: The simplest configuration of Skype or Lync for VLS logs all users in as guests. Users type their name when they launch Skype or Lync, which is an extra step, but everyone in the meeting sees their names, and the instructor can take attendance. Because Microsoft cannot record attendance automatically back to the LMS, the instructor must take attendance even if users logged in as named participants instead of guests, so you lose very little by logging users in as guests. Your only loss is that Microsoft limits the amount of guests to 250. If you use Skype or Lync for small training events, then you are unlikely to reach the limit.
For a limit of 250 participants (including instructors) and an extra sign-in step, you assure that users can always get in to the VLS training session. If, however, it is important for you that your users always log in not as guests but with their Skype or Lync user names, you can set up their user names in a user custom column. If the value in the custom column is not null and not recognized by Skype or Lync, then the user is not able to enter the meeting room
Procedure
- 1. Go to SAP SuccessFactors Learning administration, and then go to System Admin->Custom Columns->User
- Click Add New to add a new custom column
- In Add New User Custom Column, type a number in Column Number, type Skype or Lync ID in Label, and select Referenced. Write down the column number because you need it later
- In Edit the User Custom Column, do not add any references. You do not add references because you always want this column to be null for all users. The null value triggers the log in as guest
- Go to System Admin->Configuration->VLS Settings and open the Skype or Lync configuration file
- Add the column number that you added to custom_column_number.
Configuring Skype or Lync for VLS With Named User Accounts
Set up users' Skype or Lync accounts if you need more than 250 users in one Skype or Lync training session or if it is important to you that all users are not guests.
Prerequisites
- Before you decide to add Skype or Lync user names to SAP SuccessFactors Learning, consider the simpler alternative: all users log in as guests
- You must accept some limitations, but the management is easier. Configuring Skype or Lync for VLS (Simplest: All Users Guests)
Your Skype or Lync administrator must allow your SAP SuccessFactors Learning URL on your server/network.
Context
- If you want to you use Skype or Lync for your VLS solution, and if you want all users to sign in under their Skype or Lync user names (and also avoid the 250 guest limit), then SAP SuccessFactors Learning needs to know the users' Skype or Lync user names.
- The first step in storing users' Skype or Lync user names is to create a custom column where it can be stored.
Procedure
- Go to SAP SuccessFactors Learning administration, and then go to System Admin->Custom Columns->User and click Add New to add a new column.
- In Label, type Skype or Lync ID and in Column Number, type a number that does not exist for other columns. Make a note of the custom column number. You need it later, when importing users' Skype or Lync user names.
- Clear the Referenced checkbox.
- Click Add.
- Go to System Admin->Configuration->VLS Settings and open the Skype or Lync configuration file.
- Add the column number that you added to custom_column_number.
- For example, <custom_column_number>200</custom_column_number>
- Paste the URL to your Skype or Lync server in url_api_address
- For example, <url_api_address>https://lyncdiscover.mysite.com</url_api_address>
- Optional: Change the value of site_name. Site name is your way to distinguish this Skype or Lync server from among the other servers you have configured.
- Save and close the configuration file.
Next Steps
Using a user connector or the import tool (System Admin->Tools->Import Data), import users' Skype or Lync user names to the custom column.
NOTE: When you Need to Set up Skype or Lync User Names
Set up Skype or Lync user names in SAP SuccessFactors Learning if you plan to exceed 250 employees in one training room.
Microsoft has built a limitation into Skype and Lync that allows only 250 guests in one training room. You can exceed that number if the people joining the meeting sign in with a recognized user name. SAP SuccessFactors Learning can sign users into training rooms without an account as guests, but after the 250th person joins, the 251st person cannot be admitted to the meeting room. If you plan to keep your training sessions below 250 users, then the LMS does not need to know Skype/Lync user names, so you do not need to add them into custom columns.
Configuring instructors:
Instructor accounts are not created automatically. Microsoft Skype for Business and Microsoft Lync do not distinguish between instructors/leaders and learners/participants so there is no need to generate an instructor record in Skype/Lync from within LMS.
However your instructors need:
- A related user
- The Skype credentials of this user are populated in Learning > Instructors > search for your instructor and open in edit mode > VLS settings > enter the Skype/lync credentials of the USER related to the instructor account
- to be authorized to teach the items they will be scheduled for
6.1. Common Errors when using Skype/Lync
No Attendance Tracking in VLS
Microsoft Skype for Business and Microsoft Lync do not support attendance tracking. When a training session is over, an instructor or a learning administrator records attendance as if the training session took place in a physical classroom: they use the learning event recorder.
If your users' attendance is not tracked in the VLS, chances are that they did not log in through SAP SuccessFactors Learning. SAP SuccessFactors Learning Virtual Learning Service (VLS) works correctly users connect directly from SAP SuccessFactors Learning to the listed virtual classrooms. If users connect to their courses through the service directly, features like completion status do not work.
If this is the case, ask your training organization to redirect employees to their Learning Assignments tile, which not only links the participants to the virtual training room but also keeps track of their training events, and a history of their participation. SAP SuccessFactors Learning automatically sends an .ics calendar file to users enrolled in training.
Instructor Accounts Not Created Automatically
Microsoft Skype for Business and Microsoft Lync do not distinguish between instructors/leaders and learners/participants, so there is no need to generate an instructor record in Skype/Lync from within the Learning Management System (LMS). Your instructors do need related user accounts, but this is standard for all VLS configuration.
Cannot set Password for Meeting Registration
If you cannot set a password for meeting registration, check your virtual meeting room vendor.
Users Cannot Join Before Meeting Starts
If your users cannot join before the instructor starts the meeting, check your configuration and your meeting room vendor.
If you set System Admin->Configuration->Global Settings->Display join option prior to session start, your users can join before the meeting starts. They remain on hold until the leader (the instructor) joins.
VLS Sessions Created Incorrectly
If your sessions are not created correctly in the VLS, chances are that they were not created through SAP SuccessFactors Learning.
The SAP SuccessFactors Learning VLS supports the features it needs to connect users and instructors to the virtual meeting rooms where training will take place. If the error in your session is related to one of the actions below, then check your configuration. If not, it could be that you edited the session outside of SAP SuccessFactors Learning.
- Create and update users: Meeting room accounts need to be created and updated for instructors, if you manage your instructors in SAP SuccessFactors Learning.
- Create, update, or delete events: When you create a virtual meeting room segment of a scheduled offering, update it, or delete it, the system creates, updates, or deletes the event on the virtual meeting service.
- Enroll and withdraw users from a meeting: When you add users to a learning item or remove them, the system adds and removes them from the meeting room.
- Get meeting and user information: The system communicates meeting information between SAP SuccessFactors Learning and the meeting room service.
- Get EventHost URL and Get EventJoin URL: The system needs the URL for the instructor (host) to start the event and for users to join the event from their learning assignments.
- Get Host Attendance: The system gets the host attendance for the total duration of the session.
- Get Student Attendance: The system gets the student attendance for the duration of attendance for each student. Learning administrators can then report on users' participation.
Users Cannot Connect to Virtual Training
- Before you implement Virtual Learning Services (VLS), you should make sure that your network allows your users to launch your virtual meeting room.
- By configuring your network and testing it to make sure that your users can launch your virtual meeting room, you can test the SAP SuccessFactors Learning configuration end to end. You can set up a VLS session, assign it to a test user, and make sure that the user can launch the virtual meeting room.
- A closed firewall port is the most common issue when connecting to virtual meeting rooms. We recommend you open the firewall before you begin configuring the VLS to connect to your chosen vendor. Check with your vendor about the ports they use.
Virtual Learning Service Time Zone Troubleshooting
When setting up Virtual Learning Service (VLS) configuration files, you should be able to use the default time zone mappings, but time zones are a likely source of trouble. Use this information to troubleshoot time zone problems.
Time Zone Mapping Issues
The SAP SuccessFactors Learning time zones are standard Java time zones. The timezone maps in the VLS configuration files link the SuccessFactors time zone to the VLS server time zone. WebEx, for example, uses numbers for its time zones, so the system must map the Java syntax (for example, America\New_York) to the WebEx syntax (for example, the number 11).
Time zone mappings are contained in the VLS configuration files, in the timezones element. Each timezone child of timezones is a link. For example, the following links “America/New_York” from SuccessFactors syntax to 11 from the WebEx syntax. The name attribute contains the SuccessFactors syntax and the value attribute contains the VLS syntax.
<timezone name="America/New_York" value="11" /> In almost every case, you can use the default time zone mappings. However, if participants in your meetings describe time zone issues, you can check the map for their time zone to make sure that it is right.
ERROR:
Error Code: Client.ServiceLimit.ScheduledMaintenance Error Message: Either the service is currently under maintenance or the scheduled time of this meeting would overlap with the maintenance window of this service.
CAUSE:
From Microsoft Support site:
“6. Scheduled Downtime; No Training or Technical Support. The regularly scheduled maintenance for the Site is dependent on data center location. Current scheduled maintenance hours are 10:00 a.m. – 4:00 p.m. (PST) every Friday for Asia, and 6:00 p.m. Friday to 12:00 a.m. (PST) every Saturday for all other data center locations. During that time the Services are not available for use. Microsoft has no obligation under the terms of this Agreement to provide support or maintenance services in connection with the Software or Services.”
(Ref: http://office.microsoft.com/en-us/live-meeting-help/microsoft-office-live-meeting-terms-of-service-HA101875668.aspx)
7. VLS Attendance Processing APM
The LMS includes the ability to automatically record scheduled offering attendance for VLS sessions. If a VLS scheduled offering is configured to automatically record attendance, the VLS Attendance Processing APM (System Admin > Automatic Processes > VLS Attendance APM) will record a learning event for users enrolled in the offering.
Configuring a VLS Scheduled Offering to automatically record attendance:
- Synchronize an LMS scheduled offering with a VLS server
- On the scheduled offering record in the LMS, click the ‘View All’ link
- Under the VLS Settings heading, set the following
- Automatically record learning events after scheduled offering has completed to “Yes”
- Minimum Attendance Percentage for Credit should be populate with the percent of time users need to attend the session in order to receive credit.
- For Credit Completion Status should be set to a for-credit completion status. This is the completion status used for the learning events recorded for users that attended the session for the required % of time
- Non-credit Completion Status should be set to a non-credit completion status. This is the completion status used for the learning events recorded for users that did not attend the session for the required % of time.
Note: Both For Credit and Non-credit Completion statuses are mandatory for Scheduled offerings (unlike for other types of items) using VLS integration. Otherwise an error may be displayed such as "Non-credit Completion status ID is required". - Click Save
7.1. VLS Attendance APM Troubleshooting
NOTE: If the class has several segments, the minimum percentage for completion will be calculated combining all segments. That means the system will add up the total time of the segments (amount of time the sessions were left open by the instructor) and then check if the user attended the minimum percentage.
Note on Minimum Attendance Percentage for Credit setting
The % of time that a user attends the VLS session is based on how long the session is left open by the instructor, not by the scheduled offering start and end times.
Example:
- A VLS scheduled offering is scheduled to run from 9:00 AM to 10:00 AM
- The instructor launches the VLS session at 8:45 AM and then keeps it open after 10:00 AM for follow-up questions until 10:45 AM
- A registered user attends the session from 9:00 AM to 10:00 AM
In this example, the total session time was 2 hours (8:45 AM to 10:45 AM) and the registered user attended the session for 50% of the total session time (attended for 1 hour).
If the scheduled offering was configured to require > 50% attendance, the registered user would not receive credit for attending this session even though they attended the full session based on the start and end times of the scheduled offering.
We recommend that customers keep this in mind when configuring scheduled offerings for the VLS Attendance Processing APM. Most of our customer use a low Minimum Attendance Percentage for Credit setting to account for the extra time an instructor may leave a VLS session open.
ONLY FOR CUSTOMER SUPPORT: Example where the Completion Percentage is set to 50%:
PA_VLE_EVENT (table that contains the meetings info and instructor session) duration is 2.0
PA_VLE_ENROLL_SEAT (table that contains the users attendance and enrollment info) is 1.1
1.1 / 2.0 = .55 or 55%, so the users will get the ‘For Credit’ Completion status, not the failure. Below .55 will receive ‘Not for Credit’ failure status. In the below example, the APM processed my test user sbev97. The user has a value in the attendance_duration and the ENROLL_STATUS is ‘READY’. It would be ‘PENDING’ if the APM was still pending the Attendance file from the VLS vendor.
The recording of the completion takes place when the APM runs. The API that communicates with the VLS vendor then looks for an attendance file which it uses to determine whether or not the user should get a ‘For Credit’ completion status, or a ‘Not For Credit’ completion status.
In the database table PA_VLE_EVENT (filter by schd_id (the offerings ID)), does the event have a session duration value (Instructor Session) in the column EVENT_DURATION? (ie 1.0 = 1 hour, 1.1 = 1 hour 6 mins, etc.)
In the database table PA_VLE_ENROLL_SEAT (filter by event id from PA_VLE_EVENT), Do the users have a session duration value?
If both do (meaning the API successfully retrieved attendance data from the vendor), and minimum percentage is set (say 50% for example) the users will receive the either 'Completion Status' or 'Failure status' set on offering settings based on their duration vs instructor duration in PA_VLE_EVENT.
If the offering STATUS in PA_VLE_ENROLL_SEAT and PA_VLE_EVENT is 'PENDING', the APM has not received the attendance file that is to be sent from the VLS side and VLS vendor should be contacted by customer. SuccessFactors currently does not log ANY API communication and is why the vendor needs to be contacted to confirm the attendance file is available.
If a Completion Percentage is set, then the calculation that takes place solely depends on how long the Instructor kept the meeting open vs. how long the users attended the meeting.
PA_VLE_ATTENDANCE_JOB will show the status of the APM. In the below example, the attendance file was not sent within the threshold, so they were marked INVALID. Offering 3601 is still pending and the APM will still look for the file when ran.
The APM has a threshold option (10,20,30,40) that determines the number of days where the APM will run and try to communicate with the VLS vendor for the attendance durations via API.
Once the Threshold has past (ie threshold is 10, APM runs on the 11th day), the STATUS in PA_VLE_EVENT will be marked ‘INVALID’. Again, the status of ‘READY’ will be shown when the APM successfully processed the user and received attendance from the vendor. For WebEx, the Attendance XML is available when the Final Attendance Report is available to the WebEx administrator which is normally 24-48 hours after the session.
8. VLS Template
TEMPLATES:
Notification tag:
<ATTENANCE_RETRIEVAL_COUNT>
This should be the number of users who have any attendance in any session of the offering. Users must have attended via the LMS Join button or the URL provided in the email. Basically, they must be logged in through the LMS as an LMS user, and not directly into the VLS session as a guest.
<SCHEDULES_RECORDED_COUNT>
The is the number of scheduled offerings for which attendance is being sent. A single scheduled offering may have multiple VLS sessions (1 session per segment).
Environment
SAP Successfactors Learning
See Also
- 2285945 - How to integrate WebEx with LMS
- 2285975 - How Do I integrate Adobe connect with LMS? - LMS
- 3113230 - Microsoft Teams - VLS Implementation Supplementary Links
- 2662493 - SAP SuccessFactors Learning Virtual Learning Service (VLS) User Assistance Documentation Link
- 2184324 - VLS error - Status response no-data
- 2279376 - Automatic Process VLS label changed in b1602
- 2285209 - VLS - Config Settings missing in the instance
- 2297706 - VLS Integration to Skype Error - createConnector () failed - LMS
- 2253292 - VLS Error Code: All meetings must be unlisted - LMS
- 2184323 - LMS: Validation error when adding VLS server to a scheduled offering
- 2184230 - "Failed to get SiteUrl" error when adding VLS Settings for Instructor-LMS
- 2219839 - VLS schedule Offering Automatic Completion using VLS attendance Processing APM - LMS
- 2292366 - Registration connector does not trigger VLS enrollment for a schedule offering - LMS 2253790 - VLS Error: Fail to forward request. Please call XMLAPI via SSL(HTTPS) - LMS
- 2184359 - VLS Error: A user with the same Account ID exists in Breeze - LMS
- 2184358 - Validation Error about Telephony when adding the VLS option in a scheduled offering-Learning Management System
- 2271788 - LMS: When Adding an Instructor the LMS Admin ID is Auto-populated in the VLS Account ID Field
- 2184360 - VLS Attendance Processing APM error:java.lang.NullPointerException: while trying to get the length of an array loaded from local variable 'vleEnrollSeats'- LMS
- 2184316 - Error When Adding the Instructor VLS details:VLS Error: You cannot reuse any of your last 3 password(s)-Learning Management System
- 2184372 - How to change the time for the join option to become active when joining the VLS session-LMS
- 2606330 - VLS integration VLS Error Code: execute() failed
- 3261503 - "VLS Settings" tab missing from the instructors' records
Keywords
vls, virtual, learning, session, webex, adobe, teams, zoom, ilt, scheduled, offering, class, videoconference, instructor , KBA , LOD-SF-LMS-VLS , Virtual Learning System , LOD-SF-LMS , Learning Management System , LOD-SF-LMS-SER , Config. Consulting & Service Requests , How To