Telegram bot written in Lua
Find a file
2022-02-28 10:17:49 +03:00
etc update lib, add some random 2022-02-28 10:17:49 +03:00
src update lib, add some random 2022-02-28 10:17:49 +03:00
.gitignore update readme, fix .gitignore 2022-02-26 10:08:26 +03:00
.gitmodules more reply reactions and match whole words, replace Unicode library 2022-02-27 13:22:07 +03:00
bot.rc update lib, remove depend() in rc file 2022-02-02 18:52:28 +03:00
config.lua add хуех on эх, start command 2022-02-25 10:31:32 +03:00
init.lua luajit support 2022-01-23 18:18:53 +03:00
LICENSE add readme, some code refactoring 2021-07-19 10:55:01 +03:00
readme.org update readme, fix .gitignore 2022-02-26 10:08:26 +03:00
start.sh luajit support 2022-01-23 18:18:53 +03:00

Computer bot

Original is here and on my private server. Mirrors can update irregularly.


This is a bot for Telegram. It haven't got much possibilities, but this code can be used in other bots.

Bot can use locale of Telegram client (unlike much bots) and use it or fallback to English.

Bot uses an OOP-style of Lua as described on Wikipedia.

For more readability bot's userland written in MoonScript.

Maybe I will rewrite bot's core to C but here already so many Lua code.

Installation

Alpine linux, root:

  • Enable community repo (described in wiki)
  • Install lua and tools: apk add doas git lua5.3-dev luarocks musl-dev gcc openssl-dev
  • Install LuaSec for https requests: luarocks-5.3 install luasec
  • Install MoonScript: luarocks-5.1 install moonscript
  • Create user: adduser user setup it (add to doas) and login to this user
  • Clone repo: git clone --recursive https://gitdab.com/er2/comp-tg and enter cd comp-tg
  • Change token and owner in config.lua
  • Compile bot: moonc src/
  • Add service doas cp bot.rc /etc/init.d/mybot && doas chmod +x /etc/init.d/mybot
  • Configure it doas vi /etc/init.d/mybot (change user)
  • Start it doas service mybot start