Submodule updates: - botapp: safe_command module, desktop sync improvements - botbook: RBAC docs, white-label, security, channel setup docs - botlib: i18n localization support (en, es, pt-BR) - botserver: video module, RBAC, security, billing, contacts, learn, social - bottemplates: HR and productivity templates - botui: admin, dashboards, learn, social, video UI
2.6 KiB
2.6 KiB
General Bots - Video Module TODO
Status: In Progress
Priority: HIGH
Files to Complete
Partially Created (need completion)
botserver/src/video/handlers.rs- truncated at line 824, needs remaining handlersbotserver/src/video/mod.rs- needs to wire up all submodules and routes
Not Yet Created
botserver/src/video/analytics.rs- video analytics trackingbotserver/src/video/websocket.rs- WebSocket for real-time export progressbotserver/src/video/render.rs- FFmpeg render worker with .gbdrive storagebotserver/src/video/mcp_tools.rs- MCP tools for AI agents
Features to Implement
Core (Partially Done)
- Schema definitions (
schema.rs) - Data models (
models.rs) - VideoEngine core methods (
engine.rs) - HTTP handlers completion (
handlers.rs) - Route configuration (
mod.rs)
AI Features (Engine methods exist, handlers needed)
- Transcription (Whisper)
- Auto-captions generation
- Text-to-speech
- Scene detection
- Auto-reframe
- Background removal
- Video enhancement/upscaling
- Beat sync for music
- Waveform generation
New Features
- WebSocket real-time export progress
- Video analytics (views, engagement)
- Save exports to
.gbdrive/videos - Keyframe animations
- MCP tools for video operations
Handlers Needed in handlers.rs
// Missing handlers to add:
pub async fn generate_waveform_handler
pub async fn list_templates
pub async fn apply_template_handler
pub async fn add_transition_handler
pub async fn chat_edit
pub async fn start_export
pub async fn get_export_status
pub async fn video_ui
mod.rs Structure Needed
mod analytics;
mod engine;
mod handlers;
mod models;
mod render;
mod schema;
mod websocket;
pub mod mcp_tools;
pub use engine::VideoEngine;
pub use handlers::*;
pub use models::*;
pub use render::{start_render_worker, VideoRenderWorker};
pub use schema::*;
// Route configuration with all endpoints
pub fn configure_video_routes() -> Router<Arc<AppState>>
pub fn configure(router: Router<Arc<AppState>>) -> Router<Arc<AppState>>
Migration Required
File: botserver/migrations/20250716000001_add_video_tables/up.sql
Tables needed:
- video_projects
- video_clips
- video_layers
- video_audio_tracks
- video_exports
- video_command_history
- video_analytics
- video_keyframes
Notes
- All code must follow PROMPT.md guidelines
- Use SafeCommand instead of Command::new()
- Use ErrorSanitizer for HTTP error responses
- No comments in code
- No .unwrap() or .expect() in production code