https://a.storyblok.com/f/270183/1368x665/2908eeff65/node-js_glitch_outbound-sms-voice.png

Vonageでアウトバウンドボイス&SMSを作る方法

最終更新日 October 29, 2024

所要時間:1 分

このチュートリアルでは、GlitchとNode.jsを使用してVonage APIを統合し、発信音声通話と発信SMSを送信する方法を紹介します。アウトバウンドボイスと SMS 機能を追加することで、アプリケーションは通知の送信や通話の発信といったプロアクティブなインタラクションを処理できるようになります。この統合により、アプリから自動化されたリアルタイムのコミュニケーションが可能になり、ユーザーエンゲージメントが向上します。

さらにインタラクティブなアプリケーションを作る準備はできましたか?行きましょう!

前提条件

Vonage API Account

To complete this tutorial, you will need a Vonage API account. If you don’t have one already, you can sign up today and start building with free credit. Once you have an account, you can find your API Key and API Secret at the top of the Vonage API Dashboard.

プロジェクトの設定と構成

VonageアプリケーションにインバウンドボイスコールとインバウンドSMSのためのWebhookをすでに統合していると仮定して、アウトバウンド機能の実装に進みます。WebhookとVonageアプリケーションのセットアップにヘルプが必要な場合は、以下のチュートリアルを参照してください。 GlitchでインバウンドSMS&Voice用のWebhookをセットアップする方法。

アプリケーションを実装するには、チュートリアルで得た知識を応用して、以下を設定します:

  • private.keyファイル

  • Vonageの電話番号

  • Vonage API キーとシークレット

  • VonageアプリケーションID

  • 回答URL

以下のステップをご覧ください:

  1. アウトバウンドのVoiceコールとSMS用のクライアントコードの追加

  2. 依存関係をインストールする

  3. 環境変数の設定

  4. 新機能のテスト

ステップ1:発信音声通話とSMS用のクライアントコードの追加

Glitchアカウントにログインしてください。

Glitchプロジェクトで、次の横の「+」をクリックします。 ファイル.

ファイル名 private.keyをクリックし このファイルを追加.

screenshot of a window with "private.key" as the file name with options to add this file and upload a fileadd fileお気に入りのテキストエディタで private.keyファイルを開く。テキストエディタから内容をコピーし、グリッチで新しく作成した private.keyファイルに貼り付けます。

同様に makecall.js.

新しく作成した makecall.jsファイルに追加する:

require('dotenv').config({ path: __dirname + '/../.env' });

const { Vonage } = require('@vonage/server-sdk');
const { NCCOBuilder, Talk, OutboundCallWithNCCO } = require('@vonage/voice')

const TO_NUMBER = process.env.TO_NUMBER;
const VONAGE_NUMBER = process.env.VONAGE_NUMBER;

const VONAGE_API_KEY = process.env.VONAGE_API_KEY;
const VONAGE_API_SECRET = process.env.VONAGE_API_SECRET;
const VONAGE_APPLICATION_ID = process.env.VONAGE_APPLICATION_ID;
const VONAGE_APPLICATION_PRIVATE_KEY_PATH = __dirname + "/" + process.env.VONAGE_APPLICATION_PRIVATE_KEY_PATH;

const vonage = new Vonage({
  apiKey: VONAGE_API_KEY,
  apiSecret: VONAGE_API_SECRET,
  applicationId: VONAGE_APPLICATION_ID,
  privateKey: VONAGE_APPLICATION_PRIVATE_KEY_PATH
});


async function makeCall() {
  const builder = new NCCOBuilder();
  builder.addAction(new Talk('This is a text to speech call from Vonage'));
  const resp = await vonage.voice.createOutboundCall(
    new OutboundCallWithNCCO(
      builder.build(),
      { type: 'phone', number: TO_NUMBER },
      { type: 'phone', number: VONAGE_NUMBER}
    )
  );
  console.log(resp);
}
makeCall();

