第309章 SMPP コンポーネント

Camel バージョン 2.2 以降で利用可能

このコンポーネントは、SMPP プロトコルを介して SMSC (ショートメッセージサービスセンター) へのアクセスを提供し、SMS を送受信します。プロトコルの実装には JSMPP ライブラリーが使用されます。

Camel コンポーネントは現在、SMSC 自体としてではなく、ESME (External Short Messaging Entity) として動作します。

*Camel 2.9* 以降では、ReplaceSm、QuerySm、SubmitMulti、CancelSm、および DataSm も実行できます。

Maven ユーザーは、このコンポーネントの pom.xml に以下の依存関係を追加する必要があります。

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-smpp</artifactId>
    <version>x.x.x</version>
    <!-- use the same version as your Camel core version -->
</dependency>

309.1. SMS の制限

SMS は信頼性も安全性もありません。  信頼性の高い安全な配信を必要とするユーザーは、代わりに XMPP または SIP コンポーネントの使用を検討し、選択したプロトコルをサポートするスマートフォンアプリと組み合わせて使用することを検討してください。

  • 信頼性: SMPP 規格は、エラー、未配信、および配信の確認を示すさまざまなフィードバックメカニズムを提供していますが、モバイルネットワークがこれらの応答を隠したりシミュレートしたりすることは珍しくありません。  たとえば、一部のネットワークでは、宛先番号が無効であるかスイッチがオンになっていない場合でも、メッセージごとに配信確認が自動的に送信されます。  一部のネットワークは、メッセージがスパムであると判断した場合、メッセージを黙ってドロップします。  ネットワーク内のスパム検出ルールは非常に粗雑で、1 人の送信者からの 1 日あたり 100 件を超えるメッセージがスパムと見なされる場合があります。
  • セキュリティー: 電波塔から受信者のハンドセットまでのラストホップには、基本的な暗号化があります。  SMS メッセージは、ネットワークの他の部分では暗号化も認証もされません。  一部の通信事業者は、小売店やコールセンターのスタッフが顧客の SMS メッセージ履歴を閲覧できるようにしています。  メッセージ送信者の ID は簡単に偽造できます。  規制当局や携帯電話業界自体でさえ、2 要素認証方式やその他のセキュリティーが重要な目的での SMS の使用に対して警告を発しています。

Camel コンポーネントは SMS ネットワークへのメッセージの送信を可能な限り簡単にしますが、これらの問題を簡単に解決することはできません。