From f1e8e3467faed2aa7ec1b106ad3c725a5f621bbd Mon Sep 17 00:00:00 2001 From: Rodrigo Nascimento Date: Mon, 6 Jun 2016 19:06:55 -0300 Subject: [PATCH 1/2] Modify to use the new stream package --- src/rocketchat_driver.coffee | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/rocketchat_driver.coffee b/src/rocketchat_driver.coffee index fbe48cc86..6d9b546d7 100644 --- a/src/rocketchat_driver.coffee +++ b/src/rocketchat_driver.coffee @@ -7,9 +7,9 @@ LRU = require('lru-cache') # TODO: need to grab these values from process.env[] -_msgsubtopic = 'stream-messages' # 'messages' +_msgsubtopic = 'stream-room-messages' # 'messages' _msgsublimit = 10 # this is not actually used right now -_messageCollection = 'stream-messages' +_messageCollection = 'stream-room-messages' # room id cache _roomCacheSize = parseInt(process.env.ROOM_ID_CACHE_SIZE) || 10 @@ -97,7 +97,7 @@ class RocketChatDriver # data.roomid # return promise @logger.info "Preparing Meteor Subscriptions.." - msgsub = @asteroid.subscribe _msgsubtopic, data.roomid, _msgsublimit + msgsub = @asteroid.subscribe _msgsubtopic, data.roomid, true @logger.info "Subscribing to Room: #{data.roomid}" return msgsub.ready @@ -117,7 +117,7 @@ class RocketChatDriver # console.log('changed:', JSON.stringify(changedMsg, null, 2)); if changedMsg.args? @logger.info "Message received with ID " + id - receiveMessageCallback changedMsg.args[1] + receiveMessageCallback changedMsg.args[0] callMethod: (name, args = []) => @logger.info "Calling: #{name}, #{args.join(', ')}" From 5a892091aa5e0acc54f72786c46dd65e243d3458 Mon Sep 17 00:00:00 2001 From: Rodrigo Nascimento Date: Tue, 7 Jun 2016 16:13:01 -0300 Subject: [PATCH 2/2] Fix listening for my messages --- src/rocketchat.coffee | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/rocketchat.coffee b/src/rocketchat.coffee index 6da7ce4ce..9f5ff50e8 100644 --- a/src/rocketchat.coffee +++ b/src/rocketchat.coffee @@ -24,6 +24,9 @@ RespondToDirectMessage = process.env.RESPOND_TO_DM or "false" RespondToEditedMessage = (process.env.RESPOND_TO_EDITED or "false").toLowerCase() SSLEnabled = "false" +if ListenOnAllPublicRooms.toLowerCase() is 'true' + RocketChatRoom = '' + # Custom Response class that adds a sendPrivate and sendDirect method class RocketChatResponse extends Response sendDirect: (strings...) -> @@ -111,6 +114,10 @@ class RocketChatBotAdapter extends Adapter ) # Subscribe to msgs in all rooms .then((res) => + if ListenOnAllPublicRooms.toLowerCase() is 'true' + res = [0] + rooms = ['__my_messages__'] + @robot.logger.info "All rooms joined." subs = [] for result, idx in res