56 lines
2.1 KiB
Bash
56 lines
2.1 KiB
Bash
#!/usr/bin/env bash
|
||
set -euo pipefail
|
||
|
||
BASE_URL="${BASE_URL:-http://sovet.itoservice.ru}"
|
||
API_KEY="${1:-5fd81e60ba17418fa930cdf70504ebb2}"
|
||
COLLECTION_ID="${2:-}"
|
||
|
||
echo "=== Коллекции ==="
|
||
COLLECTIONS=$(curl -s -X GET "$BASE_URL/api/v1/collections" \
|
||
-H "Authorization: Bearer $API_KEY")
|
||
echo "$COLLECTIONS" | python3 -m json.tool 2>/dev/null || echo "$COLLECTIONS"
|
||
|
||
if [ -z "$COLLECTION_ID" ]; then
|
||
COLLECTION_ID=$(echo "$COLLECTIONS" | python3 -c "
|
||
import sys, json
|
||
data = json.load(sys.stdin)
|
||
if data: print(data[0]['id'])
|
||
else: print('')
|
||
" 2>/dev/null || echo "")
|
||
fi
|
||
|
||
if [ -z "$COLLECTION_ID" ]; then
|
||
echo "Нет коллекций. Создайте через админку, затем: $0 <api_key> <collection_id>"
|
||
exit 1
|
||
fi
|
||
|
||
echo "collection_id=$COLLECTION_ID"
|
||
|
||
echo ""
|
||
echo "=== Загрузка тикета ==="
|
||
curl -s -X POST "$BASE_URL/api/v1/tickets?collection_id=$COLLECTION_ID" \
|
||
-H "Authorization: Bearer $API_KEY" \
|
||
-H "Content-Type: application/json" \
|
||
-d '{
|
||
"tickets": [{
|
||
"ticket_id": 999,
|
||
"category": "мобильное приложение",
|
||
"description": "Не могу начать смену в приложении",
|
||
"client": "Иван",
|
||
"messages": [
|
||
{"role": "user", "text": "Не могу начать смену в приложении, кнопка не активна"},
|
||
{"role": "assistant", "text": "Проверьте подключение к интернету и перезапустите приложение. Если не помогает, очистите кеш в настройках телефона. Убедитесь, что установлена последняя версия приложения из магазина."}
|
||
]
|
||
}]
|
||
}' | python3 -m json.tool 2>/dev/null || true
|
||
|
||
echo ""
|
||
echo "=== Поиск ==="
|
||
curl -s -X POST "$BASE_URL/api/v1/search" \
|
||
-H "Authorization: Bearer $API_KEY" \
|
||
-H "Content-Type: application/json" \
|
||
-d "{
|
||
\"collection_id\": \"$COLLECTION_ID\",
|
||
\"query\": \"не могу начать смену в приложении\",
|
||
\"generate_answer\": true
|
||
}" | python3 -m json.tool 2>/dev/null || true
|