farhadi / node-smpp

SMPP client and server implementation in node.js
MIT License
421 stars 180 forks source link

Rebind on reconnecting to smsc is not working #248

Open elhananjair opened 9 months ago

elhananjair commented 9 months ago

Hello friends I have a multiple socket RST problem from SMSC, and I tried to fix it using reconnect, I can see the reconnection going well but I couldn't be sure if the reconnect is working.

here is how I am trying to reconnect:

 session.socket.on('close', () => {
        console.log("Connection to SMSC closed, trying to reconnect...");
        setTimeout(() => {
            try {
                //session.unbind();
                //session.destroy();
                session.connect();
            }catch (e) {
                console.log("Error trying to reconnect with SMSC: " + e.message)
            }

        }, 5000);
    })

     session.on('connect', () => {
        console.log("Connection to SMSC established");
        session.bind_transceiver({system_id: "032332", password: "mypass"}, function (pdu) {
             console.log("Bind Transceiver request have made...")
             if (pdu.command_status === 0) { 
                  console.log("Successfully bound!");
                  session.submit_sm({...})
            }
        })
   })
MartianH commented 2 weeks ago

Reconnecting with this lib is ill-advised as it will reconnect on your side but the connection might still appear dead server-side. The best solution as of now is here: https://github.com/farhadi/node-smpp/issues/90#issuecomment-496895519.

Though it had problems, so I replied with my own here: https://github.com/farhadi/node-smpp/issues/90#issuecomment-2459477518

elhananjair commented 2 weeks ago

Hello @MartianH Thanks for the suggestion, this problem got me in a fight with different companies acting as SMSC, currently, I am shifting to C++ to re-develop the application I have developed through this library.