LINE Bot + Rinna API 連携したがLINEの返信がこない
解決したいこと
LINE Bot + Rinna API 連携しましたがLINEの返信がこないので返信できるようにしたいです。
LINE botとRinna APIで雑談できるようなチャットボットを作成しようと考えています。
該当するソースコード
ソースコードを入力
// LINE Bot + Rinna API 連携の Google Apps Script Code
function doPost(e) {
try {
var lineData = JSON.parse(e.postData.contents);
var userMessage = lineData.events[0].message.text;
// LINEからのメッセージをログに出力
Logger.log('LINE Message Received:', JSON.stringify(lineData));
// りんな へのリクエストと LINE への応答
var makeCCEResponse = makeCCERequest(userMessage);
replyToLINE(lineData.events[0].replyToken, makeCCEResponse);
} catch (error) {
Logger.log('Error in doPost:', error.message);
console.log(error.message);
}
}
function replyLine(replyToken, replyMessage) {
var url = "https://api.line.me/v2/bot/message/reply";
var headers = {
"Content-Type": "application/json",
"Authorization": "Bearer ********"
};
var data = {
"replyToken": replyToken,
"messages": [
{
"type": "text",
"text": replyMessage
}
]
};
var options = {
"method": "post",
"headers": headers,
"payload": JSON.stringify(data)
};
UrlFetchApp.fetch(url, options);
}
function makeCCERequest(rawInput, outputLength = 25) {
var url = "https://api.rinna.co.jp/models/cce";
var headers = {
"Content-Type": "application/json",
"Ocp-Apim-Subscription-Key": "**********" // 主キーを使用しています
};
var data = {
"rawInput": "rawInput",
"outputLength": "outputLength"
};
var options = {
"method": "post",
"headers": headers,
"payload": JSON.stringify(data),
"muteHttpExceptions": true
};
var response = UrlFetchApp.fetch(url, options);
if (response.getResponseCode() == 200) {
return JSON.parse(response.getContentText());
} else {
console.error("Error " + response.getResponseCode() + ": " + response.getContentText());
return null;
}
}