2 Commits 20467d7e75 ... d5c9985601

Author SHA1 Message Date
  blezz-tech d5c9985601 reminder for tickets with status IN_PROCESS 2 weeks ago
  blezz-tech 20467d7e75 reminder for tickets with status IN_PROCESS 2 weeks ago
1 changed files with 6 additions and 12 deletions
  1. 6 12
      handlers/st_request_in_process.py

+ 6 - 12
handlers/st_request_in_process.py

@@ -1,11 +1,8 @@
+import json
 import requests
-import xmpp
-from xmpp import cli
 import config
-from BotClass import JabberBot
-import json
 import hashlib
-from datetime import datetime, timedelta
+from datetime import datetime
 import time
 import threading
 import jsonAndRequest as jsreq
@@ -26,18 +23,15 @@ DEFAULT_REMINDER_INTERVAL = 30 * 60  # 30 минут в секундах
 MAX_REMINDERS = 3  # Максимальное количество напоминаний
 
 def send_reminder(user, ticket):
-    # Функция для отправки напоминания пользователю
     message = f"Напоминание: необходимо принять решение по тикету {ticket.id}"
     # Здесь должен быть код для отправки сообщения пользователю
     print(f"Отправлено напоминание пользователю {user} о тикете {ticket.id}")
 
 def send_wontfix_notification(user, ticket):
-    # Функция для отправки уведомления об отказе
     message = f"Уведомление: тикет {ticket.id} был отмечен как WONTFIX из-за отсутствия действий"
     # Здесь должен быть код для отправки сообщения пользователю
     print(f"Отправлено уведомление пользователю {user} о WONTFIX для тикета {ticket.id}")
 
-
 def process_in_progress_ticket(ticket, timeout, reminder_interval):
     start_time = datetime.now()
     reminders_sent = 0
@@ -48,7 +42,7 @@ def process_in_progress_ticket(ticket, timeout, reminder_interval):
         
         if timeout != INFINITE_TIMEOUT and time_in_progress > timeout:
             # Превышен таймаут, меняем статус на WONTFIX
-            jsreq.change_ticket_status(token, config.API_URL, ticket.id, "WONTFIX")
+            jsreq.requestPatchTicketUser(token, config.API_URL + f"tickets/api/ticket/{ticket.id}/", {"status": "WONTFIX"})
             send_wontfix_notification(ticket.assigned_to, ticket)
             break
         
@@ -58,13 +52,13 @@ def process_in_progress_ticket(ticket, timeout, reminder_interval):
             
             if reminders_sent >= MAX_REMINDERS:
                 # Превышено максимальное количество напоминаний
-                jsreq.change_ticket_status(token, config.API_URL, ticket.id, "WONTFIX")
+                jsreq.requestPatchTicketUser(token, config.API_URL + f"tickets/api/ticket/{ticket.id}/", {"status": "WONTFIX"})
                 send_wontfix_notification(ticket.assigned_to, ticket)
                 break
         
         # Проверяем, не изменился ли статус тикета
-        updated_ticket = jsreq.get_ticket(token, config.API_URL, ticket.id)
-        if updated_ticket.status != "IN PROCESS":
+        updated_ticket_list = jsreq.requestGetTicket_user(token, config.API_URL + f"tickets/api/ticket/{ticket.id}/")
+        if updated_ticket_list and updated_ticket_list[0].status != "IN PROCESS":
             break
         
         time.sleep(60)  # Проверяем каждую минуту