jknapp 0ee8210fef Fix caller ID for workflow forward and ring group tasks
Updated forward and ring group tasks to use the incoming number (To) as the caller ID for outbound calls instead of the original caller's number (From).

Changes:
- Forward task now sets callerId attribute to the number that was called
- Ring group task also defaults to using the incoming number as caller ID
- Both functions check multiple sources for the To number (GLOBALS, POST, REQUEST)
- Added detailed logging for caller ID selection

This ensures that when calls are forwarded, the receiving party sees the business number that was called, not the original caller's personal number.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-18 16:46:52 -07:00
2025-08-07 15:24:29 -07:00
2025-08-07 15:24:29 -07:00
2025-08-07 15:24:29 -07:00

Twilio WordPress Plugin

A comprehensive WordPress plugin for Twilio voice and SMS integration with advanced call center functionality.

⚠️ IMPORTANT: SDK Required

This plugin requires the Twilio PHP SDK v8.7.0 to function. The plugin will not work without it.

Quick Installation

  1. Install the Twilio SDK (Required):

    chmod +x install-twilio-sdk.sh
    ./install-twilio-sdk.sh
    
  2. Test the SDK installation:

    php test-sdk.php
    
  3. Configure Twilio Credentials in WordPress admin:

    • Go to TwilioSettings
    • Enter Account SID and Auth Token
    • Configure default phone numbers
  4. Set up Phone Numbers in Twilio Console:

    • Configure webhook URLs for voice and SMS
    • Voice: https://yoursite.com/wp-json/twilio-webhook/v1/voice
    • SMS: https://yoursite.com/wp-json/twilio-webhook/v1/sms

Requirements

  • PHP 8.0+ (required for Twilio SDK v8.7.0)
  • WordPress 5.0+
  • Twilio Account with active phone number
  • curl and tar (for SDK installation)

Key Features

📞 Call Center Operations

  • Agent Groups: Organize agents into groups with priority levels
  • Call Queues: Manage incoming calls with position announcements
  • Smart Routing: Distribute calls based on availability and schedules
  • SMS Accept: Agents can text "1" to accept incoming calls
  • Queue Notifications: SMS alerts to designated numbers when calls enter queues

🌐 Browser Phone (WebRTC)

  • Admin-Only Access: Secure browser phone interface available only in WordPress admin area
  • Enhanced Security: All browser phone functionality moved from frontend for improved security
  • Twilio Voice SDK v2: Uses latest SDK for WebRTC functionality
  • Visual Dialpad: Click-to-dial interface with DTMF support
  • Call Controls: Mute, hold indicators, call timer
  • Auto-Answer: Optional automatic call acceptance
  • Queue Integration: Accept calls from specific queues
  • Token Management: Automatic token refresh for uninterrupted service
  • Mobile-Friendly: Responsive design optimized for smartphones and tablets
  • Shortcode Redirect: [twp_browser_phone] shortcode provides secure redirect to admin interface

🕒 Business Hours Management

  • Schedule-based Routing: Different call flows for business hours vs after-hours
  • Holiday Support: Define specific dates for holiday routing
  • Multiple Schedules: Create different schedules for departments
  • After-Hours Actions: Configurable routing when closed

🎛️ Workflow Builder

  • Visual Interface: Drag-and-drop workflow creation
  • Step Types:
    • Greeting: Welcome messages with multiple voice options
    • IVR Menu: Interactive voice response with digit collection
    • Call Queue: Place callers in queue with hold music
    • Forward: Route calls to specific numbers
    • Voicemail: Record messages with transcription
    • Schedule Check: Route based on business hours
  • Voice Options:
    • Default Twilio voice (Say)
    • ElevenLabs text-to-speech integration with voice persistence
    • Custom audio file URLs
  • Smart Voice Loading: Saved voices display without API calls

📱 SMS Integration

  • Agent Notifications: Automatic SMS alerts when calls arrive
  • Queue Management: Agents receive queue status updates
  • Command System: Text commands to manage availability
  • SMS Logging: Complete history of all SMS interactions

