/Ayzek

Bot for all social networks! (Vkontakte/Telegram/Discord/E.t.c)

Primary LanguageJavaScriptMIT LicenseMIT

Ayzek

Greenkeeper badge

How to run:

Initial setup:

  • Configure bot in entryPoint.example.js
  • Copy entryPoint.example.js to entryPoint.js

Open a terminal and type the following commands:

  • git clone https://github.com/creeplays/framework packages
  • cd packages&&ln -s @meteor-it dist&&cd .. (TODO: Use framework packages from NPM)
  • npm install
  • npm run compile-dev (Ignore all errors and warnings in console; they will be fixed soon)

In a new terminal, type:

  • npm run run-dev

Next commands:

In first terminal, type:

  • npm run compile-dev

In another terminal, type:

  • npm run run-dev

How to write plugins:

  • Look at plugins/publicPlugins/FunPlugin and write other plugins in similar directories
  • Or, you can read hubot docs and write plugins for them in hubotPlugins

Features:

  • Compatible with multiple plugin formats, such as:
    • Venom bot
    • Hubot plugins
    • Lila
    • Ayzek's very own plugin format (The best one, by default)
  • Single process can have multiple Ayzek instances
  • Every Ayzek instance can handle multiple API connections
  • Powerful plugin system
  • Fast asynchronous state management
  • Hot plugin replacement (You can edit plugins without restarting the bot)
  • Compilable to single standalone JavaScript file

Supported API's:

Messenger Module Repository
Telegram (as bot) @meteor-it/xbot/api/tg Multirepo
Telegram (as user) @meteor-it/xbot/api/tgmtproto Multirepo
Vkontakte @meteor-it/xbot/api/vk Multirepo
Discord @meteor-it/xbot/api/ds Multirepo

Roadmap:

  • Better documentation
  • More APIs
  • I18N support with @meteor-it/templato
  • Plugin store
  • Upload native plugin support
    • Waiting for Venom-Bot api stabilization
    • Implement bindings
  • AyzekSDK upload
    • Ayzek-RED private release
    • Attachments in websocket API
  • UtilPlugin
    • Piping command output