Update app.py
Browse files
app.py
CHANGED
|
@@ -860,39 +860,38 @@ def update_or_insert_user(db_name, user_data, mapping_template):
|
|
| 860 |
|
| 861 |
@app.route('/send_get_request', methods=['GET'])
|
| 862 |
def send_get_request():
|
| 863 |
-
# Получение параметров из запроса
|
| 864 |
token = request.args.get('token')
|
| 865 |
webinarId = request.args.get('webinarId')
|
| 866 |
url = f'https://online.bizon365.ru/api/v1/webinars/reports/get?webinarId={webinarId}'
|
| 867 |
|
| 868 |
-
#
|
| 869 |
response = requests.get(url, headers={'X-Token': token})
|
| 870 |
|
| 871 |
-
|
|
|
|
| 872 |
data = response.json() # Получение данных в формате JSON
|
| 873 |
|
| 874 |
-
|
| 875 |
-
|
|
|
|
| 876 |
|
| 877 |
-
|
| 878 |
try:
|
| 879 |
-
|
| 880 |
except json.JSONDecodeError:
|
| 881 |
-
|
| 882 |
|
| 883 |
-
|
| 884 |
-
|
| 885 |
-
messages_json = json.loads(messages_json_str) # Преобразование строки JSON в объект
|
| 886 |
-
except json.JSONDecodeError:
|
| 887 |
-
messages_json = [] # Установка пустого списка при ошибке преобразования
|
| 888 |
|
| 889 |
-
|
|
|
|
| 890 |
|
| 891 |
-
|
| 892 |
-
for user_id, user_data in users_meta.items():
|
| 893 |
-
# Извлечение сообщений
|
| 894 |
-
messages_user =
|
| 895 |
-
user_data['messages'] = messages_user # Добавление сообщений
|
| 896 |
|
| 897 |
email = user_data.get('email')
|
| 898 |
if email and email not in processed_emails:
|
|
@@ -910,6 +909,7 @@ def send_get_request():
|
|
| 910 |
|
| 911 |
|
| 912 |
|
|
|
|
| 913 |
@app.route('/biz_v', methods=['GET'])
|
| 914 |
def biz_v():
|
| 915 |
api_sys_control = request.args.get('api_sys')
|
|
|
|
| 860 |
|
| 861 |
@app.route('/send_get_request', methods=['GET'])
|
| 862 |
def send_get_request():
|
|
|
|
| 863 |
token = request.args.get('token')
|
| 864 |
webinarId = request.args.get('webinarId')
|
| 865 |
url = f'https://online.bizon365.ru/api/v1/webinars/reports/get?webinarId={webinarId}'
|
| 866 |
|
| 867 |
+
# Выполнение GET-запроса к API для получения отчета и сообщений
|
| 868 |
response = requests.get(url, headers={'X-Token': token})
|
| 869 |
|
| 870 |
+
# Проверка, успешно ли выполнен запрос
|
| 871 |
+
if response.status_code == 200:
|
| 872 |
data = response.json() # Получение данных в формате JSON
|
| 873 |
|
| 874 |
+
# Получение разделов 'report' и 'messages' из данных
|
| 875 |
+
report = data.get('report', {})
|
| 876 |
+
messages_str = data.get('messages', '{}') # Получение строки JSON для сообщений
|
| 877 |
|
| 878 |
+
# Преобразование строки JSON в объект Python
|
| 879 |
try:
|
| 880 |
+
messages_json = json.loads(messages_str) # Преобразование строки JSON в объект
|
| 881 |
except json.JSONDecodeError:
|
| 882 |
+
messages_json = {} # Установка пустого объекта при ошибке преобразования
|
| 883 |
|
| 884 |
+
# Получение метаинформации пользователей из отчета
|
| 885 |
+
users_meta = report.get('usersMeta', {})
|
|
|
|
|
|
|
|
|
|
| 886 |
|
| 887 |
+
# Создание множества для хранения обработанных email-ов
|
| 888 |
+
processed_emails = set()
|
| 889 |
|
| 890 |
+
# Проход по всем пользователям
|
| 891 |
+
for user_id, user_data in users_meta.items():
|
| 892 |
+
# Извлечение сообщений конкретного пользователя
|
| 893 |
+
messages_user = messages_json.get(user_id, []) # Получение сообщений пользователя
|
| 894 |
+
user_data['messages'] = messages_user # Добавление сообщений в данные пользователя
|
| 895 |
|
| 896 |
email = user_data.get('email')
|
| 897 |
if email and email not in processed_emails:
|
|
|
|
| 909 |
|
| 910 |
|
| 911 |
|
| 912 |
+
|
| 913 |
@app.route('/biz_v', methods=['GET'])
|
| 914 |
def biz_v():
|
| 915 |
api_sys_control = request.args.get('api_sys')
|