happychat-service
Advanced tools
Comparing version 0.6.1 to 0.7.0
@@ -30,3 +30,3 @@ 'use strict'; | ||
// TODO: validate message | ||
debug('received message'); | ||
debug('received message', message); | ||
events.emit('message', message); | ||
@@ -33,0 +33,0 @@ }); |
@@ -289,3 +289,3 @@ 'use strict'; | ||
}).catch(function (e) { | ||
debug('chat has not been assigned, finding an operator', e, channelIdentity); | ||
debug('chat has not been assigned, finding an operator', e, channelIdentity, room_name); | ||
_this4._chats = (0, _set2.default)(_this4._chats, channelIdentity.id, [STATUS_PENDING, channelIdentity]); | ||
@@ -339,2 +339,3 @@ _this4.emit('chat.status', 'pending', channelIdentity); | ||
value: function findChat(channelIdentity) { | ||
debug('searching for chat', channelIdentity); | ||
return this.findChatById(channelIdentity.id); | ||
@@ -341,0 +342,0 @@ } |
@@ -37,4 +37,6 @@ 'use strict'; | ||
var socketIdentifier = { id: user.id, socket_id: socket.id, session_id: user.session_id }; | ||
debug('user joined room', user.id); | ||
var chat = { user_id: user.id, id: user.session_id }; | ||
debug('chat initialized', chat); | ||
socket.on('message', function (_ref3) { | ||
@@ -45,7 +47,7 @@ var text = _ref3.text; | ||
var message = { session_id: user.session_id, id: id, text: text, timestamp: (0, _util.timestamp)(), user: identityForUser(user), meta: meta }; | ||
var message = { session_id: chat.id, id: id, text: text, timestamp: (0, _util.timestamp)(), user: identityForUser(user), meta: meta }; | ||
debug('received customer message', message); | ||
// all customer connections for this user receive the message | ||
// io.to( user.id ).emit( 'message', message ) | ||
events.emit('message', user, message); | ||
events.emit('message', chat, message); | ||
}); | ||
@@ -57,16 +59,23 @@ | ||
socket.emit('init', user); | ||
events.emit('join', socketIdentifier, user, socket); | ||
events.emit('join', socketIdentifier, chat, socket); | ||
}; | ||
}; | ||
var join = function join(_ref4) { | ||
var events = _ref4.events; | ||
var io = _ref4.io; | ||
var user = _ref4.user; | ||
var socket = _ref4.socket; | ||
var customerRoom = function customerRoom(_ref4) { | ||
var session_id = _ref4.session_id; | ||
return 'session/' + session_id; | ||
}; | ||
var chatRoom = function chatRoom(_ref5) { | ||
var id = _ref5.id; | ||
return 'session/' + id; | ||
}; | ||
debug('user joined', user.username, user.id); | ||
var join = function join(_ref6) { | ||
var events = _ref6.events; | ||
var io = _ref6.io; | ||
var user = _ref6.user; | ||
var socket = _ref6.socket; | ||
// user joins room based on their identifier | ||
socket.join(user.id, init({ user: user, socket: socket, events: events, io: io })); | ||
debug('user joined', user); | ||
socket.join(customerRoom(user), init({ user: user, socket: socket, events: events, io: io })); | ||
}; | ||
@@ -78,5 +87,5 @@ | ||
events.on('receive', function (user, message) { | ||
debug('sending message to customer', user, message); | ||
io.to(user.id).emit('message', message); | ||
events.on('receive', function (chat, message) { | ||
debug('sending message to customer', chat, message); | ||
io.to(chatRoom(chat)).emit('message', message); | ||
}); | ||
@@ -83,0 +92,0 @@ io.on('connection', function (socket) { |
@@ -195,7 +195,8 @@ 'use strict'; | ||
debug('querying operators in chat', chat); | ||
var room = 'customers/' + chat.id; | ||
debug('querying operators in chat', chat, room); | ||
queryClients(io, room).then(identifyClients(io)).then(function (operators) { | ||
return Promise.resolve(reduceUniqueOperators(operators)); | ||
}).then(function (identities) { | ||
debug('sending chat.online', chat, identities); | ||
io.in(room).emit('chat.online', chat.id, identities); | ||
@@ -310,3 +311,3 @@ }); | ||
// a socket has joined | ||
debug('chat was opened'); | ||
debug('chat was opened', room); | ||
events.emit('join', chat, operator, socket); | ||
@@ -313,0 +314,0 @@ complete(error); |
{ | ||
"name": "happychat-service", | ||
"version": "0.6.1", | ||
"version": "0.7.0", | ||
"description": "Socket.IO based chat server for happychat.", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
51985
1339