Skip to main content

はじめに

Square Cloud で WhatsApp ボット を開発してホストするには、構成と前提条件の体系的な手順に従うことが不可欠です。この技術ガイドでは、初期セットアップから本番環境へのデプロイまで、プロセス全体を解説します。

前提条件

  • Square Cloud アカウント: 登録ページからメールアドレスを使って登録します。
  • 有効なプラン: アプリケーションに専用リソースと最適化されたパフォーマンスを提供します。利用可能なプランを確認し、ニーズに最も適したものを選択してください。

プロジェクトの作成

ボットの認証と連携には、WhatsApp がインストールされ設定されている必要があります。アプリをお持ちでない場合は、WhatsApp 公式サイトからダウンロードしてセットアップしてください。

プロジェクトの開発

  1. Node.js の確認: Node.js がシステムにインストールされていることを確認してください。ない場合は、Node.js 公式サイトからダウンロードしてください。
  2. プロジェクトの初期化: 初期化コマンドを実行して、新しい Node.js プロジェクトをセットアップします:
Terminal
  1. 依存関係のインストール: ボットの機能に必要な基本ライブラリをインストールします:
Terminal
  1. メインファイルの作成: ボットの基本構造を含む index.js ファイルを作成します:
index.js

Square Cloud の設定

プロジェクトのルートに、index.js と並べて squarecloud.app ファイルを作成します。このファイルは、ボットの実行方法を Square Cloud に伝えます。
squarecloud.app
  • MEMORY はボットの RAM (MB) です。whatsapp-web.js はヘッドレスの Chromium ブラウザを実行するため、最低 1024 MB を割り当ててください。
  • AUTORESTART=true を指定すると、ボットがクラッシュしたときに再起動します。自動再起動の仕組みを参照してください。
  • SUBDOMAIN はありません。ボットはウェブページを配信しないためです。
ZIP には index.js、package.json、squarecloud.app を入れます。node_modules は含めないでください。依存関係は Square Cloud がデプロイ時にインストールします。すべてのフィールドについては設定ファイルのリファレンスを参照してください。

デプロイ

プロジェクトファイルの準備が完了したら、それらを Square Cloud にアップロードしてプロジェクトをホスティングできます。 そのためには、すべてのプロジェクトファイルを含む ZIP ファイルを作成してください。

ダッシュボード経由

1

アップロードページにアクセス

アップロードページにアクセスし、プロジェクトの zip ファイルをアップロードします。
2

環境を設定

zip をアップロードした後、プロジェクトの名前、メインファイルまたはランタイム環境、その他の設定を構成する必要があります。
ウェブプロジェクトをアップロードする場合は、必ず「Web Publication」を選択し、プロジェクトにサブドメインを設定してください。
3

プロジェクトをデプロイ

最後に「Deploy」ボタンをクリックして、プロジェクトを Square Cloud にホストします。
デプロイ後、ダッシュボードからプロジェクトのステータスとログを監視できます。
Square Cloud へのアプリケーションのアップロード
4

アプリが稼働していることを確認

最初のデプロイは、通常 1 分もかからずに完了します。ダッシュボードでアプリケーションのステータスが running になるのを待ち、起動時のエラーがないかログを確認してください。
ウェブサイトや API をデプロイした場合は、ブラウザで https://<your-subdomain>.squareweb.app を開き、アプリケーションが応答することを確認してください。ボットをデプロイした場合は、コマンドを送信してオンラインになっていることを確認してください。
アプリが起動しませんか?よくある原因と修正方法はトラブルシューティングガイドを参照してください。

CLI 経由

この方法を使用するには、プロジェクトのルートに squarecloud.app という名前の設定ファイルが必要です。このファイルは、アプリケーションの実行方法を Square Cloud に伝えます。

設定ファイルガイド

アプリケーションの環境を定義する squarecloud.app 設定ファイルの作成方法を学びます。
1

CLI をインストール

Square Cloud CLI をインストールします。すでにお持ちの場合は、同じコマンドを実行すると更新されます:
2

ログイン

次のコマンドを実行します。ブラウザが開くので、そこでログインを承認すれば CLI の準備は完了です。API キーをコピーする必要はありません。スクリプトや CI については、CLI の認証を参照してください。
3

