Watcher To WhatsApp クイックスタート

WhatsApp は、Metaが所有するインスタントメッセージングおよびVoice-over-IPサービスです。ユーザーはテキスト、音声、ビデオメッセージの送信、音声・ビデオ通話の実行、画像、文書、位置情報、その他のコンテンツの共有が可能です。
このチュートリアルでは、Watcher APIとNode-REDを統合して、WatcherからWhatsAppにシームレスにデータを送信する方法をガイドします。この統合により、通知を受信するシンプルで効率的な方法を提供し、さらなるアプリケーションと統合への扉を開きます。
パート1. Node-REDでWatcherをセットアップする
ステップ1. Node-REDをセットアップする
まず最初に、以下のビデオに従ってWatcherでタスクを実行する必要があります。詳細を知りたい場合はこちらをクリックしてください。
このセットアップにはNode-REDとWatcher APIが必要です。Node-REDをインストールしていない、またはWatcher APIと接続していない場合は、こちらから始めてください:Watcher to Node-RED クイックスタート。
ステップ2. Watcherからデータを取得する
WatcherをNode-REDと連携するようにセットアップした後、次のステップはWatcherからのデータをWhatsApp用に準備することです。ファンクションノードをダブルクリックして、データを適切にフォーマットします。

このチュートリアルの目的では、コンテンツと画像URLを送信します。ただし、アプリケーションの必要に応じてデータを変換することをお勧めします。

データをフォーマットするNode-REDファンクションの例
node.send({ payload: msg.payload.value[0].content });
node.send({ payload: msg.payload.value[0].image_url });
パート 2. WhatsApp API のセットアップ
ステップ 3. WhatsApp にサインアップ
続行するには WhatsApp アカウントが必要です。まだアカウントをお持ちでない場合は、こちらをクリックしてアカウント作成の手順を完了してください。
すでにアカウントをお持ちの場合は、ステップ 4 に進んでください。
ステップ 4. CallMeBot API キーを取得
WhatsApp アカウントのセットアップとログインが完了したら、次は CallMeBot API をセットアップします。これは Node-RED と WhatsApp を連携させる API です。
CallMeBot API キーを取得するには、以下の手順に従ってください(この Github リポジトリから引用):
- 電話番号 +34 644 66 32 62 を電話の連絡先に追加します。(お好きな名前を付けてください)
- 作成した新しい連絡先に「I allow callmebot to send me messages」というメッセージを送信します(もちろん WhatsApp を使用)
- ボットから「API Activated for your phone number. Your APIKEY is 123123」というメッセージを受信するまで待ちます。これはまだベータテスト中のため、アクティベーションには最大 2 分かかる場合があります。
- ボットからの WhatsApp メッセージには、API を使用してメッセージを送信するために必要な apikey が含まれています。

このチュートリアルで提供されている CallMeBot API の電話番号が満杯で、これ以上のリクエストを受け付けられない可能性があります。この場合、CallMeBot は使用する代替電話番号を含む WhatsApp メッセージを送信します。
そのようなメッセージを受信せず、提供されたすべての電話番号が満杯の場合は、Node-RED を WhatsApp にリンクする代替 API を見つける必要があるかもしれません。CallMeBot ウェブサイトで最新の更新情報とドキュメントを確認するか、Node-RED と互換性のある他の WhatsApp メッセージング API を探してください。

パート 3. WhatsApp と Node-RED の統合
ステップ 5. WhatsApp モジュールのインストール
三本線のアイコンをクリックし、Manage palette オプションをクリックします。これにより、ノードを追加または削除できる新しいウィンドウが開きます。

パレット管理ウィンドウ内の Install タブに切り替えます。検索バーで whatsapp
と入力してモジュールを見つけます。次に、node-red-contrib-whatsapp-cmb エントリの横にある install ボタンをクリックします。
モジュールの動作方法をより深く理解し、その潜在能力を最大化したい場合は、ノードのドキュメントと関連する Github リポジトリを確認することもお勧めします。

node-red-contrib-whatsapp-cmb モジュールは、このチュートリアルの執筆時点(2024年7月)での現在の互換性と信頼性のために推奨されています。ただし、Node-RED モジュールの可用性と機能は時間の経過とともに変わる可能性があります。Node-RED ライブラリまたは GitHub リポジトリで最新のユーザーフィードバックと互換性ノートを確認することをお勧めします。このモジュールで問題が発生した場合は、より適切なオプションとして Node-RED ライブラリにリストされている他の WhatsApp モジュールを探すことを検討してください。
ステップ 6. WhatsApp ノードの設定
WhatsApp モジュールをインストールしたら、Send Message ノードを Node-RED フローにドラッグし、function ノードに接続します。
Send Message ノードをダブルクリックして設定します。次に、Account フィールドの横にあるプラスアイコンをクリックして、新しい Account 設定を追加します。

- このアカウントに使用したい名前を入力します。
- WhatsApp アカウントに関連付けられた電話番号を入力します。
- API キーを入力します。
次に、Add または Update をクリックして Account 設定を保存します。

アカウントが設定されたら、Message フィールドの横のドロップダウンを msg. に変更し、テキストフィールドに payload
と入力します。最後に、Done をクリックして WhatsApp ノードの設定を完了します。

ステップ 7. デプロイ
最後に、Node-RED インターフェースの右上にある Deploy ボタンをクリックしてフローをデプロイします。このアクションにより設定されたノードがアクティブになり、function ノードから CallMeBot API へのデータフローが可能になります。

これで、Watcher がトリガーされるたびに WhatsApp から通知を受信するようになります。

デバッグ: Node-RED エラー
Node-RED を WhatsApp と統合しようとする際に、このようなエラーが発生する可能性があります。これが発生した場合は、以下の手順に従って修正できます。

この問題を解決するには、以下の手順を試すことができます:
-
Node-RED ユーザーディレクトリで以下を実行して、不足している
aws4
モジュールをインストールします:npm install aws4
-
それでもうまくいかない場合は、
request
パッケージを再インストールする必要があるかもしれません:npm install request
-
問題が解決しない場合は、WhatsAppノードを再インストールする必要があるかもしれません:
npm install node-red-contrib-whatsapp-cmb
-
最後の手段として、npmキャッシュをクリアしてすべての依存関係を再インストールすることを試すことができます:
npm cache clean --force
npm install
これらの手順を試した後、Node-REDを再起動してエラーが解決されるかどうかを確認してください。まだ問題が発生している場合は、Node.jsバージョン、Node-REDバージョン、および使用しているパッケージのバージョン間の互換性を確認する必要があるかもしれません。
WatcherとWhatsAppの統合が成功したことをお祝いします!開発の取り組みにおいて、エキサイティングな機会の扉を開きました。WhatsAppの堅牢な機能を活用した革新的なアプリケーションの作成に飛び込む準備をしてください。次に開発される素晴らしいソリューションを楽しみにしています!
技術サポート・製品ディスカッション
私たちの製品をお選びいただき、ありがとうございます!私たちの製品での体験が可能な限りスムーズになるよう、さまざまなサポートを提供しています。異なる好みやニーズに対応するため、複数のコミュニケーションチャネルを提供しています。