* [Manual setup](#manual-setup) * [systemd](#systemd) * [Docker](#docker) --- # Manual setup These instructions describe how to install and run the bridge manually from a clone of this repository. ## Minimum requirements * Python 3.7 * Node 16.13 (not yet tested with earlier versions) * postgresql 11 * A KakaoTalk account on a smartphone (Android or iOS) ## Optional requirements * Native dependencies for [end-to-bridge](https://docs.mau.fi/bridges/general/end-to-bridge-encryption.html): https://docs.mau.fi/bridges/python/optional-dependencies.html#all-python-bridges ## Initial setup ### node-kakao module 1. `cd` to the `node` directory and run `npm install` 1. Copy `node/example-config.json` to `node/config.json` 1. Edit `node/config.json` with desired settings (see [node/README.md](node/README.md) for details) ### Bridge module 1. `cd` to the repository root and create a Python virtual environment with `python3 -m venv .venv`, and enter it with `source .venv/bin/activate` 1. Install Python requirements: * `pip install -Ur requirements.txt` for base functionality * `pip install -Ur optional-requirements.txt` for [end-to-bridge](https://docs.mau.fi/bridges/general/end-to-bridge-encryption.html) encryption and metrics * Note that end-to-bridge encryption requires some native dependencies. For details, see https://docs.mau.fi/bridges/python/optional-dependencies.html#all-python-bridges 1. Copy `matrix_appservice_kakaotalk/example-config.yaml` to `config.yaml`, and update it with the proper settings to connect to your homeserver * In particular, be sure to set the `rpc.connection` settings to use the socket you chose in `node/config.json` 1. Run `python -m matrix_appservice_kakaotalk -g` to generate an appservice registration file, and update your homeserver configuration to accept it ## Running manually 1. In the `node` directory, launch the node-kakao module with `node src/main.js` 1. In the project root directory, run the bridge module with `python -m matrix_appservice_kakaotalk` 1. Start a chat with the bot and use the `login ` command to sync your KakaoTalk account * Note that on first use, you must enter a verification code on a smartphone version of KakaoTalk in order for the login to complete ## systemd Coming soon! ## Upgrading Simply `git pull` or `git rebase` the latest changes and rerun any installation commands (`npm install`, `pip install -Ur ...`). # Docker Coming soon!