2011-08-09 2 views
0

Quels sont les paramètres qui différencient un sms texte et un sms binaire dans smpp. Je suppose que les deux messages sont codés dans l'objet submitSM. si ce n'est pas le cas, dites comment les messages binaires smpp sont encodés en un sms.smpp binary message

Répondre

2

Vérifiez le paramètre data_coding.

Voici quelques valeurs

0 0 0 0 0 0 0 0 SMSC Default Alphabet 
0 0 0 0 0 0 0 1 IA5 (CCITT T.50)/ASCII (ANSI X3.4) 
0 0 0 0 0 0 1 0 Octet unspecified (8-bit binary) 
0 0 0 0 0 0 1 1 Latin 1 (ISO-8859-1) 
0 0 0 0 0 1 0 0 Octet unspecified (8-bit binary) 
0 0 0 0 0 1 0 1 JIS (X 0208-1990) 
0 0 0 0 0 1 1 0 Cyrllic (ISO-8859-5) 
0 0 0 0 0 1 1 1 Latin/Hebrew (ISO-8859-8) 
0 0 0 0 1 0 0 0 UCS2 (ISO/IEC-10646) 
0 0 0 0 1 0 0 1 Pictogram Encoding 
0 0 0 0 1 0 1 0 ISO-2022-JP (Music Codes) 
0 0 0 0 1 0 1 1 reserved 
0 0 0 0 1 1 0 0 reserved 
0 0 0 0 1 1 0 1 Extended Kanji JIS(X 0212-1990) 
0 0 0 0 1 1 1 0 KS C 5601 
0 0 0 0 1 1 1 1 reserved 

Ici vous pouvez voir des valeurs pour les binaires.

Pour la liste terne, vérifiez la spécification SMPPv3.4.

1

Pour ajouter à Incognitos réponse ci-dessus, l'autre paramètre qui est important si vous envoyez des messages binaires est la esm_class.

Les deux valeurs les plus communes sont:

  • 0x00 qui est utilisé pour un message texte standard
  • 0x40 qui définit l'indicateur en-tête de données utilisateur (UDHI)

Si le UDHI est vous devez ensuite analyser un en-tête binaire au début de la charge utile, constitué d'une longueur d'en-tête de données utilisateur (UDHL) indiquant combien d'octets doivent être lus comme en-têtes, suivis par les en-têtes binaires eux-mêmes.

Voir la section 5.2.12 de la spécification SMPP pour toutes les valeurs possibles du paramètre esm_class.