|
|
|
@ -32,6 +32,9 @@ logger.level = settings.loglevel;
|
|
|
|
|
logger.info("Log initialized.");
|
|
|
|
|
var initialsynccomplete = false;
|
|
|
|
|
|
|
|
|
|
// Save script start time for ignoring older messages
|
|
|
|
|
var boottimestamp = Date.now();
|
|
|
|
|
|
|
|
|
|
// https://github.com/matrix-org/matrix-js-sdk/issues/2415#issuecomment-1188812401
|
|
|
|
|
matrixcs.request(request);
|
|
|
|
|
|
|
|
|
@ -499,13 +502,18 @@ client.on("Room.timeline", function (event, room) {
|
|
|
|
|
}
|
|
|
|
|
if (event.getTs() < (Date.now() - 1000 * 60 * 60 * 8)) {
|
|
|
|
|
// Ignore old events (8 hrs), they're probably duplicates or something.
|
|
|
|
|
logger.info("Ignoring stale Matrix room event");
|
|
|
|
|
logger.warning("Ignoring stale Matrix room event [" + event.getId() + "]: older than 8 hours");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
if (event.getTs() < boottimestamp) {
|
|
|
|
|
logger.warning("Ignoring stale Matrix room event [" + event.getId() + "]: event predates start of this program");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
if (event.getContent() == null || typeof event.getContent().body == "undefined" || event.getContent().body == null) {
|
|
|
|
|
// Apparently this can happen?
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
logger.debug("Got room message (event ID " + event.getId() + ")");
|
|
|
|
|
|
|
|
|
|
if (event.getContent().body.toLowerCase().startsWith("!sms")) {
|
|
|
|
|
// capture command to start room for new number
|
|
|
|
|