No description, website, or topics provided.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
public
.gitignore
README.md
beacon.js
clova.js
index.ejs
insert.js
intro.js
items.ejs
items.js
items_server.js
line-pay.js
message_object.js
package-lock.json
package.json
select.js
server.js

README.md


Messaging APIの利用

LINE Developersから新しいbotを作成します。

「今すぐ始めよう」 > 「プロバイダの選択」 > 「新規チャネル作成」 をします。 image.png


初期設定

  1. メールアドレスの登録
  2. webhookを利用
  3. アクセストークンの発行
  4. 自動応答メッセージ/友だち追加時あいさつ を利用しないに変更
  5. Channel Secret/アクセストークンをメモ screencapture-developers-line-me-console-channel-1598664616-basic-2018-08-05-16_45_00.png

npmの設定

npm init -y
npm i --save @line/bot-sdk express dotenv
touch server.js

serverの中身

'use strict';

const express = require('express');
const line = require('@line/bot-sdk');
const PORT = process.env.PORT || 3000;

const config = {
    channelSecret: process.env.CHANNEL_SECRET,
    channelAccessToken: process.env.CHANNEL_ACCESS_TOKEN
};

const app = express();

app.post('/webhook', line.middleware(config), (req, res) => {
    console.log(req.body.events);
    Promise
      .all(req.body.events.map(handleEvent))
      .then((result) => res.json(result));
});

const client = new line.Client(config);

function handleEvent(event) {
  if (event.type !== 'message' || event.message.type !== 'text') {
    return Promise.resolve(null);
  }

  return client.replyMessage(event.replyToken, {
    type: 'text',
    text: event.message.text //実際に返信の言葉を入れる箇所
  });
}

app.listen(PORT);
console.log(`Server running at ${PORT}`);

環境変数の設定

.envファイルに設定ファイルを追記します。

CHANNEL_SECRET=""
CHANNEL_ACCESS_TOKEN=""

ngrokでhttps通信を可能にします。

ngrok http 3000

参考文献