
요약: 이 플러그인은 Rocket.Chat을 Discourse와 통합합니다.
Communiteq, Digital Ocean 또는 다른 프로바이더를 통해 호스팅된 Rocket.Chat 인스턴스를 별도로 구비해야 합니다. 이 플러그인은 해당 인스턴스를 포럼과 통합합니다.
통합은 두 부분으로 구성됩니다:
- Discourse 사용자 인터페이스 내 채팅 임베딩
- Discourse와 Rocket.Chat 간의 단일 로그인(SSO). 여기서 Discourse는 Rocket.Chat에서 사용자를 인증, 생성 및 업데이트하기 위한 인증 제공자로 작용합니다.
GitHub: GitHub - communiteq/discourse-rocketchat · GitHub
설치: 플러그인 설치 가이드를 따르세요.
크레딧: @jrgong은 Rocket.Chat을 Discourse와 통합한다는 훌륭한 아이디어를 제시했으며, 사용자 인터페이스의 첫 버전 개발도 진행했습니다.
스크린샷
채팅은 Discourse 인터페이스의 오른쪽 하단에 임베딩됩니다. 제목 바를 클릭하여 접거나 펼칠 수 있습니다. 포럼 내부를 탐색할 때도 채팅은 열려 있는 상태로 유지됩니다.
모바일에서는 채팅이 전체 화면으로 표시되며, 상단 바의 Rocket.Chat 아이콘을 통해 접근할 수 있습니다:
설정
이 통합은 두 시스템 모두에서 설정해야 합니다. Discourse는 사용자 인터페이스에 통합하기 위해 채팅의 위치를 알아야 하고, Rocket.Chat은 인증을 수행하기 위해 Discourse의 위치를 알아야 합니다.
Discourse 측
관리 - 플러그인 - Discourse RocketChat - 설정
discourse_rocketchat_enabled
플러그인을 활성화하거나 비활성화합니다.
discourse rocketchat title
여기에서 채팅 창 제목을 설정합니다. 예: Chat
discourse rocketchat host
RocketChat 인스턴스의 호스트 이름을 설정합니다. 예: chat.example.com.
https:// 등으로 접두사를 붙이지 마세요.
discourse rocketchat default channel
여기에서 기본 채널을 설정합니다. 예: General.
discourse rocketchat min trust level
사용자가 Rocket.Chat을 사용할 수 있는 최소 신뢰 수준을 설정합니다. 예: 2: member.
discourse rocketchat click entire bar
채팅을 펼치거나 숨기기 위해 전체 제목 바를 클릭할 수 있도록 하려면 이 옵션을 활성화하세요. 'Open’과 ‘Close’ 텍스트만 클릭 가능하도록 하려면 비활성화하세요.
discourse rocketchat show menu for groups
Rocket.Chat이 메뉴를 표시하도록 하려는 그룹을 설정합니다. 예: staff
Rocket.Chat 측
관리 - 설정 - CAS
이 통합은 인증 및 인가(CAS 2.0 프로토콜)에 CAS 2.0 프로토콜을 사용합니다.
forum.example.com을 포럼 이름으로 교체하세요.
- SSO Base URL:
https://forum.example.com/rocketchat - SSO Login URL:
https://forum.example.com/rocketchat/login - CAS Version: 2.0
- Trust CAS username: 활성화됨
- Allow user creation: 활성화됨
- Enabled: 활성화됨
관리 - 설정 - CAS - Attribute Handling
이메일 주소와 전체 이름을 동기화할 수 있도록 해당 속성을 찾을 위치를 설정해야 합니다.
- Always Sync User Data: 활성화됨
- Attribute Map:
{"email":"%email%", "name":"%name%"}
관리 - 설정 - General
iFrame 내에서 Rocket.Chat을 실행할 수 있어야 합니다.
- Restrict access inside any Iframe: 비활성화됨
관리 - 설정 - Accounts
두 플랫폼을 통합하려면 Discourse가 로그인 및 가입, 그리고 계정의 전체 이름, 이름 및 이메일 주소를 제어해야 합니다. Rocket.Chat 측에서 다음 설정을 비활성화해야 합니다:
- Allow User Avatar Change: 비활성화됨
- Allow Name Change: 비활성화됨
- Allow Username Change: 비활성화됨
- Allow Email Change: 비활성화됨
- Show Default Login Form: 비활성화됨
관리 - 설정 - Accounts - Registration
- Registration Form: 비활성화됨
- Registration Form Secret URL: (무작위 문자열)
관리 - 설정 - Accounts - Avatar
Rocket.Chat은 Discourse의 아바타를 사용할 수 있습니다.
forum.example.com을 포럼 이름으로 교체했는지 확인하세요.
- Avatar External Provider URL:
https://forum.example.com/rocketchat/avatar/{username}.png


