Add ability to set power level
This commit is contained in:
parent
cb4df84d49
commit
3977ea0074
1 changed files with 24 additions and 0 deletions
|
@ -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;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue