Udah merencanakan poko nya kalo ni update status kelar wajib posting….
Setelah sekian lama berkelana mencari jawaban, hasil dari lembur ke lembur… Akhirnya berhasil juga, Alhamdulillah…. berkat pencerahan dari mas Joko sama Basir… mereka Keren poko nya….
Jadi, gini nih penyeleseian dari permasalahan yang aku hadapain.
Awalnya mas CEO beride untuk bikin satu tabel baru yang menghubungkan 2 database, jadi tabel itu isinya adalah id dari tabl itu sendiri, id sms di server CRM dan id sms server gammu. Sehingga melakukan update statusnya ya pake ni tabel. Sebelumnya mesti ngerti dulu proses jalannya sms di gammu. sms yang dikirim ke gammu akan di tampung terlebih dahulu di tabel outbox. Beberapa detik kemudian sms akan dikirim ke operator dan dipindahkan dari tabel outbox ke tabel sentitems. Jadi teman, logika nya, jika sms A sudah oleh CRM ke gammu, maka sms A akan disimpan di tabel outbox, selanjutnya program akan memeriksa sms A apakah sudah ada di sentitems dan apa statusnya, jika statusnya SendingOkNoReport maka ambil id sms A di gamuu, cari id nya untuk database CRM, lalu lempar data id tersebut ke database CRM dan lakukan update status dari 0 menjadi 1. Tapi itu tidak berhasil… rempong banget… gimana caranya biar tabel baru itu bisa nyimpen id id nya… Oh My God….
Day by day, mas Joko kasih pencerahan, ngga usah pake tabel baru… ngga butuh. cek aja apa yang unik di database gammu yang nilainya pasti sama dengan yang ada di database CRM. Hmmmmm bener juga, So, jadiin kombinasi text isi sms dan nomor tujuan. Nah gini logikanya…. dengan memanfaatkan Api yang ngecek ada atau engga nya sms yg perlu dikirim berdasarkan tanggal dan jam, jika, ada sms yang perlu dikirim kasih kondisi lagi…. cek dulu di tabel outbox dan sentitems. jika tidak ada di salah satu tabel maka, lakukan kirim sms. Jika sudah ada di salah satu tabel maka jangan kirim, jika ada di outbox maka jangan kirim atau jika ditemukan di sentitems maka ambil statusnya, jika SendingOkNoRepost maka panggil fungsi updateStatus() di controller CRM dan lakukan update nilai status dari 0 menjadi 1.
Begitulah . . . .^_^) kalo kalian mau cba bikin sstem multiuser yang setiap user punya server sms gatewaynya masing-masing, setidaknya logika yang udah aku jelasin bisa membantu. Selamat mecoba~