This article walks you through configuring the Lighting Scheduler for use with SightCall for Salesforce integration. The SightCall package for SFDC Lightning Scheduler uses the Appointment and Salesforce services.
In this article
This article covers:
- Requirements for set up
- Install and register your package
- Configure your package
- Configure Appointment Package Options
- Testing the Appointment Setup
- Appendix A: SightCall Appointment Package Configuration Options
- Appendix B: Troubleshooting
Requirements for set up
Before proceeding with the SightCall Lightning Scheduler setup outlined in this document, you need to complete the following:
- Installation of the SightCall for Salesforce managed package into your Salesforce org
- Activation of the SightCall for Salesforce package.
- Basic Lightning Scheduler configuration via the Lightning Scheduler Setup Assistant Salesforce app (at minimum, the “Getting Started with Lightning Scheduler” and “Set Up a Service Resource and Assign a Skill” sections).
Install and register your package
To install and register your SightCall for Salesforce package:
- Install the following package in your Salesforce Org: https://login.salesforce.com/packaging/installPackage.apexp?p0=04t4T000001u2c5
If you're installing the package in a Sandbox org, use this link:
https://test.salesforce.com/packaging/installPackage.apexp?p0=04t4T000001u2c - Wait until you receive the Package SightCall Appointments Install Successful email notification.
- In a new browser tab, navigate and login to https://admin.sightcall.com with your SightCall Administrator credential.
- On the left panel menu, click Services.
- Once you're in services.sightcall.com, click the Salesforce tile
- Click the Admin button on the top right corner.
- Select the Appointment Connector tab > Check the Enable Appointment Webhook > click Save.
Configure your package
The steps in this section explain how to configure your package.
Set up named credentials
To set up named credentials:
- Navigate to Salesforce Setup.
- In the Quick find bar, type named credentials.
- Click Named Credentials under Security.
- Click the Edit link next to the SightCall Appointment credential:
- Change the Username and Password in the Named Credentials to a username/password of your choosing and click Save.
- In a new browser tab, navigate and login to https://admin.sightcall.com with your SightCall Administrator credential.
- On the left panel menu, click Services.
- Once you're in services.sightcall.com, click the Salesforce tile
- Enter the Named Credential username and password from step 5 into the Username for Appointment and Password for Appointment fields. Afterwards, click Save.
Service appointment object custom fields
To configure service appointment object custom fields:
- Navigate to Salesforce Setup > Object Manager.
- In the Quick Find bar, type Service Appointment and click on the Service Appointment object in the results.
- Click the Fields & Relationships option from the left menu.
- Click New to create a new custom field. This field should have the following configuration:
Step
Setting
Value
Step 1
Data Type
Formula
Step 2
Field Label
Is Video Appointment
Step 2
Formula Return Type
Checkbox
Step 3
Is Video Appointment (Checkbox)
ISPICKVAL(AppointmentType,'video')
Step 4
Make visible to anyone who will be using Service Appointments
Step 5
Add to all Service Appointment layouts
Add Appointment Links to Service Appointment Layout
To add the appointment links to the Service Appointment Layout:
- While still in SETUP > OBJECT MANAGER > Service Appointment, click Page Layouts from the left menu.
- Select the page layout you wish to modify.
- Move the following fields into the layout and click Save.
- Agent Appointment Link
- Guest Appointment Link
- Is Video Appointment
- Appointment Type
See the following illustration:
Configure Appointment Package Options
This section illustrates the appointment package configuration to get basic SightCall scheduling functionality. A more comprehensive description of each option is found in Appendix A.
- Open a new browser tab and navigate to:
https://<yourdomain>.lightning.force.com/apex/Appointment_Setup - Change the following fields/values:
Config Question |
Radio Option |
Input Box Value |
How do we consider that this appointment is a video one? |
Check a value in a field of the record |
Is_Video_Appointment__c |
How do we consider the type of video appointment for a record? |
Force a value |
desktop |
Appointments may or may not require the agent to join the lobby. This information can be configured on a record basis. If you want to force a value, please input ‘true’ or ‘false’. |
Force a value |
true |
Appointments may or may not start automatically for the guest, when the guest is in the lobby. This information can be configured on a record basis. If you want to force a value, please input ‘true’ or ‘false’. |
Force a value |
true
|
- Click Update Configuration when done. Your configuration should look like this:
Testing the Appointment Setup
For ease of testing the actual SightCall session from the appointment links, it is recommended that you add the SightCallUtilityWidget to the Lightning Scheduler Console.
Option 1: Lightning Scheduler Flow
To use Lightning Scheduler appointment booking experience from the Work Order, you need to follow a couple more steps and add a button to the Work Order object.
Requirements
The following requirements must be met if testing based on the configuration provided in this guide:
- Create a Work Order with an associated contact.
- Create a Service Territory and Service Hours per Lightning Scheduler setup.
- Create a Lightning Scheduler Service Resource
Setup
- Go to Setup > Object Manager > Work Order > Buttons, Links and Actions > New Action:
- Pick Flow as Action Type and select Outbound New Appointment from the list of flows. You can name the button the way you like. Select Save.
- Add the button to the Work Order page layout of your choice.
Demo Steps
- Go to the Work Order of your choice and on the Actions panel, select Create New from the Schedule Appointment action tab.
- Follow the flow to book an appointment according to the Work Types and Service Territory that you have set up for your Service Resource. Don’t forget to select Virtual Appointment!
*If the flow does not work as expected, i.e., there is no service resource available for the territory, refer to this article lists all the troubleshooting steps.
-
Once you are done with the flow, a message confirms that your appointment has been created.
- Navigate to the Related List of the Work Order you were using and find the newly created Service Appointment. Scroll down to see the generated SightCall links.
Option 2: Manual Service Appointment Creation
Requirements
The following pre-requisites must be met if testing based on the configuration provided in this guide:
- Create a Work Order with an associated contact.
- Create a Service Territory and Service Hours per Lightning Scheduler setup.
- Create a Lightning Scheduler Service Resource
Procedure
- In Salesforce, switch to the Lightning Scheduler Console.
- Create a new Service Appointment.
- Select your Service Territory.
- Select your Work Order as the Parent Record. (Salesforce defaults the parent record to Accounts. Change this by clicking the Account icon and selecting the Work Order icon, then search for your work order in the search box).
- Set Work Acceptance Status to Accept.
- Set Appointment Type to Virtual.
- Set Earliest Start Permitted to sometime in the past.
- Set Due Date to 30 minutes from now.
- Set Scheduled Start to 30 minutes from now.
- Set Scheduled End to 60 minutes from now.
- Click Save.
- In your new Service Appointment, click on the Related option and then click the New button in the Assigned Resources section.
- Select your Service Resource and click Save. If you don’t already have a Service Resource, you will need to create one.
IMPORTANT: The Service Resource that you choose must be a SightCall Agent who has been provisioned. - If everything worked, you should see the following in the Service Appointment details (you will need to refresh your Service Appointment tab):
- The Service Appointment Status should change to Scheduled.
- The Agent Appointment Link and Guest Appointment Link fields should now be populated
- You and the guest should receive an email with the appropriate appointment link (check your junk mail folder).
Appendix A: SightCall Appointment Package Configuration Options
This appendix describes how each of the configuration options found at https://<yourdomain>.lightning.force.com/apex/Appointment_Setup affects the SightCall appointment behavior.
Configuration Option:
An appointment flagged as video will trigger a notification to the notification service when:
- The contact for the guest has been defined.
- The Service Appointment is in one the following statuses:
Description |
This field determines which Service Appointment statuses will trigger a notification (email) when the Service Appointment is a video appointment AND the guest contact has been defined. |
Options |
N/A |
Default value |
Scheduled, Dispatched, In Progress |
Acceptable values |
Comma-separated list of Service Appointment statuses |
Configuration Option:
We need to know if this appointment is a video appointment.
When specified, this value should either be true or false. Otherwise, the default behavior is to check if the kind of video appointment is not null (see next section)
How do we consider that this appointment is a video one?
Description |
This option defines how SightCall knows that this Service Appointment is a video appointment. |
Options |
1. Check value in a field of the record 2. Force a value |
Default value |
Empty (null) |
Acceptable values |
|
Configuration Option:
We need to know what kind of video appointment should be triggered.
This value should either be null, 'acd', 'mobile', or 'desktop'. null means 'Not a video Appointment'
How do we consider the type of video appointment for a record?
Description |
This option determines what kind of SightCall video appointment a given Service Appointment record creates. You can make this selectable on a per-appointment basis, or force one of the acceptable values to ensure that all appointments are of a given type. |
Options |
1. Check value in a field of the record 2. Force a value |
Default value |
Video_Session_Mode__c (note, this custom field is provided by the SightCall Appointment package on the Service Appointment object. However, you should add it to the object layout). |
Acceptable values |
|
Configuration Option:
We need to know where to find the Guest record object from the Service appointment
Where can be found the contact information?
Description |
SightCall needs to retrieve contact information from the Service Appointment to send the appointment notification to the guest. This configuration option specifies which associated object from which it will grab the contact information (e.g., email address). |
Options |
1. Check value in a field of the record 2. Force a value |
Default value |
ContactId (references the associated Contact in the Service Appointment) |
Acceptable values |
|
Configuration Option:
Appointments may or may not require the agent to join the lobby. This information can be configured on a record basis.
If you want to force a value, please input "true" or "false".
Description |
This option specifies the AGENT waiting room behavior. If set to true, the appointment link sent to the agent, when clicked, will launch a waiting room page for the agent. If set to false, the appointment link will automatically start the SightCall session on the agent side. |
Options |
1. Check value in a field of the record 2. Force a value |
Default value |
Meeting_Point__c (note, this default custom field is provided by the SightCall Appointment package. It is recommended that you add it to the object layout). |
Acceptable values |
|
Configuration Option:
Appointments may or may not start automatically for the guest, when the guest is in the lobby. This information can be configured on a record basis.
If you want to force a value, please input "true" or "false".
Where can be found this information?
Description |
When the guest enters the appointment waiting room, there will be an “ENTER SESSION” button displayed that the guest has to click in order to actually be joined to the SightCall session. If this configuration option is set to true, the guest does not have to click this button. Instead, when the agent is ready and has joined the session, the guest will automatically join. |
Options |
1. Check value in a field of the record 2. Force a value |
Default value |
Automatic_Trigger__c (note, this default custom field is provided by the SightCall Appointment package. It is recommended that you add it to the object layout). |
Acceptable values |
|
Configuration Option:
Appointments may be generated for mobile agents. If this is the case, we need to know where the Mobile agent login is stored for a specific user.
Where can be found this information?
Description |
This configuration option ONLY affects customers who are using the SightCall Salesforce MOBILE widget. If you aren’t sure, or don’t know what this is, discuss with your SightCall Customer Success Manager or Sales Engineer. This configuration option tells the SightCall appointment package where to find the SightCall Mobile Agent username for a given agent in order to launch a mobile-to-mobile appointment. This is typically found in a custom field on the Salesforce User object that is created during the mobile widget setup. |
Options |
1. Check value in a field of the record 2. Force a value
|
Default value |
Mobile_Agent_Login__c (note: For this to work, you must create a custom field on the Salesforce User object called Mobile Agent Login). |
Acceptable values |
|
Configuration Option:
Appointments may be triggered on a specific use case. If not provided, we will assign the default use case of the agent. You still have the possibility to override the default use case.
Do you want to use a specific use case here? If you don't, set the value as blank. Otherwise:
Where can be found this information?
Description |
This configuration option determines which SightCall use case(s) can/will be used for appointments. Leaving this option empty specifies that all video Service Appointments will use the default SightCall use case (as specified in the SightCall Admin portal). Changing the value or providing a custom field option gives further control over the use case(s) that may be used (for example, for different groups of agents). |
Options |
1. Check value in a field of the record 2. Force a value |
Default value |
(empty – null) Default SightCall use case will be used for all appointments. |
Acceptable values |
|
Configuration Option:
Appointments may send emails to both the guest and the agent (if associated). If not provided, no e-mail will be sent.
Do you want to use the Salesforce mailing system to notify the guest/agent? If you don't, set the value as blank. Otherwise:
Where can be found the guest e-mail template?
Description |
This setting specifies the name of the Salesforce email template that will be used when sending the appointment link to the guest when an appointment is generated. The appointment package comes with a pre-defined template named SightCall_Appointment_Guest_Notification, which is the default. If this field is left blank, no email will be sent to the guest when an appointment is generated (you likely do not want to leave this blank). |
Options |
1. Check value in a field of the record 2. Force a value |
Default value |
SightCall_Appointment_Guest_Notification |
Acceptable values |
|
Configuration Option:
Where can be found the agent e-mail template?
Description |
This setting is a continuation of the previous configuration option, except that it controls which email template is used to send to the Agent instead of the Guest. The appointment package comes with a pre-defined template named SightCall_Appointment_Agent_Notification, which is the default. If this field is left blank, no email will be sent to the agent when an appointment is generated (you likely do not want to leave this blank). |
Options |
1. Check value in a field of the record 2. Force a value |
Default value |
SightCall_Appointment_Agent_Notification |
Acceptable values |
|
Configuration Option:
A couple of user-defined fields are required for the package to work properly.
Which field in the Service Appointment contains the following information:
Description |
This group of options specifies fields in the Service Appointment object that will be used by the SightCall appointment package to determine the parameters of the associated SightCall session. In general, these should not need to be modified unless you have customizations in Lightning Scheduler that would otherwise require modification. |
Setting |
Default Value |
Purpose |
Appointment Name |
Subject |
Used as the Session Title in the SightCall appointment waiting room. Visible to agent and guest. SightCall will use this Service Appointment field to determine session title. |
Start Time |
SchedStartTime |
Start time of the SightCall appointment. Guests can join the waiting room up to 15 min prior to this time. SightCall will use this Service Appointment field to determine the scheduled start time. |
End Time |
SchedEndTime |
End time of the SightCall appointment. Guests cannot join the appointment after this time (e.g. the appointment link will expire). SightCall will use this Service Appointment field to determine the end time. |
Generated Guest Link |
Guest_Appointment_Link__c |
The URL that is generated and sent to the guest will be stored in this Service Appointment field. |
Generated Agent Link |
Agent_Appointment_Link__c |
The URL that is generated and sent to the agent will be stored in this Service Appointment field. |
Appendix B: Troubleshooting
If you followed the instructions as presented in this guide, you should have a basic, working configuration of the SightCall package for Lightning Scheduler. However, since every Salesforce org is different, it is possible that you may run into issues. This section describes some common issues you may run into, along with steps to resolve such issues.
Issue: I created a Service Appointment, but there are no SightCall Agent or Guest links
Cause: The SightCall Lightning Scheduler package creates appointment links when the following conditions are true:
- The Service Appointment type is set to Virtual.
- A Service Resource is assigned to the Service Appointment.
- The Service Appointment changes to one of the following states:
(This is configurable)- Scheduled
- Dispatched
- In Progress
Troubleshooting Steps:
- Validate that the Appointment Type is correct:
- Open your Service Appointment in Salesforce.
- Verify that the following fields are set as such:
- Appointment Type: Virtual
- Is Video Appointment: (checked)
- If the above fields are not correct, modify your service appointment and set the Appointment Type to Virtual.
- Validate that you have a Service Resource assigned to the Service Appointment:
- Open your Service Appointment in Salesforce.
- Select the Related
- If the Assigned Resources list has no entries, add an Assigned Resource using the New Note: Adding an Assigned Resource will change the Service Appointment status to Scheduled. Also, make sure the Assigned Resource is a Service Resource who is also a provisioned SightCall user.
- Validate that the Service Appointment has the proper status:
- Open your Service Appointment in Salesforce.
- Verify that the Status field is now set to one of: Scheduled, Dispatched, In Progress.
- Validate that the Service Appointment has been assigned with the correct Contacts with the correct email address in the Contact Details.
Issue: I successfully scheduled an appointment, but neither the Agent nor the Guest has received an email with the SightCall appointment links
Cause: The SightCall Appointment package utilizes Salesforce’s email capabilities to send appointment emails using pre-defined email templates. Salesforce may not be configured to allow you to send emails, or you may have an email template configured that does not exist.
Troubleshooting Steps:
- Verify that the correct email templates exist:
- Open this URL in a browser tab (make sure to substitute your actual Salesforce subdomain):
https://<yourdomain>.lightning.force.com/apex/Appointment_Setup - Search for the following text:
“Appointments may send emails to both the guest and the agent (if associated). If not provided, no e-mail will be sent. Do you want to use the Salesforce mailing system to notify the guest/agent?” - Note the value set for this configuration option (Default: SightCall_Appointment_Guest_Notification).
- Directly below this option is the configuration item with the text, “Where can be found the agent e-mail template?”. Note the value for this option as well (Default: SightCall_Appointment_Agent_Notification).
- Open the standard Salesforce Setup page.
- In the Quick Find bar, search for Classic Email Templates, and select the resulting option.
- Change the Folder drop-down option to SightCall Appointments.
- You should see the two templates specified in steps c and d above. If you do not see them, you need to create these templates or reinstall the SightCall Appointments package.
- Open this URL in a browser tab (make sure to substitute your actual Salesforce subdomain):
- Verify that Salesforce is configured to allow sending of non-system email:
- Go to Salesforce Setup.
- In the Quick Find bar, search for Deliverability, and select Deliverability from the results.
- In the Deliverability configuration screen, the first option is a drop-down labeled Access level. Set this to All email.
- Click Save.