Schon bevor wir die User Apps in Knuddels eingeführt haben, war es einer der größten Wünsche von MyChannel-Besitzern bestimmte Nutzer aus ihrem MyChannel auszusperren. Dies war bisher nur über MyChannel-Einstellungen möglich, was aber auch Probleme offen ließ. Ich möchte erklären, wie dies mit User Apps nun besser möglich ist.
Bisher gab es diese Einstellungen im MyChannel-Edit:
- Mindestalter
- Mindeststatus
- Geschlecht
- Anzahl Stammimonate
- Anzahl Registriertage
Hierbei waren typische, gewünschte Fälle bisher nicht abgedeckt. Beispielsweise Maximalalter oder Mindestanzahl Knuddel. Auch eine Blacklist, um wiederkehrende Störenfriede zuverlässig auszuschließen musste bisher händisch realisiert werden.
Das Beispiel zeigt die Verwendung des AppHooks mayJoinChannel, durch den verhindert wird, dass Leute den Channel betreten, die den Buchstaben i am Anfang des Nicknamens haben.
var App = (new function(){ this.mayJoinChannel = function(user) { var nick = user.getNick().toLowerCase(); if (nick.startsWith('i')) { return ChannelJoinPermission.denied('Du kommst hier nicht rein.'); } else { return ChannelJoinPermission.accepted(); } } }());