Skip to content

GitLab Next

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
GitLab
GitLab
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 34,828
    • Issues 34,828
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
    • Iterations
  • Merge Requests 1,217
    • Merge Requests 1,217
  • Requirements
    • Requirements
    • List
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Security & Compliance
    • Security & Compliance
    • Dependency List
    • License Compliance
  • Operations
    • Operations
    • Metrics
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI / CD
    • Code Review
    • Insights
    • Issue
    • Repository
    • Value Stream
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • GitLab.org
  • GitLabGitLab
  • Issues
  • #31103

Closed
Open
Opened Aug 20, 2019 by Sarah Waldner@sarahwaldner✨Developer

Quick actions to add/remove Zoom meetings on issues

Problem to solve

Synchronous collaboration is a critical part of any fire-fight. We are streamlining the number of steps it takes to spin up a conference bridge and engage all required parties by embedding this functionality, using Zoom, directly in an issue. Once a user has started a Zoom call for a fire-fight, they need a way to associate the conference bridge with an issue so team members can join swiftly without requesting bridge links from others.

Once the call is over, it can be removed via a quick action as well.

Intended users

Sasha the Software Developer
Devon the DevOps Engineer
Sidney the Systems Administrator

Further details

This work contributes to the Incident Management Vision

Technical Constraints

It was recommended by the Zoom reps, that we not pursue the JWT integration path, as they are attempting to move away from that path and it is geared more towards server-to-server integrations that are bound to the specific account.

This will require us to look at (the recommended path) OAuth based integration, which will require us to create an app on the Zoom marketplace. Additionally, Zoom has already created an GitLab integration in their marketplace, which they have asked us to maintain the existing functionality to support any users who are currently utilizing the existing integration while we work to implement additional GitLab functionality.

They suggested we utilize the account-level OAuth integration path, instead of the user-level path, as it will allow us to implement a solution that addresses our specific use-cases (tightly integrating Zoom in GL issues), however it will require significantly more development efforts.

NOTE: we CAN implement a new marketplace app as an interim process, but they would like us to eventually support existing functionality in our new app.

There is also some additional complexity in the way that Zoom integrations work that will require more work on our side to support both our Cloud and Self Managed customers with the same integration.

MVC - Proposal

Create quick actions that supports interacting with zoom meetings on an issue directly.

  1. Add Existing Zoom Meeting to an Issue

    • User pastes an existing Zoom URL into a comment. After the user clicks the "Comment" button, the pinned Zoom embed is added under the issue description and the comment resolves. A system note appears letting the user know that a zoom call has been added to the issue by the user who executed the command.
    • User adds a Zoom meeting using the /zoom quick action. The user is prompted to add the specific Zoom Meeting ID. After the user clicks the "Comment" button, the pinned Zoom embed is added under the issue description and the comment resolves. A system note appears letting the user know that a zoom meeting has been added to the issue by the user who executed the command. A system alert appears letting the user know that the meeting has been added to the Issue.
    • User is only allowed to attach a single Zoom meeting to an issue. If the user attempts to add another Zoom meeting using the /zoom quick action, a system alert appear letting the user know that A Zoom Meeting already exists on this issue..
  2. Remove Existing Zoom Meeting from an Issue

    • User removes a Zoom meeting using the /remove_zoom quick action. Once the user has committed the comment, the the pinned Zoom embed is removed under the issue description. A system note appears letting the user know that the Zoom meeting has been removed to the issue by the user who executed the command. A system alert appears letting the user know that the meeting has been removed from the Issue.
  3. Deprecate the ability to pin embed a Zoom URL in the Issue description

    • Right now, users can include a zoom link in the description of an issue and it resolves a button at the top. In the future, we will want users to use the quick actions instead of pasting directly in the description so that they can remove it with a quick action. Any Zoom meeting added to an issue description should not generate a pinned embed at the top of an issue.

Permissions and Security

Documentation

Testing

What does success look like, and how can we measure that?

Links / references

  • Sketch Designs - Zoom MVC

/label gitlab-ce~10230929

Edited Sep 12, 2019 by Sarah Waldner
Assignee
Assign to
12.3
Milestone
12.3 (Past due)
Assign milestone
Time tracking
None
Due date
None
Reference: gitlab-org/gitlab#31103