https://github.com/tak172/crossword_generator_bot
Telegram bot - crossword generator
https://github.com/tak172/crossword_generator_bot
cpp crossword-generator html rtf sqlite3 telegram-bot
Last synced: 3 months ago
JSON representation
Telegram bot - crossword generator
- Host: GitHub
- URL: https://github.com/tak172/crossword_generator_bot
- Owner: tak172
- License: gpl-3.0
- Created: 2023-08-02T15:54:23.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-16T17:49:11.000Z (over 1 year ago)
- Last Synced: 2025-01-16T03:16:08.306Z (5 months ago)
- Topics: cpp, crossword-generator, html, rtf, sqlite3, telegram-bot
- Language: C++
- Homepage: https://web.telegram.org/
- Size: 7.6 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
![]()
![]()
![]()
## About
Crossword Generator bot поможет пользователю составить кроссворд из списка слов (до 20). Бот пытается составить кроссворд с наибольшим количеством пересечений. Алгоритм работает довольно быстро по сравнению с другими, которые я рассмотрел. Поддерживается 2 языка - английский и русский.
## Start
Для начала вам необходимо создать бота. На habr лежит подробная [статья](https://habr.com/ru/articles/543676/) обо всем, что необходимо знать на первом этапе.
Далее нужно установить необходимые библиотеки. Инструкция по установке tgbot-cpp находится [здесь](https://github.com/reo7sp/tgbot-cpp#tgbot-cpp). Если вы работаете на Windows и устанавливали библиотеку tgbot-cpp через [vspkg](https://github.com/microsoft/vcpkg), то через него же вы можете установить sqlite3.
После создания проекта и проверки подключения библиотек, для совместимости кодировок (русский язык) необходимо указать в дополнительных параметрах командной строки **/utf-8**. В Visual Studio необходимо перейти в **Проект - Свойства - С/С++ - Командная строка** и в **Дополнительных параметрах** написать **/utf-8**.
![]()
Затем необходимо сохранить bot.cpp с кодировкой "Юникод (UTF-8, с сигнатурой).
![]()
Последний шаг перед запуском, скопируйте токен вашего бота у BotFather(используете команду /mybots, выбираете бота и нажимаете APItoken), создайте в папке с проектом token.txt, вставьте токен в файл.
Готово! Запускайте проект и пользуйтесь ботом.
Для того чтобы ваш бот стабильно работал, его необходимо разместить на хостинге. Есть платные варианты (гарантируют стабильную работу), и бесплатные. К сожалению у меня возникли трудности с размещением бота на бесплатных хостин сервисах, а платные я не пробовал, в связи с чем не могу ничего порекомендовать.
## Commands
- **/instruction** - инструкция по использованию бота.
- **/start** - запуск бота и выбор языка
- **/generate** - начало генерации кроссворда
- **/users_count** - количество пользователей бота## Demonstration
Видео демонстрации работы:
https://github.com/tak172/Crossword_generator_bot/assets/120005445/4a01198e-5630-4807-826d-4a18b35d0761
## Documentation
- [SQLite](https://www.sqlite.org/cintro.html);
- [tgbot-cpp](https://reo7sp.github.io/tgbot-cpp/);## Developers
- [Kromachev Timofey](https://github.com/tak172)
- [Kromachev Maxim](https://github.com/kromachmax)## License
Project Crossword_Generator_bot is distributed under the **GNU General Public License**.