プロジェクトをアップロード

プロジェクトのフォルダで次のコマンドを実行します。CLI は squarecloud.ignore に記載されたものを除いて現在のフォルダを zip にし、アップロードします:
自分で作成した zip をアップロードするには、--file で指定します:
4

アプリが稼働していることを確認

最初のデプロイは、通常 1 分もかからずに完了します。ターミナルから直接、アプリケーションのステータスとログを確認してください。
ウェブサイトや API をデプロイした場合は、ブラウザで https://<your-subdomain>.squareweb.app を開き、アプリケーションが応答することを確認してください。ボットをデプロイした場合は、コマンドを送信してオンラインになっていることを確認してください。
アプリが起動しませんか?よくある原因と修正方法はトラブルシューティングガイドを参照してください。

ボットのテスト

Square Cloud ダッシュボードでアプリケーションのログを開いてください。初回起動時、ボットはそこに QR コードを表示します。スマートフォンで WhatsApp を開き、リンク済みデバイス > デバイスをリンク に進んでスキャンしてください。WhatsApp client successfully initialized! メッセージが表示されれば、セッションがアクティブになったことを確認できます。次に、リンクした WhatsApp アカウントに別の番号から !ping を送信し、pong - Bot working correctly! と返信されることを確認してください。
QR コードはテキスト文字で描画され、WhatsApp によって定期的に更新されるため、最新のものをスキャンしてください。スマートフォンで読み取れない場合は、コード全体が画面に収まるまで縮小表示するか、ダッシュボードをダークテーマに切り替えてください。
LocalAuth はセッションを .wwebjs_auth フォルダーに保存するため、再起動しても新しい QR コードなしで再接続されます。別の番号をリンクするには、そのフォルダーを削除してアプリケーションを再起動してください。
WhatsApp Web のアップデート後にログインできなくなりましたか? npm install whatsapp-web.js@latest でライブラリを更新し、再度デプロイしてください。webVersionCache オプションで古い WhatsApp Web のバージョンに固定するのは避けてください。古いバージョンではログインが壊れやすくなります。

whatsapp-web.js の代わりに Baileys を使う

Baileys は、ヘッドレスブラウザを起動せずに、WebSocket 経由で直接 WhatsApp のマルチデバイス API に接続する代替ライブラリです。Chromium/Puppeteer のインスタンスを実行する必要がないため、whatsapp-web.js よりも大幅に少ない RAM で動作します。 Baileys は useMultiFileAuthState を通じて、セッション (creds.json ファイルと鍵) を auth フォルダーに保存します。Square Cloud は再起動をまたいでアプリケーションのファイルを保持するため、QR コードを再度スキャンする必要があるのは、ログアウトしたときかそのフォルダーを削除したときだけです。
  1. ライブラリをインストールします。
Terminal
  1. makeWASocket と useMultiFileAuthState を使ってセッションを読み込み・永続化する index.js ファイルを作成します。
index.js
Baileys はブラウザを必要としないため、Square Cloud 上の設定ファイルでは、上記の whatsapp-web.js の例よりも低い MEMORY の値を使用できます。
squarecloud.app

追加リソース

whatsapp-web.js を使用した WhatsApp ボット開発についてさらに理解を深めるには、whatsapp-web.js 公式ライブラリのドキュメントを参照してください。このドキュメントでは、詳細な技術ガイド、高度なチュートリアル、そして実装の可能性を最大化するための完全な API リファレンスを提供しています。

次のステップ

アプリが起動しない

モジュールの不足、メモリエラーなどの起動エラーを修正します。

Evolution API

多数のインスタンスを同時に管理する WhatsApp API を実行します。

ボットのホスティング

24 時間 365 日稼働するボット向けに Square Cloud が提供するもの。

お問い合わせ

技術的な問題が解決しない場合は、専門のサポートチームがお手伝いします。お問い合わせいただければ、どのような問題でも喜んで解決をサポートいたします。サポートの質の高さも、開発者が Google と Trustpilot で Square Cloud に402 件のレビューで 4.9/5という評価をつけている理由の 1 つです。