ツイッターにて稼働させているかわいいあかねちゃんbotの内容をこれまできちんと明文化していなかったため、botをフォローしてくださっている方への説明も兼ねての概要記事になります。
恒常ツイートの挙動
30分に1回、公式のゲーム内テキスト・ゲーム内ボイス・CD内セリフの中に存在する文言をランダムにツイートします。
ツイート候補の一覧は下記のスプレッドシートに記載しています。
恒常ツイート一覧
テキストの追加は不定期に行っています。
リプライの挙動
ホームTLに存在するツイートのうち、特定の文言が含まれるツイート(リプライ・RTを除く)に対してリプライを行います。
リプライの内容はゲーム内に存在しないオリジナルの文章も含まれます。
ホームTLで反応する文言一覧は公開しませんが、ホームTL等を参考に「こういう拾い方をしたら面白いかな」というものを私のエゴで設定しています。
なお、受け取ったリプライに対する返答も実装していますが、
返答することができない場合、いいねを行います。
いいねの挙動
ホームTLに存在するツイートのうち、リプライ対象のツイート、
または返答することができないリプライに対していいねを行います。
現在数字のみのツイートに対してもいいねをしてしまいますが、バグになります。
RTの挙動
RTについては実装していないため原則行いません。行う場合は手動になります。
明らかに不自然なRTを行っていた場合、乗っ取りの可能性があるためご連絡いただけると助かります。
連絡先(Twitter)
フォローの挙動
フォロー周りの挙動は全て手動になります。
1日に最低1回は目視でフォローチェックを行うようにしています。
実装について
実装は全てGASで行っており、他の外部サービスは使用していません。
完全無料のサーバレス開発でどこまでできるかという試験的な遊びのつもりだったのですが、
想定外に多くの方にフォローしていただいたため、ソースコードのリファクタリング後移行を行う予定です。
でもGASはスプレッドシートを擬似DB的に使えるのが便利なんですよね。
移行する場合はDB構築とデータアクセスロジックの改修が必要になるので、移行はしばらく先になりそうです。面倒。
余談
アカウントの名前ですが、検索避けのため意図的にひらがなにしています。
「かわいい」は、あかねちゃんがかわいいので付けました。
本当は「bot」すらも取りたいのですが、あらぬ誤解を呼ぶことは意図していないので止む無く付けたままにしています。
マルコフ連鎖を用い、よりリアルな人間の挙動に近付けたbotをMastodonにて試験的に稼動させていますが、まだまだ言葉遣いなどの制御が難しいですね。
迷惑が掛からないよう、自鯖で遊ばせています。こちらもよろしくお願いします。
以上