Salesforce Package Installation
Relevant source files
The following files were used as context for generating this wiki page:The TalkCRM Salesforce package integrates the TalkCRM voice assistant directly into a Salesforce organization. This allows users to interact with their CRM data using voice commands over the phone. The package includes a Lightning Web Component (LWC) for a guided setup wizard, a custom Apex controller for API communication, and a permission set to grant users necessary access.
Installation is designed for Salesforce Admins and involves deploying the package, assigning permissions, and completing a multi-step setup wizard which includes Salesforce OAuth and phone number verification.
Sources: salesforce-package/README.md, src/App.tsx:135-141, salesforce-package/POST_DEPLOY_GUIDE.md:3-5
Installation Methods
There are two primary methods for installing the TalkCRM package into a Salesforce org.
Method 1: Web Application UI (Recommended)
The TalkCRM web application provides direct installation links for both Production and Sandbox environments. This is the simplest method for users. A Salesforce admin is required to complete the installation.
Sources: src/App.tsx:135-141
The installation steps presented in the UI are:
- Install the Salesforce Package using the appropriate environment button.
- Select "Install for All Users" during the Salesforce installation process.
- Approve Third-Party Access to grant API permissions.
- Start using TalkCRM by calling the provided phone number.
Sources: src/App.tsx:168-232
The following diagram illustrates the installation flow from the web application.
Sources: src/App.tsx:173-200
Method 2: Manual CLI Deployment
For developers or advanced administrators, the package can be deployed using the Salesforce CLI (sf).
- Authenticate to the target Salesforce org:
sf org login web -a MyOrg - Navigate to the
salesforce-packagedirectory and deploy the project:sf project deploy start --target-org MyOrg
Sources: salesforce-package/POST_DEPLOY_GUIDE.md:9-15, salesforce-package/README.md:12-14
Package Components
The Salesforce package contains several key components to enable TalkCRM functionality within the org.
| Component | Type | Description |
|---|---|---|
talkCrmSetup | LWC | The user-facing setup wizard for connecting Salesforce and verifying phone numbers. |
TalkCrmController | Apex | A server-side controller to handle API communication with the Convex backend. |
TalkCrmControllerTest | Apex Test | Provides 100% test coverage for the TalkCrmController. |
TalkCRM_User | Permission Set | Grants users access to the TalkCRM app, tab, and Apex controller. |
TalkCRM_Setup | Tab | A custom tab that hosts the talkCrmSetup LWC. |
TalkCRM | App | The TalkCRM Lightning App, accessible from the App Launcher. |
TalkCRM_Convex | Remote Site | Whitelists the Convex API endpoint for Apex callouts. |
TalkCRM_Convex | CSP Trusted Site | Adds the Convex URL to the Content Security Policy for browser requests. |
Sources: salesforce-package/README.md:29-40
Post-Deployment Configuration
After the package is deployed, each user must complete a setup process.
1. Assign Permission Set
Users require the TalkCRM_User permission set to access the application and its components.
- Navigate to Setup → Permission Sets.
- Click on TalkCRM User.
- Click Manage Assignments → Add Assignment.
- Select the users who will use TalkCRM and click Assign.
Sources: salesforce-package/POST_DEPLOY_GUIDE.md:19-25
The TalkCRM_User permission set grants access to the TalkCRM app, the TalkCrmController Apex class, and the TalkCRM_Setup tab.
Sources: salesforce-package/force-app/main/default/permissionsets/TalkCRM_User.permissionset-meta.xml:3-13
2. Complete the Setup Wizard
The setup wizard is accessed via the TalkCRM Lightning App.
- Click the App Launcher (9-dot grid).
- Search for and open "TalkCRM".
- The
TalkCRM Setuptab will guide you through the remaining steps.
Sources: salesforce-package/POST_DEPLOY_GUIDE.md:29-32, salesforce-package/force-app/main/default/lwc/talkCrmSetup/talkCrmSetup.html:2-10
The wizard has the following steps:
Step 1: Configure Connected App Credentials
The first step requires the admin to input the Consumer Key and Consumer Secret from the TalkCRM Voice Assistant Connected App within the Salesforce org. This is a one-time setup for the entire org.
Sources: salesforce-package/force-app/main/default/lwc/talkCrmSetup/talkCrmSetup.html:23-58
Step 2: Connect Salesforce (OAuth)
Each user must authorize TalkCRM to access their Salesforce data. Clicking "Connect Salesforce" initiates an OAuth 2.0 flow.
Sources: salesforce-package/force-app/main/default/lwc/talkCrmSetup/talkCrmSetup.html:61-75
The following diagram shows the OAuth sequence:
Step 3: Verify Phone Number
The user enters their phone number, receives an SMS verification code, and enters it to link their phone to their TalkCRM account.
Sources: salesforce-package/force-app/main/default/lwc/talkCrmSetup/talkCrmSetup.html:78-112
Step 4: Ready!
The final screen confirms setup is complete and displays the TalkCRM phone numbers for voice and text interaction.
Sources: salesforce-package/force-app/main/default/lwc/talkCrmSetup/talkCrmSetup.html:115-151
Troubleshooting
Common installation and setup issues can be resolved with the following checks.
| Issue | Resolution |
|---|---|
| OAuth fails or "Access Denied" | Ensure you are logging into the correct Salesforce org. Try clearing browser cache and cookies. |
| Phone verification code not received | Double-check the phone number entered. Wait 1-2 minutes for the SMS. In development, the code appears on-screen. |
| "TalkCRM" not in App Launcher | Verify the TalkCRM_User Permission Set is assigned to your user. Try refreshing the page or logging out and back in. |
| Call not recognized / "Unknown caller" | Ensure you are calling from the phone number you verified in the setup wizard. |