Fork of markov chain Telegram bot for local VR chat
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Gitea 43720c7c1b message: disable uniqueness check 7 months ago
cfg cfg: extend docker config 7 months ago
resources cfg: make fisting is 00 possible 7 months ago
src message: disable uniqueness check 7 months ago
storage Better file structure 3 years ago
.gitignore update .gitignore 3 years ago
Dockerfile Merge branch 'master' of github.com:telegram-bots/imaginaryfriend 3 years ago
README.md Bot reply fix 3 years ago
docker-compose.yml docker: fix redis vulnerability 7 months ago
requirements.txt Bump pillow from 4.2.1 to 6.2.0 1 year ago
run.py [WIP] #19 Updated readme, config and requirements 3 years ago

README.md

My great plan is to create a Telegram chat bot that would be like shizoid, but in Python and maybe with some extra features.

A-a-a-a-and... it works (@ImaginaryFriendBot)! Thanks to @REDNBLACK.

Features

ImaginaryFriend can:

  • reply to random messages in chat groups,
  • reply to replies to its messages / messages mentioning it,
  • send (one!) sticker (“I’m frustrated by all these stickers”),
  • detect repeating media files and send [:||||||||||||:] to chat,
  • do some commands.

Examples

– @ImaginaryFriendBot один ты меня понимаешь
– Ты глупый кот. Меня зовут антон иванов, мне только что поймала ту же пустоту.
– привет, Антон
– Привет!
– оч приятно, Антон. Я Боря
– Я не знаю юридических тонкостей но по факту квартира же твоя! Боря кот. Оч приятно антон.
– Чем ты занимаешься, ты юрист?
– Ты не видишь чтоль?
– Ну извини, решил уточнить. Как дела то?
– Как дела с потоками в яве обстоят? Ну ты понел. Дела отлично, а твои как?
– Нет. У меня друг в дестве кусался.
– он тебя загрыз?
– Он же говна кусок.
– тебя загрыз кусок говна?
– Тебя наверх задрать надо.
– ты сегодня особо в тему пишешь, что с тобой, ты поумнел?
– Что бы крашилось :3?
– да ты суицидник XD
– Ты не очень умный?
– годный бот
– Бот захватит мир.

Commands

  • /ping: you know the drill,
  • /get_stats: get information on how many pairs are known by ImaginaryFriend,
  • /chance n: set the probability that ImaginaryFriend would reply to a random message (must be in range 1-50, default: 5),
  • /сhance: get current probability that ImaginaryFriend would reply to a message,
  • /mod_f pattern: find all the words starting with pattern,
  • /mod_d word: remove word from ImaginaryFriend’s dictionary,
  • /meow, /woof, /borscht, /boobs, /butts and others: make ImaginaryFriend send a corresponding picture,
  • /vzhuh phrase: make ImaginaryFriend create a вжух meme.

Installation and Setup

Setup using Docker

  1. Install Docker
  2. Open cfg dir and rename main.docker.cfg.example to main.docker.cfg.
  3. Talk to @botfather and create your own bot.
  4. Open main.docker.cfg file in text editor, paste your newly created bot token into bot.token property and your bot name (with Bot postfix) into bot.name property.
  5. Execute docker-compose up. Congrats! You now have ImaginaryFriend of your own!

Setup without Docker

  1. Install Python >= 3.5.2
  2. Install Redis >= 3.2
  3. Install dependencies with PIP by executing command pip install -r requirements.txt
  4. Open cfg dir and rename main.plain.cfg.example to main.plain.cfg
  5. Talk to @botfather and create your own bot.
  6. Open main.plain.cfg file in text editor, paste your newly created bot token into bot.token property and your bot name (with Bot postfix) into bot.name property.
  7. (Optionally) Configure updates property for websocket support and redis property to point to your Redis instance.
  8. Execute the python run.py