概要
企業は多くのチャネルを介して通信を取得します。 これは、一つの場所にメッセージの検索可能なアーカイブを持っていると便利です。 SMSメッセージを電子メールに転送すると、両方の種類のメッセージを一箇所に保持できます。 Plivoは、最も人気のあるweb開発言語を使用して電子メールにSMSメッセージを転送することが容易になります。 ここでは、.NET.
前提条件を使用してプロセスを順を追って説明します
-
Plivoアカウント: あなたはまだいずれかを持っていない場合はPlivoアカウントにサインアップします。
-
Plivo電話番号:SMSを受信するには、SMSをサポートするPlivo電話番号が必要です。 番号は、Plivoコンソールの番号ページから、またはNumbers APIを使用して購入できます。
以下のコード例では、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
ローカルサーバーをインターネットに公開
着信メッセージを受信し、コールバックを処理するには、ローカルサーバーがPlivo APIサービスに接続できる必要があります。Ngrokは、ローカ Ngrokを使用すると、Plivoサーバーと通信できるwebhookを設定できます。
ngrokをインストールし、コマンドラインで実行し、メッセージを受信するアプリケーションをホストするポート(この場合は5000)を指定します):
$ ./ngrok http 5000
Ngrokは、パブリックネットワーク経由でローカルサーバーにアクセスするためのwebhookとして使用できる転送リンクを表示します。
アプリケーションの作成
- Messaging>Applicationsにアクセスして
Add New Application
をクリックするか、PlivoのアプリケーションAPIを使用してPlivoアプリケーションを作成します。 - アプリケーションに名前を付けます—私たちは
Email SMS
と呼んでいます。Message URL
フィールドにサーバーのURL(https://61d8fb8f250c.ngrok.io/email_sms/など)を入力し、メソッドをPOST
に設定します。 'Create Application'
をクリックしてアプリケーションを保存します。
アプリにPlivo番号を割り当てる
- 番号ページに移動し、アプリケーションに使用する電話番号を選択します。
- “アプリケーション-タイプ”ドロップダウン-リストから”XMLアプリケーション”を選択し、”Plivoアプリケーション”ドロップダウン-リストから”
Email SMS
(アプリケーション名)”を選択します。 Update Number
をクリックして保存します。
テストと検証
通常の携帯電話を使用して、アプリケーションに関連付けられたPlivo番号にテキストメッセージを送信します。受信メッセージはメールに反映されます。