Watch how to setup in Salesforce and see how it works here.
- Prerequisites
- Deployment Steps
- VS Code Deployment (Using Salesforce Extension Pack)
- Project Components
- Post-Deployment Configuration
- Troubleshooting
- Environment-Specific Deployments
- Best Practices
- Quick Deploy Script
- Support
- References
- Salesforce CLI (latest version)
npm install -g @salesforce/cli
- Node.js (version 18 or higher)
- Git (for version control)
- VS Code with Salesforce Extension Pack (recommended)
- Access to a Salesforce org (Production, Sandbox, or Developer Edition)
- System Administrator permissions
- API access enabled
sf --versionsf org login web --alias prodOrgsf org login web --alias sandboxOrg --instance-url https://test.salesforce.comsf org listsf config set target-org prodOrgBefore deploying, validate your metadata:
sf project deploy validate --source-dir force-appsf project deploy start --source-dir force-app# Deploy only LWC components
sf project deploy start --source-dir force-app/main/default/lwc
# Deploy only static resources
sf project deploy start --source-dir force-app/main/default/staticresourcessf project deploy report-
Install Salesforce Extension Pack:
- Open VS Code
- Go to Extensions (Ctrl+Shift+X)
- Search for "Salesforce Extension Pack"
- Install the official extension by Salesforce
-
Open Project in VS Code:
code .
- Open Command Palette (
Ctrl+Shift+P) - Type:
SFDX: Authorize an Org - Select your org type:
- Production/Developer: Select "Production"
- Sandbox: Select "Sandbox"
- Enter org alias (e.g.,
vscodeOrg) - Complete authentication in browser
- Command Palette (
Ctrl+Shift+P) - Type:
SFDX: Set a Default Org - Select your authorized org
Option A: Deploy Entire Project
- Right-click on
force-appfolder - Select
SFDX: Deploy Source to Org
Option B: Deploy Specific Components
- Right-click on specific file/folder (e.g.,
lwc/acdVoicemailViewer) - Select
SFDX: Deploy Source to Org
Option C: Deploy from Explorer
- Select files in Explorer
- Right-click →
SFDX: Deploy Source to Org
- Check Output panel (View → Output)
- Select "Salesforce CLI" from dropdown
- Monitor deployment progress and results
| Command | Shortcut | Description |
|---|---|---|
SFDX: Deploy Source to Org |
- | Deploy selected metadata |
SFDX: Retrieve Source from Org |
- | Pull changes from org |
SFDX: Create Lightning Web Component |
- | Generate new LWC |
SFDX: Execute Anonymous Apex |
Ctrl+Shift+P |
Run Apex code |
SFDX: Open Default Org |
- | Open org in browser |
- Bottom-left corner shows current default org
- Click org name to switch between authorized orgs
- Green checkmark indicates successful connection
This project includes:
- Lightning Web Component:
acdVoicemailViewer - Static Resource:
GenesysAuthCallback.html - Metadata: Applications, layouts, permission sets, tabs, etc.
Navigate to Setup → Users → Permission Sets and assign relevant permissions to users.
After deploying the component, you need to configure the regional and OAuth settings:
- Navigate to the Lightning App Builder or the page where you've added the
acdVoicemailViewercomponent - Edit the page and select the ACD Voicemail component
- In the component properties:
- Set the Region: Configure the appropriate region for your Genesys environment
- Add Client ID: Enter your Genesys OAuth Client ID
Finding Your Redirect URI:
-
Determine Your Org Domain:
- In Salesforce, go to Setup → Company Information
- Note your "My Domain" URL (e.g.,
mycompany.lightning.force.com) - Or check the URL in your browser when logged into Salesforce
-
Construct the Redirect URI:
- Format:
https://[your-org-domain]/resource/GenesysAuthCallback - Production/Developer Org:
https://mycompany.lightning.force.com/resource/GenesysAuthCallback - Sandbox:
https://mycompany--sandbox.sandbox.lightning.force.com/resource/GenesysAuthCallback
- Format:
-
Verify the Static Resource Path:
- Go to Setup → Static Resources
- Find
GenesysAuthCallbackin the list - Click "View" to confirm the resource exists and note the exact name
-
Configure in Genesys:
- In your Genesys environment, navigate to your OAuth client configuration
- Under Implicit Grant settings, add the complete redirect URI
- Example:
https://mycompany.lightning.force.com/resource/GenesysAuthCallback
Common URI Patterns:
- Production:
https://[domain].lightning.force.com/resource/GenesysAuthCallback - Sandbox:
https://[domain]--[sandbox-name].sandbox.lightning.force.com/resource/GenesysAuthCallback - Developer Edition:
https://[domain].develop.lightning.force.com/resource/GenesysAuthCallback
Testing the URI:
- Copy the redirect URI and paste it in a browser
- You should see the GenesysAuthCallback.html page load
- If you get a 404 error, verify the static resource name and org domain
Note: These configuration steps are critical for the component to authenticate properly with Genesys services.
- Go to App Launcher → ACD Voicemail (if application is included)
- Configure any custom settings or metadata
- Navigate to the Lightning App Builder
- Add the
acdVoicemailViewercomponent to a page - Test functionality and verify OAuth authentication works
No authorization information found for [orgAlias]
Solution: Re-authenticate using sf org login web --alias [orgAlias]
Check deployment status:
sf project deploy report --job-id [deployment-id]Solution: Use --ignore-conflicts flag (use with caution):
sf project deploy start --source-dir force-app --ignore-conflictsIf you need to rollback:
- Use Salesforce Setup → Deployment Status
- Find your deployment and click "Quick Deploy" on a previous successful deployment
sf org login web --alias staging --instance-url https://test.salesforce.com
sf project deploy start --source-dir force-app --target-org stagingsf org login web --alias production
sf project deploy validate --source-dir force-app --target-org production
sf project deploy start --source-dir force-app --target-org production- Always validate before deploying to production
- Use version control - commit changes before deployment
- Test in sandbox first
- Deploy during maintenance windows
- Keep deployment logs for troubleshooting
- Use change sets for complex deployments across multiple orgs
For convenience, you can use the included deploy.bat file:
deploy.batFor deployment issues:
- Check Salesforce Setup → Deployment Status
- Review deployment logs
- Verify user permissions
- Check component dependencies
- Salesforce CLI Setup Guide
- Salesforce DX Developer Guide
- Salesforce CLI Command Reference
- Lightning Web Components Developer Guide
Note: This project is configured for sandbox deployment by default (see sfdx-project.json). Update the sfdcLoginUrl if deploying to production.