main
 1class EventMessage
 2  attr_reader :agent_id, :event_type, :data
 3
 4  def initialize(agent_id:, event_type:, data: {})
 5    @agent_id = agent_id
 6    @event_type = event_type
 7    @data = data
 8  end
 9
10  def routing_key
11    "events.#{event_type}.#{agent_id}"
12  end
13
14  def to_hash
15    {
16      agent_id: agent_id,
17      type: event_type,
18      data: data
19    }
20  end
21
22  def to_json
23    to_hash.to_json
24  end
25end