# `Jido.Messaging.Context`
[🔗](https://github.com/agentjido/jido_messaging/blob/v1.0.0/lib/jido_messaging/context.ex#L1)

Canonical runtime delivery context for `Jido.Messaging`.

# `t`

```elixir
@type t() :: %Jido.Messaging.Context{
  bridge_id: binary(),
  channel: module(),
  channel_type: nil | nil | atom(),
  delivery_external_room_id: nil | nil | binary(),
  external_room_id: binary(),
  external_thread_id: nil | nil | binary(),
  instance_module: module(),
  msg_context: %Jido.Messaging.MsgContext{
    agent_mentions: term(),
    app_meta: term(),
    body: term(),
    bridge_id: term(),
    channel_meta: term(),
    channel_module: term(),
    channel_type: term(),
    chat_type: term(),
    command: term(),
    delivery_external_room_id: term(),
    external_message_id: term(),
    external_reply_to_id: term(),
    external_room_id: term(),
    external_thread_id: term(),
    external_user_id: term(),
    mentions: term(),
    message_id: term(),
    participant_id: term(),
    raw: term(),
    reply_to_id: term(),
    room_id: term(),
    sender_name: term(),
    sender_username: term(),
    thread_id: term(),
    timestamp: term(),
    was_mentioned: term()
  },
  participant: %Jido.Chat.Participant{
    capabilities: term(),
    external_ids: term(),
    id: term(),
    identity: term(),
    metadata: term(),
    presence: term(),
    type: term()
  },
  participant_id: binary(),
  room: %Jido.Chat.Room{
    external_bindings: term(),
    id: term(),
    inserted_at: term(),
    metadata: term(),
    name: term(),
    type: term()
  },
  room_id: binary(),
  thread:
    nil
    | nil
    | %Jido.Messaging.Thread{
        assigned_agent_id: term(),
        delivery_external_room_id: term(),
        external_thread_id: term(),
        id: term(),
        inserted_at: term(),
        metadata: term(),
        room_id: term(),
        root_external_message_id: term(),
        root_message_id: term(),
        status: term(),
        updated_at: term()
      },
  thread_id: nil | nil | binary()
}
```

# `new`

Creates a context struct from map input.

# `schema`

Returns the Zoi schema for Context.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
