Member Junction
    Preparing search index...

    The ONE timeline element a realtime (voice) session collapses to in the standard conversation message list (see BuildConversationTimeline).

    It is laid out like a chat message rather than a banner. The call icon sits in the avatar column, "Voice call with Sage" and the start time fill the header line, and a bubble carries the status, how long the call ran, how much was said and the last thing said. That keeps the conversation's margins and rhythm, where the old full-width card cut across them.

    Review call (or clicking the bubble) emits OpenRequested with the session id. The message list bubbles it up so the chat area can host the existing SESSION REVIEW overlay via ConversationChatAreaComponent.OpenRealtimeSessionReview (Resume / Close live inside that overlay, unchanged).

    Rendered DYNAMICALLY by MessageListComponent (same createComponent path the message items use) — standalone by design, no module declaration needed.

    Index

    Constructors

    Properties

    CurrentUserID: string | null = null

    The signed-in user's id. With it, the quoted line says "You" on the viewer's own call and names the caller on anyone else's, which matters in a conversation several people share.

    The collapsed session block computed from the conversation's stamped detail rows.

    Meta: RealtimeSessionTimelineMeta | null = null

    Optional session-row enrichment (agent, user, status, start and close); null degrades gracefully.

    OpenRequested: EventEmitter<string> = ...

    Emitted with the MJ: AI Agent Sessions.ID when the user asks to open the session review.

    UserName: string = 'You'

    Label for a user's line when the host passes no CurrentUserID, and so the card can't tell whose call it was. With CurrentUserID set it isn't used: the line says "You", the caller's name, or "Caller" when the session row doesn't say whose call it was.

    Accessors

    Methods