# 채널

> Discord · Slack · 카카오톡 · 네이버 톡톡 · WhatsApp 에서 에이전트에 닿기 — 페어링 방식, 누가 호출할 수 있는지, 거기서 에이전트가 하지 않는 일.

**채널**은 Endue 밖에서 사람들이 에이전트에 닿게 해줍니다. 에이전트를 메시징 플랫폼에 페어링하면, 아무도 Endue 를 열지 않고도 그 대화 안에서 답합니다.

## 언제 쓰는가

에이전트가 필요한 사람들이 이미 다른 곳에 있을 때입니다. Slack 의 팀, Discord 의 커뮤니티, 카카오톡·네이버 톡톡·WhatsApp 으로 문의하는 고객처럼요. 채널은 질문이 나오는 자리에 에이전트를 데려다 놓습니다.

이것은 [Slack 커넥터](/ko/docs/connect/slack/)와 방향이 반대입니다. 커넥터는 에이전트가 자기 일의 일부로 채팅 서비스를 *읽고 쓰게* 합니다. 둘은 독립적이고, 함께 써도 됩니다.

## 제공되는 채널

| 채널 | 연결 방식 | 사람들이 부르는 방법 |
| --- | --- | --- |
| **Discord** | 봇 토큰 하나만 붙여넣으면 서버·엔드포인트·허용 목록은 자동 | 서버에서 `/ask` |
| **Slack** | Slack 앱의 토큰 두 개 (Socket Mode — 공개 엔드포인트 불필요) | 앱을 멘션하면 스레드로 답함 |
| **카카오톡** | Endue 가 발급한 웹훅 URL 을 챗봇 빌더 스킬 서버에 붙여넣기 | 채널로 메시지 |
| **네이버 톡톡** | 발신 API 키 입력 + 웹훅 URL 을 파트너센터에 붙여넣기 | 톡톡 계정으로 메시지 |
| **WhatsApp** | Cloud API 액세스 토큰 입력 + 웹훅 URL 을 Meta 앱에 등록 | 비즈니스 번호로 메시지 |
| **Telegram** | — | 준비 중 |

아래에는 두 가지 모양이 있습니다. Discord 와 Slack 은 Endue 가 토큰을 들고 플랫폼으로 *나갑니다*. 카카오톡·네이버 톡톡·WhatsApp 은 플랫폼이 Endue 가 발급한 웹훅 URL 로 *들어옵니다* — 그 URL 을 제공자 콘솔에 붙여넣는 방식이죠. 네이버 톡톡과 WhatsApp 은 답을 보낼 때도 자체 인증을 요구해서 발신 자격증명을 함께 받습니다.

## 채널 페어링하기

<Steps>

1. **[에이전트 빌더](/ko/docs/build/agent-builder/)의 페어링 섹션에서 채널을 열고** 제공자를 고릅니다.

2. **그 제공자가 요구하는 값을 넣습니다** — 봇 토큰, 앱 토큰 두 개, 또는 발신 키. 어떤 항목이 필요한지는 폼이 알려줍니다.

3. **인바운드 제공자라면 Endue 가 보여주는 웹훅 URL 을 복사해** 제공자 콘솔에 붙여넣습니다. 카카오톡 챗봇 빌더의 스킬 서버, 네이버 톡톡 파트너센터, 또는 Meta 앱의 웹훅 설정입니다.

4. **Discord · Slack 은 봇을 서버나 워크스페이스에 초대합니다.**

   <Aside type="caution" title="답하기를 기대하기 전에 봇을 초대하세요">
     봇이 초대되지 않은 채널은 페어링된 것처럼 보이지만 결코 응답하지 않습니다. 잘 되던 채널이
     조용해졌다면 봇이 아직 서버에 있는지 확인하고, 제거됐다면 페어링을 다시 연결하세요.
   </Aside>

</Steps>

## 누가 호출할 수 있는가

채널은 사용자의 연결이 바인딩된 에이전트로 들어오는 문입니다. 그래서 페어링마다 호출 정책이 붙습니다.

| 정책 | 호출할 수 있는 사람 |
| --- | --- |
| **나만** | 채널을 연결한 계정과 허용 목록에 있는 사람 |
| **지정한 사람만** | 허용 목록에 있는 사람만 |
| **채널 전원** | 그 서버·워크스페이스에서 봇에 닿을 수 있는 누구나 |

허용되지 않은 사람은 침묵 대신 짧은 거절 안내를 받고, 그 요청이 페어링 패널에 남습니다. 거기서 허용 목록에 추가하거나 ID 를 직접 넣을 수 있습니다.

<Aside type="caution" title="열린 채널은 그 자리의 모두에게 열립니다">
  "채널 전원" 은 그 서버·워크스페이스의 모든 구성원이, 사용자가 그 에이전트에 바인딩해 둔 것을
  가지고 대화할 수 있다는 뜻입니다. 에이전트의 범위를 그에 맞게 잡으세요 — 채널을 향한
  에이전트가 사용자의 받은편지함을 갖고 있어서는 안 됩니다.
</Aside>

## 채널 대화란

채널에서 시작된 대화도 진짜 대화입니다. Endue 에서 시작한 것과 같은 기록, 같은 [메모리](/ko/docs/capabilities/memory/), 같은 [아티팩트](/ko/docs/capabilities/artifacts/)를 갖습니다. 나중에 Endue 에서 열어 이어갈 수 있습니다.

에이전트는 누가 말했는지 압니다. 여러 사람이 말을 거는 채널에서도 메시지가 각자에게 귀속되므로, *"아까 내가 뭘 물어봤지"* 에 사람별로 맞게 답할 수 있습니다.

## 채널에서 에이전트가 하지 않는 일

채널 실행에는 채팅 실행과 달리 [승인](/ko/docs/work/approvals/) 관문 앞에 사람이 없습니다. 지켜보는 사람이 없는 실행으로 취급하세요.

- 바깥으로 보내거나 지우는 행동은 보류되지 않고 거절됩니다.
- 에이전트가 답을 받아야 하는 [질문](/ko/docs/work/questions/)은 스레드 안에서 답해야 합니다. Endue 가 보여주는 선택지 인터페이스는 쓸 수 없습니다.

질문에 답하고, 검색하고, 요약하는 에이전트는 채널에서 잘 동작합니다. 무언가를 보내는 것이 일인 에이전트는 그렇지 않습니다.

## 한계

- 현재는 Discord · Slack · 카카오톡 · 네이버 톡톡 · WhatsApp 이고, Telegram 은 준비 중입니다.
- 에이전트당 제공자당 페어링 하나입니다.
- 답변은 사용자가 아니라 봇으로 채널에 올라갑니다.
- 인바운드 제공자(카카오톡·네이버 톡톡·WhatsApp)는 제공자 자체 발신 경로로 답하므로, 메시지 서식은 Endue 가 아니라 그쪽 규격을 따릅니다.

## 관련 문서

<CardGrid>
  <LinkCard
    title="Slack 커넥터"
    href="/ko/docs/connect/slack/"
    description="반대 방향 — 에이전트가 자기 일의 일부로 Slack 을 읽기."
  />
  <LinkCard
    title="보안과 권한"
    href="/ko/docs/account/security/"
    description="다른 사람이 말을 걸 수 있는 에이전트에 무엇을 바인딩할 것인가."
  />
  <LinkCard
    title="대화"
    href="/ko/docs/work/conversations/"
    description="채널 스레드가 Endue 안에서 무엇이 되는지."
  />
</CardGrid>
