# Telegram Recipe ```php require 'contrib/telegram.php'; ``` [Source](/contrib/telegram.php) ## Installing 1. Create telegram bot with [BotFather](https://t.me/BotFather) and grab the token provided 2. Send `/start` to your bot and open https://api.telegram.org/bot{$TELEGRAM_TOKEN_HERE}/getUpdates 3. Take chat_id from response Add hook on deploy: ```php before('deploy', 'telegram:notify'); ``` ## Configuration - `telegram_token` – telegram bot token, **required** - `telegram_chat_id` — chat ID to push messages to - `telegram_proxy` - proxy connection string in [CURLOPT_PROXY](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY.html) form like: ``` http://proxy:80 socks5://user:password@host:3128 ``` - `telegram_title` – the title of application, default `{{application}}` - `telegram_text` – notification message template ``` _{{user}}_ deploying `{{branch}}` to *{{target}}* ``` - `telegram_success_text` – success template, default: ``` Deploy to *{{target}}* successful ``` - `telegram_failure_text` – failure template, default: ``` Deploy to *{{target}}* failed ``` ## Usage If you want to notify only about beginning of deployment add this line only: ```php before('deploy', 'telegram:notify'); ``` If you want to notify about successful end of deployment add this too: ```php after('deploy:success', 'telegram:notify:success'); ``` If you want to notify about failed deployment add this too: ```php after('deploy:failed', 'telegram:notify:failure'); ## Configuration ### telegram_title [Source](https://github.com/deployphp/deployer/blob/master/contrib/telegram.php#L63) Title of project ```php title="Default value" return get('application', 'Project'); ``` ### telegram_token [Source](https://github.com/deployphp/deployer/blob/master/contrib/telegram.php#L68) Telegram settings :::info Required Throws exception if not set. ::: ### telegram_chat_id [Source](https://github.com/deployphp/deployer/blob/master/contrib/telegram.php#L71) :::info Required Throws exception if not set. ::: ### telegram_url [Source](https://github.com/deployphp/deployer/blob/master/contrib/telegram.php#L74) ```php title="Default value" return 'https://api.telegram.org/bot' . get('telegram_token') . '/sendmessage'; ``` ### telegram_text [Source](https://github.com/deployphp/deployer/blob/master/contrib/telegram.php#L79) Deploy message ```php title="Default value" '_{{user}}_ deploying `{{branch}}` to *{{target}}*' ``` ### telegram_success_text [Source](https://github.com/deployphp/deployer/blob/master/contrib/telegram.php#L80) ```php title="Default value" 'Deploy to *{{target}}* successful' ``` ### telegram_failure_text [Source](https://github.com/deployphp/deployer/blob/master/contrib/telegram.php#L81) ```php title="Default value" 'Deploy to *{{target}}* failed' ``` ## Tasks ### telegram:notify [Source](https://github.com/deployphp/deployer/blob/master/contrib/telegram.php#L85) Notifies Telegram.