87 lines
1.8 KiB
Bash
87 lines
1.8 KiB
Bash
|
|
#!/bin/bash
|
|||
|
|
# Тест Redis Pub/Sub через HTTP эндпоинты
|
|||
|
|
|
|||
|
|
TASK_ID="test-$(date +%s)"
|
|||
|
|
BASE_URL="http://localhost:8100/api/v1"
|
|||
|
|
|
|||
|
|
echo "🧪 Testing Redis Pub/Sub Events"
|
|||
|
|
echo "================================"
|
|||
|
|
echo "Task ID: $TASK_ID"
|
|||
|
|
echo ""
|
|||
|
|
|
|||
|
|
# В фоне запускаем SSE подписку
|
|||
|
|
echo "📡 Starting SSE listener..."
|
|||
|
|
curl -N "$BASE_URL/events/$TASK_ID" &
|
|||
|
|
SSE_PID=$!
|
|||
|
|
sleep 2
|
|||
|
|
|
|||
|
|
# Публикуем события
|
|||
|
|
echo ""
|
|||
|
|
echo "📢 Publishing events..."
|
|||
|
|
echo ""
|
|||
|
|
|
|||
|
|
echo "1️⃣ Processing started..."
|
|||
|
|
curl -X POST "$BASE_URL/events/$TASK_ID" \
|
|||
|
|
-H "Content-Type: application/json" \
|
|||
|
|
-d '{
|
|||
|
|
"status": "processing",
|
|||
|
|
"message": "Начата обработка файла",
|
|||
|
|
"data": {"filename": "test.pdf"}
|
|||
|
|
}' | jq '.'
|
|||
|
|
|
|||
|
|
sleep 2
|
|||
|
|
|
|||
|
|
echo ""
|
|||
|
|
echo "2️⃣ OCR started..."
|
|||
|
|
curl -X POST "$BASE_URL/events/$TASK_ID" \
|
|||
|
|
-H "Content-Type: application/json" \
|
|||
|
|
-d '{
|
|||
|
|
"status": "ocr_started",
|
|||
|
|
"message": "Запущено распознавание текста",
|
|||
|
|
"data": {}
|
|||
|
|
}' | jq '.'
|
|||
|
|
|
|||
|
|
sleep 3
|
|||
|
|
|
|||
|
|
echo ""
|
|||
|
|
echo "3️⃣ OCR completed..."
|
|||
|
|
curl -X POST "$BASE_URL/events/$TASK_ID" \
|
|||
|
|
-H "Content-Type: application/json" \
|
|||
|
|
-d '{
|
|||
|
|
"status": "ocr_completed",
|
|||
|
|
"message": "Распознано 1500 символов",
|
|||
|
|
"data": {"chars": 1500}
|
|||
|
|
}' | jq '.'
|
|||
|
|
|
|||
|
|
sleep 2
|
|||
|
|
|
|||
|
|
echo ""
|
|||
|
|
echo "4️⃣ Completed..."
|
|||
|
|
curl -X POST "$BASE_URL/events/$TASK_ID" \
|
|||
|
|
-H "Content-Type: application/json" \
|
|||
|
|
-d '{
|
|||
|
|
"status": "completed",
|
|||
|
|
"message": "Обработка завершена",
|
|||
|
|
"data": {
|
|||
|
|
"document_type": "policy",
|
|||
|
|
"is_valid": true,
|
|||
|
|
"confidence": 0.95
|
|||
|
|
}
|
|||
|
|
}' | jq '.'
|
|||
|
|
|
|||
|
|
sleep 2
|
|||
|
|
|
|||
|
|
# Убиваем SSE слушатель
|
|||
|
|
echo ""
|
|||
|
|
echo "🛑 Stopping SSE listener..."
|
|||
|
|
kill $SSE_PID 2>/dev/null
|
|||
|
|
|
|||
|
|
echo ""
|
|||
|
|
echo "✅ Test completed!"
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
|