ESME_RALYBND dans SMPP
Qu'est-ce que ESME_RALYBND ?
ESME_RALYBND (Code d'erreur : 0x0000000B) est une erreur SMPP qui indique que l'ESME (External Short Messaging Entity) est déjà lié. Cela se produit lorsqu'un client SMPP tente de se lier alors qu'une session active avec le même identifiant système est déjà établie.
Causes possibles
- Le client est déjà lié mais tente une autre requête
bind_transmitter
,bind_receiver
oubind_transceiver
sans se délier au préalable. - La session précédente n'a pas été correctement fermée, ce qui amène le SMSC à croire que le client est toujours connecté.
- Plusieurs instances du même client avec le même identifiant système tentent de se lier simultanément.
- Le SMSC impose une restriction sur les liaisons concurrentes pour le même identifiant système.
Quand cela se produit-il ?
Cette erreur se produit lorsqu'un client SMPP envoie une requête de liaison alors qu'il est déjà lié ou si une connexion précédente n'a pas été correctement fermée.
Exemple de transaction PDU SMPP
Voici un exemple de scénario incorrect où une seconde requête bind_transmitter
est envoyée alors que le client est déjà lié :
0000001C (Longueur) 00000002 (ID de commande pour bind_transmitter) 00000000 (Statut de commande) 00000001 (Numéro de séquence) 74657374 000000 (ID système : "test") 000000 (Mot de passe)
Problème : Le client est déjà lié, et le SMSC rejette la seconde tentative de liaison avec une réponse ESME_RALYBND
.
Approche correcte :
- D'abord, se délier avant de tenter une nouvelle liaison :
- Attendre une réponse
unbind_resp
avant d'envoyer une nouvelle requête de liaison.
00000010 (Longueur) 00000006 (ID de commande pour unbind) 00000000 (Statut de commande) 00000002 (Numéro de séquence)
Comment le résoudre ?
- Assurez-vous qu'une seule session active existe par identifiant système.
- Avant de relier, envoyez une requête
unbind
et attendez une réponseunbind_resp
du SMSC. - Configurez le client pour détecter et gérer correctement les déconnexions ou les délais d'inactivité.
- Vérifiez la présence d'instances dupliquées du même client fonctionnant simultanément.
- Si le problème persiste, contactez le fournisseur du SMSC pour confirmer ses règles de gestion de session.
Si le problème continue, activez les logs de débogage pour tracer les requêtes de liaison et les états de session.
More information
- Opération SMPP ESME_ROK
- Comment résoudre ESME_RINVCMDLEN dans SMPP
- Code d'erreur SMPP ESME RINVMSGLEN
- Code d'erreur SMPP ESME_RINVCMDID
- Code d'erreur SMPP ESME_RINVBNDSTS
- Code d'erreur SMPP ESME_RALYBND
- Code d'erreur SMPP ESME_RINVPRTFLG
- Code d'erreur SMPP ESME_RINVREGDLVFLG
- Code d'erreur SMPP ESME_RSYSERR
- Code d'erreur SMPP ESME_RINVSRCADR
- Code d'erreur SMPP ESME_RINVDSTADR
- Erreur SMPP ID de message invalide
- Code d'erreur SMPP ESME_RBINDFAIL
- Code d'erreur SMPP ESME_RINVPASWD
- Code d'erreur SMPP ESME_RINVSYSID
- Code d'erreur SMPP ESME_RCANCELFAIL
- Code d'erreur SMPP ESME_RREPLACEFAIL
- Code d'erreur SMPP ESME_RMSGQFUL
- Code d'erreur SMPP ESME_RINVSERTYP
- Code d'erreur SMPP ESME_RINVNUMDESTS
- Code d'erreur SMPP ESME_RINVDLNAME
- Code d'erreur SMPP ESME_RINVDESTFLAG
- Code d'erreur SMPP ESME_RINVSUBREP
- Code d'erreur SMPP ESME_RINVESMCLASS
- Code d'erreur SMPP ESME_RCNTSUBDL
- Code d'erreur SMPP ESME_RSUBMITFAIL
- Code d'erreur SMPP ESME_RINVSRCTON
- Code d'erreur SMPP ESME_RINVSRCNPI
- Code d'erreur SMPP ESME_RINVDSTTON
- Code d'erreur SMPP ESME_RINVDSTNPI
- Code d'erreur SMPP ESME_RINVSYSTYP
- Code d'erreur SMPP ESME_RINVREPFLAG
- Code d'erreur SMPP ESME_RINVNUMMSGS
- Code d'erreur SMPP ESME_RTHROTTLED
- Code d'erreur SMPP ESME_RINVSCHED
- Code d'erreur SMPP ESME_RINVEXPIRY
- Code d'erreur SMPP ESME_RINVDFTMSGID
- Code d'erreur SMPP ESME_RX_T_APPN
- Code d'erreur SMPP ESME_RX_P_APPN
- Code d'erreur SMPP ESME_RX_R_APPN
- Code d'erreur SMPP ESME_RQUERYFAIL
- Code d'erreur SMPP ESME_RINVTLVSTREAM
- Code d'erreur SMPP ESME_RTLVNOTALLWD
- Code d'erreur SMPP ESME_RINVTLVLEN
- Code d'erreur SMPP ESME_RMISSINGTLV
- Code d'erreur SMPP ESME_RINVTLVVAL
- Code d'erreur SMPP ESME_RDELIVERYFAILURE
- Code d'erreur SMPP ESME_RUNKNOWNERR
- Code d'erreur SMPP ESME_RSERTYPUNAUTH
- ESME_RPROHIBITED
- Code d'erreur SMPP ESME_RSERTYPUNAVAIL
- Code d'erreur SMPP ESME_RSERTYPDENIED
- Code d'erreur SMPP ESME_RINVDCS
- Code d'erreur SMPP ESME_RINVSRCADDRSUBUNIT
- Code d'erreur SMPP ESME_RINVBCASTFREQINT
- Code d'erreur SMPP ESME_RINVBCASTALIAS_NAME
- Code d'erreur SMPP ESME_RINVBCASTAREAFMT
- Code d'erreur SMPP ESME_RINVNUMBCAST_AREAS
- Code d'erreur SMPP ESME_RINVBCASTCNTTYPE
- Code d'erreur SMPP ESME_RINVBCASTMSGCLASS
- Code d'erreur SMPP ESME_RBCASTFAIL
- Code d'erreur SMPP ESME_RBCASTQUERYFAIL
- Code d'erreur SMPP ESME_RBCASTCANCELFAIL
- Code d'erreur SMPP ESME_RINVBCAST_REP
- Code d'erreur SMPP ESME_RINVBCASTSRVGRP
- Code d'erreur SMPP ESME_RINVBCASTCHANIND
- Code d'erreur SMPP réservé