Можем ли мы сделать операцию CRUD через SMPP? - PullRequest
0 голосов
/ 02 апреля 2019

У меня работает SMPP-сервер. Мне нужно проверить клиентов из базы данных и после проверки необходимо отправить ответ сервера. Вот мой код:

var smpp = require("smpp");
var server = smpp.createServer(function(session) {
  session.on("bind_transceiver", function(pdu) {
    console.log("Client is connected with systemId " + pdu.system_id);
    console.log(pdu.command_status);
    // session.pause();

// Here i want to validate. How to verify these system_id and password from MongoDB database?
    checkAsyncUserPass(pdu.system_id, pdu.password, function(err) {
      if (err) {
        session.send(
          pdu.response({
            command_status: smpp.ESME_RBINDFAIL
          })
        );
        session.close();
        return;
      }
 session.send(pdu.response()); // if client is authenticated, then only sends response 
      session.resume();
    });
  });
});
function checkAsyncUserPass(id, pw, fn) {
// This is the function where client needs to be verified from database.
  return true;
}

server.listen(2775, () => console.log("SMPP Sever is listening at 2775"));

В обычном сценарии я мог бы использовать expressjs и заставить Http получать или отправлять запросы. Но как то же самое можно сделать в SMPP?

...