def create_session(
        self,
        session_id: str,
        video_id: str,
        collection_id: str,
        created_at: int = None,
        updated_at: int = None,
        metadata: dict = {},
        **kwargs,
    ) -> None:
        """Create a new session.

        :param session_id: Unique session ID.
        :param video_id: ID of the video associated with the session.
        :param collection_id: ID of the collection associated with the session.
        :param created_at: Timestamp when the session was created.
        :param updated_at: Timestamp when the session was last updated.
        :param metadata: Additional metadata for the session.
        """
        created_at = created_at or int(time.time())
        updated_at = updated_at or int(time.time())

        self.cursor.execute(
            """
        INSERT OR IGNORE INTO sessions (session_id, video_id, collection_id, created_at, updated_at, metadata)
        VALUES (?, ?, ?, ?, ?, ?)
        """,
            (
                session_id,
                video_id,
                collection_id,
                created_at,
                updated_at,
                json.dumps(metadata),
            ),
        )
        self.conn.commit()
Create a new session.

        :param session_id: Unique session ID.
        :param video_id: ID of the video associated with the session.
        :param collection_id: ID of the collection associated with the session.
        :param created_at: Timestamp when the session was created.
        :param updated_at: Timestamp when the session was last updated.
        :param metadata: Additional metadata for the session.
        
backend/director/db/sqlite/db.py