diff --git a/app/slackbridge/server/RocketAdapter.js b/app/slackbridge/server/RocketAdapter.js index 19d5fa38979..e84efba8d20 100644 --- a/app/slackbridge/server/RocketAdapter.js +++ b/app/slackbridge/server/RocketAdapter.js @@ -469,6 +469,13 @@ export default class RocketAdapter { if (slackMessage.edited) { rocketMsgObj.editedAt = new Date(parseInt(slackMessage.edited.ts.split('.')[0]) * 1000); } + rocketMsgObj.slackTs = slackMessage.ts; + if (slackMessage.thread_ts) { + const tmessage = Messages.findOneBySlackTs(slackMessage.thread_ts); + if (tmessage) { + rocketMsgObj.tmid = tmessage._id; + } + } if (slackMessage.subtype === 'bot_message') { rocketUser = Users.findOneById('rocket.cat', { fields: { username: 1 } }); } diff --git a/app/slackbridge/server/SlackAdapter.js b/app/slackbridge/server/SlackAdapter.js index a6d9268e141..c61092f7cde 100644 --- a/app/slackbridge/server/SlackAdapter.js +++ b/app/slackbridge/server/SlackAdapter.js @@ -667,6 +667,13 @@ export default class SlackAdapter { icon_url: iconUrl, link_names: 1, }; + + if (rocketMessage.tmid) { + const tmessage = Messages.findOneById(rocketMessage.tmid); + if (tmessage && tmessage.slackTs) { + data.thread_ts = tmessage.slackTs; + } + } logger.slack.debug('Post Message To Slack', data); // If we don't have the bot id yet and we have multiple slack bridges, we need to keep track of the messages that are being sent