Rocket chat

Rocket.Chat is an open source chat/messaging solution you can self host. It’s an alternative to Slack, Mattermost, Teams, etc.

Authenticate with OAuth / OpenID Connect

  1. On your rocket.chat server, in Administration, look for OAuth in the search entry in the side bar.

  2. On top right, click on Add custom oauth and type Tuleap

  3. On your Tuleap Server
    1. Generate a new OAuth2 app in your project without `Force usage of PKCE to authenticate` and set as redirect endpoint the callback URL given by rocket chat (in the form https://.../_oauth/tuleap)

  4. On your rocket.chat server, in newly created Tuleap provider:
    1. URL: https://tuleap.example.com (Replace by your Tuleap server)

    2. Token Path: /oauth2/token

    3. Token Sent Via: Header

    4. Identity Token Sent Via: ‘Same as “Token Sent Via”’

    5. Identity Path: /oauth2/userinfo

    6. Authorize Path: /oauth2/authorize

    7. Scope: openid email profile

    8. Param Name for access token: access_token

    9. Id: tlp-client-id-X (Replace by the Client Id generated at step 1)

    10. Secret: tlp-oauth2-Y (Replace by the Client Secret generated at step 1)

    11. Login Style: Redirect

    12. Username field: preferred_username

    13. Email field: email

    14. Name field: name

    15. Avatar field: picture

    16. Activate Show Button on Login Page

    17. Activate Enable (at the top)

    18. Click Save changes

Integrations

You can use all the integrations that works with Mattermost out of the box.

You need as Rocket.Chat administrator to create a new Incoming WebHook integration and then use the generated URL in Bot definition of Tuleap.