trabajo-afectivo/lib/sessions/event/chat_status_customer.rb

31 lines
704 B
Ruby
Raw Normal View History

class Sessions::Event::ChatStatusCustomer < Sessions::Event::ChatBase
def run
chat_id = 1
chat = Chat.find_by(id: chat_id)
if !chat
return {
event: 'chat_status_customer',
data: {
state: 'no_such_chat',
},
}
end
# check if it's a chat sessin reconnect
session_id = nil
if @data['data']['session_id']
session_id = @data['data']['session_id']
2015-11-12 15:58:47 +00:00
# update recipients of existing sessions
chat_session = Chat::Session.find_by(session_id: session_id)
chat_session.add_recipient(@client_id, true)
end
{
event: 'chat_status_customer',
data: chat.customer_state(session_id),
}
end
end