riot-translatebot

A simple riot bot which provides Status about Weblate
git clone git://archive.git.mtrnord.blog/Nordgedanken/riot-translatebot.git
Log | Files | Refs | README | LICENSE

index.js (1785B)


      1 import login from './login';
      2 import CommandHandler from './commands';
      3 
      4 const mx = new login;
      5 mx.getClient().then(client => {
      6     const ServerStart = new Date;
      7     const commands = new CommandHandler(client);
      8     client.on("Room.timeline", (event, room, toStartOfTimeline) => {
      9         if ((ServerStart - event.getDate()) > 0) return;
     10         if (toStartOfTimeline) return;
     11         if (event.getType() !== "m.room.message") return;
     12         if (event.getContent().msgtype !== "m.text") return;
     13         if (event.getSender() === "@MTRNord:matrix.org") return;
     14         if (room.roomId !== "!EDuQpgunAOTYiUKIcU:matrix.org" && room.roomId !== "!OYyXUbcTKVsDBUniNn:matrix.eclabs.de") return;
     15         const message = "" + event.getContent().body;
     16         if (message.startsWith("!help")){
     17             console.log(
     18                 "\r\n(%s) %s :: %s\r\n", room.name, event.getSender(), message
     19             );
     20             commands.help(room);
     21         } else if (message.startsWith("!languages")){
     22             console.log(
     23                 "\r\n(%s) %s :: %s\r\n", room.name, event.getSender(), message
     24             );
     25             commands.languages(room);
     26         } else if (message.startsWith("!projects")){
     27             console.log(
     28                 "\r\n(%s) %s :: %s\r\n", room.name, event.getSender(), message
     29             );
     30             commands.projects(room);
     31         } else if (message.startsWith("!status")){
     32             const message_split = message.split(" ");
     33             let lang;
     34             if (message_split.length > 1){
     35                 lang = message_split[1];
     36             }
     37             console.log(
     38                 "\r\n(%s) %s :: %s\r\n", room.name, event.getSender(), message
     39             );
     40             commands.status(room, lang);
     41         }
     42     });
     43     client.startClient();
     44 });