🔔 Discord & Slack Notifications

  • Real-time Alerts: Instant notifications to Discord channels and Slack workspaces
  • Multiple Event Types: Incoming calls, queue timeouts, and missed calls
  • Rich Formatting: Structured messages with caller info, queue details, and timestamps
  • Webhook Integration: Simple configuration with webhook URLs
  • Configurable Options: Enable/disable specific notification types
  • Automatic Monitoring: Background checks for queue timeout situations

📊 Real-time Dashboard

  • Queue Monitor: Live view of waiting calls
  • Agent Status: Track agent availability
  • Call Statistics: Performance metrics and reporting
  • Call Logs: Detailed history with filtering options
  • Active Call Display: Real-time call count monitoring

🎤 Advanced Features

  • Voicemail Transcription: Automatic speech-to-text
  • Callback System: Offer callbacks instead of long holds
  • Outbound Calling: Click-to-call with proper caller ID
  • Multiple Phone Numbers: Support for multiple business lines per workflow
  • Agent Phone Management: Store and validate agent phone numbers
  • Duplicate Prevention: Ensures unique phone numbers per agent
  • Enhanced Notifications: Discord and Slack integration for real-time alerts
  • Premium Voice Synthesis: ElevenLabs TTS integration for professional-grade voice prompts
  • Automatic Queue Creation: Personal and hold queues created automatically for all agents
  • Smart Extension System: Unique 3-4 digit extensions auto-assigned for direct dialing

Recent Updates

MAJOR RELEASE v2.3.0 (September 2025) - Enterprise Ready

Comprehensive system overhaul with production-ready reliability improvements and enhanced security.

🔒 Security Enhancement: Frontend Browser Phone Removal

  • Security-First Approach: Removed full browser phone interface from frontend shortcode
  • Admin-Only Access: All browser phone functionality now restricted to secure WordPress admin area
  • Asset Reduction: Eliminated 108KB of frontend assets (browser-phone-frontend.js and CSS)
  • Reduced Attack Surface: Minimized frontend JavaScript exposure and potential security vectors
  • Performance Boost: Improved page load times with reduced frontend asset loading
  • Professional Redirect: Shortcode now provides clean redirect interface to admin browser phone

🚀 Extension Transfer System - Complete Solution

  • FIXED: Direct Voicemail Issue: Extension transfers no longer go directly to voicemail for available agents
  • Queue-Based System: Replaced active client dialing with intelligent queue-based routing
  • 2-Minute Timeout: Automatic voicemail fallback ensures no calls are lost
  • Agent Detection: Enhanced availability checking works perfectly with browser phone users
  • Professional Experience: "Please hold while we connect you to extension X" messaging
  • Reliability: Enterprise-grade call routing with comprehensive fallback mechanisms
  • Zero Configuration: Works automatically without any manual setup required

🌍 Browser Phone - Universal Compatibility

  • Firefox Support: Fixed compatibility issues with explicit microphone/speaker permission handling
  • Permission System: Automatic permission requests prevent silent call failures
  • Call Stability: Resolved disconnections during transfers and call operations
  • Cross-Browser: Tested and verified on Chrome, Firefox, Safari, and Edge
  • Error Recovery: Clear error messages and automatic reconnection capabilities
  • Mobile Enhanced: Improved mobile browser compatibility and user experience
  • Client Consistency: Fixed mismatch between capability tokens and call acceptance

⏱️ Automatic Agent Status Management - Smart Productivity

  • 1-Minute Auto-Revert: Agents automatically return to available status after 1 minute in busy state
  • Productivity Boost: Prevents agents from staying busy indefinitely after calls
  • Smart Automation: WordPress cron job handles status management in background
  • Database Enhanced: New auto_busy_at column tracks automatic status changes
  • Manual Override: Agent-initiated status changes still respected
  • Zero Maintenance: Fully automated system requires no administrative intervention

📊 Call Statistics - Complete Accuracy

  • Browser Phone Tracking: All browser phone calls now appear in agent statistics
  • Enhanced Logging: Improved call data storage with structured JSON format
  • Customer Detection: Advanced identification system for complex call scenarios
  • Real-Time Updates: Statistics dashboards show accurate real-time metrics
  • Performance Insights: Detailed tracking of browser phone usage and efficiency

