LambdaでLINE Messaging APIを試したコードを書き残しておきます。
試したことがない場合は LINE側の設定方法 で設定できると思います。
ここでは試しに何を入力してもHelloを返すコードを書きました。
返すテキストはindex.jsの"text": "Hello"で設定しています。
アクセストークンは token という key で環境変数に入れて process.env.token で呼び出しています。
もっといろいろ試したい場合
LINE BOTでできることをGoogle Apps Scriptで試した一覧
(Google Apps Scriptで試した一覧です)
Lambda Function
index.js/************************************
require('https')
************************************/
var https = require('https');
/************************************
exports.handler
************************************/
exports.handler = function(event) {
/************************************
LINEに投げ返すデータ
************************************/
var data = {
"replyToken": JSON.parse(event.body).events[0].replyToken,
"messages": [{
"type": "text",
"text": "Hello"
}]
};
var postData = JSON.stringify(data);
console.log(postData);
/************************************
options
************************************/
var options = {
"method": 'POST',
"host": 'api.line.me',
"path": '/v2/bot/message/reply',
"headers": {
"Content-type": "application/json",
'Content-Length': Buffer.byteLength(postData),
"Authorization": " Bearer " + process.env.token
}
};
console.log(options);
/************************************
https.request
************************************/
var req = https.request(options, function(res) {
console.log('statusCode: ' + res.statusCode);
console.log('headers: ' + JSON.stringify(res.headers));
res.setEncoding('utf8');
res.on('postData', function(chunk) {
console.log("chunk");
});
req.on('error', function(err) {
console.log('message: ' + err.message);
});
});
req.write(postData);
req.end();
};
|
関連記事
- LINE BOTの作り方
- LINE BOTでできることをGoogle Apps Scriptで試した一覧
- AWS LambdaとAPI Gatewayを使ってみる
- AWS Lambdaで環境変数を入力する場所
参考
Messaging APIを利用するには
http.request(options[, callback])
http.request(url[, options][, callback])
https://nodejs.org/api/http.html#http_http_request_options_callback
Messaging APIを利用するには
http.request(options[, callback])
http.request(url[, options][, callback])
https://nodejs.org/api/http.html#http_http_request_options_callback
