Aplikasi OneSender sebenarnya terdiri dari dua sistem utama.
Pertama, Sistem API server yang berfungsi menjalankan dashboard.
Kedua, Sistem WA sender yang tugas utamanya mengirimkan pesan ke server WhatsApp.
Mode instalasi standar menyatukan kedua fungsi itu agar lebih simpel. Tapi jika kita ingin sistem yang lebih handal dan robust, kita bisa menjalankan kedua fungsi itu secara terpisah.
Langkah-langkahnya sebagai berikut.
1. Menyiapkan file aplikasi #
– Copy file aplikasi `onesender` atau `onesender_64bit` menjadi dua file berikut: `onesender_server` dan `onesender_sender`.
– Jika Anda menggunakan OS windows file asal yang perlu dicopy yaitu: `onesender.exe`.
2. Menyiapkan file config #
Buat dua file config yang masing-masing untuk onesender server dan onesender sender.
Setting server: #
– Buat file dengan nama `config_server.yaml`.
– Isi dengan file configurasi berikut:
app: environment: production error_log: /opt/onesender/error_server.log name: server mode: server timezone: Asia/Jakarta version: 1.6.13 database: connection: mysql host: 127.0.0.1 name: onesender password: password port: 3306 user: root license_code: wwww-xxxx-yyyy-zzzz server: disabled: false attachment_size: 10240 cors_origin: http://ALAMAT_IP, http://127.0.0.1 default_api_key: b1228535535dd9d4ce22d6da489ff75c478f03ed rest_api_url: http://ALAMAT_IP:3000/api/ socket_server_url: ws://ALAMAT_IP:3000/ws/ url: :3000 whatsapp: disabled: true document_extension: .pdf,.zip,.docx,.doc,.xlsx,.xls,.pptx,.ppt hard_restart_on_error: true max_sender_time: 5s min_sender_time: 2s runtime_interval: 10s session_path: /opt/onesender/session.gob version_major: 2 version_minor: 2142 version_patch: 12 time_plus: 0 time_minus: 25200 api_adapter: wablas: true starsender: true woowa: true wanotifid: true woonotifcom: true
Setting utama untuk memisahkan server dari sender yaitu:
server: disabled: false whatsapp: disabled: true
Setting sender: #
– Buat file dengan nama `config_sender.yaml`.
– Isi dengan file configurasi berikut:
app: environment: production error_log: /opt/onesender/error_sender.log name: sender mode: sender timezone: Asia/Jakarta version: 1.6.13 database: connection: mysql host: 127.0.0.1 name: onesender password: password port: 3306 user: root license_code: wwww-xxxx-yyyy-zzzz server: disabled: true whatsapp: disabled: false document_extension: .pdf,.zip,.docx,.doc,.xlsx,.xls,.pptx,.ppt hard_restart_on_error: true max_sender_time: 5s min_sender_time: 2s runtime_interval: 10s session_path: /opt/onesender/session.gob version_major: 2 version_minor: 2142 version_patch: 12 time_plus: 0 time_minus: 25200 api_adapter: wablas: true starsender: true woowa: true wanotifid: true woonotifcom: true
Setting utama untuk memisahkan server dari sender yaitu:
server: disabled: true whatsapp: disabled: false
Menguji aplikasi #
Untuk mencoba apakah settingan sudah benar silahkan jalankan onesender dengan file configurasi yang kita pilih.
Jalankan command ini di terminal
./onesender_server --conf=/opt/onesender/config_server.yaml
3. Menyiapkan init script #
Buat ini script #
File init script berfungsi untuk menjalankan auto run ketika vps atau server reboot.
Jalankan command berikut untuk membuat file:
1. /etc/systemd/system/onesender_server.service
2. /etc/systemd/system/onesender_sender.service
Commandnya sebagai berikut:
echo "[Unit] Description=onesender_server Service Wants=network.target After=syslog.target network-online.target [Service] Type=simple ExecStart=/opt/onesender/onesender_server --conf=/opt/onesender/config_server.yaml ExecStop=killall -w onesender_server Restart=on-failure RestartSec=10 KillMode=process [Install] WantedBy=multi-user.target " > /etc/systemd/system/onesender_server.service echo "[Unit] Description=onesender_sender Service Wants=network.target After=syslog.target network-online.target [Service] Type=simple ExecStart=/opt/onesender/onesender_sender --conf=/opt/onesender/config_sender.yaml ExecStop=killall -w onesender_sender Restart=on-failure RestartSec=10 KillMode=process [Install] WantedBy=multi-user.target " > /etc/systemd/system/onesender_sender.service
Install init script #
Aktifkan init script di atas dengan command berikut:
sudo systemctl daemon-reload sudo systemctl enable onesender_server sudo systemctl enable onesender_sender sudo systemctl start onesender_server sudo systemctl start onesender_sender