Panduan Webinar
Artificial Intelligent Arduino III
LP2M ARAY
Telp : 021-22712148 / 0821-11147-6069 / 0858-9232-9521 Jl. Raya Lenteng Agung Tmur No.6, Srengseng Sawah, Jagakarsa, Jakarta Selatanwww.lp2maray.com |021-22712148 | 0821-1147-6069 / 0858-9232-9521 | 1
Panduan Webinar Implementasi IT di Masyarakat #3
_Implementasi IT Masyarakat #3_*Membangun Pesan SMS dan Telegram Gateway Berbasis Web* ================================
*_FREE_* ... Yuk's bergabung, praktek dan membahas Penerapan IT di masyarakat untuk proses-proses pengiriman SMS/pesan menggunakan Program PHP dan Mysql.
_Dengan materi:_
```+Konfigurasi SMS & Telegram Server``` ```+Koneksi DataLatih```
```+Create Read Update Delete Show Database``` ```+Kirim Pesan```
```+Broadcast SMS/Pesan```
bersama Dosen IT / CEO LP2MARAY: _Adiarray, S.Kom,M.Kom_ pada:
Hari/tanggal: Kamis, 10 Maret 2021
Pukul: 11 sd 12 WIB
Gabung Grup: https://bit.ly/MLEARNING11
_*Syarat Bergabung :*_
``` Bantu Share Webinar ini minimal ke 3 teman/group yang lain``` ``` Masuk ke Grup WA pada Link di atas```
``` Siapkan: XAMPP, Notepad IDE, Software perekam video```
``` Tersedia juga (Optional):* Sertifikat, Video Full, Panduan, Source Code Implementasi (*berbayar untuk versi detailnya...)```
Info Detail:
www.lp2maray.com
https://wa.me/6285892329521
www.lp2maray.com |021-22712148 | 0821-1147-6069 / 0858-9232-9521 | 2 ROADMAP MATERI:
*Membangun Pesan SMS dan Telegram Gateway Berbasis Web*
Hari/tanggal: Kamis, 10 Maret 2021
Pukul: 11 sd 12 WIB
Gabung Grup: https://bit.ly/MLEARNING11
Jam Materi
11:00 Perkenalan Institusi dan Pengajar/Pemateri 11:05 Materi koneksi database
11:10 Praktek CRUDS database
11:25 Praktek Pengiriman SMS / SMS Gateway Via Website
11:40 Praktek Pengiriman Telegram / Telegram Gateway Via Website 11:55 Analisa dan Penutup
13:00 Link Download Panduan, Materi dan Link Youtube hanya dibagikan kepada yang hadir di materi tersebut
Nb Setelah kegiatan Webinar ini di harapkan semua audiens/peserta bisa mempraktekkan setiap materi yang diberikan. Dipersilakan untuk memanfaatkan layanan tanya jawab seputar meteri tersebut di atas kepada admin atau pengajar / pemateri yang ada.
Dan bagi para praktisi yang lebih memahami materi-materi, diharapkan bantuannya untuk saling membantu sesama audiens agar bisa saling berbagi kemahiran dan pengalamannya kepada peserta / audiens lain yang membutuhkannya. Sekali Lagi Terimakasih Atas perhatian dan Kepesertaanya.
Introduction
SMS dan Instant Messaging (IM) Telegram sampai kini masih menjadi salah satu aplikasi Gateway yang banyak digunakan oleh masyarakat di seluruh dunia.
Kelebihan mereka adalah adanya landasan untuk
menggunakan Library dan Application Programming Interface (API) untuk masyarakat luas.
Salah satu API yang disediakan adalah fitur Sql Blast dan Fitur Bot. Bahasa pemrograman yang digunakan pada implementasi ini menggunakan bahasa Hypertext
PreProcessor (PHP).
Hmmmm Menarik yaaaa…….
1. SMS Gateway
SMS masih populer tentunya karena punya kelebihan tersendiri al: pada kesederhanaannya, privasinya dan keamanannya sehingga mudah untuk diaplikasikan. Semua ponsel memiliki fitur SMS, tidak perduli apakah ponselnya Murah, Sedang atau Mahal. SMS juga tetap dapat dikirim walaupun ponsel si penerima sedang tidak aktif dalam limit waktu tertentu, karena si SMS itu punya yang namanya validity period.
Juga Tidak juga bergantung pada sinyal Listrik, Sinyal GSM/GPRS dan lokasi dimanapun selama masih terjangkau BTS GSM, pasti sms akan diterima oleh HP Penerima. Kini SMS banyak dikembangkan menjadi central SMS atau SMS gateway, yang
www.lp2maray.com |021-22712148 | 0821-1147-6069 / 0858-9232-9521 | 3 merupakan sebuah sistem aplikasi yang digunakan untuk mengirim dan atau menerima SMS, dan biasanya digunakan pada aplikasi bisnis, baik untuk kepentingan broadcast promosi, servis informasi terhadap pengguna, penyebaran content produk / jasa dan lain lain.
(Implementasi untuk: Auto Reply, Pengiriman massal / broadcast message, Pengiriman terjadwal).
Pada praktek ini kita menggunakan library GAMMU untuk proses pengiriman SMS. Sesuai definisinya, Gammu adalah sebuah aplikasi cross-platform yang digunakan untuk menjembatani / mengomunikasikan antara database SMS Gateway dengan sms devices. Aplikasi Gammu berupa daemon yang berjalan secara background. Setiap saat, gammu memonitor sms devices dan database sms gateway. Saat ada sms masuk ke sms devices, maka gammu langsung memindahkannya ke dalam inbox dalam database sms gateway. Sebaliknya saat Aplikasi Pengirim SMS memasukkan sms ke dalam outbox dalam database sms gateway, maka gammu mengirimkannya melalui sms devices, dan memindahkan sms ke sentitem dalam database.
PRAKTIK GAMMU
DOnload library gammu dan extract di D:\setgammuauto cd D:\setgammuauto\bin
Terlebih dahulu ubah komuniaksi Port dan setting database pada file smsdrc user = root
password = pc = localhost
database = lp2msetgammuauto
Terlebih dahulu ubah komuniaksi Port dan setting database pada file gammurc device = com10:
connection = at115200 Tes koneksi
gammu identify
gammu sendsms TEXT 082111476069 -text "Apa kabar bro Adi" atau membuat service gammu:
gammu-smsd -c smsdrc -i gammu-smsd -s -c smsdrc
atau membuat service jika memakai nama: gammu-smsd -i -c smsdrc -n adiGammu gammu-smsd -s -c smsdrc -n adiGammu uninstall
www.lp2maray.com |021-22712148 | 0821-1147-6069 / 0858-9232-9521 | 4
IMPORT DATABASE
Buka folder .sql pada posisi : setgammuauto\share\doc\gammu\examples\sql, lalu import ke database tabel yang disertakan di dalamnya.
Tes Kirim pesan dengan cara memasukkan data ke databse: $kirimsms = mysql_query("insert into outbox
(InsertIntoDB,SendingDateTime,DestinationNumber,TextDecoded,SendingTimeOut,DeliveryReport,CreatorID) values (sysdate(),sysdate(),'082111476069',’Halo Apa kabar ',sysdate(),'yes','system')");
2. Telegram Gateway
Sebagai aplikasi pesan instan layaknya WhatsApp, Telegram dapat digunakan pengguna untuk berkirim pesan,
foto, dokumen, stiker, GIF, panggilan suara hingga panggilan video. Untuk fitur panggilan video, saat ini baru
tersedia di obrolan pribadi saja (one-on-one chat), bukan grup. Telegram juga memungkinkan pengguna untuk
membut grup dengan kapasitas anggota mencapai 200.000 orang. Di dalam grup tersebut juga sudah didukung
fitur admin, mention, balasan, tagar, serta berbagi/menerima dokumen mencapai 2 GB. Di samping itu, grup
Telegram juga sudah dibekali dengan alat moderasi sehingga memungkinkan admin grup dapat menghapus
pesan secara massal, mengontrol keanggotaan, dan menyematkan pesan penting.
Dalam kaitannya dengan Telegram Gateway, kita bisa memanfaatkan fitur Telegram bot didalamnya yang sudah
merupakan robot yang diprogram dengan berbagai perintah untuk menjalankan serangkaian instruksi yang
diberikan oleh pengguna. Bot ini hanyalah sebuah akun Telegram yang dioperasikan oleh perangkat lunak yang
memiliki fitur AI.
Bot Telegram dapat melakukan apa saja sesuai perintah (yang sudah tersedia). Bot telegram bisa digunakan
untuk melakukan pencarian, sebagai penghubung, pengingat, pengajar, pengintegrasi, dan lainnya.
Telegram bot berjalan tanpa perlu diinstal dan tanpa perlu nomor telepon. Mereka sudah berjalan di semua
platform yang mendukung Telegram. Mereka berjalan tanpa terlihat, sehingga tidak mengganggu pengguna.
Pengguna dapat berinteraksi dengan dengan bot Telegram dengan cara mengirimkan sebuah pesan atau baris
perintah tertentu.
Apa yang bisa dilakukan Telegram Bot?
Pihak Telegram memberikan kebebasan dan keterbukaan kepada pihak ketiga untuk dapat mengembangkan
Telegram bot baru.Telegram bot dinilai mampu memberikan sederet kemudahan dalam automatisasi aktivitas
penggunanya serta dapat digunakan sebagai wadah yang cocok untuk para programming yang ingin mengasah
kreativitasnya disini.
Para pengembang menciptakan banyak bot – bot baru yang diberi nama dengan selalu berakhiran ‘bot’ untuk
memberikan kemudahan kepada pengguna untuk mencari atau memanggil suatu bot tertentu. Contohnya
seperti @TriviaBot, @GitHub_Bot, dan lainnya.
Telegram bot juga dapat memberikan sebuah layanan berupa peringatan atau pemberitahuan mengenai
ramalan cuaca, kenaikan atau penurunan harga, melakukan penerjemahan, pemformatan, dan lainnya.
Dengan Telegram bot, kita juga bisa tetap terintegrasi dengan berbagai layanan eksternal seperti bot Gmail, bot
GIF, bot Wiki, bot musik, bot Youtube, dan berbagai layanan eksternal lainnya.
Telegram bot adalah fitur canggih dari Telegram yang tidak dimiliki di banyak aplikasi chatting lain. Para
pengguna Telegram dapat dengan bebas menggunakan fitur tersebut untuk meng-automatisasi segala
aktivitasnya di Telegram.
www.lp2maray.com |021-22712148 | 0821-1147-6069 / 0858-9232-9521 | 5
Bagi para pengembang, Telegram bot menjadi salah satu cara mereka untuk melatih skill programming dan ide
kreatif mereka untuk menciptakan bot
– bot baru yang memiliki manfaat dan memberikan kemudahan bagi
pengguna lain.
3.Contoh Aplikasi
Link Belajar: https://youtu.be/-fpCvG8ZleU https://youtu.be/PpdXOF2jV1w +++++++++++++++++++++++++++++++++ PESAN SPONSOR: +Free RP.0:• Modul Materi Webinar
Video Tutorial cara menjalankan aplikasi: Engine Source Code Praktek Webinar
Sertifikat Digital Kepesertaan akan diberikan kepada
yang telah berhasil mempraktekkan materi webinar ini berupa link youtube praktek pengujian Bot Telegram Group kepada pemateri / admin penyelenggara max 1x24jam
+Berbayar Rp.300K:
• Modul Materi Detail
Sertifikat Digital Kepesertaan
Video Hasil Record Zoom Webinar dari Awal sd akhir
Source Code Lengkap Bahan Praktek Webinar (Library, database code, Tutorial Detail) Video Tutorial / Pembelajaran Langkah-Langkah Di atas
Source Code Aplikasi Studi Kasus Komunikasi Data di atas Video Tutorial / Pembelajaran Aplikasi Studi Kasus di atas +Training Online Selama Pandemi (ASK)
www.lp2maray.com |021-22712148 | 0821-1147-6069 / 0858-9232-9521 | 6 materi tugas pabrik/perusahaan/kantor/studi kasus
+Kelas Bimbingan/ Private Onsite/di Tempat Kursus LP2MARAY semua materi kursus / silabus bisa di cek pada
www.lp2maray.com
Lampiran database GAMMUCREATE TABLE `daemons` ( `Start` text NOT NULL, `Info` text NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8; CREATE TABLE `gammu` (
`Version` integer NOT NULL default '0' ) ENGINE=MyISAM DEFAULT CHARSET=utf8; INSERT INTO `gammu` (`Version`) VALUES (13);
CREATE TABLE `inbox` (
`UpdatedInDB` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `ReceivingDateTime` timestamp NOT NULL default '0000-00-00 00:00:00',
`Text` text NOT NULL,
`SenderNumber` varchar(20) NOT NULL default '', `Coding`
enum('Default_No_Compression','Unicode_No_Compression','8bit','Default_Compression','Unicode_Compression') NOT NULL default 'Default_No_Compression',
`UDH` text NOT NULL,
`SMSCNumber` varchar(20) NOT NULL default '', `Class` integer NOT NULL default '-1',
`TextDecoded` text NOT NULL default '',
`ID` integer unsigned NOT NULL auto_increment, `RecipientID` text NOT NULL,
`Processed` enum('false','true') NOT NULL default 'false', PRIMARY KEY `ID` (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; CREATE TABLE `outbox` (
`UpdatedInDB` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `InsertIntoDB` timestamp NOT NULL default '0000-00-00 00:00:00',
`SendingDateTime` timestamp NOT NULL default '0000-00-00 00:00:00', `SendBefore` time NOT NULL DEFAULT '23:59:59',
`SendAfter` time NOT NULL DEFAULT '00:00:00', `Text` text,
`DestinationNumber` varchar(20) NOT NULL default '', `Coding`
enum('Default_No_Compression','Unicode_No_Compression','8bit','Default_Compression','Unicode_Compression') NOT NULL default 'Default_No_Compression',
`UDH` text,
`Class` integer default '-1',
`TextDecoded` text NOT NULL default '',
`ID` integer unsigned NOT NULL auto_increment, `MultiPart` enum('false','true') default 'false', `RelativeValidity` integer default '-1',
`SenderID` varchar(255),
`SendingTimeOut` timestamp NULL default '0000-00-00 00:00:00', `DeliveryReport` enum('default','yes','no') default 'default',
www.lp2maray.com |021-22712148 | 0821-1147-6069 / 0858-9232-9521 | 7 `CreatorID` text NOT NULL,
PRIMARY KEY `ID` (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE INDEX outbox_date ON outbox(SendingDateTime, SendingTimeOut); CREATE INDEX outbox_sender ON outbox(SenderID);
CREATE TABLE `outbox_multipart` ( `Text` text,
`Coding`
enum('Default_No_Compression','Unicode_No_Compression','8bit','Default_Compression','Unicode_Compression') NOT NULL default 'Default_No_Compression',
`UDH` text,
`Class` integer default '-1', `TextDecoded` text default NULL,
`ID` integer unsigned NOT NULL default '0', `SequencePosition` integer NOT NULL default '1', PRIMARY KEY (`ID`, `SequencePosition`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; CREATE TABLE `pbk` (
`ID` integer NOT NULL auto_increment, `GroupID` integer NOT NULL default '-1', `Name` text NOT NULL,
`Number` text NOT NULL, PRIMARY KEY (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `pbk_groups` ( `Name` text NOT NULL,
`ID` integer NOT NULL auto_increment, PRIMARY KEY `ID` (`ID`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; CREATE TABLE `phones` (
`ID` text NOT NULL,
`UpdatedInDB` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `InsertIntoDB` timestamp NOT NULL default '0000-00-00 00:00:00',
`TimeOut` timestamp NOT NULL default '0000-00-00 00:00:00', `Send` enum('yes','no') NOT NULL default 'no',
`Receive` enum('yes','no') NOT NULL default 'no', `IMEI` varchar(35) NOT NULL,
`Client` text NOT NULL,
`Battery` integer NOT NULL DEFAULT -1, `Signal` integer NOT NULL DEFAULT -1, `Sent` int NOT NULL DEFAULT 0, `Received` int NOT NULL DEFAULT 0, PRIMARY KEY (`IMEI`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE `sentitems` (
`UpdatedInDB` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `InsertIntoDB` timestamp NOT NULL default '0000-00-00 00:00:00',
`SendingDateTime` timestamp NOT NULL default '0000-00-00 00:00:00', `DeliveryDateTime` timestamp NULL,
`Text` text NOT NULL,
`DestinationNumber` varchar(20) NOT NULL default '', `Coding`
enum('Default_No_Compression','Unicode_No_Compression','8bit','Default_Compression','Unicode_Compression') NOT NULL default 'Default_No_Compression',
www.lp2maray.com |021-22712148 | 0821-1147-6069 / 0858-9232-9521 | 8 `UDH` text NOT NULL,
`SMSCNumber` varchar(20) NOT NULL default '', `Class` integer NOT NULL default '-1',
`TextDecoded` text NOT NULL default '', `ID` integer unsigned NOT NULL default '0', `SenderID` varchar(255) NOT NULL,
`SequencePosition` integer NOT NULL default '1', `Status`
enum('SendingOK','SendingOKNoReport','SendingError','DeliveryOK','DeliveryFailed','DeliveryPending','DeliveryUnknown' ,'Error') NOT NULL default 'SendingOK',
`StatusError` integer NOT NULL default '-1', `TPMR` integer NOT NULL default '-1',
`RelativeValidity` integer NOT NULL default '-1', `CreatorID` text NOT NULL,
PRIMARY KEY (`ID`, `SequencePosition`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE INDEX sentitems_date ON sentitems(DeliveryDateTime); CREATE INDEX sentitems_tpmr ON sentitems(TPMR);
CREATE INDEX sentitems_dest ON sentitems(DestinationNumber); CREATE INDEX sentitems_sender ON sentitems(SenderID);
DELIMITER //
CREATE TRIGGER inbox_timestamp BEFORE INSERT ON inbox FOR EACH ROW
BEGIN
IF NEW.ReceivingDateTime = '0000-00-00 00:00:00' THEN SET NEW.ReceivingDateTime = CURRENT_TIMESTAMP(); END IF;
END;//
CREATE TRIGGER outbox_timestamp BEFORE INSERT ON outbox FOR EACH ROW
BEGIN
IF NEW.InsertIntoDB = '0000-00-00 00:00:00' THEN SET NEW.InsertIntoDB = CURRENT_TIMESTAMP(); END IF;
IF NEW.SendingDateTime = '0000-00-00 00:00:00' THEN SET NEW.SendingDateTime = CURRENT_TIMESTAMP(); END IF;
IF NEW.SendingTimeOut = '0000-00-00 00:00:00' THEN SET NEW.SendingTimeOut = CURRENT_TIMESTAMP(); END IF;
END;//
CREATE TRIGGER phones_timestamp BEFORE INSERT ON phones FOR EACH ROW
BEGIN
IF NEW.InsertIntoDB = '0000-00-00 00:00:00' THEN SET NEW.InsertIntoDB = CURRENT_TIMESTAMP(); END IF;
IF NEW.TimeOut = '0000-00-00 00:00:00' THEN SET NEW.TimeOut = CURRENT_TIMESTAMP(); END IF;
END;//
CREATE TRIGGER sentitems_timestamp BEFORE INSERT ON sentitems FOR EACH ROW
BEGIN
www.lp2maray.com |021-22712148 | 0821-1147-6069 / 0858-9232-9521 | 9 SET NEW.InsertIntoDB = CURRENT_TIMESTAMP();
END IF;
IF NEW.SendingDateTime = '0000-00-00 00:00:00' THEN SET NEW.SendingDateTime = CURRENT_TIMESTAMP(); END IF;
END;// DELIMITER ;