python-zulip-api/zulip_botserver
LoopThrough-i-j 1fb3d529a9 zulip-bots: Set bot_handler type to BotHandler.
- Set `bot_handler` type to `BotHandler`.
- Fix mypy issues in improperly typed variables, params and returns.

Fixes part of #639
2021-03-03 13:31:50 -08:00
..
tests zulip-bots: Set bot_handler type to BotHandler. 2021-03-03 13:31:50 -08:00
zulip_botserver zulip-botserver: Allow passing config via JSON formatted environment variable. 2021-01-07 00:31:26 -08:00
README.md zulip-botserver: Document use of environment var in README.md 2021-01-07 00:31:26 -08:00
setup.py python-zulip-api: Drop python3.5 support. 2021-02-26 07:32:47 -08:00
zulip-botserver-supervisord.conf botserver: Rename zulip-bot-server to zulip-botserver. 2018-06-04 10:14:17 -07:00

zulip-botserver --config-file <path to botserverrc> --hostname <address> --port <port>

Example: zulip-botserver --config-file ~/botserverrc

This program loads the bot configurations from the config file (botserverrc, here) and loads the bot modules. It then starts the server and fetches the requests to the above loaded modules and returns the success/failure result.

The --hostname and --port arguments are optional, and default to 127.0.0.1 and 5002 respectively.

The format for a configuration file is:

[helloworld]
key=value
email=helloworld-bot@zulip.com
site=http://localhost
token=abcd1234

Is passed --use-env-vars instead of --config-file, the configuration can instead be provided via the ZULIP_BOTSERVER_CONFIG environment variable. This should be a JSON-formatted dictionary of bot names to dictionary of their configuration; for example:

ZULIP_BOTSERVER_CONFIG='{"helloworld":{"email":"helloworld-bot@zulip.com","key":"value","site":"http://localhost","token":"abcd1234"}}' \
  zulip-botserver --use-env-vars