Facebook Messengerボットを構築するには、Messenger BotにはFlow Builderがあり、これはMessenger Botのアドオンで、視覚的なドラッグ&ドロップのチャットボットエディタです。Flow Builderを使用すると、要素をドラッグ&ドロップして追加データを要素に加え、要素同士を接続することで、非常に簡単にFacebook Messengerボットを構築できます。
最近、Messenger Bot Flow Builderに新しい要素が追加されました。それは条件と呼ばれる要素です。条件要素を使用すると、条件とルールに基づいたメッセンジャーボットを構築でき、人々とインテリジェントに会話することができます。たとえば、ユーザーが男性の場合、ボットは彼を「Mr.」と呼びます。一方、ユーザーが女性の場合、ボットは彼女を「Miss」または「Mrs.」と呼びます。また、システムが特定のユーザーのメールアドレスをすでに持っている場合、ボットはそのユーザーにシステムがすでにメールアドレスを持っていることを通知します。逆に、システムが特定のユーザーのメールアドレスを持っていない場合、ボットはユーザーにメールアドレスを尋ねます。
この記事では、Flow Builderで条件とルールに基づいたメッセンジャーボットを構築する方法を紹介します。
条件とルールに基づいたメッセンジャーボットを構築するには、条件と呼ばれる要素を使用する必要があります。これは条件付き会話のエントリーポイントとして機能します。
条件とルールに基づいたメッセンジャーボットを構築する方法を見てみましょう。
まず、ビジュアルフロービルダーのエディターに移動します。次に、トリガー要素をエディターに追加します。その後、トリガー要素をダブルクリックしてデータを追加します。すぐに、エディターの左側にフォームフィールドが表示されます。ここで、私たちが構築するボットのキーワードとして「condition」を入力します。次に、okボタンをクリックします。ユーザーがメッセンジャーに「condition」と書くと、ボットが起動します。
次に、トリガー要素をスタートボットフローに接続します。次に、スタートボットフローをダブルクリックすると、エディターの左側にフォームフィールドが表示されます。タイトルフィールドにボットのタイトルを入力します。例えば、タイトルフィールドに「condition demo」と書きます。他のフィールドは任意です。空白のままにしておくことができます。次に、okボタンをクリックします。
次に、条件要素をドラッグアンドドロップで追加し、スタートボットフローに接続します。次に、条件要素をダブルクリックします。すぐに、エディターの左側にフォームフィールドが表示されます。フォームフィールドの上部には、2つのラジオボタン - All Match と Any Match が表示されます。そして、All Match または Any Match を選択する必要があります。All Match を選択した場合、すべての条件が真である必要があることに注意してください。対照的に、Any Match を選択した場合、少なくとも1つの条件が真である必要があります。
1つの条件のみを設定するため、どちらかを選択できます。
次に、システムフィールドとカスタムフィールドが表示されます。システムフィールドとカスタムフィールドの両方には、条件を設定するための初期フィールドが含まれています。もちろん、システムフィールドとカスタムフィールドの横にあるプラスサインをクリックすることで、条件を設定するためのフィールドを追加できます。もちろん、削除ボタンをクリックすることで、余分な条件を削除することもできます。
ユーザーが男性か女性かを確認し、それに応じてメッセージを送信する条件を設定しましょう:
変数フィールドをクリックすると、さまざまな変数のドロップダウンメニューが表示されます。今、変数を選択する必要があります。同様に、演算子フィールドから演算子を選択し、値フィールドから値を選択する必要があります。
変数として性別を選択し、演算子として等しい(=)を選択し、値として男性を選択します。今、条件要素にデータを挿入するためにokボタンをクリックします。
条件要素には、2つのソケット - 真と偽が表示されます。条件が真と評価される場合、真のソケットに接続されたメッセージが送信されます。逆に、条件が偽と評価される場合、偽のソケットに接続されたメッセージが送信されます。
さて、テキスト要素を追加し、それを真と呼ばれるソケットに接続します。そして、男性ユーザーに送信されるメッセージとして、ユーザーをMr.と呼ぶメッセージを書きます。
同様に、別のテキスト要素を追加し、それを偽のソケットに接続して、ユーザーをMiss/Mrsと呼ぶメッセージを書きます。これは女性ユーザーに送信されるメッセージです。
ボタン要素を追加し、両方のテキスト要素に接続します。ボタンのテキストを書き、新しいポストバックをボタンタイプとして選択し、OKボタンをクリックします。すぐに、ボタン要素に接続された新しいポストバック要素が表示されます。新しいポストバックにタイトルを付けてください。
次に、システムがユーザーのメールアドレスを持っているかどうかを確認する別の条件を設定します。システムにユーザーのメールアドレスがある場合、ボットは更新された情報がそのメールアドレスに送信されることをユーザーに通知します。一方、システムに特定のユーザーのメールアドレスがない場合、ボットはユーザーにメールアドレスを尋ねます。
システムが特定のユーザーのメールアドレスを持っているかどうかを確認し、それに応じてメッセージを送信する条件を設定しましょう:
条件要素を追加し、それを新しいポストバック要素に接続します。その後、条件要素をクリックして条件を設定します。1つの条件を設定すれば、すべて一致またはいずれか一致を選択しても問題ありません。
前と同様に、変数としてEmailを選択し、演算子としてHas Valueを選択します。そして、OKボタンをクリックします。それで完了です。条件が設定されました。
今、2つのテキスト要素を追加し、それらを条件要素の真と偽のソケットに接続します。次に、真の要素に接続されているテキスト要素をクリックし、更新された情報がユーザーにメールで送信されることを知らせるテキストメッセージを書きます。
次に、偽ソケットに接続している別のテキスト要素をクリックし、システムにメールアドレスがないことをユーザーに通知するメッセージを書き、メールアドレスを送信するためにクイック返信ボタンをクリックするようにユーザーに伝えてください。
条件が真になると、真ソケットに接続しているテキストメッセージが送信されます。一方、条件が偽になると、偽ソケットに接続しているテキストメッセージが送信されます。つまり、システムが特定のユーザーのメールアドレスを持っている場合、ボットはユーザーに更新された情報が送信されることを通知します。そして、システムがユーザーのメールアドレスを持っていない場合、ボットはユーザーのメールアドレスを尋ねます。
今、クイック返信ボタンを追加し、それを偽ソケットに接続しているテキスト要素に接続します。クイック返信要素をダブルクリックし、クイック返信タイプとしてメールを選択し、OKボタンをクリックします。返信ボタンを使って、ボットはユーザーからメールアドレスを収集します。
今、保存ボタンをクリックするか、キーボードでCtrl + sを押してボットを保存します。
すべてが正常であれば、ボットはそれに応じて動作します。つまり、ユーザーが男性の場合、ボットは彼を「Mr」と呼び、ユーザーが女性の場合、ボットは彼女を「Mrs/Miss」と呼びます。さらに、システムがユーザーのメールアドレスを持っている場合、ボットはユーザーに更新された情報がメールで送信されることを通知し、システムが特定のユーザーのメールアドレスを持っていない場合、ボットはユーザーのメールアドレスを尋ねます。
では、ボットがどのように機能するか見てみましょう:
メッセンジャーに条件を書きます。メッセージは、私たちが作成した条件ベースのボットのキーワードに一致し、ボットの最初の条件が始まります。条件は、私が男性か女性かを確認します。私が男性であることがわかり、私を「Mr.」と呼ぶテキストメッセージが送信されます。その後、はいボタンをクリックすると、2番目の条件が始まります。システムに私のメールアドレスがあるかどうかを確認し、システムに私のメールアドレスがないことがわかります。そこで、私にメールアドレスを尋ねます。