🎧 Voicemail & Transcription - Professional Grade

  • Real Transcription: Replaced placeholder system with actual Twilio API integration
  • Manual Requests: Ability to request transcriptions for existing voicemails
  • Extension Support: Enhanced voicemail handling for extension-based systems
  • Customer Identification: Improved customer number detection for all voicemail scenarios
  • Professional Audio: ElevenLabs TTS integration for voicemail prompts

🛠️ Technical Improvements

  • Database Migration: Automatic schema updates to version 1.6.2
  • Error Handling: Comprehensive error recovery throughout all systems
  • Logging Enhanced: Detailed debugging information for troubleshooting
  • Performance: Optimized cron jobs and background processing
  • Compatibility: Universal browser support with fallback mechanisms

MAJOR: Complete Call Control System Overhaul (September 2025)

Comprehensive redesign of hold, transfer, and requeue functionality with professional-grade reliability.

🎯 Hold Function - Complete Solution

  • Problem Solved: "Queue not found" errors that prevented calls from being put on hold
  • Automatic Setup: Personal and hold queues are now created automatically for all agents
  • Smart Extensions: Unique 3-4 digit extensions (100-9999) auto-assigned to each agent
  • Seamless Experience: Works immediately without any manual queue setup
  • Premium Audio: Professional hold messages using ElevenLabs voices (with fallback to Twilio)
  • Browser Phone Ready: Handles complex call scenarios from browser phone users

📞 Transfer Function - Professional Grade

  • Audio Quality Fixed: Eliminated customers hearing technical webhook URLs during transfers
  • Multiple Transfer Types: Extension transfers, queue transfers, browser phone transfers, and external number transfers all work perfectly
  • Professional Announcements: "Transferring to extension 101" and "Transferring your call" messages
  • Smart Detection: Automatically identifies the correct call to transfer (customer, not agent)
  • Outbound Call Support: Transfer functionality now works for both incoming and outgoing calls
  • Enhanced Reliability: Comprehensive error handling prevents transfer failures

🔄 Requeue Function - Seamless Operation

  • User Experience Fixed: Customers now hear "Placing you back in the queue" instead of technical errors
  • Proper Queue Integration: Seamless integration with queue waiting experience and hold music
  • Call Preservation: Maintains call history and position tracking when requeuing
  • Professional Audio: Uses same premium voice technology as other functions
  • Database Consistency: Works with all database schemas and maintains data integrity

CRITICAL: Outbound Call Issues Fixed (September 2025)

  • Customer Disconnection Issue Resolved: Fixed major problem where hold, transfer, and requeue functions were disconnecting customers in outbound calls
  • Call Leg Detection System: New intelligent system identifies customer vs agent call legs in complex call topologies
  • Browser Phone Transfers: Fixed "Invalid phone number format" errors when transferring to browser phone agents
  • Outbound Call Stability: All call control functions now work correctly for both inbound and outbound scenarios
  • Enhanced Logging: Comprehensive debugging for call relationship tracking

Customer Number Detection Improvements (September 2025)

  • Voicemail Interface Fix: Customer numbers now display correctly instead of showing "client:agentname" for browser phone calls
  • Call Recording Interface Fix: Recording admin interface now shows actual customer phone numbers for all call types
  • Smart Number Detection: Enhanced fallback logic retrieves customer numbers from call logs and parent call analysis
  • Browser Phone Support: Proper handling of complex call topologies created by browser phone calls
  • User Experience: Admin interfaces now consistently display meaningful customer information

Browser Phone Upgrade (v2.0 → v2.3.0)

  • Universal Browser Support: Firefox, Chrome, Safari, and Edge fully supported
  • Permission Management: Automatic microphone/speaker access with user-friendly prompts
  • Stability Enhanced: Eliminated call disconnections during transfers and operations
  • Client Consistency: Standardized naming prevents connection mismatches
  • Mobile Optimized: Enhanced mobile browser compatibility
  • Error Recovery: Intelligent reconnection and clear error messaging
  • Migrated to Twilio Voice SDK v2: Modern WebRTC with automatic token refresh

