Move stuff around to hopefully really fix "couldn't determine correct number to send SMS from"
This commit is contained in:
parent
b7bd44ee57
commit
20cdc13c6c
38
main.js
38
main.js
@ -110,13 +110,13 @@ function createOrJoinSMSRoom(tel, ournumber, callback) {
|
|||||||
if (inRoom) {
|
if (inRoom) {
|
||||||
// we're already in the room, do nothing
|
// we're already in the room, do nothing
|
||||||
logger.debug("Room " + roomName + " already joined.");
|
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);
|
callback(res.room_id);
|
||||||
} else {
|
} else {
|
||||||
// not in the room, join it
|
// not in the room, join it
|
||||||
client.joinRoom(res.room_id).then((room) => {
|
client.joinRoom(res.room_id).then((room) => {
|
||||||
logger.debug("Room " + roomName + " joined.");
|
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);
|
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") + ")"
|
topic: "SMS conversation with " + formatPhoneNumber(tel, "(NNN) NNN-NNNN") + " (using " + formatPhoneNumber(ournumber, "(NNN) NNN-NNNN") + ")"
|
||||||
}).then((room) => {
|
}).then((room) => {
|
||||||
logger.debug("Room" + roomName + " created with ID " + room.room_id);
|
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.
|
// 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.
|
// It just spits out "Error sending event M_FORBIDDEN: Unknown room" instead.
|
||||||
createOrJoinSMSRoom(tel, ournumber, callback);
|
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) {
|
function getAndUploadFile(url, callback) {
|
||||||
logger.info("Downloading MMS media " + url);
|
logger.info("Downloading MMS media " + url);
|
||||||
// download
|
// 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() + ".");
|
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) {
|
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;
|
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);
|
const matches = room.name.match(/([1-9][0-9]+)/g);
|
||||||
if (matches.length == 1) {
|
if (matches.length == 1) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user