##概要
今日のQiitaの記事ランキングをみていたら湯婆婆が座巻していたので自分も実装してみました。
Nemesisさんの下記記事参照です
https://qiita.com/Nemesis/items/c7192a7c510788d2cba2
##湯婆婆bot
botはこちらのurlから追加できます
https://lin.ee/qU7EpOf
##内容
内容としてはまず最初の挨拶メッセージで湯婆婆に
『契約書だよ。そこに名前を書きな。』と言われます
素直に名前を返すと一文字になった自分の新しい名前が返ってくるというものです
##コード
//LINE Messaging APIのチャネルアクセストークン
const CHANNEL_ACCESS_TOKEN = "チャンネルトークン";
const LINE_ENDPOINT = 'https://api.line.me/v2/bot/message/reply';
//LINE Messaging APIからPOST送信を受けたときに起動する
// e はJSON文字列
function doPost(e){
if (typeof e === "undefined"){
//eがundefinedの場合動作を終了する
return;
}
//JSON文字列をパース(解析)し、変数jsonに格納する
var json = JSON.parse(e.postData.contents);
var event = JSON.parse(e.postData.contents).events[0];
//受信したメッセージ情報を変数に格納する
var replyToken = json.events[0].replyToken; //reply token
var messageId = json.events[0].message.id; //メッセージID
var messageType = json.events[0].message.type; //メッセージタイプ
var userId = event.source.userId;
//返信するためのトークン取得
var replyToken = json.events[0].replyToken;
var nameOrigin = json.events[0].message.text;
var length = nameOrigin.length;
var rundomNum = Math.floor(Math.random()*length);
var name = json.events[0].message.text.slice(rundomNum -1,rundomNum);
var message = "フン。" + nameOrigin +"というのかい。贅沢な名だねぇ。"
var message2 = "今からお前の名前は " + name + "だ。いいかい、" + name + " だよ。分かったら返事をするんだ、 " + name + "!!";
UrlFetchApp.fetch(LINE_ENDPOINT, {
'headers': {
'Content-Type': 'application/json; charset=UTF-8',
'Authorization': 'Bearer ' + CHANNEL_ACCESS_TOKEN,
},
'method': 'post',
'payload': JSON.stringify({
'replyToken': replyToken,
'messages': [
{
'type': 'text',
'text': message,
},
{
'type': 'text',
'text': message2,
},
],
}),
});
}
##コードの詳細
内容としてはユーザーが入力した内容の文字数の長さを取得し、
その長さの範囲内で乱数を一個生成します
その(乱数-1,乱数)を範囲として文字列をスライスします
そうしたら新しい名前の出来上がりです!
##最後に
特に自分が始めたわけではないので呼びかけをしてもいいものなのかはわからないですが、是非他の方法で実装した他の記事を読んでみたいので開発のご検討と記事の作成をお願いします!
##最後に2
現在私は個人事業主として下記のサイトの事業を取り進めております。(サイトはまだ作成して間もないのでまだガタガタです、、)
ホテルの自動チェックインのラインでの実装や、rpaの制作をメインに進めています。
作業の自動化等にご興味があれば是非ご連絡ください。何卒よろしくお願いいたします。
https://senren.work/