Chatty Stone Bot
つぶやきなど
最終更新:
chattystone
-
view
つぶやきやリプライといった発言に関する設定や、自動フォローの設定を行います。設定を終えたら「保存」ボタンをクリックするのを忘れずに。
自動フォロー
「フォロワーを自動でフォローし返す」にチェックを入れると、bot をフォローしてくれた人を自動でフォローし返します。
ただし、フォロワーは最近の数十人までしかチェックしていません。一気にフォロワーが増えた場合や、途中からこのオプションを有効にした場合は、漏れが出ますので、その場合は手動でフォローして下さい。
定型句のつぶやき
定型句辞書に登録してある定型句をつぶやくかどうかの設定を行います。
- 定型句をつぶやく(辞書順)……bot を駆動するたびに、定型句辞書の内容を順につぶやきます(1 回の駆動につき 1 つぶやき)。辞書の終わりに到達したら、次回は辞書の先頭に戻ります。
- 定型句をつぶやく(ランダム)……定型句辞書の中からランダムに選んでつぶやきます。
- 定型句をつぶやかない……定型句のつぶやきに関する動作をスキップします。
メンションへのリプライ
「メンションへのリプライを返す」にチェックを入れると、@bot_name で話しかけられた場合に、リプライ辞書の内容に従って、反応すべき単語が含まれていた場合にレスを返します。
フォロー状況に関係なく、@ で話しかけられれば反応ができます。
【 例 】
- A さん「@bot_name ねぇねぇ、来週温泉行こうよ!」
- bot「@a_san いいね! 草津に行きたいな。」
タイムラインへのリプライ
「タイムラインへのリプライを返す」にチェックを入れると、bot がフォローしている人たちのつぶやきに対して、TL リプライ辞書の内容に従って、反応すべき単語が含まれていた場合にレスを返します。
メンションへのリプライとは異なり、話しかけられていない場合に反応します。ただし、bot がフォローしている人の発言のみにしか反応できません(フォロー「されているか」は関係ありません)。
【 例 】
- フォローしている B さん「どこか近場で、気軽に行ける温泉ないかなぁ。」
- bot「@b_san 源泉かけ流しの、いこいの湯がオススメ http://www.ikoinoyu.com」
タイムラインのリツイート
「タイムラインをリツイートする」にチェックを入れると、bot がフォローしている人たちのつぶやきに対して、TL リツイート辞書の内容に従って、反応すべき単語が含まれていた場合につぶやきをリツイートします(コメント付き非公式リツイート)。
タイムラインへのリプライと同様、話しかけられていない場合に反応します。また、bot がフォローしている人の発言のみにしか反応できません(フォロー「されているか」は関係ありません)。
【 例 】
- フォローしている C さん「温泉に浸かった後はやっぱりバナナ牛乳だよな!」
- bot「コーヒー牛乳派の敵発見! 囲め! RT @c_san: 温泉に浸かった後はやっぱりバナナ牛乳だよな!」
特定日辞書
Chatty Stone Bot では、特定日(例えば正月)専用の辞書を用意することで、その日の発言のバリエーションを増やすことができます。
この設定は、定型句のつぶやき、メンションへのリプライ、タイムラインへのリプライ、タイムラインのリツイートのいずれにも適用されます。
- 特定日辞書がある日は、特定日辞書のみを用いる……通常の辞書は使わずに、特定日辞書のみを使います。特定日辞書が無い場合は、通常の辞書を使います。
- 特定日辞書がある日は、特定日辞書と通常辞書の両方を用いる……通常の辞書に加えて、特定日辞書も使います。パターンマッチングの順序は、特定日の辞書が優先となりますので、通常の辞書と特定日辞書の両方に反応できる場合は、特定日辞書に従ったつぶやきをします。
- 特定日辞書を用いない……特定日辞書があっても無視します。
連続リプライ数制限
bot 同士の無限ループを回避するために、同じ相手に対しての連続リプライ数に制限をかけることができます。
Chatty Stone Bot は、前回までの駆動時に、その相手に対して何回発言をしたかを記録しています。前回までの回数と今回の回数の合計が制限を超えた場合は、発言しません。また、例えば、1 回の駆動でメンションリプライとタイムラインリプライの 2 つで同じ相手に発言した場合は、発言回数 2 とカウントされます。
発言を行わなかった場合は、カウントがリセットされて、再びリプライを返せるようになります。
【 例(制限 2 回の場合) 】
- 1 回目の駆動
- bot D が「みなさんこんにちは~」と発言していた
- 自 bot「@d_san こんにちは!」と発言→発言回数 1 回
- 2 回目の駆動
- bot D が挨拶を返してきていた「@bot_name こんにちは~」
- 自 bot「@d_san こんにちは!」と挨拶を返した→発言回数 2 回
- 3 回目の駆動
- bot D が挨拶を返してきていた「@bot_name こんにちは~」
- bot D に向けて発言しようとしたが、制限オーバーなので発言を撤回→ここで一連のループが終了→発言回数はリセット
- 4 回目の駆動
- bot D が「みなさんおやすみなさい~」と発言していた
- 自 bot は発言回数がリセットされているので「@d_san おやすみなさい!」とあらたな発言が可能になった→発言回数 1 回
相手の bot も Chatty Stone Bot だった場合、こちらも相手も両方無限ループ防止しますので、確実に無限ループを防止できます。
また、相手の bot と駆動間隔が同じ場合、もしくは、相手の bot の方が駆動間隔が短い場合は、相手の bot に無限ループ防止の機能が無くても、こちらの機能だけで無限ループを回避できます。
しかし、相手に無限ループ防止機能が無くて、かつ、相手の bot の方が駆動間隔が長い場合は、相手に発言の機会が無い間に発言回数がリセットされるにもかかわらず、後から相手がこちらの挨拶に反応して挨拶を返してくるので、(時間的にはゆるやかな間隔になるものの)無限ループが続くことになりますのでご注意下さい。これをも防ぐために、ありがちな発言パターンに対しては「確率抑止」の機能を併用することをお勧めします。
RSS 更新情報補足
「RSS の更新情報を補足してつぶやく」にチェックを入れると、RSS を読み込み、内容に更新があった場合は更新情報をつぶやくようになります。
RSS の詳細設定はRSS 更新情報捕捉で行います。