No description
- JavaScript 53.3%
- Python 28.4%
- CSS 14.6%
- HTML 3.4%
- Shell 0.2%
- Other 0.1%
| bots | ||
| handlers | ||
| speech_service | ||
| static | ||
| templates | ||
| .dockerignore | ||
| .gitignore | ||
| app_refactored.py | ||
| Dockerfile | ||
| entrypoint.sh | ||
| README.md | ||
| requirements.txt | ||
| template.env | ||
| test_output.txt | ||
| test_rasa_domain.py | ||
Rasa Voice Frontend
This project runs a Flask + Socket.IO voice frontend using Azure Speech services and a Rasa backend.
Run with Docker
1. Build the image
docker build -t rasa-voice-frontend .
2. Create an env file from template
cp template.env .env
Update .env with real values (especially Azure credentials and demo login credentials).
3. Start the container
docker run --rm -p 5001:5001 --env-file .env rasa-voice-frontend
The app will be available at:
Required Environment Variables
The container entrypoint enforces these at startup. If they are missing, empty, or left as template placeholders, the container exits.
AZURE_SPEECH_KEY(required, secret)AZURE_SERVICE_REGION(required)APP_USERNAME(required)APP_PASSWORD(required, secret)
The app requires login before loading the main UI. After startup, open http://localhost:5001, then sign in with APP_USERNAME and APP_PASSWORD.
Optional Environment Variables
APP_SECRET_KEY(recommended; used for Flask session signing)RASA_URL(default:http://localhost:5005)RASA_TIMEOUT(default:10)RASA_TOKEN(optional, secret; set only if your Rasa server requires auth)
Example .env
AZURE_SPEECH_KEY=your_real_azure_speech_key
AZURE_SERVICE_REGION=eastus
APP_USERNAME=demo_user
APP_PASSWORD=your_demo_password
APP_SECRET_KEY=replace_with_a_long_random_secret
RASA_URL=http://host.docker.internal:5005
RASA_TIMEOUT=10
RASA_TOKEN=
Notes on Secrets
- Do not hardcode secrets in
Dockerfile. - Pass secrets at runtime via
--env-fileor-e. - Do not commit real secret values to git.