Queue System Improvements

  • Notification Numbers: Queues now use notification_number field for SMS alerts
  • No Direct Assignment: Queues are workflow destinations, not directly assigned to numbers
  • Better Integration: Improved queue handling in IVR and workflow steps

Voice Configuration Enhancements

  • Voice Persistence: ElevenLabs voices save both ID and name
  • No Unnecessary API Calls: Saved voices display immediately without loading
  • Improved UX: Load voices only when changing selection

IVR Fixes

  • Form Field Handling: Fixed IVR option saving and loading
  • Queue Selection: Proper queue routing based on digit selection
  • Voice Selection: Fixed voice dropdown persistence issues

Multiple Phone Numbers Support

  • Workflow Enhancement: Workflows can now be assigned to multiple phone numbers
  • Junction Table: New twp_workflow_phones table for many-to-many relationships
  • Backward Compatibility: Existing single-number workflows continue to work
  • Validation Fixes: Proper validation for multiple phone number selections

Discord & Slack Notifications

  • Real-time Integration: Instant notifications to Discord channels and Slack workspaces
  • Event Monitoring: Automated tracking of incoming calls, queue timeouts, and missed calls
  • Rich Message Format: Structured notifications with caller details, queue info, and timestamps
  • Configurable Settings: Toggle notification types and set custom webhook URLs
  • Background Processing: Cron-based monitoring for queue timeout alerts

How It Works

Call Flow

  1. Incoming Call → Twilio webhook triggers
  2. Workflow Processing → System loads assigned workflow
  3. Step Execution → Each workflow step processes sequentially:
    • Greeting plays welcome message
    • IVR collects user input
    • Schedule check determines routing
    • Queue or forward based on configuration
  4. Agent Connection → Call routed to available agent
  5. Logging → All interactions logged for reporting

Queue System

  • Queue Assignment: Calls routed to queues through workflows
  • Notification Numbers: Optional SMS alerts to designated numbers (not agents)
  • Agent Groups: Queues linked to agent groups for distribution
  • Wait Experience: Configurable hold music and position announcements
  • Timeout Handling: Automatic callback offers after timeout
  • Browser Phone Integration: Agents can accept queue calls via browser

Agent Management

  • Phone Number Storage: Agent numbers stored in WordPress user profiles
  • Status Tracking: Available/Busy/Offline states
  • SMS Commands: Text "1" to accept calls
  • Priority Levels: Agents have priority within groups
  • Browser Phone Mode: Option to receive calls in browser or cell phone

Configuration

Initial Setup

  1. Install Plugin and activate in WordPress
  2. Install Twilio SDK using provided script
  3. Configure Credentials:
    • Navigate to TwilioSettings
    • Enter Twilio Account SID and Auth Token
    • Set default SMS number for notifications
    • Configure TwiML App SID for browser phone (optional)

Phone Number Setup

  1. In Twilio Console:

    • Purchase or select phone number
    • Configure Voice webhook: https://yoursite.com/wp-json/twilio-webhook/v1/voice
    • Configure SMS webhook: https://yoursite.com/wp-json/twilio-webhook/v1/sms
    • Set method to HTTP POST
  2. In WordPress Admin:

    • Go to TwilioPhone Numbers
    • Verify numbers are synchronized
    • Assign workflows to numbers (multiple numbers per workflow supported)

Creating Workflows

  1. Navigate to Twilio → Workflows

  2. Create New Workflow:

    • Name your workflow
    • Select phone numbers to assign (multiple selection supported)
    • Add steps using the builder
  3. Configure Steps:

    • Greeting: Set welcome message and voice
    • IVR Menu: Define options and routing
    • Queue: Select target queue
    • Schedule: Choose business hours schedule

Setting Up Queues

  1. Create Queue (Twilio → Queues):

    • Queue Name: Descriptive name
    • Notification Number: SMS alerts for queue activity (optional)
    • Agent Group: Select assigned group
    • Wait Music: URL for hold music
    • Timeout: Maximum wait time
  2. Use in Workflows:

    • Add Queue step to workflow
    • Select queue from dropdown
    • Configure announcement message

