Minor fixes regarding sending messages
This commit is contained in:
@@ -2,7 +2,7 @@
|
|||||||
<configuration default="false" name="main.ts" type="TypeScriptProgramRunner" factoryName="TypeScript">
|
<configuration default="false" name="main.ts" type="TypeScriptProgramRunner" factoryName="TypeScript">
|
||||||
<module name="smsgwtester" />
|
<module name="smsgwtester" />
|
||||||
<envs>
|
<envs>
|
||||||
<env name="LOG_LEVEL" value="5" />
|
<env name="LOG_LEVEL" value="4" />
|
||||||
</envs>
|
</envs>
|
||||||
<option name="interpreterRef" value="project" />
|
<option name="interpreterRef" value="project" />
|
||||||
<option name="enabledTsNodeEsmLoader" value="false" />
|
<option name="enabledTsNodeEsmLoader" value="false" />
|
||||||
|
@@ -1,4 +1,5 @@
|
|||||||
import EventEmitter from "events";
|
import EventEmitter from "events";
|
||||||
|
import * as repl from "repl";
|
||||||
import {Job} from "../Job/Job";
|
import {Job} from "../Job/Job";
|
||||||
import {JobEvents} from "../Job/JobEvents";
|
import {JobEvents} from "../Job/JobEvents";
|
||||||
import Logger from "../Logger";
|
import Logger from "../Logger";
|
||||||
@@ -220,9 +221,7 @@ export class Center implements SmppSession {
|
|||||||
if (count > 0 && counter >= count) {
|
if (count > 0 && counter >= count) {
|
||||||
this.cancelSendInterval();
|
this.cancelSendInterval();
|
||||||
} else {
|
} else {
|
||||||
this.sendPdu(job.pdu, true)
|
this.sendPdu(job.pdu, true);
|
||||||
.then(() => {
|
|
||||||
}, err => this.logger.log1(`Error sending message: ${err}`));
|
|
||||||
counter++;
|
counter++;
|
||||||
}
|
}
|
||||||
}, '', `${interval} s`);
|
}, '', `${interval} s`);
|
||||||
@@ -240,7 +239,9 @@ export class Center implements SmppSession {
|
|||||||
this.validateSessions(reject);
|
this.validateSessions(reject);
|
||||||
}
|
}
|
||||||
this.logger.log5(`Center-${this._id} sending PDU: ${JSON.stringify(pdu)}`);
|
this.logger.log5(`Center-${this._id} sending PDU: ${JSON.stringify(pdu)}`);
|
||||||
this.getNextSession().send(pdu, (replyPdu: object) => resolve(replyPdu), (err: object) => reject(err));
|
this.getNextSession().send(pdu, (replyPdu: any) => {
|
||||||
|
resolve(replyPdu);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -320,7 +321,7 @@ export class Center implements SmppSession {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private eventSessionError(session: any): void {
|
private eventSessionError(session: any): void {
|
||||||
this.logger.log1(`A client encountered an error on center-${this._id}}`);
|
this.logger.log1(`A client encountered an error on center-${this._id}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
private eventSessionClose(session: any): void {
|
private eventSessionClose(session: any): void {
|
||||||
|
@@ -106,7 +106,7 @@ export default class ClientSessionManager implements SessionManager {
|
|||||||
this.logger.log1(`Loading clients from ${CLIENT_SESSIONS_FILE}`)
|
this.logger.log1(`Loading clients from ${CLIENT_SESSIONS_FILE}`)
|
||||||
let sessions: Buffer = fs.readFileSync(CLIENT_SESSIONS_FILE);
|
let sessions: Buffer = fs.readFileSync(CLIENT_SESSIONS_FILE);
|
||||||
let loadedSessions: any[] = JSON.parse(String(sessions));
|
let loadedSessions: any[] = JSON.parse(String(sessions));
|
||||||
this.logger.log1(`Loaded ${sessions.length} clients from ${CLIENT_SESSIONS_FILE}`);
|
this.logger.log1(`Loaded ${loadedSessions.length} clients from ${CLIENT_SESSIONS_FILE}`);
|
||||||
loadedSessions.forEach(session => {
|
loadedSessions.forEach(session => {
|
||||||
this.createSession(session.url, session.username, session.password).then((sessionObj: SmppSession) => {
|
this.createSession(session.url, session.username, session.password).then((sessionObj: SmppSession) => {
|
||||||
sessionObj.setDefaultSingleJob(Job.deserialize(session.defaultSingleJob));
|
sessionObj.setDefaultSingleJob(Job.deserialize(session.defaultSingleJob));
|
||||||
|
@@ -61,6 +61,6 @@ export class ClientSet {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private attachListener(session: SmppSession) {
|
private attachListener(session: SmppSession) {
|
||||||
session.on(session.UPDATE_WS, (message: string) => this.notifyClients(message));
|
session.on(session.UPDATE_WS, (message: object) => this.notifyClients(JSON.stringify(message)));
|
||||||
}
|
}
|
||||||
}
|
}
|
25
src/main.ts
25
src/main.ts
@@ -30,19 +30,12 @@ let logger = new Logger("main");
|
|||||||
let clientManager: ClientSessionManager = new ClientSessionManager();
|
let clientManager: ClientSessionManager = new ClientSessionManager();
|
||||||
clientManager.setup();
|
clientManager.setup();
|
||||||
|
|
||||||
let wss: WSServer = new WSServer([clientManager]);
|
// let wss: WSServer = new WSServer([clientManager]);
|
||||||
|
|
||||||
async function main() {
|
async function main() {
|
||||||
// let client: Client = await clientManager.createSession("smpp://localhost:7000", "test", "test") as Client;
|
// let client: Client = await clientManager.createSession("smpp://localhost:7000", "test", "test") as Client;
|
||||||
let client: Client = await clientManager.getSession(0) as Client;
|
let client: Client = await clientManager.getSession(0) as Client;
|
||||||
|
|
||||||
// client.connectAndBind().then(() => {
|
|
||||||
// console.log("POGGIES");
|
|
||||||
// let pdu1 = new smpp.PDU('submit_sm', {
|
|
||||||
// source_addr: "1234567890",
|
|
||||||
// destination_addr: "1234567890",
|
|
||||||
// short_message: "Hello World"
|
|
||||||
// });
|
|
||||||
// // client.sendMultipleDefault();
|
// // client.sendMultipleDefault();
|
||||||
//
|
//
|
||||||
// // client.on(ClientEvents.ANY_PDU, (pdu: any) => console.log(pdu));
|
// // client.on(ClientEvents.ANY_PDU, (pdu: any) => console.log(pdu));
|
||||||
@@ -62,13 +55,17 @@ async function main() {
|
|||||||
|
|
||||||
let center: Center = new Center(0, 7000, "test", "test");
|
let center: Center = new Center(0, 7000, "test", "test");
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
// center.sendMultiple(new Job(new PDU("deliver_sm", {
|
center.sendMultiple(new Job(new PDU("deliver_sm", {
|
||||||
// source_addr: "1234567890",
|
source_addr: "1234567890",
|
||||||
// destination_addr: "1234567890",
|
destination_addr: "1234567890",
|
||||||
// short_message: "Hello World"
|
short_message: "Hello World"
|
||||||
// }), 100, 100));
|
}), 10, 100));
|
||||||
// center.close();
|
// center.close();
|
||||||
}, 1000);
|
}, 5000);
|
||||||
|
|
||||||
|
client.connectAndBind().then(() => {
|
||||||
|
console.log("POGGIES");
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
main();
|
main();
|
||||||
|
Reference in New Issue
Block a user