This project realizes a signal community bot known from other social plattforms like Twitch, Discord & Mumble. It is based on the simple request to automatically remind a groupchat of upcoming birthdays and events.
This project realizes a signal community bot known from other social plattforms like Twitch, Discord & Mumble. It is based on the simple request to automatically remind a groupchat of upcoming birthdays and events.
# Installation
# Installation
This chapter covers the whole installation of the signalbot while using a Raspberry Pi 4 with RaspberryOS already installed. Additionally you'll need a phonenumber that is not linked to an existing signal account.
If you just want to use the bot via Signal scroll down to [Features](# Features) .
## Installation preparation
## Installation preparation
...
@@ -106,33 +108,34 @@ You can use:\
...
@@ -106,33 +108,34 @@ You can use:\
`.dadjoke` - Make a really good pun
`.dadjoke` - Make a really good pun
`.deepl <L1-L2>, <String>` or `.deepl <L2>, <String>` - Translate a language. `<L1-L2>` are Language Codes. If you use only `<L2>`, the bot will try to guess the language of `<String>`. Powered by [DeepL](https://www.deepl.com)
`.deepl <LC>, <String>` - Translate a word, sentence or even small texts with the DeepL translator. `<LC>` is a language code.\
The bot will try to guess the language of `<String>`. Example: `.deepl ES, Where is the library?` Powered by [DeepL](https://www.deepl.com)
## Crawlers
## Crawlers
`.genderneutral <German String>` or `.gn <German String>` - Looks if a string (can be more than one sentence) is genderneutral and displays alternatives for genderspecific words.\
`.genderneutral <German String>` or `.gn <German String>` - Looks if a string (can be more than one sentence) is genderneutral and displays alternatives for genderspecific words. Powered by [geschicktgendern](https://www.geschicktgendern.de)
Powered by [geschicktgendern](https://www.geschicktgendern.de)
`.freegames` - Displays video games that are currently free, _but usually not_. Powered by [freegamesyo](https://www.freegamesyo.com)
`.freegames` - Displays video games that are currently free, *but usually not*. Powered by [freegamesyo](https://www.freegamesyo.com)
## Databases
## Databases
`.saveQuote <"Quote"> <Person> <Year>` - Save a quote. Type .savequote "640 kB ought to be enough for anybody.", Not Gates, 1981
`.saveQuote <"Quote">, <Person>, <Year>` - Save a quote. Example: `.savequote "640 kB ought to be enough for anybody.", Not Gates, 1981`
`.randomQuote` - Take a random Quote and display it.
`.randomQuote` - Display a random quote.
`.saveEvent <Headline>; <Date>; <Description>` - Save an event. The bot will remind you one day before the event and at the actual day, each at 9 o'clock. To delete an event use .request!
`.saveEvent <Headline>; <Date>; <Description>` - Save an event. The bot will remind you one day before the event and at the actual day, each at 9 o'clock. Example: `.saveEvent CSD-Düsseldorf; 16.10.2021; 🏳️🌈 🏳️🌈 🏳️🌈`.
`.nextEvent` - Display the upcoming event.
`.nextEvent` - Display the upcoming event.
`.saveBirthday <Name>, <Date>` - Save a birthday. The bot will congratulate on that day. To delete a birthday use .request!
`.saveBirthday <Name>, <Date>` - Save a birthday. The bot will congratulate on that day.
`.nextBirthday` - Display the next birthday.
`.nextBirthday` - Display the next birthday.
`.allBirthdays` - Get a list of all birthdays.
`.allBirthdays` - Get a list of all birthdays.
*Hint: instead of save, you can also write create and add!*
*Hint: instead of save, you can also write create and add!*\
**To delete Quotes, Birthdays or Events please use**`.request`
## Misc
## Misc
`.tex <equation>` - Convert a typed equation into a rendered formula.
`.tex <equation>` - Convert a typed equation into a rendered formular.
`.sips` - A simple drinking game. Hand out a number of sips. But be aware of backfiring.
`.sips` - A simple drinking game. Hand out a number of sips. But be aware of backfiring.
...
@@ -140,7 +143,7 @@ Powered by [geschicktgendern](https://www.geschicktgendern.de)
...
@@ -140,7 +143,7 @@ Powered by [geschicktgendern](https://www.geschicktgendern.de)
`.challenge` - Bored? Stuck in your own comfort-zone? Get a random challenge for the day! In cooperation with [Jugendkirche Düsseldorf](https://ejdus.de/einricht_gemeinden/jugendkirche/)
`.challenge` - Bored? Stuck in your own comfort-zone? Get a random challenge for the day! In cooperation with [Jugendkirche Düsseldorf](https://ejdus.de/einricht_gemeinden/jugendkirche/)
`.roll <Range>` - Roll a number in a set range. If no range is stated it will generate an integer in the interval 1 <= x < 100
`.roll <X-Y>` - Roll a number *n*in a set range X <= n < Y. If no range is stated it will generate an integer in the interval 1 <= n < 100. Example: `.roll 3-7`
`.request <String>` - Do you wish for anything else? Request it!
`.request <String>` - Do you wish for anything else? Request it!