Browser Phone Setup

  1. Create TwiML App in Twilio Console:

    • Voice Request URL: Your server's TwiML endpoint
    • Copy the Application SID
  2. Configure in WordPress:

    • Go to TwilioSettings
    • Enter TwiML App SID
    • Save settings
  3. Access Browser Phone (Admin Only):

    • Navigate to WordPress AdminTwilioBrowser Phone
    • Select caller ID from available numbers
    • Start making/receiving calls
  4. Frontend Access (Optional):

    • Use [twp_browser_phone] shortcode on any page
    • Shortcode provides secure redirect to admin interface
    • Requires user login and appropriate permissions

Agent Configuration

  1. Create Agent Groups (Twilio → Agent Groups)
  2. Add Agents to groups with priorities
  3. Set Phone Numbers in user profiles
  4. Configure Call Mode: Browser or cell phone
  5. Train Agents on SMS commands and browser phone

Discord & Slack Setup

  1. Discord Configuration:

    • Create a webhook URL in your Discord server settings
    • Navigate to TwilioSettingsNotifications
    • Paste Discord webhook URL
    • Enable desired notification types
  2. Slack Configuration:

    • Create a webhook URL in your Slack workspace
    • Navigate to TwilioSettingsNotifications
    • Paste Slack webhook URL
    • Configure notification preferences
  3. Notification Types:

    • Incoming Calls: Alert when calls enter queues
    • Queue Timeouts: Alert when calls wait too long (configurable threshold)
    • Missed Calls: Alert when calls are abandoned or timeout

Browser Phone Access

Shortcode Usage (Redirect Interface)

The [twp_browser_phone] shortcode now provides a secure redirect interface that directs users to the WordPress admin browser phone page for enhanced security.

Basic Usage:

[twp_browser_phone]

With Custom Options:

[twp_browser_phone title="Customer Service Phone" button_text="Access Phone System" target="_blank"]

Shortcode Parameters

  • title: Custom title for the redirect interface (default: "Browser Phone")
  • button_text: Text for the admin link button (default: "Access Browser Phone")
  • target: Link target behavior (default: "_blank" - opens in new tab)

Security Features

  • Authentication Required: Users must be logged in to see the redirect interface
  • Permission Validation: Requires twp_access_browser_phone capability or manage_options
  • Clear Error Messages: Informative feedback for unauthorized access attempts
  • Admin-Only Interface: All browser phone functionality restricted to WordPress admin area

Browser Phone Interface (Admin Area)

Access the full browser phone interface at: WordPress Admin → Twilio → Browser Phone

Features:

  • Enhanced Security: Protected by WordPress admin authentication
  • Full Functionality: Complete browser phone features available in secure environment
  • Responsive Design: Adapts to all screen sizes within admin interface
  • Professional Interface: Integrated with WordPress admin styling
  • No Frontend Assets: Eliminates security risks from frontend JavaScript exposure

Voice Configuration

ElevenLabs Integration

  1. Get API Key from ElevenLabs dashboard
  2. Configure in Settings: Add API key
  3. Select Voices in workflow steps:
    • Click "Load Voices" to fetch available options
    • Selected voices are saved with both ID and name
    • Voice names persist across edits without API calls

Audio Options per Step

  • Say: Default Twilio text-to-speech
  • TTS: ElevenLabs premium voices with persistence
  • Audio: Custom MP3 file URLs

Troubleshooting

Common Issues

Browser Phone Access Issues

  • Access via Admin Only: Browser phone moved to WordPress admin area for security
  • Shortcode Redirect: Frontend shortcode now provides redirect to admin interface
  • Permission Required: Ensure user has twp_access_browser_phone or manage_options capability
  • Login Required: Users must be logged in to access browser phone functionality
  • Check TwiML App SID is configured in WordPress admin settings

"Twilio SDK classes not available"

# Reinstall SDK
./install-twilio-sdk.sh
# Test installation
php test-sdk.php

