@extends('root') @section('title', 'WABA Pool Integration') @section('content')
Hubungkan WhatsApp Business Account baru untuk dijadikan pool. Jika pilih client di bawah, setelah connect WABA akan langsung di-assign ke client tersebut dan paket client di-upgrade ke Dedicated.
Hubungkan WABA baru menggunakan tombol di atas.
| Akun WABA | Nomor & Phone ID | Assigned To | Status | Aksi |
|---|---|---|---|---|
{{ $waba->account_name ?: 'Unknown' }}ID: {{ $waba->waba_id }} |
{{ $waba->phone_number ?: '-' }}
PID: {{ Str::limit($waba->phone_number_id, 15) }} |
@if($waba->client)
{{ $waba->client->name }}
{{ $waba->client->email }}
@else
Pool / Unassigned
@endif
|
@php
// Use code_verification_status from raw_meta_response as primary source
$codeVerificationStatus = null;
$phoneStatus = null;
$rawResponse = $waba->raw_meta_response ?? [];
if (isset($rawResponse['phone']['code_verification_status'])) {
$codeVerificationStatus = strtoupper($rawResponse['phone']['code_verification_status']);
}
if (isset($rawResponse['phone']['status'])) {
$phoneStatus = strtoupper($rawResponse['phone']['status']);
}
// Determine final status based on code_verification_status
if ($codeVerificationStatus === 'VERIFIED') {
$finalStatus = 'verified';
$statusLabel = 'Verified';
} elseif ($codeVerificationStatus === 'UNVERIFIED') {
$finalStatus = 'unverified';
$statusLabel = 'Unverified';
} elseif ($codeVerificationStatus === 'PENDING') {
$finalStatus = 'pending';
$statusLabel = 'Pending';
} elseif ($phoneStatus === 'CONNECTED' || $phoneStatus === 'REGISTERED') {
// If phone is connected/registered but no code_verification_status, show Registered
$finalStatus = 'registered';
$statusLabel = 'Registered';
} elseif ($waba->phone_status === 'active' || $waba->phone_status === 'REGISTERED') {
$finalStatus = 'registered';
$statusLabel = 'Registered';
} elseif ($waba->phone_status === 'pending' || $waba->phone_status === 'PENDING') {
$finalStatus = 'pending';
$statusLabel = 'Pending';
} elseif ($waba->status === 'active') {
$finalStatus = 'active';
$statusLabel = 'Active';
} else {
$finalStatus = 'pending';
$statusLabel = 'Pending';
}
$statusClass = match($finalStatus) {
'verified', 'registered', 'active' => 'bg-success-subtle text-success',
'pending', 'unverified' => 'bg-warning-subtle text-warning',
default => 'bg-secondary'
};
@endphp
{{ $statusLabel }}
@if($codeVerificationStatus)
Code: {{ $codeVerificationStatus }}
@endif
@if($phoneStatus && $phoneStatus !== 'UNKNOWN')
Status: {{ $phoneStatus }}
@endif
@if($waba->last_meta_sync_at)
Synced: {{ $waba->last_meta_sync_at->diffForHumans() }}
@endif
|
@if($waba->isOauth() && !empty($waba->oauth_access_token))
@endif
@if(!$waba->client_id)
@else
@endif
|