- 7-8월 초기 구축 문서 12개를 _archive/troubleshooting/2025_07-08_initial_setup/로 이동 - book/300_architecture/390_human_in_the_loop_intent_learning.md를 journey/research/intent_classification/로 이동 (개발 여정 문서) - 빈 폴더 제거 (journey/assets/*)
2.9 KiB
2.9 KiB
tags, date, modified
| tags | date | modified | |||||
|---|---|---|---|---|---|---|---|
|
2025-09-17 | 2025-09-17 |
로빙(RO-BEING)의 슬랙 이모티콘 반응 기능 구현 방안
이 문서는 로빙 에이전트가 슬랙 채널의 특정 메시지에 이모티콘 반응을 추가하거나 제거하는 기능의 구현 방법을 정리한 것입니다.
1. 핵심 요약
결론적으로, 로빙은 슬랙 웹 API(Slack Web API)를 통해 특정 메시지에 이모티콘 반응을 다는 것이 가능합니다.
2. 필수 API 및 권한
2.1. 주요 API 메서드
-
reactions.add: 특정 메시지에 이모티콘 반응을 추가합니다.- 필수 파라미터:
channel(채널 ID),timestamp(메시지의 타임스탬프),name(이모티콘 이름, 예:thumbsup)
- 필수 파라미터:
-
reactions.remove: 로빙이 추가했던 이모티콘 반응을 제거합니다.- 필수 파라미터:
channel,timestamp,name
- 필수 파라미터:
참고: 과거에 사용되던
file,file_comment기반의 반응 추가 방식은 현재 권장되지 않습니다.
2.2. 필요 권한 (Bot Token Scopes)
reactions:write: 이모티콘 반응을 추가하거나 제거하기 위한 필수 권한입니다.reactions:read: 특정 메시지에 달린 반응 현황을 조회하거나, 반응 관련 이벤트를 수신할 때 필요합니다.
3. 주요 구현 시나리오
자동화 시나리오는 크게 두 가지 방식으로 구현할 수 있습니다.
시나리오 1: 직접 트리거 방식 (Direct Trigger)
- 동작 방식: 사용자가 특정 슬래시(
/) 명령을 입력하거나 메시지에 첨부된 버튼을 클릭하면, 로빙이 해당 메시지의channel과timestamp를 즉시 파악하여reactions.addAPI를 호출합니다. - 장점: 사용자의 명시적인 요청에 따라 즉각적으로 반응하므로 직관적입니다.
- 예시:
/done명령을 입력하면 해당 메시지에:white_check_mark:이모티콘을 추가합니다.
시나리오 2: 이벤트 구독 방식 (Event-based Trigger)
- 동작 방식: 슬랙의 Events API에서
reaction_added이벤트를 구독합니다. 사용자가 특정 메시지에 정해진 이모티콘(예::robot_face:)을 달면, 로빙이 이벤트를 수신하여 후속 동작(예: 다른 이모티콘 추가, 스레드에 답변 등)을 수행합니다. - 장점: 사용자의 자연스러운 이모티콘 반응을 감지하여 능동적으로 동작을 개시할 수 있습니다.
- 예시: 사용자가 어떤 메시지에
:question:이모티콘을 달면, 로빙이 해당 스레드에 "무엇을 도와드릴까요?"라고 답변을 남깁니다.
4. 다음 단계
구체적인 구현에 앞서, 어떤 시나리오(규칙 기반 자동 반응 vs. 사용자 수동 트리거)를 우선적으로 개발할지 결정해야 합니다. 이 결정에 따라 필요한 세부 구현 지침이 달라집니다.