Anime Gif Bot voor Telegram

Een bot voor Telegram die willekeurige anime gifjes verstuurd

Mijn klasgenoten en ik gebruiken vaak Telegram om te communiceren. Soms om wat leuks te delen, soms voor projecten, en vaak om elkaar de gek aan de steken. Op een bepaald moment hadden we allemaal gifs verzameld in 1 map op Dropbox die we dan konden sturen. Wat ik ontdekte was dat we vaak de gifs kozen die boven aan stonden terwijl de anderen (bijna) niet gebruikt werden. Ook werd de map veel te groot waardoor we niet toekomstige projecten hier meer konden opslaan. Hierop besloot ik een bot te maken die willekeurig een gif kan sturen naar gebruikers en groep chats in Telegram.

Ik begon met het uitzoeken hoe ik dit het beste kon aanpakken, en volgde een simpel “Hello World” voorbeeld geschreven in Javascript en draaiende op een Raspberry Pi met NodeJS. Dit voorbeeld heb ik vervolgens uitgewerkt naar een veel meer ingewikkelder versie, die met een database kon verbinden en daaruit een gif kon halen. Een gif moet gestuurd worden naar de bot door een geautoriseerd persoon voordat het wordt opgeslagen in de database.

Na een paar dagen liet ik de bot specifieke gifs ophalen door met het commando een ID mee te geven. Ook had ik de bot zo aangepast zodat ik kon zien welke gifs het meest gebruikt waren.

Vaak moest ik terug in de code om dingen te herschrijven, en NodeJS vond het ook niet zo leuk om zo lang aan te staan waardoor ik elke ochtend de bot weer opnieuw kon opstarten. Na 6 maanden liet ik de bot offline, omdat de API van Telegram veranderd was dat ik weer moest veranderen hoe de bot berichten kon lezen. Hoewel dat simpel op te lossen was, vond ik dat het nodig was om de bot te herschrijven zodat het niet meer elke ochtend zou crashen. Helaas had ik de tijd hier niet voor.

Eind Januari 2017 ben ik begonnen om de bot te schrijven in C#. 27 Januari liet ik hem publiek gaan. Recentelijk is de bot verder ontwikkeld zodat gebruikers weer specifiece gifjes kunnen opvragen dmv de ID. Ook heb ik de bot de mogelijkheid gegeven om uit channels te stappen, omdat dat ook vaak de oude bot liet crashen.

De huidige bot draait op een Linux Server door middel van Mono.

De bot is bereikbaar hier, maar denk er om! De gifjes zijn toegevoegd door jonge mannen, en zijn dus vaak NSFW!

 

Geef een reactie