Calls Not Routing to Queues

  • Verify queue exists and is active
  • Check agent group has members
  • Ensure agents have valid phone numbers
  • Review workflow step configuration
  • Check notification_number field (not phone_number)

Call Control System - Enterprise Grade (v2.3.0)

  • Extension Transfers: COMPLETELY REDESIGNED - Queue-based system with 2-minute timeout and automatic voicemail
  • Browser Phone Support: UNIVERSAL - Full Firefox, Chrome, Safari, and Edge compatibility with permission management
  • Agent Status: AUTOMATED - 1-minute auto-revert prevents agents staying busy indefinitely
  • Call Statistics: ACCURATE - Browser phone calls properly tracked in all dashboards
  • Transcription: REAL API - Actual Twilio integration replaces placeholder system
  • Customer Disconnections: ELIMINATED - Intelligent call leg detection prevents all disconnection issues
  • Professional Audio: UNIVERSAL - ElevenLabs TTS throughout all voice prompts
  • Zero Configuration: AUTOMATIC - All systems work immediately without manual setup

Customer Number Display Issues - RESOLVED

  • "client:agentname" in Voicemails: FIXED - Real customer numbers now display correctly in all interfaces
  • Wrong Numbers in Recording Interface: RESOLVED - Enhanced detection shows actual customer phone numbers
  • Missing Customer Info: ENHANCED - Smart fallback logic retrieves customer numbers from multiple sources
  • Browser Phone Call Issues: PERFECTED - Proper customer identification in all call scenarios
  • Admin Interface: IMPROVED - All admin interfaces now consistently show meaningful customer information
  • Data Consistency: ENSURED - Customer information remains accurate across all features

SMS Not Sending from Admin

  • Test with direct PHP script: php test-twilio-direct.php send
  • Verify Twilio credentials in settings
  • Check WordPress error logs
  • Ensure number is SMS-capable in Twilio

Voice Selections Not Saving

  • Voices now save both ID and name automatically
  • No API call needed to display saved voices
  • Click "Load Voices" only to change selection
  • Check browser console for JavaScript errors

IVR Options Not Working

  • Ensure only active form fields are enabled
  • Check queue selections are properly saved
  • Verify digit mappings in workflow data

Debug Mode

Enable WordPress debugging in wp-config.php:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

Testing Tools

  • Direct SMS Test: php test-twilio-direct.php send
  • SDK Test: php test-sdk.php
  • Webhook Simulator: Use Twilio Console debugger
  • Call Logs: Review in WordPress admin
  • Browser Phone: Test WebRTC connectivity

Database Structure

The plugin creates these tables:

  • twp_phone_schedules - Business hours definitions
  • twp_call_queues - Queue configurations (uses notification_number)
  • twp_queued_calls - Active calls in queues
  • twp_workflows - Call flow definitions with voice persistence
  • twp_workflow_phones - Junction table for multiple phone numbers per workflow
  • twp_call_log - Complete call history
  • twp_sms_log - SMS message tracking
  • twp_voicemails - Recordings and transcriptions
  • twp_agent_groups - Agent group definitions
  • twp_group_members - User-to-group relationships
  • twp_agent_status - Real-time agent availability
  • twp_callbacks - Callback request queue

Webhook Endpoints

All webhooks are REST API endpoints under /wp-json/twilio-webhook/v1/:

  • /voice - Main incoming call handler
  • /sms - SMS message handler
  • /ivr-response - IVR digit collection (fixed in latest)
  • /queue-wait - Queue hold experience
  • /agent-connect - Agent connection handler
  • /callback-request - Callback system
  • /outbound-agent-with-from - Outbound calling

Technical Details

Dependencies

  • Twilio PHP SDK v8.7.0 - Server-side API operations
  • Twilio Voice SDK v2 - Browser phone WebRTC
  • WordPress REST API - Webhook handling
  • jQuery - Admin interface interactions

Browser Compatibility

  • Chrome/Edge: Full support
  • Firefox: Full support
  • Safari: Requires HTTPS for WebRTC
  • Mobile Browsers: Limited WebRTC support

