Telegram Group

From CoMakingSpace Wiki

Revision as of 18:01, 3 April 2019 by NitramLegov (talk | contribs) (Added feature ideas)

There is a CoMakingSpace Telegram group for any members who are interested in "Maker" chitchat, short-notice cooperation, live updates from the Space and general foolery ;-)

Feel free to join using the link above! This channel should of course not replace our mailing list, but that way every message has its place.

Telegram Bot

Telegram as a messaging service has been chosen because it offers a nice API for bot development.

The bot we are using has been developed in Python and is mainly using the python wrapper for the telegram bot API.
In order to have the bot run 24/7, it is currently running on the Raspberry Pi in the Common Room. You can find the code on GitHub.

In case you want to use the bot, please use this link.

Features

The functionality of the bot is devided in three authorization groups:

  1. Public
    These are functions which are not at all restricted. Any telegram user can use these.
  2. Authorization Group 1
    These functions are generally working, but are either in beta test or should only be run by a limited number of users.
  3. Authorization Group 2
    These functions are administrative functions are should only be used by people who know exactly what they are doing.

As an overview, the bot currently provides the following:

Command Parameters Authorization Group Functionality Other triggers
/start public Returns a list of all commands which are enabled for this user.
/wikiuser public Returns a list of the number of the top ten wiki authors (based on the number of bytes changed) of the last 7 days.
/help public Returns a link to this article
/events number of days (e.g. /events 10) public Returns a list of events from the CoMakingSpace Google Calender for the given number of days (default: 14) Runs automatically on sundays for the next 14 days and posts that into the Telegram Group.
/wie_kann_ich_martin_am_besten_nerven Authorization Group 1 Returns "sei einfach du selbst".
/randomize_ringtone Authorization Group 1 Sets a new random ringtone and sends it to the first user of authorization group 2. Randomizing the Ringtone runs daily at midnight. In case somebody manually changes the ringtone, this will also trigger the information to the first user of authorization group2.
/fdd Text (e.g. /fdd Hallo Authorization Group 1 Sends text to the [FDD].
/update Authorization Group 2 Triggers a git pull on the pi and returns the output. Afterwards, it restarts the bot.
/github number of days (e.g. /github 10), defaults to 1 Authorization Group 2 Checks what happened in the Issue Tracker in the given number of days and returns an overview. Runs automatically daily at 1pm and posts the results to the Telegram Group.

Feature Ideas

Command Parameters Authorization Group Functionality Other triggers
/print a file Authorization Group 1 Prints the file given by the user on our Printer -
/QR_Code Name of a Tool Page Authorization Group 1 Uses the wikicrawler in order to generate the QR Code of a tool and send it to the user -
/Project_Pic Name of a Project Page Authorization Group 1 Uses the wikicrawler in order to download the picture of a given project, add the QR code and return it as a printable picture for the Project Wall -