Cara Mudah Membuat Bot di Line

To be clear, tulisan ini bertujuan untuk memberikan petunjuk pembuatan line bot dengan cara yang paling mudah (menurut saya) dan penjelasan yang sejelas-jelasnya

Kalau kamu lagi buru-buru dan pengen tau langsung implementasinya silahkan langsung scroll kebawah ya di bagian “Implementasi Line Bot”, kalau butuh penjelasannya silahkan scroll-up lagi 😉

document.querySelector('button').onclick = function(e){
document.querySelector('p').style.color = 'blue'
}
Cara Kerja Line Bot

Implementasi Line Bot

Create or Choose New Provider
Create New Channer
Create New Channel Messaging API
Confirmation Make a Line Bot
After Create a Kalkulator Helmi Line Bot
Install versi LTS (saat ini 10.16.0)
Kondisi di code editor (vscode) saat setelah membuat folder dan satu file index.js
$ npm install bottender
const { LineBot } = require("bottender");
const { createServer } = require("bottender/express");
const bot = new LineBot({
// ubah ke access token dan channelSecret dibawah, sesuai dengan yang ada di line console
accessToken: "ISI_DENGAN_ACCESS_TOKEN_DARI_LINE_CONSOLE",
channelSecret: "ISI_DENGAN_CHANNEL_SECRET_DARI_LINE_CONSOLE"
});
bot.onEvent(async context => {
// 1. Pengecekan apakah bot menerima chat berupa text
if (context.event.isText) {
// 2. Ambil value text yang dikirim oleh user, simpan di variabel receivedMessage
const receivedMessage = context.event.text;
// 3. Pengecekan apakah user mengirim 2 pasang string dengan spasi
// Contoh valid text: 1 3 | 4 2 | 10 23
if (receivedMessage.split(" ").length === 2) {
// 4. Menyimpan hasil split. Kalau messagenya: "1 3" splittedText akan berisi ["1", "3"]
const splittedText = receivedMessage.split(" ");
// 5. Ambil 2 angka yang masih dalam bentuk string, sekaligus ubah menjadi Number (integer)
const first = Number(splittedText[0]);
const second = Number(splittedText[1]);
// 6. Lakukan proses penjumlahan
const sumResult = first + second;
// 7. Balas pesan user dengan hasil penjumlahan 2 angka yang dikirim
await context.replyText(sumResult);
} else {
// 8. Beri respon kepada user jika format pesan yang diberikan tidak sesuai
await context.replyText(
"Maaf pesanmu tidak sesuai format, contoh yang benar: 1 3 atau 10 12"
);
}
}
});
const server = createServer(bot);server.listen(process.env.PORT || 5000, () => {
console.log("server is running on 5000 port...");
});
Channel Secret
Channel Access Token
$ npm init
npm init demonstration
{
"name": "kalkulator-line-bot",
"version": "1.0.0",
"description": "Kalkulator",
"main": "index.js",
"dependencies": {
"bottender": "^0.15.17"
},
"devDependencies": {},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node index.js"
},
"author": "Helmi Satria",
"license": "ISC"
}

Ini hanya dilakukan sekali saat setelah install git.

$ git config --global user.email “satriahelmi@gmail.com"
$ git config --global user.name “Helmi Satria"
Demo Setelah membuat sebuah repository di github
.gitignore
$ git add .
$ git commit -m 'upload pertama project ke github'
$ git push
Upload all files to github
$ npm install -g heroku
Hasil Setelah download heroku
$ heroku login
Heroku login
Heroku Login di Browser
Sukses Login Heroku
$ heroku create kalkulator-line-bot
Hasil Setelah Create App Berhasil
$ git push heroku master
Webhook URL
Auto-reply dan Greeting messages disabled

--

--

Freelance Fullstack Developer. Bootstrapping Online Business. https://helmisatria.com

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store