feat: add LOCAL_SD config, fetch tickets with group/desc/assignee/category
This commit is contained in:
@@ -115,6 +115,10 @@ ENABLE_FUZZY_CORRECTION = True # Нечёткое исправление по
|
|||||||
SERVER_URL = "https://servicedesk.sibcem.ru:8080"
|
SERVER_URL = "https://servicedesk.sibcem.ru:8080"
|
||||||
ENDPOINT = f"{SERVER_URL}/api/v3/requests"
|
ENDPOINT = f"{SERVER_URL}/api/v3/requests"
|
||||||
|
|
||||||
|
# Локальный Service Desk (для выгрузки данных)
|
||||||
|
LOCAL_SD_URL = "https://192.168.1.237:8080"
|
||||||
|
LOCAL_SD_API_KEY = "062CE056-C1F5-490C-A6DF-FD2C653A71DD"
|
||||||
|
|
||||||
# Системный email-адрес учетной записи ИИ-сортировщика в Service Desk
|
# Системный email-адрес учетной записи ИИ-сортировщика в Service Desk
|
||||||
DEFAULT_REQUESTER = "ai@sibcem.ru"
|
DEFAULT_REQUESTER = "ai@sibcem.ru"
|
||||||
|
|
||||||
|
|||||||
+7
-14
@@ -16,20 +16,13 @@ urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
|
|||||||
# --- ИМПОРТ КОНФИГУРАЦИИ ---
|
# --- ИМПОРТ КОНФИГУРАЦИИ ---
|
||||||
sys.path.insert(0, os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config'))
|
sys.path.insert(0, os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config'))
|
||||||
|
|
||||||
# Пытаемся импортировать конфиг, но не падаем если Passwork недоступен
|
# Пытаемся импортировать конфиг, если не получится — используем локальные значения
|
||||||
try:
|
try:
|
||||||
from config import *
|
from config import *
|
||||||
config_loaded = True
|
except Exception:
|
||||||
except Exception as e:
|
# Локальный Service Desk (для выгрузки данных)
|
||||||
config_loaded = False
|
LOCAL_SD_URL = "https://192.168.1.237:8080"
|
||||||
print(f"⚠️ Конфиг не загружен: {e}")
|
LOCAL_SD_API_KEY = "062CE056-C1F5-490C-A6DF-FD2C653A71DD"
|
||||||
|
|
||||||
# Локальный Service Desk (для выгрузки данных)
|
|
||||||
LOCAL_SD_URL = "https://192.168.1.237:8080"
|
|
||||||
LOCAL_SD_API_KEY = "062CE056-C1F5-490C-A6DF-FD2C653A71DD"
|
|
||||||
|
|
||||||
# По умолчанию с 20 июля, но можно передать как аргумент
|
|
||||||
DEFAULT_FROM_DATE = "2026-07-20"
|
|
||||||
|
|
||||||
def get_ts(req):
|
def get_ts(req):
|
||||||
ct = req.get("created_time", {})
|
ct = req.get("created_time", {})
|
||||||
@@ -65,7 +58,7 @@ def get_ticket_detail(ticket_id):
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
return {}
|
return {}
|
||||||
|
|
||||||
def list_tickets(from_date=DEFAULT_FROM_DATE):
|
def list_tickets(from_date="2026-07-20"):
|
||||||
url = f"{LOCAL_SD_URL}/api/v3/requests"
|
url = f"{LOCAL_SD_URL}/api/v3/requests"
|
||||||
headers = {"authtoken": LOCAL_SD_API_KEY, "Accept": "application/vnd.manageengine.sdp.v3+json"}
|
headers = {"authtoken": LOCAL_SD_API_KEY, "Accept": "application/vnd.manageengine.sdp.v3+json"}
|
||||||
|
|
||||||
@@ -114,5 +107,5 @@ def list_tickets(from_date=DEFAULT_FROM_DATE):
|
|||||||
print(json.dumps(row, ensure_ascii=False))
|
print(json.dumps(row, ensure_ascii=False))
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
from_date = sys.argv[1] if len(sys.argv) > 1 else DEFAULT_FROM_DATE
|
from_date = sys.argv[1] if len(sys.argv) > 1 else "2026-07-20"
|
||||||
list_tickets(from_date)
|
list_tickets(from_date)
|
||||||
|
|||||||
Reference in New Issue
Block a user