Class: XTwitterScraper::Models::EventDetail

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/x_twitter_scraper/models/event_detail.rb,
sig/x_twitter_scraper/models/event_detail.rbs

Overview

See Also:

  • XTwitterScraper::Resources::Events#retrieve

Defined Under Namespace

Modules: MonitorType

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:, data:, monitor_id:, monitor_type:, occurred_at:, type:, keyword_monitor_id: nil, query: nil, username: nil, x_event_id: nil) ⇒ Object

Full monitor event including payload data and optional X event ID.

Parameters:

  • id (String)
  • data (Hash{Symbol=>Object})

    Event payload - shape varies by event type (JSON)

  • monitor_id (String)

    Monitor ID associated with this detailed event payload.

  • monitor_type (Symbol, XTwitterScraper::Models::EventDetail::MonitorType)

    Source monitor type for this detailed event.

  • occurred_at (Time)
  • type (Symbol, XTwitterScraper::Models::EventType)

    Type of monitor event fired when account activity occurs.

  • keyword_monitor_id (String) (defaults to: nil)

    Keyword monitor ID included on detailed keyword events.

  • query (String) (defaults to: nil)

    Keyword query for this detailed monitor event.

  • username (String) (defaults to: nil)

    Account username for this detailed monitor event.

  • x_event_id (String) (defaults to: nil)


# File 'lib/x_twitter_scraper/models/event_detail.rb', line 64

Instance Attribute Details

#dataHash{Symbol=>Object}

Event payload - shape varies by event type (JSON)

Parameters:

  • value (::Hash[Symbol, top])

Returns:

  • (Hash{Symbol=>Object})


16
# File 'lib/x_twitter_scraper/models/event_detail.rb', line 16

required :data, XTwitterScraper::Internal::Type::HashOf[XTwitterScraper::Internal::Type::Unknown]

#idString

Parameters:

  • value (String)

Returns:

  • (String)


10
# File 'lib/x_twitter_scraper/models/event_detail.rb', line 10

required :id, String

#keyword_monitor_idString?

Keyword monitor ID included on detailed keyword events.

Parameters:

  • (String)

Returns:

  • (String, nil)


45
# File 'lib/x_twitter_scraper/models/event_detail.rb', line 45

optional :keyword_monitor_id, String, api_name: :keywordMonitorId

#monitor_idString

Monitor ID associated with this detailed event payload.

Parameters:

  • value (String)

Returns:

  • (String)


22
# File 'lib/x_twitter_scraper/models/event_detail.rb', line 22

required :monitor_id, String, api_name: :monitorId

#monitor_typeSymbol, XTwitterScraper::Models::EventDetail::MonitorType

Source monitor type for this detailed event.

Parameters:

  • value (XTwitterScraper::Models::EventDetail::monitor_type)

Returns:



28
# File 'lib/x_twitter_scraper/models/event_detail.rb', line 28

required :monitor_type, enum: -> { XTwitterScraper::EventDetail::MonitorType }, api_name: :monitorType

#occurred_atTime

Parameters:

  • value (Time)

Returns:

  • (Time)


33
# File 'lib/x_twitter_scraper/models/event_detail.rb', line 33

required :occurred_at, Time, api_name: :occurredAt

#queryString?

Keyword query for this detailed monitor event.

Parameters:

  • (String)

Returns:

  • (String, nil)


51
# File 'lib/x_twitter_scraper/models/event_detail.rb', line 51

optional :query, String

#typeSymbol, XTwitterScraper::Models::EventType

Type of monitor event fired when account activity occurs.

Parameters:

  • value (XTwitterScraper::Models::event_type)

Returns:



39
# File 'lib/x_twitter_scraper/models/event_detail.rb', line 39

required :type, enum: -> { XTwitterScraper::EventType }

#usernameString?

Account username for this detailed monitor event.

Parameters:

  • (String)

Returns:

  • (String, nil)


57
# File 'lib/x_twitter_scraper/models/event_detail.rb', line 57

optional :username, String

#x_event_idString?

Parameters:

  • (String)

Returns:

  • (String, nil)


62
# File 'lib/x_twitter_scraper/models/event_detail.rb', line 62

optional :x_event_id, String, api_name: :xEventId

Instance Method Details

#to_hash{

Returns:

  • ({)


59
# File 'sig/x_twitter_scraper/models/event_detail.rbs', line 59

def to_hash: -> {