TA/web_JMW/ADMIN_WHATSAPP_SETUP.md

199 lines
4.4 KiB
Markdown

# Admin Showroom WhatsApp Configuration
Untuk sistem showroom pribadi dengan satu admin, masukkan nomor WhatsApp admin Anda di file `.env`:
```bash
ADMIN_WHATSAPP_NUMBER=081234567890
ADMIN_NAME=JMW Showroom
```
## Langkah Setup
### 1. Update `.env` File
Edit file `.env` di root folder project:
```env
# Showroom Admin WhatsApp
ADMIN_WHATSAPP_NUMBER=081234567890 # Ganti dengan nomor WhatsApp admin Anda
ADMIN_NAME=JMW Showroom # Ganti dengan nama showroom Anda
```
**Format Nomor Telepon yang Diterima:**
- ✅ `081234567890` (Indonesia mobile)
- ✅ `08-1234-567890` (dengan separator)
- ✅ `+6281234567890` (international)
- ✅ `6281234567890` (country code tanpa +)
Semua format akan otomatis dikonversi ke `62xxxxxxxxxx` untuk WhatsApp.
### 2. Jalankan Migration
```bash
php artisan migrate
```
### 3. Selesai! ✅
Tombol "💬 Chat Admin via WhatsApp" akan otomatis tampil di setiap halaman detail mobil.
---
## Cara Kerja
**Ketika customer klik tombol "Chat Admin via WhatsApp":**
1. ✅ API mengambil nomor WhatsApp dari `.env` (`ADMIN_WHATSAPP_NUMBER`)
2. ✅ API mengambil nama mobil dari kategori
3. ✅ Membuat pesan otomatis dengan nama mobil
4. ✅ Redirect ke WhatsApp Web/App dengan pesan:
```
Halo, saya tertarik dengan kendaraan bekas - [Nama Mobil]. Apakah masih tersedia?
```
---
## API Endpoints (Admin Showroom)
### 1. Dapatkan Link WhatsApp Admin
```
GET /api/chat/admin-whatsapp/{categoryId?}
```
**Contoh:**
```
GET /api/chat/admin-whatsapp/5
```
**Response:**
```json
{
"success": true,
"message": "Link WhatsApp berhasil dibuat",
"data": {
"admin_name": "JMW Showroom",
"phone_number": "081234567890",
"whatsapp_link": "https://wa.me/6281234567890?text=...",
"car_name": "Toyota Avanza 2015"
}
}
```
### 2. Direct Redirect ke WhatsApp Admin
```
GET /api/contact/admin-whatsapp/{categoryId?}
```
**Contoh:**
```
GET /api/contact/admin-whatsapp/5
```
*Secara otomatis membuka WhatsApp tanpa response JSON*
---
## Tidak Perlu Melakukan Ini
❌ Tidak perlu menambahkan `seller_username` ke mobil
❌ Tidak perlu menyimpan nomor telepon untuk setiap user
❌ Tidak perlu update data mobil - semua langsung ke admin
---
## Troubleshooting
### ❌ "Nomor WhatsApp admin tidak dikonfigurasi"
**Penyebab:** `ADMIN_WHATSAPP_NUMBER` tidak ada atau kosong di `.env`
**Solusi:** Pastikan sudah menambahkan nomor di `.env`
```env
ADMIN_WHATSAPP_NUMBER=081234567890
```
### ❌ WhatsApp tidak terbuka
**Penyebab:**
- Browser block popup
- WhatsApp tidak terinstall/login
- Format nomor tidak valid
**Solusi:**
- Pastikan format nomor benar: `08xxxxxxxxxx` atau `+628xxxxxxxxxx`
- Pastikan WhatsApp Web sudah login
- Coba di browser lain atau incognito mode
### ❌ Error 422
**Penyebab:** Nomor WhatsApp admin tidak valid
**Solusi:** Check kembali format nomor telepon di `.env`
---
## Testing
### Test dengan curl:
```bash
curl "http://localhost:8000/api/chat/admin-whatsapp/5"
```
### Expected Response:
```json
{
"success": true,
"message": "Link WhatsApp berhasil dibuat",
"data": {
"admin_name": "JMW Showroom",
"phone_number": "081234567890",
"whatsapp_link": "https://wa.me/6281234567890?text=Halo%2C%20saya%20tertarik%20dengan%20kendaraan%20bekas%20-%20Toyota%20Avanza%202015.%20Apakah%20masih%20tersedia%3F",
"car_name": "Toyota Avanza 2015"
}
}
```
---
## Custom Integration
Jika ingin membuat tombol WhatsApp di tempat lain:
### HTML Button:
```html
<button onclick="contactAdminWhatsApp(5)" class="btn btn-primary">
💬 Chat Admin
</button>
```
### JavaScript Function:
```javascript
function contactAdminWhatsApp(categoryId) {
window.location.href = `/api/contact/admin-whatsapp/${categoryId}`;
}
```
### Async Function:
```javascript
async function getAdminWhatsAppLink(categoryId) {
const response = await fetch(`/api/chat/admin-whatsapp/${categoryId}`);
const data = await response.json();
if (data.success) {
window.open(data.data.whatsapp_link, '_blank');
}
}
```
---
## Catatan Penting
- ✅ Sistem sepenuhnya otomatis - tidak perlu update data per mobil
- ✅ Tombol selalu tersedia untuk semua mobil
- ✅ Nomor WhatsApp admin terpusat di `.env`
- ✅ Support WhatsApp Web dan WhatsApp App
- ✅ Pesan otomatis disesuaikan dengan nama mobil
---
## Support
Jika ada pertanyaan, lihat [WHATSAPP_API_DOCUMENTATION.md](WHATSAPP_API_DOCUMENTATION.md)