# config/initializers/whatsrb.rb
WhatsrbCloud.configure do |config|
config.api_key = Rails.application.credentials.dig(:whatsrb, :api_key)
end
Rails.application.config.action_registry = WhatsrbCloud::ActionRegistry.new.tap do |r|
r.register("create_task") { |a| Task.create!(description: a["description"], room_number: a["room_number"]) }
r.register("create_ticket") { |a| Ticket.create!(message: a["message"]) }
end
Rails.application.config.event_registry = WhatsrbCloud::EventRegistry.new.tap do |r|
r.on("agent_run.completed") do |data|
run = WhatsrbCloud::Objects::AgentRun.new(data)
run.dispatch(Rails.application.config.action_registry)
end
end