@extends('admin.layout') @section('title', 'Aprilo AI Control Center - Operations Workspace') @section('content')
Aprilo Operations

Control Console Admin Dashboard

Unified control center for AI agent management, live inbox support, configurations, and internal staff operations.

Widget Subdomain
{{ $organization->subdomain }}.aprilo.ai
{{ $summary['resolved_questions'] ?? 0 }}
Questions Resolved
AI Grounded Answers
{{ number_format(($summary['estimated_minutes_saved'] ?? 0) / 60, 1) }}h
HR Time Saved
Based on approved sources
{{ $openEscalationCount }}
Open Escalations
Requires HR review
{{ $indexedSourceCount }} / {{ $sourceCount }}
Indexed Knowledge Sources
Active RAG Vector Store

HR Assistant Employee Usage & Topic Distribution

Breakdown of employee inquiries resolved across HR policy topics, leave requests, and digital ID card issuances.

100% AI Grounded
Employee Topic Distribution
Leaves, Time-Off & WFH
35%
Health Insurance & Benefits
25%
Payroll & Reimbursements
20%
Staff Handbook & Digital ID Cards
20%

🏖️ Pending Leave Requests

View All
@forelse ($leaves->take(4) as $leave) @empty @endforelse
Employee Dates Status
{{ $leave->user->name ?? 'Staff' }} {{ \Carbon\Carbon::parse($leave->start_date)->format('M d') }} - {{ \Carbon\Carbon::parse($leave->end_date)->format('M d') }} {{ $leave->status }}
No pending leave applications.

🏠 Pending WFH Requests

View All
@forelse ($wfhRequests->take(4) as $wfh) @empty @endforelse
Employee Date Status
{{ $wfh->user->name ?? 'Staff' }} {{ \Carbon\Carbon::parse($wfh->date)->format('M d, Y') }} {{ $wfh->status }}
No pending WFH requests.
Loading live queues from Firestore...

Select a visitor session

No conversation selected
💬 Select an active conversation from the sidebar to start replying.
Visitor Metadata
Session ID: -
Device Fingerprint: -
Browser details: -
Active path: -
Operations Control
🚨 Escalations log
No escalations for session.

Customer & Employee CRM Directory

A unified records directory showing active visitor sessions classified into Customers (E-Commerce) vs Employees (validated HR portal users).

Visitor ID / Name Classification Subdomain channel Total Queries Asked Staff Joining Date Last seen metrics
Loading CRM sessions...

Customize Organizational AI Agent

@csrf @method('PATCH')

AI Token usage

Hobby Plan
63%
Remaining Credits
Queries Processed: {{ $settings->usage_queries_count }} / 100
Estimated Hours Saved: {{ $summary['estimated_hours_saved'] }} hrs
Accrued usage bill: ${{ number_format($settings->usage_amount_due, 2) }}

Upload Support Article / Document

@csrf

Indexed Documents

@if ($sources->isEmpty())

No documents uploaded yet.

@else @foreach ($sources as $source)
{{ $source->title }}
Scope: {{ $source->access_scope }} | Status: {{ $source->status }}
{{ strtoupper($source->source_type) }}
@endforeach @endif

Branding Customizer

Widget Gradient Theme
Enable Alert Sound Notifications
Live widget preview
🤖
Sarah (AI Agent) Chat with Sarah!
Hello! Select a department below to start chatting with Aprilo AI support.
How can I track my order status?

Embed Chat Widget Script

Integrate this widget code script tag into any HTML template to render the floating customer support widget.

<script src="http://localhost:3000/widget.js?subdomain={{ $organization->subdomain }}&api_url=http://localhost:8000/api" async defer></script>
🛍️ Shopify App Embed

Navigate to theme customizer, click app embeds and toggle Aprilo.

🛒 WooCommerce Plugin

Install WordPress module connector and configure domain authorization token.

⚙️ Magento Integration

Paste script snippet block in Content Settings HTML Head configuration.

Employee Digital ID

{{ strtoupper($organization->name) }} ACTIVE 🟢
HR
{{ auth()->user()->name }} {{ auth()->user()->role }}
{{ auth()->user()->employee_id ?: 'EMP-9820-2026' }}
Validate Employee ID: {{ auth()->user()->employee_id ?: 'EMP-9820-2026' }}
Join Date: {{ auth()->user()->joining_date ? auth()->user()->joining_date->format('M d, Y') : 'N/A' }}

Leave Requests Queue

@if ($leaves->isEmpty())

No active leave requests found.

@else @foreach ($leaves as $leave) @endforeach
Staff Member Reason Start Date End Date Status
{{ $leave->user->name }} {{ $leave->reason ?: 'N/A' }} {{ \Carbon\Carbon::parse($leave->start_date)->format('M d, Y') }} {{ \Carbon\Carbon::parse($leave->end_date)->format('M d, Y') }} {{ ucfirst($leave->status) }}
@endif
@endsection