Quakker ‐ Installation Guide - clorce/QuakkerPub GitHub Wiki

Quakker Installation Guide

Table of contents

1. Before reading this guide 3

2. Contact your PBX provider or choose one of our partners. 3

3. Installation steps - it tooks 15 min! 3

a. Step One - Installation from Salesforce AppExchange 3

b. Step Two - Adding URL Provider to CSP in Salesforce 8

c. Lightning Web Security in Session Settings 9

d. Step Three - Assigning Quakker licenses 10

e. Step Four - Click To Dial Configuration 10

f. Step Five - Assigning Permission Set to Users 11

g. Step Six - Grant permissions to standard objects 12

h. Step Seven - Add custom fields to the Activity object layout. 13

4. Sharing Setting 14

5. Step Eight - Log in to Quakker App 14

6. Additional Setup - Non-mandatory 17

a. Adding Quakker App to Utility Bar, Adding Custom Fields to Activity Layout 17

b. Configure Quaker Settings. 18

c. Translations 22

Contact 23

  1. Before reading this guide {#before-reading-this-guide}

The Quakker application is designed to handle telephone calls within the Salesforce system. It allows for receiving incoming calls and making outbound calls within Salesforce. Additionally, all conversations made through this application are recorded as activities and associated with a specific contact or account.

The solution is based on the Salesforce ecosystem. Therefore, for any difficulties related to basic functionalities, assistance can be found on www.trailhead.com (tutorials and instructions) or www.help.salesforce.com (technical documentation).

  1. Contact your PBX provider or choose one of our partners. {#contact-your-pbx-provider-or-choose-one-of-our-partners.}

For the efficient operation of our application, we have access to a server that supports SIP (Session Initiation Protocol) via WebSockets. This is a key requirement because our application uses the power and flexibility of SIP combined with the real-time capabilities of WebSockets to facilitate seamless communication.

Feel free to ask us for details. If you are already using PBX services - just ask your provider for the Websocket Address, Login and Password for your account. If you are interested in learning about other options - we will be happy to point you to one of our partners. With our help and the whole process of gaining access can take up to 1 business day.

Examples of websocket addresses:

  • wss://companyname.datera.pl:10443
  • wss://xyz.3s.pl:8081
  • wss://eu.sip.ssl7.net
  1. Installation steps - it tooks 15 min! {#installation-steps---it-tooks-15-min!}

    1. Step One - Installation from Salesforce AppExchange {#step-one---installation-from-salesforce-appexchange}

After finding the Quakker - Universal Cloud Telephony Connector | CTI, CX, VoIP, Contact Center application on AppExchange, read the description and familiarize yourself with the pricing policy and solution requirements. If your instance allows installing the application, press the blue "Get It Now" button in the top left corner.

After clicking the button, you will need to log in to your Trailblazer.me account.
Notice! It is not possible to install the application without a Trailblazer.me account.

Log in to your account. Then, the installation wizard will ask the question, "Where do you want to install this package?" You must choose Production org or Sandbox (we recommend installing it first on a copy of your production to check for possible conflicts), but remember - the org for installation must be connected to your Trailblazer.me account (How to do it?).

Read and confirm the installation details (only if you agree with all the provided information, read it carefully). Press "Install." You will be redirected to the Salesforce login page (Sandbox or Production, which can be checked by looking at the website's URL).

Finally, you will be redirected to the installation details page. We recommend installing the application only for administrators (Install for Admins only) so that permissions and privileges can be assigned to the appropriate people later.

Due to the fact that this version of the application grants access to the test version of Voip Studio, an additional screen may appear during installation asking for permission to access an external website. You should check the box Yes, grant access to these third-party web sites and click Continue.

The installation will begin, and after a short while, a confirmation message will appear indicating that the package has been successfully installed.

b. Step Two - Adding URL Provider to CSP in Salesforce {#b.-step-two---adding-url-provider-to-csp-in-salesforce}

In your Salesforce environment, add the trusted URL received from the provider (Go to “Contact your PBX provider or choose one of our partners.”).

To do this, go to Setup -> Security -> Trusted URLs.

Choose New Trusted URL and add the URL received from the provider (the address should start with wss://provider.com eg. wss://eu.sip.ssl7.net).

Select All for CSP Context and complete the connect-src (scripts) checkbox in CSP Directives.

At the end, click Save.

Once the changes have been saved, the following screen will be displayed:

c. Lightning Web Security in Session Settings {#c.-lightning-web-security-in-session-settings}

Next, you should check whether the Lightning Web Security option is selected in Session Settings. Navigate to Setup, then go to the Security section and choose Session Settings. Verify if the checkbox next to Lightning Web Security is selected and if it's not, mark it.

d. Step Three - Assigning Quakker licenses {#d.-step-three---assigning-quakker-licenses}

Follow the instructions below to assign Quakker solution licenses to the appropriate Salesforce users:

1. Setup -> Installed Packages.

2. License Management (with Quakker package).

3. Assigning Users.

e. Step Four - Click To Dial Configuration {#e.-step-four---click-to-dial-configuration}

1. Go to Setup -> Call Centers -> if additional description appears click Continue -> click Import.

2. On the next View choose file: "definitionfile.xml" (link below) and click Import.

3. Assign users who will use the Quakker App to the Quakker Call Center via the button Manage Call Center Users. Alternatively, go to each user's record and manually choose Quakker Call Center in the "Call Center" lookup field.

*Definitionfile.xml:

https://github.com/clorce/QuakkerPub

f. Step Five - Assigning Permission Set to Users {#f.-step-five---assigning-permission-set-to-users}

In the next step, it is necessary to assign the Quakker Permissions set to users who will use the application. For Admins, assign an additional permission set Quakker Admin Permissions.

To do this, go to Setup, search for Permission Sets and find the appropriate set. Then click Manage Assignment.

In the last step, assign users who will operate the Quakker application and click Add Assignment.

g. Step Six - Grant permissions to standard objects {#g.-step-six---grant-permissions-to-standard-objects}

If users with limited permission sets are to use the Quakker application, ensure that they have access to all the objects listed below. If you do not have permissions to any of these objects or fields then create a permission set in which you grant them.

OBJECTS PERMISSIONS
Object Read Create Edit Delete Write View All Modify All
Account X X X X X
Contact X X X X X
Lead X X X X X
Campaign X X X X X
Campaign Member X X X X X
Users X X
FIELDS PERMISSIONS
Object Field Name Field API Name Read Edit
Account Phone Phone X X
Type Type X X
Contact Phone Phone X X
Mobile MobilePhone X X
Title Title X X
Campaign Member Phone Phone X X
Lead LeadId X X
Type Type X X
Status Status X X
Contact ContactId X X
Lead Phone Phone X X
Mobile MobilePhone X X
Company Company X X
Tasks Related To WhatId X X
Name WhoId X X
Type Type X X
Due Date ActivityDate X X
Comments Description X X
Subject Subject X X
Assigned To OwnerId X X
End Date Time quakker__EndDateTime__c X X
Task Subtype TaskSubtype X X
Status Status X X
Call Duration CallDurationInSeconds X X

h. Step Seven - Add custom fields to the Activity object layout. {#h.-step-seven---add-custom-fields-to-the-activity-object-layout.}

To do this, go to Setup -> Object manager -> Task -> Page layouts and add the following fields:

  • External call ID
  • Phone
  • Start Date time
  • End Date time
  • Due Date time
  • Call Duration
  • Call Result (picklist)
  • Quick Campaign

At the end, save the changes.

  1. Sharing Setting {#sharing-setting}

You can set 'Sharing Settings' on the org for the 'Quick Campaign' object according to your preference, but it is best to map what is set on the Campaign object.

  1. Go to settings - Setup.
  2. Select Sharing Settings.
  3. Click the Edit button for Organization-Wide Defaults.
  4. For the Quick Campaign object, set the same Default Internal Access as for Campaign (if we have Full Access on Campaign, then there should also be Full Access on Quick Campaign or the highest possible access that can be granted).
  5. Click the Save button.
  6. If there are any sharing rules set on your org for Campaign, set the same for Quick Campaign.

5. Step Eight - Log in to Quakker App {#5.-step-eight---log-in-to-quakker-app}

Logging to Quakker will require you to enter the WebSocket address and the provider’s login details. If this is your first login and:

  • You have a telephony provider. Please click the I have credentials and want to log in button, and provide the necessary information. Follow the same steps each time you log in.

  • You don’t have your provider, click the Create VoipStudio Trial Account button, and follow the steps based on the VoipStudio login instructions file. It’s the option to create a free test account in Voip Studio.

If there are any problems during or after configuration, please contact VoipStudio support by sending a ticket from the panel - Question mark icon in the top right corner.

If you already have your login details from the VoipStudio panel – SIP Domain, SIP Username, and SIP Password and this is not your first login, click the I have credentials and want to log in button.

Note: If an error occurs during the Administrator's first login, you need to add trusted URLs according to point 3b of this instruction. Enter the address from the SIP Domain field provided in the VoipStudio panel for the Admin user. Remember to enter the value from the SIP Domain field in the format wss://eu.sip.ssl7.net. During login, you also need to include the prefix wss://.

If you encounter an error during login, as shown in the screenshot below, you most likely forgot to add wss:// when entering the value in the WebSocket Address field. The correct format of this field should be, for example, wss://eu.sip.ssl7.net.

Remember to first assign the Quakker Admin Permission set. Next, configure other users. The Connect button is disabled for all users unless the Quakker Administrator permission set is assigned.

REMEMBER TO INCLUDE THE COUNTRY CODE (E.G. +48) WHEN DIALING A NUMBER OR SENDING AN SMS. MAKE SURE THAT THE RECORDS, LIKE CONTACTS OR LEADS, HAVE THE PHONE NUMBERS ENTERED WITH THE COUNTRY CODE TO USE CLICK-TO-DIAL.

6. Additional Setup - Non-mandatory {#6.-additional-setup---non-mandatory}

  1. Adding Quakker App to Utility Bar, Adding Custom Fields to Activity Layout {#adding-quakker-app-to-utility-bar,-adding-custom-fields-to-activity-layout}

Quakker is a separate application in Salesforce, but if you want to add Quakker to another application, such as Sales or Service Console, follow the steps below:

  • Go to Setup and navigate to App Manager.
  • Select the application you want to assign calling capability to, click the arrow, and click Edit.

  • In the application settings, add the Quakker application to the utility bar.
  • Click Add utility item and choose Quakker Phone from the list of Custom Items.
  • On the right side in the Properties tab, set the panel width to 1px and panel height to 1px and change the name of Label to Quakker (Offline).
  • Click the Save button at the bottom of the page.

  1. Configure Quaker Settings. {#configure-quaker-settings.}

If you don't have a reference (lookup) set to the Campaign object on the Task object, you should add it by following the steps below:

  1. Go to Setup.
  2. Select Object Manager.
  3. Find and select the Activity object.
  4. Click Fields & Relationships.
  5. Click the New button to create a new field.
  6. Select the Lookup Relationship field type and associate it with the Campaign object.
  7. To make the lookup field visible, you can now add it to the layout of the Task (Step 5: Add reference field to Page Layouts).

In this way, you will create and share a reference to the Campaign object on the Task object, allowing you to use the campaign calling functionality through Quakker.

If you need a relationship between a call record, which is an Activity(Task) object, and any object in Salesforce that is not accessible via the standard WhatId field (objects listed below) on the Activity object, you need to take the following steps:

  1. Repeat Steps: Repeat the steps described in the previous section to create a relationship between the Task and the selected object.
  2. Application Settings: In the Quakker app settings, select which objects you want to see in the custom lookup during the call.
  3. Personal Settings: These are individual settings, but it is possible to save global settings by a user with permission set “Quakker Admin Permissions”.
  4. Global Settings: If you do not have your own user settings, global settings will be applied.

In this way, you will configure a custom lookup to selected objects according to personal or global preferences.

With the above steps, you can successfully create custom relationships between the Activity(Task) object, representing a conversation, and any other objects in Salesforce.

Relationship settings in Salesforce allow you to create and manage associations between different objects and task or conversation records. This enables you to link a specific object to a task or conversation, for example, indicating that the conversation was related to a particular invoice, item, case, or another object.

By default, Salesforce provides the What ID field, which allows conversations and tasks to be linked to supported standard objects such as Accounts, Opportunities, or Cases. However, it is also possible to create custom relationships with any objects. To do this, an administrator can configure additional fields or relationships in the settings. Once configured, all relationships selected in the settings will appear on the conversation screen as a Custom Lookup field, enabling easy linking with the selected object. This allows the system to be tailored to specific business needs and manage relationships at a more detailed level.

Objects of standard relationship WhatId: Account, Accreditation, AssessmentIndicatorDefinition, AssessmentTask, AssessmentTaskContentDocument, AssessmentTaskDefinition, AssessmentTaskOrder, Asset, AssetRelationship, AssignedResource, Award, BoardCertification, BusinessLicense, BusinessMilestone, BusinessProfile, Campaign, CareBarrier, CareBarrierDeterminant, CareBarrierType, CareDeterminant, CareDeterminantType, CareDiagnosis, CareInterventionType, CareMetricTarget, CareObservation, CareObservationComponent, CarePgmProvHealthcareProvider, CarePreauth, CarePreauthItem, CareProgram, CareProgramCampaign, CareProgramEligibilityRule, CareProgramEnrollee, CareProgramEnrolleeProduct, CareProgramEnrollmentCard, CareProgramGoal, CareProgramProduct, CareProgramProvider, CareProgramTeamMember, CareProviderAdverseAction, CareProviderFacilitySpecialty, CareProviderSearchableField, CareRegisteredDevice, CareRequest, CareRequestDrug, CareRequestExtension, CareRequestItem, CareSpecialty, CareSpecialtyTaxonomy, CareTaxonomy, Case, CommSubscriptionConsent, ContactEncounter, ContactEncounterParticipant, ContactRequest, Contract, CoverageBenefit, CoverageBenefitItem, CreditMemo, DelegatedAccount, DocumentChecklistItem, EnrollmentEligibilityCriteria, HealthcareFacility, HealthcareFacilityNetwork, HealthcarePayerNetwork, HealthcarePractitionerFacility, HealthcareProvider, HealthcareProviderNpi, HealthcareProviderSpecialty, HealthcareProviderTaxonomy, IdentityDocument, Image, IndividualApplication, Invoice, ListEmail, Location, MemberPlan, Opportunity, Order, OtherComponentTask, PartyConsent, PersonLifeEvent, PlanBenefit, PlanBenefitItem, ProcessException, Product2, ProductItem, ProductRequest, ProductRequestLineItem, ProductTransfer, PurchaserPlan, ReceivedDocument, ResourceAbsence, ReturnOrder, ReturnOrderLineItem, ServiceAppointment, ServiceResource, Shift, Shipment, ShipmentItem, Solution, Visit, VisitedParty, VolunteerProject, WorkOrder, WorkOrderLineItem

If you have the permission set “Quakker Admin Permissions” assigned, you should initially configure values for the Call Result picklist in your Quakker Application. This field, available on the Activity (Task) object, is responsible for displaying the call result.

By default, your Quakker settings contain the following options:

  1. Scheduled Call
  2. Interested
  3. Not Interested
  4. Call Later
  5. Call After Working Hours
  6. Other

In the Quakker app settings, under 'Call Result Settings', you can add new values or delete existing ones. The selection here should reflect the status when calling the campaign. The border displayed in the campaign preview will reflect the result of a call to a person in that campaign.

In addition, it is worth remembering:

Call After Working Hours: Moves the person to the end of the calling list.
Call Later: Also moves the person to the end of the calling list, but no further than people with Call After Working Hours status.

Properly setting and managing 'Call Result' values helps you better track the progress of your campaign and effectively plan your calling activities.

  1. Translations {#translations}

Salesforce allows translations of custom fields. To enable this, the administrator should first check and activate the translation option in the target environment. To do this, in the settings, go to the Translation workbench tab, enable the translation option, and select the language (the application supports translations for 6 languages - Polish, French, Italian, Spanish, German, and Hebrew).

If you don't have the option to add Polish and Hebrew to the list, go to Language Settings and check the first checkbox. In the Add or remove languages from the Available Language list section, add Polish and Hebrew. Save changes. Next, return to the Translation Language Settings.

Starting from version 0.2, we have added translations for six languages: Polish, French, Italian, Spanish, German, and Hebrew.

Contact {#contact}

If you want to contact us, write to [email protected]

We will answer all your questions.