Note:
The import command creates a new phone config or updates an existing one based on the name. If a phone config with the same name exists, the command updates it using the new configuration.
Note:
Sensitive credential fields such as API keys, secrets, and client secrets appear as null or blank values in the output. This protects your credentials from accidental exposure.
Note:
Sensitive credential fields such as API keys, secrets, and client secrets appear as null or blank values in the exported file. This protects your credentials from accidental exposure. You need to manually add these values when importing the phone config into a new environment.
Important:
When you delete a phone config, all agent attachments are removed and the phone integration stops working immediately. You cannot undo this action, so make sure you want to remove the phone config before you proceed.
Genesys Audio Connector integration created in Genesys Cloud
(Optional) User-generated credentials if you want to provide your own:
API Key (any string you choose)
Client Secret (any string you choose, must be base-64 encoded)
Important: Both API Key and Client Secret are user-generated values (not obtained from Genesys Cloud). If you don’t provide them, they will be automatically generated for you and displayed in the command output.If you choose to create your own credentials, you create these values yourself. The same values must be configured in both:
Your ADK phone configuration
Your Genesys Audio Connector integration settings (go to the Credentials tab and add these values)
The Client Secret must be base-64 encoded. The API Key has no encoding restrictions.
Define Genesys phone configs using YAML, JSON, or Python formats. Credentials are optional and will be auto-generated if not provided:
Copy
Ask AI
spec_version: v1kind: phoneservice_provider: genesys_audio_connectorname: "Customer Support Phone"description: "Phone integration for customer support"# security field is optional - credentials will be auto-generated if left blank
Security credentials for Genesys Audio Connector. Optional - if not provided, credentials will be auto-generated and displayed in the command output.Optional fields:
api_key (string): Custom API key (auto-generated if not provided)
client_secret (string): Custom client secret, must be base-64 encoded (auto-generated if not provided)
Credentials: Auto-generated credentials are recommended for simplicity and security. If you need to provide custom credentials, you can generate secure random strings using:
Genesys Audio Connector uses agent attachments to connect your phone config to specific agents. When you attach an agent, you receive webhook configuration details that you’ll configure in Genesys Cloud.
Genesys Audio Connector Only:
The attach, detach, and list-attachments commands are only used with Genesys Audio Connector configurations. SIP trunk configurations use phone number management instead (see SIP Trunk section below).
Attaching an agent
After creating the phone config, attach an agent to start receiving calls:
BASH
Copy
Ask AI
orchestrate phone attach \ --name "Customer Support Phone" \ --agent-name my_agent \ --env live
Use the webhook configuration values from the attach command in your Genesys Audio Connector settings:
Log into your Genesys Cloud admin portal
Navigate to Admin → Integrations
Find your Audio Connector integration
Go to the Configuration tab:
Enter the Audio Connect URI in the “Base Connection URI” field
Go to the Credentials tab:
Add the api_key and client_secret values (either auto-generated from the creation output or your custom values)
In Architect, configure your Inbound Call Flow:
Add an “Audio Connector” action
Enter the Connector ID in the connector ID field
Note:
The webhook configuration is displayed when you attach an agent. You can also retrieve it later using orchestrate phone get --name "Customer Support Phone". However, credentials are only shown during initial creation for security reasons.
Define SIP phone configs using YAML, JSON, or Python formats:
Copy
Ask AI
spec_version: v1kind: phoneservice_provider: sip_trunkname: "SIP Phone Channel"description: "Enterprise SIP trunk integration"# Security is required - must explicitly set secure_trunking and authenticationsecurity: secure_trunking: true # Enable TLS/SIPS authentication: true # Enable SIP authentication username: "your_sip_username" # Required if authentication: true password: "your_sip_password" # Required if authentication: true# Optional: Custom SIP headerscustom_invite_headers: - name: "X-Custom-Header" - name: "From" - name: "To"# Optional: Call behavior settingsput_caller_on_hold_on_transfer: truesend_provisional_response: true# Optional: Error handling configurationerror_handling: fallback_sip_uri: "sip:fallback@domain.com" transfer_failure: reply_message: "Your call could not be transferred to a live agent. Please try again later. Thank you. Goodbye." disconnect_call: true call_failure: reply_message: "There's been a problem with the call. You're being transferred to a live agent now."
orchestrate phone create \ --type sip_trunk \ --name "SIP Phone Channel" \ --description "Enterprise SIP trunk integration" \ --field 'custom_invite_headers=[{"name": "X-Custom-Header"}, {"name": "From"}, {"name": "To"}]' \ --field 'put_caller_on_hold_on_transfer=true' \ --field 'send_provisional_response=true' \ --field 'security={"secure_trunking": true, "authentication": true, "username": "USER", "password": "PASS"}' \ --field 'error_handling={"fallback_sip_uri": "sip:username@domain.com", "transfer_failure": {"reply_message": "Please try again later.", "disconnect_call": true}, "call_failure": {"reply_message": "There has been a problem with the call."}}'
Output:
Copy
Ask AI
Successfully created phone config 'SIP Phone Channel'. id: 'abc-123-def-456'Configure these values in your SIP trunk provider: Full SIP URI: 'sips:public.voip.dl.watson-orchestrate.ibm.com?x-tenant-id=subscription123_instance456'
Tip:
For complex SIP configurations with many fields, using a YAML file with the import command is more readable and maintainable than using the CLI create command with JSON field values.
SIP trunk configurations support phone number management, allowing you to associate specific phone numbers with your SIP config and optionally route them to specific agents.
SIP Trunk Only:
Phone number management commands (add-number, list-numbers, update-number, delete-number) are only available for SIP trunk configurations. Genesys Audio Connector does not support these operations.