8

私は現在、smsクラスがSMPPでどのように正しく表現されているかを理解しようとしています。しかし、私は今では標準とそのドキュメントに完全に混乱しています。

通常のSMSでは

  • Class0:ディスプレイに表示されるフラッシュSMS
  • クラス1:シムまたはデバイスの内部に保存される通常のSMS

SMPP仕様を見ると、最初に、MAPを介して送信されるDCSを設定するために使用される操作のパラメーターdata_codingを見つけます。submit_sm私が理解している限り、メッセージクラスを明示的に設定する場合は、このパラメータの最初の4ビットを1に設定し、次に2ビットでコーディングを示し、さらに2ビットでメッセージクラスを示す必要があります。したがって、Class1 Smsの場合、を設定し1111xx01ます。これは今のところ正しいですか?

ただし、このDCSを設定しようとすると、現在、データコーディングも「8ビットデータ」に設定されています。いくつかの電話はこれを理解できないようです。これはどこでも指定されていますか?これを変更できますか、それとも他のメッセージクラスを送信するときに必要な特別なコーディングです。

メッセージクラスを設定するSMPPv3.4推奨の方法を使用しようとすると、さらに混乱が生じます。submit_sm3.4以降、操作には。と呼ばれるオプションのパラメーターがありますdest_addr_subunit。標準によれば、このパラメータは不明の場合は0、MSディスプレイの場合は1、モバイル機器の場合は2などに設定する必要があります。これを見ると、GSMメッセージクラスと比較してパラメータが1つずれているようです。Class0は1としてエンコードされ、Class1は2としてエンコードされます。これは正しいですか、それともこの背後にあるより複雑なマッピングがありますか?

また、を設定dest_addr_subunitした場合でも、DCSも設定する必要がありますか、それともこのパラメーターをデフォルト値のままにしておくことができますか?

4

1 に答える 1

11

DCS(データコーディングスキーム)の詳細な説明が記載された3GPPTS23.038仕様を読むことをお勧めします。

DCSビット7654がの場合、ビット400xxの値についてDCSをチェックする必要があります。

  • ビット4==0-このメッセージのメッセージクラスはありません(ビット1と0は予約されています)
  • ビット4==1-ビット1と0にはメッセージクラスが含まれます

したがって、適切data_codingに処理するには、3GPPTS23.038仕様に従ってSMPPパラメータを設定する必要がありmessage_classます。

デフォルトでは、GSM SMSメッセージにはmessage_classがなく、これはmessage_class=1と同じではありません。

于 2012-01-27T15:52:47.260 に答える