Class: Zavudev::Models::Broadcast

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/zavudev/models/broadcast.rb

Overview

Defined Under Namespace

Classes: ReviewResult

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(id:, channel:, created_at:, message_type:, name:, status:, total_contacts:, actual_cost: nil, completed_at: nil, content: nil, delivered_count: nil, email_subject: nil, estimated_cost: nil, failed_count: nil, metadata: nil, pending_count: nil, reserved_amount: nil, review_attempts: nil, review_result: nil, scheduled_at: nil, sender_id: nil, sending_count: nil, started_at: nil, text: nil, updated_at: nil) ⇒ Object

Parameters:

  • id (String)
  • channel (Symbol, Zavudev::Models::BroadcastChannel)

    Broadcast delivery channel. Use ‘smart’ for per-contact intelligent routing.

  • created_at (Time)
  • message_type (Symbol, Zavudev::Models::BroadcastMessageType)

    Type of message for broadcast.

  • name (String)
  • status (Symbol, Zavudev::Models::BroadcastStatus)

    Current status of the broadcast.

  • total_contacts (Integer)

    Total number of contacts in the broadcast.

  • actual_cost (Float, nil) (defaults to: nil)

    Actual cost so far in USD.

  • completed_at (Time) (defaults to: nil)
  • content (Zavudev::Models::BroadcastContent) (defaults to: nil)

    Content for non-text broadcast message types.

  • delivered_count (Integer) (defaults to: nil)
  • email_subject (String) (defaults to: nil)
  • estimated_cost (Float, nil) (defaults to: nil)

    Estimated total cost in USD.

  • failed_count (Integer) (defaults to: nil)
  • metadata (Hash{Symbol=>String}) (defaults to: nil)
  • pending_count (Integer) (defaults to: nil)
  • reserved_amount (Float, nil) (defaults to: nil)

    Amount reserved from balance in USD.

  • review_attempts (Integer, nil) (defaults to: nil)

    Number of review attempts (max 3).

  • review_result (Zavudev::Models::Broadcast::ReviewResult, nil) (defaults to: nil)

    AI content review result.

  • scheduled_at (Time) (defaults to: nil)
  • sender_id (String) (defaults to: nil)
  • sending_count (Integer) (defaults to: nil)
  • started_at (Time) (defaults to: nil)
  • text (String) (defaults to: nil)
  • updated_at (Time) (defaults to: nil)


# File 'lib/zavudev/models/broadcast.rb', line 142

Instance Attribute Details

#actual_costFloat?

Actual cost so far in USD.

Returns:

  • (Float, nil)


50
# File 'lib/zavudev/models/broadcast.rb', line 50

optional :actual_cost, Float, api_name: :actualCost, nil?: true

#channelSymbol, Zavudev::Models::BroadcastChannel

Broadcast delivery channel. Use ‘smart’ for per-contact intelligent routing.



16
# File 'lib/zavudev/models/broadcast.rb', line 16

required :channel, enum: -> { Zavudev::BroadcastChannel }

#completed_atTime?

Returns:

  • (Time, nil)


55
# File 'lib/zavudev/models/broadcast.rb', line 55

optional :completed_at, Time, api_name: :completedAt

#contentZavudev::Models::BroadcastContent?

Content for non-text broadcast message types.



61
# File 'lib/zavudev/models/broadcast.rb', line 61

optional :content, -> { Zavudev::BroadcastContent }

#created_atTime

Returns:

  • (Time)


21
# File 'lib/zavudev/models/broadcast.rb', line 21

required :created_at, Time, api_name: :createdAt

#delivered_countInteger?

Returns:

  • (Integer, nil)


66
# File 'lib/zavudev/models/broadcast.rb', line 66

optional :delivered_count, Integer, api_name: :deliveredCount

#email_subjectString?

Returns:

  • (String, nil)


71
# File 'lib/zavudev/models/broadcast.rb', line 71

optional :email_subject, String, api_name: :emailSubject

#estimated_costFloat?

Estimated total cost in USD.

Returns:

  • (Float, nil)


77
# File 'lib/zavudev/models/broadcast.rb', line 77

optional :estimated_cost, Float, api_name: :estimatedCost, nil?: true

#failed_countInteger?

Returns:

  • (Integer, nil)


82
# File 'lib/zavudev/models/broadcast.rb', line 82

optional :failed_count, Integer, api_name: :failedCount

#idString

Returns:

  • (String)


10
# File 'lib/zavudev/models/broadcast.rb', line 10

required :id, String

#message_typeSymbol, Zavudev::Models::BroadcastMessageType

Type of message for broadcast.



27
# File 'lib/zavudev/models/broadcast.rb', line 27

required :message_type, enum: -> { Zavudev::BroadcastMessageType }, api_name: :messageType

#metadataHash{Symbol=>String}?

Returns:

  • (Hash{Symbol=>String}, nil)


87
# File 'lib/zavudev/models/broadcast.rb', line 87

optional :metadata, Zavudev::Internal::Type::HashOf[String]

#nameString

Returns:

  • (String)


32
# File 'lib/zavudev/models/broadcast.rb', line 32

required :name, String

#pending_countInteger?

Returns:

  • (Integer, nil)


92
# File 'lib/zavudev/models/broadcast.rb', line 92

optional :pending_count, Integer, api_name: :pendingCount

#reserved_amountFloat?

Amount reserved from balance in USD.

Returns:

  • (Float, nil)


98
# File 'lib/zavudev/models/broadcast.rb', line 98

optional :reserved_amount, Float, api_name: :reservedAmount, nil?: true

#review_attemptsInteger?

Number of review attempts (max 3).

Returns:

  • (Integer, nil)


104
# File 'lib/zavudev/models/broadcast.rb', line 104

optional :review_attempts, Integer, api_name: :reviewAttempts, nil?: true

#review_resultZavudev::Models::Broadcast::ReviewResult?

AI content review result.



110
# File 'lib/zavudev/models/broadcast.rb', line 110

optional :review_result, -> { Zavudev::Broadcast::ReviewResult }, api_name: :reviewResult, nil?: true

#scheduled_atTime?

Returns:

  • (Time, nil)


115
# File 'lib/zavudev/models/broadcast.rb', line 115

optional :scheduled_at, Time, api_name: :scheduledAt

#sender_idString?

Returns:

  • (String, nil)


120
# File 'lib/zavudev/models/broadcast.rb', line 120

optional :sender_id, String, api_name: :senderId

#sending_countInteger?

Returns:

  • (Integer, nil)


125
# File 'lib/zavudev/models/broadcast.rb', line 125

optional :sending_count, Integer, api_name: :sendingCount

#started_atTime?

Returns:

  • (Time, nil)


130
# File 'lib/zavudev/models/broadcast.rb', line 130

optional :started_at, Time, api_name: :startedAt

#statusSymbol, Zavudev::Models::BroadcastStatus

Current status of the broadcast.



38
# File 'lib/zavudev/models/broadcast.rb', line 38

required :status, enum: -> { Zavudev::BroadcastStatus }

#textString?

Returns:

  • (String, nil)


135
# File 'lib/zavudev/models/broadcast.rb', line 135

optional :text, String

#total_contactsInteger

Total number of contacts in the broadcast.

Returns:

  • (Integer)


44
# File 'lib/zavudev/models/broadcast.rb', line 44

required :total_contacts, Integer, api_name: :totalContacts

#updated_atTime?

Returns:

  • (Time, nil)


140
# File 'lib/zavudev/models/broadcast.rb', line 140

optional :updated_at, Time, api_name: :updatedAt