Security Considerations

  • Admin-Only Browser Phone: All browser phone functionality restricted to WordPress admin area
  • Frontend Asset Elimination: Removed 108KB of frontend JavaScript and CSS to reduce attack surface
  • Authentication Required: Shortcode requires user login and appropriate permissions
  • Secure Redirects: Frontend shortcode provides authenticated redirect to admin interface
  • All webhooks use WordPress nonce verification
  • Phone numbers validated and sanitized
  • SQL queries use prepared statements
  • Sensitive data encrypted in database
  • HTTPS required for production use

Version History

v2.3.0 (Current - September 2025) - ENTERPRISE READY

  • SECURITY ENHANCEMENT: Removed frontend browser phone interface, moved to admin-only access for enhanced security
  • ASSET REDUCTION: Eliminated 108KB of frontend assets (browser-phone-frontend.js and CSS files)
  • SHORTCODE SECURITY: Browser phone shortcode now provides secure redirect with authentication checks
  • ATTACK SURFACE REDUCTION: Minimized frontend JavaScript exposure and potential security vectors
  • EXTENSION TRANSFER SYSTEM: Complete overhaul with queue-based routing, 2-minute timeout, and automatic voicemail fallback
  • BROWSER PHONE UNIVERSAL: Firefox support, permission management, call stability, and cross-browser compatibility
  • AGENT STATUS AUTOMATION: 1-minute auto-revert system with WordPress cron job integration
  • CALL STATISTICS ACCURACY: Browser phone calls now tracked properly with enhanced logging
  • TRANSCRIPTION INTEGRATION: Real Twilio API integration replacing placeholder system
  • CLIENT NAME CONSISTENCY: Standardized naming prevents browser phone connection mismatches
  • PERMISSION SYSTEM: Automatic microphone/speaker requests with error recovery
  • DATABASE MIGRATION: Version 1.6.2 with auto_busy_at column for status management
  • PROFESSIONAL GRADE: Enterprise reliability with comprehensive error handling throughout
  • ZERO CONFIGURATION: All systems work automatically without manual setup

v2.2.0 - CALL CONTROL FOUNDATION

  • COMPLETE CALL CONTROL REDESIGN: Hold, transfer, and requeue functions rebuilt from ground up
  • Automatic Queue Creation: Personal and hold queues created automatically with unique extensions
  • Professional Audio Experience: ElevenLabs TTS integration throughout all operations
  • Call Leg Detection: Advanced system preventing customer disconnections in complex topologies
  • Browser Phone Enhancement: Full support for complex call scenarios and transfers
  • Customer Number Detection: Enhanced interfaces show real customer numbers

v2.1.0 - WORKFLOW FOUNDATION

  • Multiple Phone Numbers: Workflows can now handle multiple phone numbers
  • Discord & Slack Integration: Real-time notifications for call events
  • Enhanced Monitoring: Automated queue timeout tracking and alerts
  • Notification System: Configurable webhook-based notifications
  • Background Processing: Cron jobs for timeout monitoring
  • Database Enhancements: New junction table for phone number relationships

v2.0.0 - BROWSER PHONE BASE

  • Upgraded to Twilio Voice SDK v2 for browser phone
  • Fixed queue notification_number field naming
  • Enhanced voice selection persistence
  • Fixed IVR option saving and loading
  • Improved error handling and logging
  • Added automatic token refresh

v1.3.x - INITIAL RELEASE

  • Initial release with full call center features
  • Browser phone with Client SDK v1.14
  • Basic workflow builder
  • Queue management system

Support

  • Check CLAUDE.md for detailed technical documentation
  • Review error logs in /wp-content/debug.log
  • Monitor Twilio Console for webhook errors
  • Test components individually using provided scripts
  • Report issues with specific error messages and logs

License

This plugin integrates with Twilio services and requires a Twilio account.


Enterprise Ready v2.3.0 - Extension transfers, browser phone compatibility, and automatic agent management now production-ready with comprehensive reliability improvements.

Description
No description provided
Readme 4 MiB
2025-09-10 02:14:47 +00:00
Languages
PHP 86%
JavaScript 12.1%
CSS 1.5%
Shell 0.4%