# Public IP tracker [![Build Status](https://drone.faercol.me/api/badges/faercol/public-ip-tracker/status.svg)](https://drone.faercol.me/faercol/public-ip-tracker) Telegram bot that detects changes to the device's public IP. This is particularily useful when the device is handled by an ISP that does not provide a static public IP, such as a home device. ## Features ### Automatic public IP detection and monitoring Upon startup, the current public IP is detected, and a status message is sent to a specific Telegram channel with the relevant information. > Insert example message here When running as a daemon, the program automatically monitors the current public IP adress for changes. If the IP changes for some reason, then the new updated adress is sent to the specific Telegram channel. > Insert example message here ### On-demand public IP The relevant channel is monitored during the program execution. This allows the user to send a command to the bot in order to get the current public IP on-demand. > Insert example here ## Deploy ### Configuration file For now, the program is configured through a JSON configuration file. Here is a sample : ```json { "telegram": { "token": "", "channel_id": 9999999 }, "polling_frequency": 5, "log": { "level": "info" } } ``` ### Docker You can use the provided Dockerfile to build your own image. ```bash docker build -t public-ip-tracker . ``` You can then use the provided configuration file sample, and provide it to the program using the `/config` volume > I might add support for environment variables in the future. ```bash docker run -it -v /path/to/your/dir/with/json/file:/config public-ip-tracker ```