This is backend for CYRentBot, that sends you notifications with new advertisements for rent in Limassol district
To start backend for your own bot install dependencies and start application:
python3 -m venv ./.venv
./.venv/bin/pip install -r requirements/requirements.txt
TELEGRAM_BOT_TOKEN=<YOUR_BOT_TOKEN> ./.venv/bin/python -m app
Or with docker:
docker run \
-d \
--rm \
--env TELEGRAM_BOT_TOKEN=${TELEGRAM_BOT_TOKEN} \
--env SENTRY_DSN=${SENTRY_DSN} \
--env SENTRY_RELEASE_VERSION=${SENTRY_RELEASE_VERSION} \
--env DATABASE_PATH="db/sqlite.db" \
--volume ~/db:/db \
--name ${CONTAINER_NAME} \
fdooch/cyrentbot:${TAG}
Currently only sqlite database is supported
Initial version of this bot was developed using test && commit || revert (TCR) workflow with some inspiration from clean architecture. You can read my afterthoughts here
Download copy of this repo and install requirements.
python3 -m venv ./.venv
./.venv/bin/pip install -r requirements/requirements.txt -r requirements/dev-requirements.txt
Make changes and ensure linters and tests are pasing:
make lint && make test
To add new parser you must subclass from Parser
and implements all of its abstract method.
See bazaraki parser for reference.
To deploy code simply create new tag on the master branch.