status.sh 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. #!/bin/bash
  2. set -u
  3. ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
  4. cd "$ROOT"
  5. echo "============================================================"
  6. echo "3CX TELEFONIE-MIDDLEWARE – STATUS"
  7. echo "============================================================"
  8. echo "Projekt: $ROOT"
  9. echo
  10. echo "=== DATEIEN ==="
  11. find app config tools -maxdepth 2 -type f \
  12. 2>/dev/null | sort
  13. echo
  14. echo "=== PYTHON ==="
  15. "$ROOT/.venv/bin/python" --version 2>/dev/null || python3 --version
  16. echo
  17. echo "=== WICHTIGE PYTHON-PAKETE ==="
  18. "$ROOT/.venv/bin/pip" list 2>/dev/null |
  19. grep -Ei 'fastapi|uvicorn|httpx|whisper|torch|ffmpeg|pydub|ollama' || true
  20. echo
  21. echo "=== WHISPER ==="
  22. if [ -f app/whisper.py ]; then
  23. sed -n '1,320p' app/whisper.py
  24. else
  25. echo "app/whisper.py NICHT GEFUNDEN"
  26. fi
  27. echo
  28. echo "=== API ROUTEN ==="
  29. grep -RniE '@(app|router)\.(get|post|put|delete|patch)' \
  30. app --exclude-dir=__pycache__ 2>/dev/null || true
  31. echo
  32. echo "=== 3CX / CDR / RECORDING ==="
  33. grep -RniE '3cx|cdr|call.?history|recording|audio' \
  34. app config tools \
  35. --exclude-dir=__pycache__ 2>/dev/null || true
  36. echo
  37. echo "=== OLLAMA ==="
  38. grep -RniE 'ollama|qwen3|gemma|llama|11434' \
  39. app config tools \
  40. --exclude-dir=__pycache__ 2>/dev/null || true
  41. echo
  42. echo "=== KONFIGURATION ==="
  43. find config -maxdepth 2 -type f -print \
  44. -exec sh -c 'echo "--- $1"; sed -n "1,240p" "$1"' _ {} \; \
  45. 2>/dev/null
  46. echo
  47. echo "=== RECORDINGS / TESTDATEIEN ==="
  48. for d in recordings data media tmp; do
  49. if [ -d "$d" ]; then
  50. echo "--- $d"
  51. du -sh "$d"
  52. find "$d" -type f -printf '%p %s bytes\n' 2>/dev/null |
  53. sort -k2 -nr | head -20
  54. fi
  55. done
  56. echo
  57. echo "=== 3CX ERREICHBARKEIT AUS KONFIGURATION ==="
  58. grep -RniE 'https?://|host:|base.?url|api.?url' \
  59. config app \
  60. --exclude-dir=__pycache__ 2>/dev/null || true
  61. echo
  62. echo "=== LAUFENDE DIENSTE ==="
  63. ps aux | grep -E '[u]vicorn|[g]unicorn|3cx-telefonie|python' || true
  64. echo
  65. echo "============================================================"
  66. echo "ENDE STATUS"
  67. echo "============================================================"