forked from ShaerWare/AI_Secretary_System
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrun.sh
More file actions
executable file
·89 lines (74 loc) · 2.27 KB
/
run.sh
File metadata and controls
executable file
·89 lines (74 loc) · 2.27 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#!/bin/bash
# Скрипт запуска AI Secretary System
set -e
echo "🚀 Запуск AI Secretary System"
echo "=============================="
# Активация venv
if [ -f "venv/bin/activate" ]; then
source venv/bin/activate
echo "✅ Virtual environment активирован"
else
echo "❌ Virtual environment не найден. Запустите ./setup.sh"
exit 1
fi
# Проверка .env
if [ ! -f ".env" ]; then
echo "❌ Файл .env не найден. Создайте его на основе .env.example"
exit 1
fi
# Загрузка переменных окружения
source .env
# Проверка API ключа
if [ -z "$GEMINI_API_KEY" ]; then
echo "⚠️ GEMINI_API_KEY не установлен в .env"
echo " Система не сможет генерировать ответы!"
fi
# Создание папок
mkdir -p temp calls_log
echo ""
echo "🎯 Запуск сервисов..."
echo ""
# Запуск оркестратора в фоне
echo "🤖 Запуск Orchestrator на порту 8000..."
python orchestrator.py &
ORCHESTRATOR_PID=$!
# Ждем запуска
sleep 5
# Запуск телефонного сервиса
if [ ! -z "$TWILIO_ACCOUNT_SID" ]; then
echo "📞 Запуск Phone Service на порту 8001..."
python phone_service.py &
PHONE_PID=$!
else
echo "⚠️ Twilio не настроен. Phone Service не запущен."
PHONE_PID=""
fi
echo ""
echo "✅ Система запущена!"
echo ""
echo "📡 Доступные endpoints:"
echo " Orchestrator: http://localhost:8000"
echo " Health: http://localhost:8000/health"
echo " Docs: http://localhost:8000/docs"
if [ ! -z "$PHONE_PID" ]; then
echo " Phone Service: http://localhost:8001"
fi
echo ""
echo "🛑 Для остановки нажмите Ctrl+C"
echo ""
# Обработка завершения
cleanup() {
echo ""
echo "🛑 Остановка сервисов..."
if [ ! -z "$ORCHESTRATOR_PID" ]; then
kill $ORCHESTRATOR_PID 2>/dev/null || true
fi
if [ ! -z "$PHONE_PID" ]; then
kill $PHONE_PID 2>/dev/null || true
fi
echo "✅ Сервисы остановлены"
exit 0
}
trap cleanup SIGINT SIGTERM
# Ждем
wait