Spaces:
Sleeping
Sleeping
ITU-T Report Generator - User Guide
π Quick Start
1. Install Dependencies
# Activate your virtual environment (from project root)
cd ../../.. # Go to sg17collab/
venv\Scripts\activate # Windows
# Install dependencies
cd auto-doc-latex/web-app
pip install Flask Werkzeug beautifulsoup4 lxml python-dateutil
Note: pycurl may fail on Windows. It's only needed for the backend scripts (scraping ITU website), not for the web interface itself.
2. Run the Application
cd auto-doc-latex/web-app
python app.py
You should see:
* Running on http://127.0.0.1:5000
* Debug mode: on
3. Open in Browser
Navigate to: http://localhost:5000
π Using the Interface
Working Party Report
- Select "Working Party Report"
- Fill in:
- Study Group (default: 17)
- Working Party number
- Meeting place (e.g., Geneva)
- Start and end dates
- Number of sessions
- Meeting days (comma-separated, format: YYYY/MM/DD)
- Click "Generate Report"
- Wait 2-5 minutes (fetches data from ITU website)
- Click "Download LaTeX Files (ZIP)"
Question Report
- Select "Question Report"
- Fill in:
- Study Group (default: 17)
- Question number
- Meeting place
- Start and end dates
- Click "Generate Report"
- Wait 2-5 minutes
- Download the ZIP file
π¦ What You Get
The downloaded ZIP file contains a complete LaTeX project:
wp_doc_template/ (or question_doc_template/)
βββ main.tex # Main document
βββ chapters/
β βββ *.tex # Chapter files
β βββ results/ # Auto-generated content
β βββ 00-variables.tex
β βββ 01-introduction-content.tex
β βββ 02-executive-summary-content.tex
β βββ ...
βββ styles/ # LaTeX style files
βββ images/ # Images
π€ Next Steps: Compile on Overleaf
- Go to Overleaf.com
- Click New Project β Upload Project
- Upload the downloaded ZIP file
- Overleaf will automatically compile
- Click Download PDF
βοΈ Manual Sections
Some sections require manual input. Look for:
\textit{For manual entry.}- Fill these sections manually\textit{TODO: ...}- Placeholders for observations\tdNumber- TD number (assigned by ITU secretariat)
Typical manual sections:
- Executive summary details
- Observations on liaison statements
- Deleted work items justification
βοΈ Configuration
Timeout Settings
Edit config.py to adjust:
GENERATION_TIMEOUT = 300 # 5 minutes (in seconds)
TEMP_FILE_MAX_AGE = 1 hour # Auto-cleanup age
MAX_CONTENT_LENGTH = 16 MB # Max file upload size
Debug Mode
To disable debug mode (production):
# In app.py
app.run(
host='127.0.0.1',
port=5000,
debug=False # Change to False
)
π Troubleshooting
"Download not found or expired"
- Files are auto-deleted after 1 hour
- Generate the report again
"Network error"
- Check internet connection
- ITU website must be accessible
- Try again in a few minutes
"Validation error"
- Check that start date < end date
- All required fields must be filled
- Dates must be in YYYY/MM/DD format
Flask won't start
- Check that port 5000 is not in use
- Kill existing Python processes:
taskkill /F /IM python.exe - Reinstall dependencies:
pip install -r requirements.txt
π Security Notes
- The app runs on
localhostonly (127.0.0.1) - Not exposed to the internet
- Session-only (no data persistence)
- Files auto-delete after 1 hour
π File Structure
web-app/
βββ app.py # Flask application
βββ config.py # Configuration
βββ requirements.txt # Python dependencies
βββ utils/ # Backend modules
β βββ file_handler.py # File operations
β βββ report_generator.py # Report generation
β βββ validators.py # Input validation
βββ templates/ # HTML templates
β βββ index.html # Main form
βββ static/ # Frontend assets
β βββ css/style.css # Styles
β βββ js/app.js # JavaScript logic
βββ temp/ # Generated files (auto-cleanup)
π‘ Tips
- Dates: Use YYYY/MM/DD format (e.g., 2025/12/03)
- Meeting Days: Comma-separated (e.g., 2025/12/10, 2025/12/11)
- Patience: Report generation takes 2-5 minutes
- Overleaf: Best for PDF compilation (no local LaTeX needed)
- Manual Review: Always review generated content before submission
π Support
For issues with:
- Web interface: Check this guide
- Generated LaTeX: See main
README.mdinauto-doc-latex/ - ITU scripts: Check
scripts-new/documentation