Panduan Instalasi PikoCS (Composer)
& Cara Menyisipkan WA Bubble ke Web Klien
PikoCS dibangun dengan CodeIgniter 4.7.5, target runtime PHP 8.3.28 dan
MySQL 8.4.7. Ikuti 6 langkah di bawah — dari composer install
sampai widget WhatsApp mengambang tampil di website klien Anda.
0 Persyaratan Server
PikoCS berjalan di VPS, cloud instance, shared hosting modern, atau Docker. Spesifikasi minimum:
Software
- PHP 8.3 (direkomendasikan 8.3.28) dengan ekstensi:
intl, mbstring, curl, json, xml, mysqlnd, zip - MySQL 8.4.7 (atau MariaDB 10.11+ kompatibel)
- Composer 2.x untuk dependensi PHP
- Web server Apache (mod_rewrite) / Nginx, atau
php spark serveuntuk dev
Hardware minimum
- 1 vCPU / 1 GB RAM (nyaman: 2 vCPU / 2 GB)
- Disk 2 GB (log chat tumbuh ± 1 MB per 1.000 pesan)
- Akses keluar HTTPS ke
pikoai.gayamapp.cloud(gateway AI) - Sertifikat SSL (Let's Encrypt gratis) — wajib untuk widget di web klien
Cek versi cepat: php -v,
mysql --version,
composer -V.
Debian/Ubuntu: sudo apt install php8.3-cli php8.3-mysql php8.3-intl php8.3-mbstring php8.3-curl php8.3-xml php8.3-zip mysql-server composer
Alur Aktivasi — Kami yang Deploy, Anda Tinggal Pakai
Halaman ini adalah dokumentasi teknis. Untuk klien, proses produksinya sesederhana empat langkah berikut — seluruh pekerjaan server dikerjakan tim PikoCS:
-
1
Isi form pendaftaran
Lima kolom di halaman /daftar (nama, toko, niche, WA, paket). Widget key dibuat otomatis oleh sistem.
-
2
Onboarding terbantu
Tim menghubungi via WhatsApp: pairing nomor WA ke gateway, pemasangan widget di website Anda, dan pengisian Buku Pintar Toko bersama.
-
3
AI dilatih konteks toko
Katalog, harga, kebijakan ongkir/retur, dan gaya bahasa brand dimasukkan ke store_context — AI langsung paham hari itu juga.
-
4
Go-live & pemantauan
AI aktif 24/7. Anda memantau percakapan, lead, dan omzet dari admin console; pemeliharaan server urusan kami.
1 Install dengan Composer
Unduh paket PikoCS (zip dari vendor atau repositori Git Anda), ekstrak, lalu install dependensi — CodeIgniter 4.7.5 akan ditarik otomatis sesuai composer.lock:
Ingin mulai dari kerangka CI4 baru lalu menimpa dengan kode PikoCS? Bisa juga:
Struktur penting proyek:
2 Konfigurasi .env
Lalu sesuaikan bagian-bagian berikut:
Jangan commit .env ke Git! File ini berisi API key & password database. Pastikan juga writable/ dapat ditulis (chmod 775, owner user web server).
3 Database MySQL 8.4.7 + Migrasi
Buat database & user khusus PikoCS (MySQL 8.4 memakai plugin autentikasi caching_sha2_password secara default — didukung driver MySQLi PHP 8.3):
Jalankan migrasi (membuat 4 tabel: widget_keys, chat_sessions, chat_messages, leads) lalu seed data demo:
Buat widget key untuk klien pertama Anda:
Kolom store_context = "Buku Pintar Toko" yang disuntikkan ke system prompt AI. Semakin lengkap (produk, harga, kebijakan, gaya bahasa), semakin pintar jawaban AI-nya. Bisa diupdate kapan saja langsung di tabel widget_keys.
4 API Key Gateway PikoAI
Mesin AI PikoCS adalah gateway PikoAI (kompatibel format OpenAI). Isi pikoai.apiKey di .env dengan key Anda. Uji dulu langsung dengan cURL:
Key terisi → mode live
Setiap chat klien diteruskan PikoCS ke gateway PikoAI lengkap dengan persona + Buku Pintar Toko + riwayat percakapan. Jawaban AI asli, header respons X-PikoCS-Mode: live.
Key kosong / gateway error → mode fallback
Agar widget klien tidak pernah "mati", PikoCS membalas dengan mesin demo cerdas lokal (pikoai.demoFallback = true). Matikan bila ingin error tegas: set false.
5 Menjalankan Aplikasi
Development — server bawaan CI4:
Produksi (Nginx) — document root HARUS ke folder public/:
Produksi (Apache) — arahkan DocumentRoot vhost ke public/; .htaccess rewrite sudah tersedia di dalamnya. Aktifkan mod_rewrite dan pastikan AllowOverride All.
Setelah jalan, verifikasi cepat:
Integrasi Gateway WhatsApp (Fonnte)
Channel WhatsApp PikoCS berjalan di atas gateway Fonnte — penyedia API WhatsApp pihak ketiga yang umum dipakai UMKM Indonesia. Prinsip kami: gateway WhatsApp aman dengan onboarding dibantu; pairing nomor selalu didampingi tim agar sesuai aturan penyedia dan nomor toko tetap aman.
Alur pesan
→ balasan disusun (< 5 dtk) → kirim via Fonnte → chat pembeli terjawab
Langkah koneksi (didampingi tim)
- Siapkan nomor WhatsApp bisnis yang aktif (bisa nomor lama toko — riwayat chat tidak hilang).
- Tim membuat akun gateway Fonnte atas nama bisnis Anda; token disimpan terenkripsi di sisi server PikoCS.
- Pairing perangkat: Anda cukup menyetujui kode OTP di ponsel — tidak ada instalasi apa pun.
- Webhook pesan masuk diarahkan ke instance PikoCS; uji kirim/terima dilakukan bersama saat onboarding.
- Aturan aman: jeda antar-pesan broadcast, tanpa spam template, dan opt-out pelanggan dihormati otomatis.
6. Menyisipkan WA Bubble ke Web Klien
WA bubble adalah tombol WhatsApp hijau mengambang di pojok kanan bawah website yang, saat diklik,
membuka panel chat AI PikoCS (bukan bot menu kaku). Klien cukup menempel
satu baris script — semua tampilan & logika di-inject otomatis oleh bubble.js,
tanpa dependensi jQuery/Bootstrap dan tanpa bentrok dengan CSS website klien.
6.1 — Snippet wajib (tempel sebelum </body>)
Ganti WIDGET_KEY_KLIEN dengan key hasil php spark pikocs:key (langkah 3).
Untuk mencoba cepat tanpa key sendiri, pakai demo key: pk-demo-pikocs-2026
— bubble di halaman PikoCS ini pun memakainya (lihat pojok kanan bawah 👇).
6.2 — Kustomisasi lewat atribut data-* (semua opsional)
| Atribut | Default | Fungsi |
|---|---|---|
| data-key | — (wajib) | Widget key klien; menentukan persona AI, Buku Pintar Toko & branding |
| data-title | nama toko dari server | Judul header panel chat |
| data-greeting | salam default | Pesan pembuka otomatis dari AI saat panel dibuka |
| data-color | #25D366 | Warna tema bubble & header (hijau WhatsApp) |
| data-position | right | Posisi mengambang: right / left |
| data-wa-number | dari server (opsional) | Menampilkan tombol "Lanjut ke WhatsApp" (deep-link wa.me) — mis. untuk order yang butuh manusia di sisi toko |
| data-tooltip | kosong | Tooltip ajakan di samping bubble (muncul beberapa detik) |
| data-server | asal URL script | Override URL server PikoCS bila bubble.js di-host terpisah (CDN klien) |
6.3 — Contoh di berbagai platform
HTML statis / landing page
WordPress