Add ability to set power level

This commit is contained in:
Luke Barnard 2016-09-07 09:57:07 +01:00
parent cb4df84d49
commit 3977ea0074

View file

@ -189,6 +189,27 @@ function setBotOptions(event, roomId, userId) {
}); });
} }
function setBotPower(event, roomId, userId, level) {
if (!(Number.isInteger(level) && level >= 0)) {
sendError(event, "Power level must be positive integer.");
return;
}
console.log(`Received request to set power level for bot ${userId} in room ${roomId}.`);
const client = MatrixClientPeg.get();
if (!client) {
sendError(event, "You need to be logged in.");
return;
}
client.setPowerLevel(roomId, userId, level).done(() => {
sendResponse(event, {
success: true,
});
}, (err) => {
sendError(event, err.message ? err.message : "Failed to send request.", err);
});
}
function getMembershipState(event, roomId, userId) { function getMembershipState(event, roomId, userId) {
console.log(`membership_state of ${userId} in room ${roomId} requested.`); console.log(`membership_state of ${userId} in room ${roomId} requested.`);
returnStateEvent(event, roomId, "m.room.member", userId); returnStateEvent(event, roomId, "m.room.member", userId);
@ -281,6 +302,9 @@ const onMessage = function(event) {
case "set_bot_options": case "set_bot_options":
setBotOptions(event, roomId, userId); setBotOptions(event, roomId, userId);
break; break;
case "set_bot_power":
setBotPower(event, roomId, userId, event.data.level);
break;
case "join_rules_state": case "join_rules_state":
getJoinRules(event, roomId); getJoinRules(event, roomId);
break; break;