Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -1395,6 +1395,7 @@ def add_user_senler():
|
|
1395 |
})
|
1396 |
|
1397 |
|
|
|
1398 |
@app.route('/add_user_senler_full', methods=['POST'])
|
1399 |
def add_user_senler_full():
|
1400 |
# Получаем параметры из POST-запроса, если параметр отсутствует, устанавливаем значение пустой строки
|
@@ -1482,6 +1483,57 @@ def add_user_senler_full():
|
|
1482 |
|
1483 |
|
1484 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1485 |
|
1486 |
|
1487 |
|
|
|
1395 |
})
|
1396 |
|
1397 |
|
1398 |
+
# Добавление пользователя в группу СЕНДЛЕРА с данными
|
1399 |
@app.route('/add_user_senler_full', methods=['POST'])
|
1400 |
def add_user_senler_full():
|
1401 |
# Получаем параметры из POST-запроса, если параметр отсутствует, устанавливаем значение пустой строки
|
|
|
1483 |
|
1484 |
|
1485 |
|
1486 |
+
# Проверка групп СЕНДЛЕРА на рассылку
|
1487 |
+
@app.route('/sendLoMess', methods=['POST'])
|
1488 |
+
def sendLoMess_senler():
|
1489 |
+
# Получаем параметры из POST-запроса, если параметр отсутствует, устанавливаем значение пустой строки
|
1490 |
+
vk_user_id = request.form.get('vk_user_id', "")
|
1491 |
+
subscription_id = request.form.get('sub_id', "")
|
1492 |
+
|
1493 |
+
# Проверяем, что оба параметра переданы
|
1494 |
+
if not vk_user_id or not subscription_id:
|
1495 |
+
return jsonify({"status": "error", "message": "Missing required parameters"}), 400
|
1496 |
+
|
1497 |
+
# Формируем URL для запроса к API Senler
|
1498 |
+
url = "https://api.senler.ru/v1/subscribers/get"
|
1499 |
+
headers = {
|
1500 |
+
"Content-Type": "application/json",
|
1501 |
+
"Authorization": f"Bearer {senler_token}"
|
1502 |
+
}
|
1503 |
+
payload = {
|
1504 |
+
"vk_user_id": [vk_user_id],
|
1505 |
+
"count": 1
|
1506 |
+
}
|
1507 |
+
|
1508 |
+
# Выполняем запрос к API Senler
|
1509 |
+
response = requests.post(url, headers=headers, json=payload)
|
1510 |
+
|
1511 |
+
# Проверяем статус ответа
|
1512 |
+
if response.status_code != 200:
|
1513 |
+
return jsonify({"status": "error", "message": "Failed to fetch data from Senler API"}), 500
|
1514 |
+
|
1515 |
+
# Парсим ответ
|
1516 |
+
data = response.json()
|
1517 |
+
|
1518 |
+
# Проверяем успешность запроса
|
1519 |
+
if not data.get("success"):
|
1520 |
+
return jsonify({"status": "error", "message": "Senler API request failed"}), 500
|
1521 |
+
|
1522 |
+
# Проверяем, есть ли пользователь в ответе
|
1523 |
+
if not data.get("items"):
|
1524 |
+
return jsonify({"status": "not"}), 200
|
1525 |
+
|
1526 |
+
# Проверяем, есть ли указанная группа в массиве subscriptions
|
1527 |
+
for subscriber in data["items"]:
|
1528 |
+
for subscription in subscriber.get("subscriptions", []):
|
1529 |
+
if subscription.get("subscription_id") == int(subscription_id):
|
1530 |
+
return jsonify({"status": "1"}), 200
|
1531 |
+
|
1532 |
+
# Если группа не найдена
|
1533 |
+
return jsonify({"status": "not"}), 200
|
1534 |
+
|
1535 |
+
|
1536 |
+
|
1537 |
|
1538 |
|
1539 |
|