Class: Copilot::SessionEvent

Inherits:
Struct
  • Object
show all
Defined in:
lib/copilot/types.rb

Overview

Session event from the server. Uses an open struct-style approach so new event types are forward-compatible.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Attribute Details

#agent_idObject

Returns the value of attribute agent_id

Returns:

  • (Object)

    the current value of agent_id



710
711
712
# File 'lib/copilot/types.rb', line 710

def agent_id
  @agent_id
end

#dataObject

Returns the value of attribute data

Returns:

  • (Object)

    the current value of data



710
711
712
# File 'lib/copilot/types.rb', line 710

def data
  @data
end

#ephemeralObject

Returns the value of attribute ephemeral

Returns:

  • (Object)

    the current value of ephemeral



710
711
712
# File 'lib/copilot/types.rb', line 710

def ephemeral
  @ephemeral
end

#idObject

Returns the value of attribute id

Returns:

  • (Object)

    the current value of id



710
711
712
# File 'lib/copilot/types.rb', line 710

def id
  @id
end

#parent_idObject

Returns the value of attribute parent_id

Returns:

  • (Object)

    the current value of parent_id



710
711
712
# File 'lib/copilot/types.rb', line 710

def parent_id
  @parent_id
end

#timestampObject

Returns the value of attribute timestamp

Returns:

  • (Object)

    the current value of timestamp



710
711
712
# File 'lib/copilot/types.rb', line 710

def timestamp
  @timestamp
end

#typeObject

Returns the value of attribute type

Returns:

  • (Object)

    the current value of type



710
711
712
# File 'lib/copilot/types.rb', line 710

def type
  @type
end

Class Method Details

.from_hash(h) ⇒ Object



711
712
713
714
715
716
717
718
719
720
721
# File 'lib/copilot/types.rb', line 711

def self.from_hash(h)
  new(
    id: h["id"],
    timestamp: h["timestamp"],
    parent_id: h["parentId"],
    agent_id: h["agentId"],
    ephemeral: h["ephemeral"],
    type: h["type"],
    data: h["data"] || {}
  )
end