Add comprehensive queue management to browser phone shortcode
Features Added: - Queue display showing all assigned queues for the current user - Real-time queue statistics (waiting calls, capacity) - Visual indicators for queues with waiting calls (green border, pulse animation) - Queue selection with click interaction - Accept next call from selected queue functionality - Auto-refresh of queue data every 30 seconds - Mobile-responsive queue interface Backend Changes: - New ajax_get_agent_queues() handler to fetch user's assigned queues - Enhanced ajax_get_waiting_calls() to return structured data - Proper permission checking for twp_access_agent_queue capability Frontend Enhancements: - Interactive queue list with selection states - Queue controls panel showing selected queue info - Refresh button for manual queue updates - Visual feedback for queues with active calls - Mobile-optimized layout for smaller screens UI/UX Improvements: - Queues with waiting calls highlighted with green accent - Pulsing indicator for active queues - Auto-selection of first queue with calls - Responsive design for mobile devices - Dark mode support for queue elements 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -153,15 +153,31 @@ class TWP_Shortcodes {
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Queue Controls (for agents) -->
|
||||
<div class="twp-queue-controls" id="twp-queue-controls" style="display: none;">
|
||||
<h4>Queue Management</h4>
|
||||
<div class="queue-status">
|
||||
<span>Waiting calls: <span id="twp-waiting-count">0</span></span>
|
||||
<!-- Queue Management Section -->
|
||||
<div class="twp-queue-section" id="twp-queue-section">
|
||||
<h4>Your Queues</h4>
|
||||
<div class="twp-queue-list" id="twp-queue-list">
|
||||
<div class="queue-loading">Loading queues...</div>
|
||||
</div>
|
||||
|
||||
<!-- Queue Controls -->
|
||||
<div class="twp-queue-controls" id="twp-queue-controls" style="display: none;">
|
||||
<div class="selected-queue-info">
|
||||
<h5 id="selected-queue-name">No queue selected</h5>
|
||||
<div class="queue-stats">
|
||||
<span class="waiting-count">Waiting: <span id="twp-waiting-count">0</span></span>
|
||||
<span class="queue-size">Max: <span id="twp-queue-max-size">-</span></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="queue-actions">
|
||||
<button id="twp-accept-queue-call" class="twp-btn twp-btn-success">
|
||||
Accept Next Call
|
||||
</button>
|
||||
<button id="twp-refresh-queues" class="twp-btn twp-btn-secondary">
|
||||
Refresh
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<button id="twp-accept-queue-call" class="twp-btn twp-btn-success">
|
||||
Accept Next Call
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<!-- Audio elements -->
|
||||
|
Reference in New Issue
Block a user