From fb0d8260ee052f27d210eec8f3b8f2a665be134a Mon Sep 17 00:00:00 2001 From: fabcx <64059956+fabcx@users.noreply.github.com> Date: Tue, 21 Apr 2020 16:29:00 +0200 Subject: [PATCH] Add files via upload Initial release --- config.py | 12 ++++++++++++ handler.py | 34 ++++++++++++++++++++++++++++++++++ main.py | 26 ++++++++++++++++++++++++++ requirements.txt | 6 ++++++ 4 files changed, 78 insertions(+) create mode 100644 config.py create mode 100644 handler.py create mode 100644 main.py create mode 100644 requirements.txt diff --git a/config.py b/config.py new file mode 100644 index 0000000..cf949d7 --- /dev/null +++ b/config.py @@ -0,0 +1,12 @@ +# Alert message in TradingView ex. https://i.imgur.com/QpAP3wp.png +Buy_Alert = 'Buy Alert!' +Sell_Alert = 'Sell Alert!' + +# Telegram Settings +send_telegram_alerts = True +tg_token = '' # Bot token. Get it from @Botfather +channel = # Channel ID ex. -1001487568087 + +# Discord Settings +send_discord_alerts = True +discord_webhook = '' # Discord Webhook URL (https://support.discordapp.com/hc/de/articles/228383668-Webhooks-verwenden) \ No newline at end of file diff --git a/handler.py b/handler.py new file mode 100644 index 0000000..fb02558 --- /dev/null +++ b/handler.py @@ -0,0 +1,34 @@ +import config as config +from telegram import Bot +from discord_webhook import DiscordWebhook + +tg_bot = Bot(token=config.tg_token) + +telegram = config.send_telegram_alerts +discord = config.send_discord_alerts + +def send_buy_order(data): + if telegram: + tg_bot.sendMessage(config.channel, config.Buy_Alert) + print('Alert has been sent to Telegram.') + else: + print('INFO: Telegram alerts are disabled.') + if discord: + discord_alert = DiscordWebhook(url=config.discord_webhook, content=config.Buy_Alert) + response = discord_alert.execute() + print('Alert has been sent to Discord.') + else: + print('INFO: Discord alerts are disabled.') + +def send_sell_order(data): + if telegram: + tg_bot.sendMessage(config.channel, config.Sell_Alert) + print('Alert has been sent to Telegram.') + else: + print('INFO: Telegram alerts are disabled.') + if discord: + discord_alert = DiscordWebhook(url=config.discord_webhook, content=config.Sell_Alert) + response = discord_alert.execute() + print('Alert has been sent to Discord.') + else: + print('INFO: Discord alerts are disabled.') \ No newline at end of file diff --git a/main.py b/main.py new file mode 100644 index 0000000..2794b02 --- /dev/null +++ b/main.py @@ -0,0 +1,26 @@ +import config as config +from flask import Flask, request, abort +from handler import send_buy_order, send_sell_order + +app = Flask(__name__) + +@app.route('/webhook', methods=['POST']) +def webhook(): + if request.method == 'POST': + data = request.get_data(as_text=True) + if config.Buy_Alert in data: + print('Alert Received:', data) + send_buy_order(data) + return '', 200 + elif config.Sell_Alert in data: + print('Alert Received:', data) + send_sell_order(data) + return '', 200 + else: + abort(400) + else: + abort(400) + +if __name__ == '__main__': + from waitress import serve + serve(app, host='0.0.0.0', port=80) \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..85ee160 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,6 @@ +flask +waitress +python-telegram-bot +discord-webhook + +