ay4t / php-watzap-id
PHP REST Client for Watzap.id API Integration
v1.0.1
2025-04-17 05:36 UTC
Requires
- ay4t/php-rest-client: dev-master
- vlucas/phpdotenv: ^5.6
README
Library PHP untuk integrasi dengan layanan Watzap.id API. Dibuat dengan menggunakan ay4t/php-rest-client untuk penanganan HTTP request yang lebih baik.
🚀 Fitur Utama
- ✨ Integrasi mudah dengan Watzap.id API
- 🔄 Retry otomatis untuk request yang gagal
- 📝 Sistem logging yang lengkap
- ⚡ Penanganan error yang komprehensif
- 🔒 Konfigurasi yang fleksibel
📦 Instalasi
Install melalui Composer:
composer require ay4t/php-watzap-id
⚙️ Konfigurasi
- Buat file
.env
di root project Anda:
API_KEY=your_api_key_here NUMBER_KEY=your_number_key_here
- Load konfigurasi dalam kode PHP Anda:
use Dotenv\Dotenv; use Ay4t\WatzapId\Config\WatzapConfig; use Ay4t\WatzapId\WatzapClient; // Load environment variables $dotenv = Dotenv::createImmutable(__DIR__); $dotenv->load(); // Inisialisasi konfigurasi $config = new WatzapConfig(); $config->setApiKey($_ENV['API_KEY']) ->setNumberKey($_ENV['NUMBER_KEY']); // Buat instance WatzapClient $watzap = new WatzapClient($config);
📚 Penggunaan
🔍 Cek Status API
try { $status = $watzap->checkApiStatus(); print_r($status); } catch (ApiException $e) { echo "Error: " . $e->getMessage(); }
✅ Validasi Nomor WhatsApp
try { $validation = $watzap->validateNumber('628123456789'); print_r($validation); } catch (ApiException $e) { echo "Error: " . $e->getMessage(); }
💬 Kirim Pesan Teks
try { $message = $watzap->sendMessage( '628123456789', 'Halo! Ini adalah pesan dari WatzapClient.', true // tunggu sampai pesan terkirim ); print_r($message); } catch (ApiException $e) { echo "Error: " . $e->getMessage(); }
🖼️ Kirim Gambar dengan Caption
try { $imageMessage = $watzap->sendImage( '628123456789', 'https://example.com/image.jpg', 'Caption untuk gambar' ); print_r($imageMessage); } catch (ApiException $e) { echo "Error: " . $e->getMessage(); }
👥 Fitur Grup
// Ambil daftar grup try { $groups = $watzap->getGroups(); print_r($groups); } catch (ApiException $e) { echo "Error: " . $e->getMessage(); } // Kirim pesan ke grup try { $groupMessage = $watzap->sendGroupMessage( 'GROUP-ID@g.us', 'Halo semua! Ini adalah pesan grup.' ); print_r($groupMessage); } catch (ApiException $e) { echo "Error: " . $e->getMessage(); } // Kirim gambar ke grup try { $groupImage = $watzap->sendGroupImage( 'GROUP-ID@g.us', 'https://example.com/image.jpg', 'Caption untuk gambar grup' ); print_r($groupImage); } catch (ApiException $e) { echo "Error: " . $e->getMessage(); }
🛠️ Penanganan Error
Library ini menggunakan sistem exception untuk menangani error. Semua error akan melempar ApiException
yang menyediakan informasi detail:
try { $response = $watzap->sendMessage('628123456789', 'Pesan'); } catch (ApiException $e) { echo "Error Message: " . $e->getMessage() . "\n"; echo "HTTP Status: " . $e->getHttpStatusCode() . "\n"; echo "Response Body: " . $e->getResponseBody() . "\n"; }
📋 Persyaratan
- PHP >= 7.4
- Ekstensi PHP Curl
- Akun aktif di Watzap.id
- API Key dan Number Key dari Watzap.id
🤝 Kontribusi
Kontribusi sangat diterima! Silakan buat pull request untuk:
- 🐛 Perbaikan bug
- ✨ Fitur baru
- 📚 Perbaikan dokumentasi
- ⚡ Peningkatan performa
📄 Lisensi
Project ini dilisensikan di bawah MIT License.