yona-projects / yona

Project Hosting SW
https://yona.io
Apache License 2.0
490 stars 154 forks source link

Slack webhook 개선 요구 #758

Open krPlatypus opened 2 years ago

krPlatypus commented 2 years ago

안녕하세요. 2년간 Yona를 잘 이용중입니다. 꾸준한 업데이트에 감사드립니다.

새 프로젝트를 진행할 때마다 불편한 점을 기능 개발로 해소할 수 있지 않을까 하여 이슈를 올리게 되었습니다. 저희 팀은 약 5년간 Slack의 Workspace별로 프로젝트를 관리합니다. 매 번 Yona에서 프로젝트를 생성할 때마다 Yona에 Slack에 있는 인원들이 참여를 하는데요(내, 외부 모두 포함) Slack의 멤버와 Yona의 멤버가 동일하다고 보면 되실 듯 합니다. 이 때에 프로젝트 참여하는 인원들의 대다수 의견이 있습니다. Yona 생성 당시에 Slack 멤버와 동기화를 하고, Yona에서 Issue 대상자 언급 시, Slack에도 각 대상자에게 멘션을 하는 기능이 있으면 좋을 것 같다는 의견입니다. Slack에서 제공하는 API에서도 멤버 목록은 제공하고 있고, 동기화도 자동이 아닌, 수동적으로 이루어 져도 상관이 없을 것 같다는 의견도 추가해서 말입니다.

혹여나 의견만 드리는 것이니 부담이 없었으면 합니다.

늘 감사드립니다.

doortts commented 2 years ago

의견주셔서 고맙습니다.

몇가지 추가 질문이 있습니다.

Slack의 멤버와 Yona의 멤버가 동일하다고 보면 되실 듯 합니다

이 이야기는 Yona 사이트 전체 사용자와 Slack 전체 사용자가 동일하다는 의미일까요? 아니면 특정 Yona 프로젝트의 멤버가 특정 Slack 워크스페이스와 동일하다는 의미일까요?

Yona 생성 당시에 Slack 멤버와 동기화를 하고,

Yona 에서 프로젝트 생성시 멤버 추가를 Slack 특정 워크스페이스 멤버와 동일하길 기대하시는걸까요?

Yona에서 Issue 대상자 언급 시, Slack에도 각 대상자에게 멘션을 하는 기능이 있으면 좋을 것 같다는 의견입니다.

Yona 에서 사용자 언급(mention)시에 slack 으로도 알림이 가길 바라는 걸까요?

krPlatypus commented 2 years ago

안녕하세요. 답변 감사드립니다.

추가 질문에 바로 답변 드리겠습니다.

이 이야기는 Yona 사이트 전체 사용자와 Slack 전체 사용자가 동일하다는 의미일까요? 아니면 특정 Yona 프로젝트의 멤버가 특정 Slack 워크스페이스와 동일하다는 의미일까요?

후자입니다. 실사용자라는 개념이긴 하기 때문에, 매 프로젝트(Yona의 프로젝트 개념)에서 인원은 달라집니다. 그러나 그 인원이 해당하는 Slack Workspace의 멤버와 동일합니다. 그래서 Yona의 가입자가 20명이고, A프로젝트 인원명이 N1부터 N9 라고 했을때 Webhook이 연결된 Slack의 Workspace의 멤버 또한 N1부터 N9이긴 합니다. (예외의 경우가 존재하긴 합니다. Slack의 멤버가 더 추가될 경우는 있었지만, 그들이 멘션을 봐도 상관없게 끔 권한 관리는 하여 채널을 사용중입니다.)

Yona 에서 프로젝트 생성시 멤버 추가를 Slack 특정 워크스페이스 멤버와 동일하길 기대하시는걸까요?

시작 경로는 웹훅을 추가할 때거나 그 이후로 상관이 없을 듯 합니다. 서비스 기획이 어떻게 이루어지냐에 따라 다를수 있다고 생각합니다.

Yona 에서 사용자 언급(mention)시에 slack 으로도 알림이 가길 바라는 걸까요?

네 그렇습니다. Yona에서 담당자를 선택할수있는데, 이 담당자들이 Slack에서도 멘션되면 좋겠다는 생각입니다. Slack Webhook API 중 Body 내용에 <@memberID>가 들어가면 멘션이 되는걸로 알고있습니다. 관련 StackOverflow 링크를 참고해주세요. 이 링크말고 Slack Webhook Mention 로 검색해서 봐도 관련자료가 많이 나오는것 같습니다.