Current section

Files

Jump to
messenger_bot lib messenger_bot models messaging.ex
Raw

lib/messenger_bot/models/messaging.ex

defmodule MessengerBot.Model.Messaging do
@moduledoc """
Structure and type for messaging
"""
alias MessengerBot.Model.{
Sender,
Recipient,
Message,
Delivery,
Read,
Postback,
Optin,
Referral,
AccountLinking
}
defstruct [
:sender,
:recipient,
:timestamp,
:message,
:delivery,
:read,
:postback,
:optin,
:referral,
:payment,
:checkout_update,
:pre_checkout,
:account_linking,
:policy_enforcement,
:app_roles,
:standby,
:pass_thread_control,
:take_thread_control
]
@type t :: %__MODULE__{
sender: Sender.t(),
recipient: Recipient.t(),
timestamp: integer,
message: Message.t(),
delivery: Delivery.t(),
read: Read.t(),
postback: Postback.t(),
optin: Optin.t(),
referral: Referral.t(),
payment: Map.t(),
checkout_update: Map.t(),
pre_checkout: Map.t(),
account_linking: AccountLinking.t(),
policy_enforcement: Map.t(),
app_roles: Map.t(),
standby: Map.t(),
pass_thread_control: Map.t(),
take_thread_control: Map.t()
}
end