This repository was archived by the owner on Oct 5, 2024. It is now read-only.
Repository navigation
Expand file tree
/
Copy pathmain.py
More file actions
70 lines (57 loc) · 2.78 KB
/
Copy pathmain.py
File metadata and controls
70 lines (57 loc) · 2.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
import requests
from flask import Flask, request, jsonify
# Замените 'YOUR_BOT_TOKEN' на токен вашего бота Telegram
BOT_TOKEN = '6088505956:AAFpHNb86aKIyFs6okBkvoCsFRMvHo7FFds'
TELEGRAM_CHAT_ID = '-1001977031956' # Замените на ID вашего чата в Telegram
app = Flask(__name__)
# Функция для преобразования секунд в часы, минуты и секунды
def seconds_to_hms(seconds):
hours, remainder = divmod(seconds, 3600)
minutes, seconds = divmod(remainder, 60)
return hours, minutes, seconds
@app.route('/attack', methods=['POST'])
def process_data():
try:
data = request.json # Получаем данные в формате JSON из запроса
# Извлекаем нужные поля из JSON-данных
id = data.get('id')
ip = data.get('ip')
importance = data.get('importance')
type = data.get('type')
start = data.get('start')
stop = data.get('stop')
duration = data.get('duration')
bps = data.get('bps')
pps = data.get('pps')
# Преобразуем длительность из секунд в часы, минуты и секунды
hours, minutes, seconds = seconds_to_hms(duration)
message = f'''
<b>⚠️ Атака</b>
🖥 Машина: <span class="tg-spoiler">{ip}</span>
❗️ Важность: {importance}
⚡️ Тип: {type}
⏰ Длительность: {'{} час. '.format(hours) if hours > 0 else ''}{'{} мин. '.format(minutes) if minutes > 0 else ''}{seconds} сек.
🌟 BPS: {bps}
💬 PPS: {pps}
〽️ Дата начала: {start}
🔚 Дата окончания: {stop}
'''
# Формируем сообщение для отправки в Telegram
# Отправляем сообщение в Telegram с помощью Telegram Bot API
url = f'https://api.telegram.org/bot{BOT_TOKEN}/sendMessage'
data = {
'chat_id': TELEGRAM_CHAT_ID,
'text': message,
'parse_mode': "html"
}
response = requests.post(url, data=data)
if response.status_code == 200:
return jsonify({'message': 'Уведомление успешно отправлено в Telegram'}), 200
else:
return jsonify({'error': 'Ошибка при отправке уведомления в Telegram'}), 500
except Exception as e:
# В случае ошибки возвращаем соответствующий ответ
error_message = str(e)
return jsonify({'error': error_message}), 400
if __name__ == '__main__':
app.run(host='194.147.90.137', debug=True, port=40001)