メニュー
カテゴリー

【AnyCross活用事例】WordPressから届いたお問い合わせをLarkのチャットに通知する

目次

やりたいこと

WordPressからお問い合わせが届いた時に、Baseファイルにお問い合わせの内容を転記し、それをチャット内に通知することがゴールです。

使用するツール

下記のツールを使用します。

  • お問い合わせフォーム用のWordPressのプラグイン
    • Contact Form 7
    • CF7 to Webhook
  • AnyCross
  • Baseファイル
  • 通知するチャット

WordPress側でお問い合わせフォームを設置する

まずはWordPress側でお問い合わせフォームを設置します。

必要なプラグインは、お問い合わせフォームを作成するContact Form 7と、Contact Form7でwebhookが使えるようにするCF7 to Webhookの2つです。

今回は下記のようなフォームを作成しました。かなり有名なプラグインですので、作成方法については割愛します。

お問い合わせフォーム

CF7 to Webhookもプラグインを追加し、有効化しておきましょう。
有効化すると、コンタクトフォームに次のようなタブが追加されます。

Webhook URLには、後ほどanycrossで取得するコールバックURLを追記します。

AnyCross側の設定

Any Crossとは?

AnyCrossは、Larkを提供しているLark社が開発した、ローコード、もしくはノーコードで複数のアプリケーションを統合できるサービスです。


今回はそんなAnyCrossを活用して、WordPress→Base(Lark)→チャット(Lark)といった、異なるアプリケーションをリンクさせてみます。

プロジェクトを作成する

AnyCrossにログイン後、左のツールバーから「Integration」を選択し、「Create project」から新規のプロジェクトを作成します。
全体像としては、プロジェクトという大きな箱を作成し、その中でいくつかのワークフローを作成するイメージです。

Nameにはプロジェクト名、Descriptionにはプロジェクトの説明を記載します。今回は「業務効率化」としましたが、管理しやすければなんでもいいと思います。

ワークフローを作成する

続いて、プロジェクト内にある「Create Workflow」をクリックし、ワークフローを作成します。

AnyCross側で既にワークフローのテンプレートが用意されていますが、今回はいずれにも当てはまらないため、新規で作成します。

プロジェクトと同じく、Nameにはワークフロー名、Descriptionにはワークフローの説明を記載します。
Select a trigerからワークフローが動作するトリガーを設定できますが、今回は「Webhook Trigger」を選択しましょう。

ワークフローを作成すると上記のような画面になり、この画面から細かい設定を進めていきます。

Webhook Triggerの「Setiings」からコールバックURLを取得できるので、こちらをコピーして、先ほどのお問合せフォームの設定内にあったWebhook URLの箇所にペーストします。

これでフォームが投稿された時にAnyCross側でデータを受け取る準備が整いました。

複数のアプリケーションを結合させる

ワークフローにある+アイコンをクリックすると、別のアプリケーションを結合させることができます。

今回は、まずLarkのBaseにお問い合わせの内容を転記したいので、2つ目のフローに「Lark Base」を、次にお問い合わせが届いたことをチャットに通知したいので、3つ目のフローに「Lark Messenger」を設定します。

Baseにお問い合わせの内容を転記する

まずは、お問い合わせが届いたらBaseに転記するように設定します。

転記先のBaseファイルを用意しておく必要があるので、先に作成しておきましょう。
下記のように、フィールドはお問い合わせフォームの項目と合わせると分かりやすいと思います。

ここでWebhook Trigger側の設定に戻りますが、コールバックURLをCF7 to Webhookに設定した状態で、実際にお問い合わせフォームからお問い合わせを送信してみます。

すると送信した情報がOutput data内に表示されるので、下のApply as Outputをクリックしましょう。
これで、受け取ったデータをBaseに連携することができる状態になります。 (bodyにはContact From7で設定したラベルが、そのまま項目として入ります。)

続いてBaseの設定に移ります。「Action」で「Add record」を選択すると、「Input」は次のような設定画面になります。

転記先のBaseのファイル名・テーブル名を入力すると、該当のテーブルにあるフィールドが自動で入力されるので、それぞれのフィールドに対応するデータを出力します。

_(“$.webhook-trigger-1.body.⚫︎”) の⚫︎の部分を先ほどのラベル名に変更し、Ex(expression)形式で入力すると、それぞれ任意のフィールドに任意のデータを出力させることが可能です。

例えば、「電話番号」のフィールドにはお問合せフォームの「電話番号」の項目を出力したいので、_(“$.webhook-trigger-1.body.tel”)と入力します。

上記を必要なフィールド分対応すれば、Baseにお問い合わせの内容を転記する設定は完了です。

チャットにお問い合わせが届いたことを通知する

続いて、チャットにお問い合わせが届いたことを通知するよう設定します。

Lark messengerの「Action」で「Send common messege」を選択すると、「Input」は次のような設定画面になります。

「Messege type」では送信形式を、「Messege text」では送信されるテキストを自由に設定できます。
今回はシンプルに「お問い合わせが届いたよ!」というメッセージと、Baseのテーブルのリンクを送信してみます。

また、どこに通知するかを「Receiver ID」と「Receiver ID type」で指定することが可能です。
今回は特定のグループチャット内に送信したかったので「chat_id」を指定しましたが、個人に送信したり、メール宛に送信することも可能です。

右上のボタンからpublishすれば、上記でワークフローの設定は完了となります。

chat_idの取得方法については、下記の記事をご参照ください。

実際にお問い合わせフォームを送信してみる

ワークフローの設定が完了したので、実際にお問い合わせフォームを送信して正しく動作するかを確認してみます。

Baseにレコードが追加され、チャットに通知が届きました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次