photo_bot: remove AI validator, restore prepare_ad_photo workflow
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Получение списка заявок из ServiceDesk Plus через API v3."""
|
||||
|
||||
import asyncio
|
||||
import httpx
|
||||
import json
|
||||
import urllib3
|
||||
|
||||
BASE_URL = "https://192.168.1.237:8080"
|
||||
API_TOKEN = "062CE056-C1F5-490C-A6DF-FD2C653A71DD"
|
||||
|
||||
async def list_tickets():
|
||||
url = f"{BASE_URL}/api/v3/requests"
|
||||
headers = {
|
||||
"authtoken": API_TOKEN,
|
||||
"Accept": "application/vnd.manageengine.sdp.v3+json"
|
||||
}
|
||||
|
||||
params = {
|
||||
"input_data": json.dumps({
|
||||
"list_info": {
|
||||
"row_count": 50,
|
||||
"start_index": 1
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
async with httpx.AsyncClient(verify=False, timeout=30.0) as client:
|
||||
resp = await client.get(url, headers=headers, params=params)
|
||||
data = resp.json()
|
||||
|
||||
requests = data.get("requests", [])
|
||||
print(f"Всего заявок: {len(requests)}\n")
|
||||
|
||||
for req in requests:
|
||||
req_id = req.get("request_id", req.get("id", "?"))
|
||||
subject = req.get("subject", req.get("short_description", "?"))
|
||||
|
||||
# Группа
|
||||
group = req.get("group", {})
|
||||
if isinstance(group, dict):
|
||||
group_name = group.get("name", "?")
|
||||
else:
|
||||
group_name = str(group)
|
||||
|
||||
# Статус
|
||||
status = req.get("status", {})
|
||||
if isinstance(status, dict):
|
||||
status_name = status.get("name", "?")
|
||||
else:
|
||||
status_name = str(status)
|
||||
|
||||
# Приоритет
|
||||
priority = req.get("priority", {})
|
||||
if isinstance(priority, dict):
|
||||
priority_name = priority.get("name", "?")
|
||||
else:
|
||||
priority_name = str(priority)
|
||||
|
||||
# Описание (убираем HTML)
|
||||
desc = req.get("description", "")
|
||||
desc_clean = desc.replace("<p>", "").replace("</p>", "").replace("<br>", "\n").replace("<br/>", "\n").replace("<br />", "\n")
|
||||
desc_clean = desc_clean[:300]
|
||||
|
||||
# Создатель
|
||||
requester = req.get("requester", {})
|
||||
req_name = requester.get("name", "?") if isinstance(requester, dict) else "?"
|
||||
|
||||
print(f"--- Заявка #{req_id} ---")
|
||||
print(f" Тема: {subject}")
|
||||
print(f" Группа: {group_name}")
|
||||
print(f" Статус: {status_name}")
|
||||
print(f" Приоритет: {priority_name}")
|
||||
print(f" Автор: {req_name}")
|
||||
print(f" Описание:\n {desc_clean}")
|
||||
print()
|
||||
|
||||
if __name__ == "__main__":
|
||||
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
|
||||
asyncio.run(list_tickets())
|
||||
Reference in New Issue
Block a user