NODEを使用したメールへのSMSメッセージの転送。js

概要

企業は多くのチャネルを介して通信を取得します。 これは、一つの場所にメッセージの検索可能なアーカイブを持っていると便利です。 SMSメッセージを電子メールに転送すると、両方の種類のメッセージを一箇所に保持できます。 Plivoは、最も人気のあるweb開発言語を使用して電子メールにSMSメッセージを転送することが容易になります。 ここでは、.NET.

前提条件を使用してプロセスを順を追って説明します

  • Plivoアカウント: あなたはまだいずれかを持っていない場合はPlivoアカウントにサインアップします。

  • Plivo電話番号:SMSを受信するには、SMSをサポートするPlivo電話番号が必要です。 番号は、Plivoコンソールの番号ページから、またはNumbers APIを使用して購入できます。

    新しいPlivo番号を購入する

以下のコード例では、Gmailアカウントを持っていると想定していますが、別のSMTPクライアントをサポートするようにコードを編集するのは簡単です。

ノードをインストールします。jsおよびその他のモジュール

受信SMSを電子メールに転送するには、ノード他のモジュールを設定してインストールする必要があります。 ここではどのようにです。

オペレーティングシステム 命令
macOSとLinux は、すでにノードを持っているかどうかを確認します。jsがインストールされ、ターミナルでコマンドnode–versionを実行します。 インストールされていない場合は、ここからインストールできます。
Windows ノードをインストールします。windowsのjsは、ここからダウンロードしてインストールできます。

プロジェクトの作成

  • プロジェクトディレクトリを作成し、次のコマンドを実行します:

    $ mkdir mynodeapp
  • コマンドラインでディレクトリをプロジェクトディレクトリに変更します:

    $ cd mynodeapp

npmモジュールのインストール

  • npmを使用してSDKをインストールする

    $ npm install express$ npm install nodemailer$ npm install body-parser

SMSをメールに転送する

ファイルを作成します(私たちは私たちの電子メールと呼ばれます。js)を貼り付け、このコードを貼り付けます。

1234567891011121314151617181920212223242526272829303132333435363738394041424344
var express = require('express');var nodemailer = require("nodemailer");var app = express();app.use(express.urlencoded({extended: true}));app.set('port', (process.env.PORT || 5000));app.all('/email_sms/', function(request, response) { // Sender's phone number var from_number = request.body.From || request.query.From; // Receiver's phone number - Plivo number var to_number = request.body.To || request.query.To; // The text which was received var text = request.body.Text || request.query.Text; // Print the message console.log('Message received from: ' + from_number + ': ' + text); var transporter = nodemailer.createTransport({ service: 'gmail', auth: { user: "<email_address>", pass: "<password>" } }); var mailOptions = { from: "<from_email_addres>", // sender address to: "<recipient_email_address>", // comma separated list of receivers subject: "SMS from ", from_number, // Subject line text: text // plaintext body }; transporter.sendMail(mailOptions, function(error, info) { if (error) { console.log(error); } else { console.log('Email sent: ' + info.response); } });});app.listen(app.get('port'), function() { console.log('Node app is running on port', app.get('port'));});

サーバー上でこのファイルを実行するには、ファイルが存在するフォルダーに移動し、次のコマンドを使用します

$ node email.js
メモ: Gmailを使用してメールを送信する場合は、アプリからメールを送信するためのパスワードとして扱われるアプリのパスワードを使用する必要があります。

ローカルサーバーをインターネットに公開

着信メッセージを受信し、コールバックを処理するには、ローカルサーバーがPlivo APIサービスに接続できる必要があります。Ngrokは、ローカ Ngrokを使用すると、Plivoサーバーと通信できるwebhookを設定できます。

ngrokブロック図

ngrokをインストールし、コマンドラインで実行し、メッセージを受信するアプリケーションをホストするポート(この場合は5000)を指定します):

$ ./ngrok http 5000

Ngrokは、パブリックネットワーク経由でローカルサーバーにアクセスするためのwebhookとして使用できる転送リンクを表示します。

サンプルngrok CLI

アプリケーションの作成

  1. Messaging>ApplicationsにアクセスしてAdd New Applicationをクリックするか、PlivoのアプリケーションAPIを使用してPlivoアプリケーションを作成します。
  2. アプリケーションに名前を付けます—私たちはEmail SMSと呼んでいます。 Message URLフィールドにサーバーのURL(https://61d8fb8f250c.ngrok.io/email_sms/など)を入力し、メソッドをPOSTに設定します。
  3. 'Create Application'をクリックしてアプリケーションを保存します。

アプリケーションの作成

アプリにPlivo番号を割り当てる

  1. 番号ページに移動し、アプリケーションに使用する電話番号を選択します。
  2. “アプリケーション-タイプ”ドロップダウン-リストから”XMLアプリケーション”を選択し、”Plivoアプリケーション”ドロップダウン-リストから”Email SMS(アプリケーション名)”を選択します。
  3. Update Numberをクリックして保存します。

アプリケーションの割り当て

テストと検証

通常の携帯電話を使用して、アプリケーションに関連付けられたPlivo番号にテキストメッセージを送信します。受信メッセージはメールに反映されます。

コメントを残す

メールアドレスが公開されることはありません。