Move stuff around to hopefully really fix "couldn't determine correct number to send SMS from"

This commit is contained in:
Skylar Ittner 2021-07-12 19:35:10 -06:00
parent b7bd44ee57
commit 20cdc13c6c

38
main.js
View File

@ -110,13 +110,13 @@ function createOrJoinSMSRoom(tel, ournumber, callback) {
if (inRoom) {
// we're already in the room, do nothing
logger.debug("Room " + roomName + " already joined.");
setSMSRoomPowerLevels(res.room_id);
client.setRoomTag(roomid, "com.netsyms.matrix-bridge-voxtelesys.sms", {tel: tel, ournumber: ournumber});
callback(res.room_id);
} else {
// not in the room, join it
client.joinRoom(res.room_id).then((room) => {
logger.debug("Room " + roomName + " joined.");
setSMSRoomPowerLevels(res.room_id);
client.setRoomTag(roomid, "com.netsyms.matrix-bridge-voxtelesys.sms", {tel: tel, ournumber: ournumber});
callback(room.room_id);
});
}
@ -156,7 +156,6 @@ function createOrJoinSMSRoom(tel, ournumber, callback) {
topic: "SMS conversation with " + formatPhoneNumber(tel, "(NNN) NNN-NNNN") + " (using " + formatPhoneNumber(ournumber, "(NNN) NNN-NNNN") + ")"
}).then((room) => {
logger.debug("Room" + roomName + " created with ID " + room.room_id);
setSMSRoomPowerLevels(res.room_id);
// The first message or two we send doesn't go through unless we do this.
// It just spits out "Error sending event M_FORBIDDEN: Unknown room" instead.
createOrJoinSMSRoom(tel, ournumber, callback);
@ -164,31 +163,6 @@ function createOrJoinSMSRoom(tel, ournumber, callback) {
});
}
function setSMSRoomPowerLevels(roomid) {
var userPowerLevels = {};
for (var i = 0; i < settings.inviteusers.length; i++) {
userPowerLevels[settings.inviteusers[i]] = 50;
}
userPowerLevels["@" + settings["matrixuser"] + ":" + settings["matrixdomain"]] = 100;
client.sendEvent(roomid, "m.room.power_levels", {
"events": {
"m.room.name": 50,
"m.room.power_levels": 50,
"m.room.canonical_alias": 100
},
"events_default": 0,
"invite": 50,
"kick": 50,
"notifications": {
"room": 50
},
"redact": 50,
"state_default": 50,
"users": userPowerLevels,
"users_default": 50
});
}
function getAndUploadFile(url, callback) {
logger.info("Downloading MMS media " + url);
// download
@ -385,16 +359,12 @@ client.login("m.login.password", {"user": settings.matrixuser, "password": setti
}
}
logger.info("Got request to start new SMS conversation with " + tel + " from " + event.getSender() + ".");
sendMatrixNotice(event.getRoomId(), "Starting new conversation with " + tel);
sendMatrixNotice(event.getRoomId(), "Starting conversation with " + tel);
createOrJoinSMSRoom(tel, ournumber, function (roomid) {
client.setRoomTag(roomid, "com.netsyms.matrix-bridge-voxtelesys.sms", {tel: tel, ournumber: ournumber});
//client.setRoomTag(roomid, "com.netsyms.matrix-bridge-voxtelesys.sms", {tel: tel, ournumber: ournumber});
});
}
return;
} else if (event.getContent().body.startsWith("!fixperms")) {
sendMatrixNotice(event.getRoomId(), "Resetting power levels for this room.");
setSMSRoomPowerLevels(event.getRoomId());
return;
}
const matches = room.name.match(/([1-9][0-9]+)/g);
if (matches.length == 1) {