次に sendsms.js.

新しく作成した sendsms.jsファイルに追加する:

require('dotenv').config({ path: __dirname + '/../.env' });

const VONAGE_API_KEY = process.env.VONAGE_API_KEY;

const VONAGE_API_SECRET = process.env.VONAGE_API_SECRET;

const TO_NUMBER = process.env.TO_NUMBER;

const VONAGE_NUMBER = process.env.VONAGE_NUMBER;

const { Vonage } = require('@vonage/server-sdk');

const vonage = new Vonage({

  apiKey: VONAGE_API_KEY,

  apiSecret: VONAGE_API_SECRET

});

const from = VONAGE_NUMBER;

const to = TO_NUMBER;

const text = 'Test message using the Vonage SMS API';

vonage.sms.send({ to, from, text })

  .then(resp => { console.log('Message sent successfully'); console.log(resp); })

  .catch(err => { console.log('Error sending message'); console.error(err); });

ステップ2:依存関係をインストールする

Glitchプロジェクトでターミナルを開く。

以下のコマンドを実行して、既存のパッケージを更新する:

npm update

必要な依存関係を以下のコマンドでインストールする:

npm i express @fastify/express body-parser dotenv @vonage/server-sdk @vonage/voice

次のコマンドを実行します。 refreshコマンドを実行して変更を適用する:

refresh

ステップ3:環境変数の設定

次に .envファイルを開く。

以下の変数名を追加する:

TO_NUMBER
VONAGE_NUMBER
VONAGE_API_KEY
VONAGE_APPLICATION_ID
VONAGE_API_SECRET
VONAGE_APPLICATION_PRIVATE_KEY_PATH

次に、これらの変数に以下の値を記入する:

  • TO_NUMBER:通話やSMSを受信する番号(例:14567891234)。

  • VONAGE_NUMBER:Vonageアプリケーションに割り当てられた番号(例:14567891234)。

  • VONAGE_API_KEYそして VONAGE_API_SECRET:Vonage Dashboardから。

  • VONAGE_APPLICATION_ID:Vonageアプリケーションの設定から。

  • VONAGE_APPLICATION_PRIVATE_KEY_PATH:として設定する。 private.key.

screenshot of environment variables window with variables and their values listedEnvironment variables

ステップ4:新機能のテスト

発信音声通話のテスト

Glitchプロジェクトでターミナルを開く。

このコマンドを実行する:

node makecall.js

以下の Vonageダッシュボードのログを確認し、通話が正常に行われたことと、その詳細を確認してください。

Call log showing call information including Call ID, direction (outbound) from phone number, to phone number, network, country, and the time and date the call started.Outbound Call Log送信SMSのテスト

送信SMS用のクライアントコードを追加したので、テストしてみましょう!

このコマンドを実行する:

node makecall.js

Vonage Dashboardのログを確認し、SMSが正常に送信されたことと、その詳細を確認してください。

SMS log showing message ID & API key, From phone number, To phone number, Status (delivered), Latency, Network and BodyText Log Deliveredターミナルにも同じ情報が表示される。

結論

これで完了です!これでVonage APIを使った音声通話とSMSがGlitchに統合されました。これらのコミュニケーション機能を追加することで、音声やメッセージを通じてユーザーを惹きつけるアプリケーションの機能を拡張することができます。このチュートリアルに沿ってプロジェクトを進めた方は、ぜひチュートリアルについてお聞かせください!私たちの VonageコミュニティSlackまたは X.

シェア:

https://a.storyblok.com/f/270183/413x531/a88af5f9b0/prashant-photo-highres.png
Prashant Agrawal テクニカル・アカウント・マネージャー

プラシャントはVonageのAPIパートナー・セールス・チームのメンバーです。シンガポール在住。顧客とパートナーがVonage CPaaSの機能をビジネスに活用できるようにするための活動を推進している。余暇には、風光明媚な島をサイクリングしたり、バドミントンの試合で汗を流したりしています。