Required:
- Python 3.8 or higher
- Git (for cloning repository)
- Atera account with API access
Optional:
- Azure OpenAI API key (for Azure LLM)
- OpenAI API key (for GPT models)
- LM Studio (for local LLM)
git clone https://github.com/Turtles-AI-Lab/TicketZero-Atera-Edition.git
cd TicketZero-Atera-Editionpip install -r requirements.txtRequirements:
- requests>=2.31.0
- aiohttp>=3.8.0
- python-dotenv>=1.0.0
- reportlab>=4.0.0
- fpdf2>=2.7.0
# Copy example environment file
cp .env.example .env
# Edit .env with your API key
# Minimum required: ATERA_API_KEYExample .env file:
# Required
ATERA_API_KEY=your_atera_api_key_here
# Optional LLM providers (choose one)
LMSTUDIO_URL=http://127.0.0.1:1234/v1
# AZURE_OPENAI_API_KEY=your_azure_key
# OPENAI_API_KEY=your_openai_key
# Standard workflow demo
python apps/main/ticketzero_atera_workflow.py
# Or run live ticket resolution demo
python demo/demo_live_ticket_resolution.pyBest for: Single company, straightforward ticket automation
# Set environment variable
export ATERA_API_KEY=your_key_here
# Run main workflow
python apps/main/ticketzero_atera_workflow.pyFeatures:
- Automatic ticket classification
- AI-powered resolution
- Real-time status updates
- Basic reporting
Best for: MSPs managing multiple clients
# 1. Configure environment
cp .env.example .env
vim .env # Add your API keys and client configurations
# 2. Run MSP optimized version
python src/production/msp_ticketzero_optimized.py
# 3. Access dashboard (optional)
python src/production/msp_dashboard.pyFeatures:
- Multi-client support
- Client isolation
- Advanced reporting
- Web dashboard
- Health monitoring
Best for: Production environments
# 1. Configure environment
cp .env.example .env
# Edit .env with production credentials
# 2. Build and run
docker-compose up -d
# 3. View logs
docker-compose logs -fpython -c "import requests, aiohttp, dotenv, reportlab, fpdf; print('All dependencies installed!')"# Test Atera API connectivity
python src/tests/test_api_validation.py# Test with sample tickets
python demo/demo_live_ticket_resolution.pyFile: demo/demo_live_ticket_resolution.py
Simulated Ticket:
Subject: Forgot my password
Description: I can't log into my account. Need password reset ASAP.
Expected Output:
✓ Ticket classified: password_reset (95% confidence)
✓ Action: Reset user password via Azure AD
✓ Status: RESOLVED
✓ Time: 3 seconds
Simulated Ticket:
Subject: Disk full error
Description: Getting "disk full" errors on C: drive
Expected Output:
✓ Ticket classified: disk_cleanup (88% confidence)
✓ Action: Remote disk cleanup via TeamViewer
✓ Status: RESOLVED
✓ Time: 45 seconds
Simulated Ticket:
Subject: Need Office license
Description: New employee needs Microsoft 365 license
Expected Output:
✓ Ticket classified: license_request (92% confidence)
✓ Action: Assign M365 license via Azure Graph API
✓ Status: RESOLVED
✓ Time: 5 seconds
File: demo/test_azure_graph.py
Prerequisites:
- Azure AD tenant
- Service principal with permissions
- Graph API credentials in
.env
Test:
python demo/test_azure_graph.pyValidates:
- User management operations
- Device management
- Security operations
- License assignments
- Group management
Solution: Install dependencies
pip install -r requirements.txtSolution: Set environment variable
# Linux/Mac
export ATERA_API_KEY=your_key
# Windows
set ATERA_API_KEY=your_key
# Or use .env file
echo "ATERA_API_KEY=your_key" > .envSolution: Check network and API endpoint
# Test Atera API connectivity
curl -H "X-API-KEY: your_key" https://app.atera.com/api/v3/customersSolution: Verify LLM provider configuration
# For LM Studio (default)
curl http://127.0.0.1:1234/v1/models
# Or configure alternative provider in .env
AZURE_OPENAI_API_KEY=your_keySolution: Set console encoding
# PowerShell
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
# Or use Python encoding
set PYTHONIOENCODING=utf-8- Environment variables configured
- API keys secured (not in code)
- Dependencies installed
- Firewall rules configured
- Logging enabled
- Monitoring configured
- Backup strategy implemented
- SSL/TLS certificates installed
- Rate limiting configured
- Error handling tested
- Documentation reviewed
- Team trained
Average Resolution Times:
- Password Reset: 3-5 seconds
- License Assignment: 4-6 seconds
- Disk Cleanup: 30-60 seconds
- Software Installation: 2-5 minutes
- Printer Issues: 15-30 seconds
Success Rates:
- Password Reset: 98%
- License Assignment: 97%
- Disk Cleanup: 95%
- Software Installation: 92%
- Overall: 95%
Community Support:
- GitHub Issues: https://github.com/Turtles-AI-Lab/TicketZero-Atera-Edition/issues
- Documentation: This file and README.md
Commercial Support:
- Email: jgreenia@jandraisolutions.com
- Priority support available with commercial license
- ✅ Install dependencies
- ✅ Configure API keys
- ✅ Run demo scenarios
- ✅ Test with real tickets
- ⬜ Deploy to production (requires commercial license)
- ⬜ Configure monitoring
- ⬜ Train team
- ⬜ Schedule demo with Turtles AI Lab
Last Updated: October 1, 2025 Version: 1.0.0 Tested On: Python 3.8, 3.9, 3.10, 3.11