sinch.domains.conversation.models.v1.sinch_events.events.message_delivery_report module

class sinch.domains.conversation.models.v1.sinch_events.events.message_delivery_report.MessageDeliveryReport(
*,
message_id: Annotated[str, Strict(strict=True)] | None = None,
conversation_id: Annotated[str, Strict(strict=True)] | None = None,
status: Literal['QUEUED_ON_CHANNEL', 'DELIVERED', 'READ', 'FAILED', 'SWITCHING_CHANNEL'] | Annotated[str, Strict(strict=True)] | None = None,
channel_identity: ChannelIdentity | None = None,
contact_id: Annotated[str, Strict(strict=True)] | None = None,
metadata: Annotated[str, Strict(strict=True)] | None = None,
processing_mode: Literal['CONVERSATION', 'DISPATCH'] | Annotated[str, Strict(strict=True)] | None = None,
reason: Reason | None = None,
**extra_data: Any,
)[source]

Bases: SinchEvent

Delivery report for an app message (MESSAGE_DELIVERY trigger).

Parameters:
  • message_id (Annotated[str, Strict(strict=True)] | None)

  • conversation_id (Annotated[str, Strict(strict=True)] | None)

  • status (Literal['QUEUED_ON_CHANNEL', 'DELIVERED', 'READ', 'FAILED', 'SWITCHING_CHANNEL'] | ~typing.Annotated[str, ~pydantic.types.Strict(strict=True)] | None)

  • channel_identity (ChannelIdentity | None)

  • contact_id (Annotated[str, Strict(strict=True)] | None)

  • metadata (Annotated[str, Strict(strict=True)] | None)

  • processing_mode (Literal['CONVERSATION', 'DISPATCH'] | ~typing.Annotated[str, ~pydantic.types.Strict(strict=True)] | None)

  • reason (Reason | None)

  • extra_data (Any)

message_id: Annotated[str, Strict(strict=True)] | None
conversation_id: Annotated[str, Strict(strict=True)] | None
status: Literal['QUEUED_ON_CHANNEL', 'DELIVERED', 'READ', 'FAILED', 'SWITCHING_CHANNEL'] | Annotated[str, Strict(strict=True)] | None
channel_identity: ChannelIdentity | None
contact_id: Annotated[str, Strict(strict=True)] | None
metadata: Annotated[str, Strict(strict=True)] | None
processing_mode: Literal['CONVERSATION', 'DISPATCH'] | Annotated[str, Strict(strict=True)] | None
reason: Reason | None
model_config = {'extra': 'allow', 'populate_by_name': True, 'validate_by_alias': True, 'validate_by_name': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].