You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Slack continues to fire events until it receives a HTTP 2xx response, because it retries a few times after a failed attempt. As we currently ignore thread replies that are not part of an existing ticket, there is a chance that the "New reply" event interferes with "New ticket" creation, which already records the entire thread. This could lead to the following sequence:
Agent adds reply to thread
Slack fires "New reply" event, which we ignore as there is no ticket for the parent message
Agent adds ticket reaction to open support ticket
Slack fires "New reaction" event, which we check and validate before recording the entire thread
Slack fires a delayed "New reply" event for the earlier failed attempt
We now identify the reply as a valid reply to an existing ticket and add it to the thread
The thread now has a duplicate reply
There are a few improvements to make here:
First of all, we should let Slack know we received the "New reply" event even if we don't handle it. That way, Slack will not consider it a failed attempt and will stop its cycle of retrying while backing off exponentially. Also, we will reduce the risk of this happening:
Maintain a response success rate of at least 5% of events per 60 minutes to prevent automatic disabling.
Secondly, we should probably respond more quickly to received events, as Slack employs a timeout of three seconds before it considers an event a failed attempt. Right now, we respond after processing the event.
Finally, we could make threads more robust by adding a timestamp check before adding a reply from a "New reply" event, so we ensure it doesn't interfere with new ticket creation having already added the relevant reply.
The text was updated successfully, but these errors were encountered:
Slack continues to fire events until it receives a
HTTP 2xx
response, because it retries a few times after a failed attempt. As we currently ignore thread replies that are not part of an existing ticket, there is a chance that the "New reply" event interferes with "New ticket" creation, which already records the entire thread. This could lead to the following sequence:There are a few improvements to make here:
First of all, we should let Slack know we received the "New reply" event even if we don't handle it. That way, Slack will not consider it a failed attempt and will stop its cycle of retrying while backing off exponentially. Also, we will reduce the risk of this happening:
Secondly, we should probably respond more quickly to received events, as Slack employs a timeout of three seconds before it considers an event a failed attempt. Right now, we respond after processing the event.
Finally, we could make threads more robust by adding a timestamp check before adding a reply from a "New reply" event, so we ensure it doesn't interfere with new ticket creation having already added the relevant reply.
The text was updated successfully, but these errors were encountered: