<?php

namespace App\Enum\Communication;

enum CommunicationEventType: string {
    case OutboundCallCreated = 'outbound_call_created';
    case InboundCallReceived = 'inbound_call_received';
    case CallQueued = 'call_queued';
    case CallRinging = 'call_ringing';
    case CallInitiated = 'call_initiated';
    case CallAnswered = 'call_answered';
    case CallConnected = 'call_connected';
    case CallCompleted = 'call_completed';
    case CallFailed = 'call_failed';

    case CallNotesSaved = 'call_notes_saved';
    case CallDispositionSaved = 'call_disposition_saved';
    case CallWrapUpSkipped = 'call_wrap_up_skipped';
    case CallbackRequested = 'callback_requested';

    case RecordingStarted = 'recording_started';
    case RecordingCompleted = 'recording_completed';

    case VoicemailReceived = 'voicemail_received';

    case AgentAssigned = 'agent_assigned';
    case AgentJoined = 'agent_joined';

    case CallTransferInitiated = 'call_transfer_initiated';
    case CallTransferred       = 'call_transferred';
    case CallTransferFailed    = 'call_transfer_failed';

    case QueueEntered = 'queue_entered';
    case QueueExited = 'queue_exited';
}