diff --git a/bot/handlers/handle_feedback.py b/bot/handlers/handle_feedback.py index 3072075..1ff3835 100644 --- a/bot/handlers/handle_feedback.py +++ b/bot/handlers/handle_feedback.py @@ -42,24 +42,25 @@ async def handle_feedback(msg, state): async def handle_answer(msg): logger.info("handle answering feedback") logger.debug(msg) - answered_msg = msg["reply_to_message"] - if "from" not in answered_msg: - answered_msg["from"] = vars(msg.from_user) - r = await get_chat_administrators(msg["chat"]["id"]) - logger.debug(r) - admins = [] - for a in r["result"]: - admins.append(a["user"]["id"]) - if answered_msg["from"]["is_bot"] and msg["from"]["id"] in admins: - support_msg_id = str(answered_msg["message_id"]) - # получение сохраненного информации о сообщении для ответа - stored_feedback = storage.get(f"fbk-{support_msg_id}") - if stored_feedback: - logger.info("handle an answer from feedback group") - stored_feedback = json.loads(stored_feedback) - r = await send_message( - f'{stored_feedback["chat_id"]}', - msg["text"], - reply_to=stored_feedback["message_id"], - ) - logger.debug(r) + if "reply_to_message" in msg: + answered_msg = msg.get("reply_to_message") + if "from" not in answered_msg: + answered_msg["from"] = vars(msg.from_user) + r = await get_chat_administrators(msg["chat"]["id"]) + logger.debug(r) + admins = [] + for a in r["result"]: + admins.append(a["user"]["id"]) + if answered_msg["from"]["is_bot"] and msg["from"]["id"] in admins: + support_msg_id = str(answered_msg["message_id"]) + # получение сохраненного информации о сообщении для ответа + stored_feedback = storage.get(f"fbk-{support_msg_id}") + if stored_feedback: + logger.info("handle an answer from feedback group") + stored_feedback = json.loads(stored_feedback) + r = await send_message( + f'{stored_feedback["chat_id"]}', + msg["text"], + reply_to=stored_feedback["message_id"], + ) + logger.debug(r) diff --git a/bot/handlers/routing.py b/bot/handlers/routing.py index 644db74..0c950ad 100644 --- a/bot/handlers/routing.py +++ b/bot/handlers/routing.py @@ -28,7 +28,8 @@ async def handle_routing(msg, state): elif str(cid) == FEEDBACK_CHAT_ID: # сообщения из группы обратной связи logger.info("feedback chat message") - if "reply_to_message" in msg: + logger.debug(msg) + if msg.get("reply_to_message"): await handle_answer(msg) elif msg["text"] == "/graph": await handle_command_graph(msg)