Amarula.Protocol.Messages.Types (amarula v0.1.0)

View Source

Type definitions for WhatsApp messages.

Summary

Types

message_content()

@type message_content() :: map()

message_key()

@type message_key() :: %{
  remote_jid: String.t(),
  from_me: boolean(),
  id: String.t(),
  participant: String.t() | nil
}

message_upsert_type()

@type message_upsert_type() :: :notify | :append

send_message_options()

@type send_message_options() :: %{
  optional(:quoted) => wa_message(),
  optional(:ephemeral_expiration) => non_neg_integer(),
  optional(:timestamp) => DateTime.t(),
  optional(:message_id) => String.t(),
  optional(:context_info) => map()
}

wa_message()

@type wa_message() :: %{
  key: message_key(),
  message: message_content(),
  message_timestamp: non_neg_integer(),
  status: atom()
}