プログラミングができなくても作れるTwitter botの作り方
高度な設定:特定の単語を話しかけられたときに特定の単語を返す
スポンサード リンク
高度な設定:特定の単語を話しかけられたときに特定の単語を返す
この機能を使うには
- まず、reply_random.phpの「高度な設定」の部分で、
$useReplyPattern = TRUE;と設定する - 次に、reply_pattern.phpの中に、反応する単語とその返事の組み合わせを書き込む
の二つの設定が必要です。
この二つを設定するとreply_random.phpからreply_pattern.phpを呼び出して実行します。reply_pattern.phpを直接実行する必要はありません。
reply_pattern.phpの設定の仕方
ここではPHPファイルを編集してもらうことになります。PHPがよく分からなくても、あらかじめ設定されているサンプルの真似をして編集すれば難しくないと思います。
reply_pattern.phpは初期状態では下のようになっています。サンプルを参考にして同じように書いてみてください
<?php
$reply_pattern = array(
//「おはよ」を含む発言(「おはよ」「おはよう」「おはよー」など)を受け取ると「おはようございます、御主人様」もしくは「Good Morning, Master.」と返すサンプルです
"おはよ"=> array(
"おはようございます、御主人様",
"Good morning, master.",
),
//「今日の運勢」を含む発言を受け取ると6種類の中からランダムな返答を返すサンプルです
"今日の運勢"=> array(
"大吉",
"中吉",
"小吉",
"末吉",
"吉",
"凶",
),
//「こんにちは」「こんにちわ」「こんちは」「こんちわ」を含む発言を受け取ると「こんにちはこんにちは!」と返す正規表現のサンプルです
"こん(に)?ち[はわ]"=> array(
"こんにちはこんにちは!",
),
//「会話終了」を含む発言を受け取るとリプライを返さなくするサンプルです
"会話終了"=> array(
"[[END]]",
),
);
編集のポイント
- 反応する単語を「おはよ」に設定すると、「おはよ」にも「おはよう」にも「おはよー」にも反応します。「おはよう」に設定すると「おはよー」には反応しません。できるだけ短めに設定するのがポイントかも。
- 「こん(に)?ち[はわ]」という書き方は正規表現というものです。正規表現を使うといろいろな複雑なパターン反応ができるようになります。このスクリプトではPHPの正規表現に対応しています(参照→正規表現/PHP入門)。
- .+?*()などの特定の記号を「正規表現の記号としてでなく」記号そのままとしてパターンマッチさせたいときは、記号の前に\を付けてください。.は\.となります。/ではないので注意してください。
- PHPファイルでは//で始まる行はコメントとして扱われて動作に影響しません。自分用のメモなどは//のあとに書くと便利です
- PHPファイルを編集するときは、発言させたい文章以外の部分では、空白やコンマやダブルクォーテーションマークなど、必ず全角でなく半角を使ってください。特に全角スペースは入力してしまうと見落としやすいので注意が必要です。
- PHPファイルでは、インデント(タブや空白による字下げ)は動作に影響しません。見やすくするために入れているだけです。ただし全角スペースが混じっているとエラーになるのでご注意!
- PHPファイルの実行でエラーが出るときは、とりあえず文の最後のコンマやセミコロンを忘れてないかチェックしてみましょう。
スポンサード リンク