Skip to content

Google Chat Integration - Support for Threaded Messages

Problem to solve

Messages produced by the Gitlab => GChat integration are each in their individual thread, which ends up in less information displayed on screen without scrolling

Release notes

Users of the Google Hangouts Chat integration rejoice! Thanks to our wonderful contributor, Chetan Sarva, notifications related to a single Issue or MR will now be organized into threads, reducing the noise and searching required to understand ongoing discussions.

New to the GitLab + Google Chat integration? Get started with our Google Chat integration documentation.

Proposal

Put messages that concern the same issue / Merge request / etc in a thread
This way, people can easily see how has a Merge requests / issues evolved over time even on a very active project.

Option A: Implementation details if we want threaded discussions like in GitLab

  • When posting notes to Google Hangouts Chat, always pass the value of the discussion_id as the value of the threadKey attribute in the POST payload to Chat. This will enable Google Hangouts Chat to automatically thread notes without having to store any thread ID from Google.
  • See documentation below

Option B: Implementation details if we want threaded discussions by object type (Issue/MR)

  • When posting notes to Google Hangouts Chat, always pass the value of the object id as the value of the threadKey attribute in the POST payload to Chat. This will enable Google Hangouts Chat to automatically attach all notes from a given object to the same thread.

Limitations

  • Google's API seems to only support one thread ID so we could not thread by both object type and then thread by discussion within a given object's thread.

Links / references

Edited by Grant Hickman