メインコンテンツへスキップ

はじめに

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

前提条件

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

プロジェクトの作成

ボットの認証と連携には、WhatsApp がインストールされ設定されている必要があります。アプリをお持ちでない場合は、WhatsApp 公式サイトからダウンロードしてセットアップしてください。
実装で WhatsApp Web バージョンのリモートパスにアクセスする必要がある場合は、次の技術的な手順に従ってください:
  1. wa-version リポジトリにアクセスします
  2. 目的のバージョンを選択します(常に最新版の使用を推奨します)
  3. 「Raw」をクリックしてファイルを表示します
  4. 生成された URL を後で使用するためにコピーします
設定された URL の例:
https://raw.githubusercontent.com/wppconnect-team/wa-version/main/html/2.2412.54.html

プロジェクトの開発

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

// Create a new WhatsApp client instance
const client = new Client({
  puppeteer: {
    // Run Chrome in headless mode (without graphical interface)
    headless: true,
    args: [
      // Disable Chrome sandboxing features
      // Required for execution in containerized environments
      "--no-sandbox",
      // Additional sandboxing flag to disable setuid sandbox
      "--disable-setuid-sandbox",
    ],
  },
  // Web version cache configuration
  webVersionCache: {
    // Type "remote" indicates WhatsApp Web version will be fetched from remote URL
    type: "remote",
    // Remote path for WhatsApp Web version
    remotePath: "INSERT_YOUR_URL_HERE",
  },
});

// Event listener for QR Code generation
client.on("qr", async (qr) => {
  // Use qrcode library to generate and save QR Code
  try {
    await qrcode.toFile("./qrcode.png", qr);
    console.log("QR Code generated and saved as qrcode.png");
  } catch (err) {
    console.error("Error generating QR Code:", err);
  }
});

// Event listener for client ready
client.on("ready", () => {
  // Confirmation log when WhatsApp Web session is established
  console.log("WhatsApp client successfully initialized!");
});

// Event listener for created messages
client.on("message_create", (msg) => {
  // Log message content to console
  console.log("Message received:", msg.body);
  
  // Test command implementation
  if (msg.body === "!ping") {
    // Automatic response for ping command
    msg.reply("pong - Bot working correctly!");
  }
});

// Initialize WhatsApp client
client.initialize();

デプロイ

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

ダッシュボード経由

1

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

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

環境を設定

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

プロジェクトをデプロイ

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

CLI 経由

この方法を使用するには、プロジェクトのルートディレクトリに squarecloud.app という名前の設定ファイルを作成する必要があります。このファイルには、プロジェクトに必要な設定が含まれます。

詳細はこちら: Square Cloud の設定ファイルの作成方法。

squarecloud.app ファイルはアプリケーションを構成するために使用される設定ファイルであり、環境を定義するために使用されます。
1

CLI をインストール

まず、環境に CLI がインストールされている必要があります。まだの場合は、ターミナルで次のコマンドを実行してください:
npm install -g @squarecloud/cli
すでにお持ちの場合は、更新することを推奨します。更新するには、ターミナルで次のコマンドを実行してください:
squarecloud update
2

認証

次に、認証して他の CLI コマンドを使用するには、こちらで「Request API Key」をクリックして認証キーを取得します。認証キーを取得したら、次のコマンドを実行してください:
squarecloud auth login
3

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

最後に、CLI を使用してアプリケーションを Square Cloud にデプロイするには、次のコマンドを実行する必要があります:
squarecloud upload 
または、zip を手動で作成した場合は、次を使用できます:
squarecloud upload --file <path/to/zip> 

その他のリソース

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

お問い合わせ

技術的な問題が解決しない場合は、専門のサポートチームがお手伝いします。お問い合わせいただければ、どのような問題でも喜んで解決をサポートいたします。