아키텍처

채널로 이메일 전송: 봇 없이 모든 서비스가 팀 채팅에 게시되는 방법 — 그리고 주소가 봇 토큰보다 나은 이유

모든 InterMIND 채널에는 고유한 이메일 주소가 있습니다. 모니터링 도구, 티켓팅 시스템, CRM 또는 CI 파이프라인을 이 주소로 연결하면 첨부 파일을 그대로 유지한 채 메시지가 채널에 도착해 모두가 볼 수 있고, 각 멤버는 자신의 언어로 읽을 수 있습니다. 전체 작동 방식(무엇이 도착하고 제거되는지, 한계점)과 설정, 보안 비밀, 재시도, 비활성화 권한을 기준으로 봇 기반 연동과의 비교를 확인해 보세요.

The Mind.com Team

채널로 이메일 전송: 봇 없이 모든 서비스가 팀 채팅에 게시되는 방법 — 그리고 주소가 봇 토큰보다 나은 이유

Email to channel: 봇 없이 어떤 서비스든 팀 채팅에 메시지를 게시하는 방법 — 그리고 주소가 봇 토큰보다 나은 이유

팀이 하루 동안 확인해야 할 대부분의 정보는 동료가 입력한 것이 아닙니다. 기계가 만들어냅니다: 느려진 엔드포인트를 감지한 가동시간 모니터, 송장을 받은 결제 처리기, 티켓을 개설한 헬프데스크, 실패한 CI 파이프라인. 이러한 메시지를 팀이 실제로 대화하는 곳으로 가져오는 것을 "연동"이라고 하며, 대부분의 채팅 도구에서 이는 봇을 의미합니다: 봇을 만들고, 토큰을 받고, 토큰을 저장하고, 발신자를 작성하거나 설정하고, 토큰을 계속 관리합니다.

InterMIND는 더 짧은 경로를 택합니다. 모든 채널에는 자체 이메일 주소가 있습니다. 이메일을 보낼 수 있는 모든 것이 채널에 게시할 수 있으며, 거의 모든 것이 이메일을 보낼 수 있습니다. 주소 자체 외에 InterMIND 측에서 만들어야 할 것은 없고, 설치할 것도 없으며, 관리해야 할 토큰도 없습니다. 이 글은 그 경로의 전체 작동 방식과, 실무에서 중요한 네 가지 측면(설정, 시크릿, 전송 보장, 누가 이를 끌 수 있는지)에서 봇 기반 전송과의 정직한 비교를 다룹니다.

설정 자체는 Email to Channel 기능 페이지에서, 레퍼런스는 문서에서 확인할 수 있습니다.

작동 방식

1. 주소

채널 호스트가 채널의 표시 설정(채팅 헤더의 톱니바퀴 아이콘)을 열고, Email to channel을 선택한 뒤 Create address를 클릭합니다. 결과는 <token>@in.intermind.com 형식의 비공개 주소입니다. 호스트만 이를 볼 수 있고, 교체(New address)하거나 제거할 수 있으며, 두 작업 모두 즉시 적용되어 새 주소가 생성되는 순간 이전 주소는 작동을 멈춥니다.

개인 Inbox에도 같은 종류의 주소가 있으며, 본인만 볼 수 있습니다. 채널 주소는 팀 전체가 봐야 할 것을 위한 것이고, Inbox 주소는 본인만 봐야 할 것을 위한 것입니다.

2. 발신자

도구가 알림 이메일을 요구하는 곳에 주소를 붙여넣으세요. 그 필드가 연동입니다. 가동시간 모니터의 알림 채널, 에러 트래커의 알림 규칙, 헬프데스크의 "새 티켓 알림", 결제 시스템의 영수증, CI 서버의 빌드 알림, 폼 빌더의 제출, 뉴스레터 구독 — 이들 모두 그런 필드를 가지고 있으며, InterMIND가 무엇인지 알 필요가 없습니다.

3. 채널에 도착하는 것

이메일은 일반 채널 메시지로 도착합니다:

  • 발신자에 귀속됩니다. 메시지는 호스트가 아닌 발신자의 이름과 주소를 표시하며, 다른 외부 메시지와 마찬가지로 각 읽는 사람의 언어로 번역됩니다.
  • 제목이 먼저 표시됩니다. 제목 줄이 메시지의 첫 번째 줄이 됩니다.
  • 본문만, 보일러플레이트 제외. 일반 텍스트 부분이 사용되며, HTML 전용 이메일은 텍스트로 변환됩니다. 서명과 인용된 답장 꼬리는 제거되어, 전달된 스레드는 전체 기록이 아닌 새 내용을 보여줍니다. 본문은 100,000자로 제한됩니다.
  • 첨부 파일이 유지됩니다. 각 첨부 파일은 파일 메시지가 되며, 파일당 최대 25MB입니다.

4. 읽히는 위치

채널을 열어둔 멤버는 웹과 데스크톱에서 메시지가 실시간으로 도착하는 것을 봅니다. 보고 있지 않은 멤버는 모바일에서 푸시 알림을 받습니다. 각각 자신의 언어로 읽으며, 다른 모든 것과 마찬가지로 채널 기록에 남습니다. 흐름은 단방향입니다: 채널에서 답장해도 발신자에게 이메일이 다시 발송되지 않습니다.

제한 사항, 명확히

  • 첨부 파일은 팀의 스토리지 풀에 포함됩니다. 스토리지가 가득 차면 텍스트는 여전히 도착하고, 첨부 파일은 건너뛰며, 메시지에 그 사실을 나타내는 메모가 추가됩니다.
  • 주소당 시간당 최대 30개의 이메일; 같은 시간에 그 이상은 삭제됩니다.
  • 존재하지 않는 주소로 보낸 메일은 조용히 삭제됩니다: 반송도, 답장도 없습니다. 추측한 주소는 어떤 응답도 받지 못합니다.
  • 모든 플랜에서 사용할 수 있습니다.

봇으로 동일한 작업 수행

봇 기반 연동은 어렵지 않습니다. 다만 더 길며, 모든 단계는 나중에 문제가 될 수 있는 것입니다. 우리가 이번 주까지 모니터링 알림에 직접 Telegram 봇을 사용했으므로 Telegram 버전을, 그리고 대부분의 팀이 알고 있는 레퍼런스이므로 Slack 버전을 소개합니다.

Telegram. BotFather를 통해 봇이 생성되고 토큰이 발급됩니다. 모든 메시지는 해당 토큰과 대상 채팅의 숫자 id를 사용한 Bot API에 대한 HTTP 호출이며, 토큰은 BotFather를 통해 취소하고 재발급할 수 있습니다 (Telegram Bot API 문서, Bots: From Beginner to Advanced, 2026년 9월 확인). 따라서 발신자는 토큰과 채팅 id가 필요하며, 발신하는 모든 곳에서 두 가지가 모두 필요합니다.

Slack. Incoming Webhooks는 앱에 채널당 고유 URL을 제공합니다. URL이 시크릿이며, Slack의 자체 문서는 이를 시크릿으로 취급하고 공개 리포지토리에서 제외하라고 안내합니다 (Slack — Sending messages using incoming webhooks, 2026년 9월 확인). 앱당 채널당 하나의 URL이 모든 발신자에 저장됩니다.

전환 전 우리의 알림 설정은 다음 다섯 가지가 존재하고 올바르게 유지되어야 했습니다: 모니터링 벤더 변수의 봇 토큰 하나, 호스팅 플랫폼의 시크릿 두 개, 웹훅 서명 시크릿, 에러 트래커 웹훅 핸들러 내의 발신자, 그리고 post-deploy 감시 스크립트 내의 전송 단계. 동일한 설정의 이메일 버전은 단 하나의 주소이며 각 벤더의 "알림 이메일" 필드에 입력됩니다. InterMIND 측의 변경은 제로입니다.

주소 vs 토큰: 네 가지 속성

채널 이메일 주소봇 토큰 / 웹훅 URL
생성하는 것채널 자체에서 하나의 주소봇 또는 앱, 그 다음 토큰 또는 URL, 그 다음 이를 사용하는 발신자
시크릿이 있는 곳발신 도구에만; 호스트는 채널에서 확인모든 발신자, 그리고 봇이 관리되는 곳마다
수신자가 다운되었을 때 전송저장 후 전달: SMTP는 전달할 수 없는 메일을 큐에 저장하고 나중에 재시도하도록 발신자에게 요구합니다 (RFC 5321 §4.5.4.1)하나의 HTTP 호출; 발신자가 구현한 경우에만 재시도
누가 끌 수 있는지단일 당사자가 없음: 이메일은 독립적인 서버 간의 연합 프로토콜토큰 또는 URL을 발급한 플랫폼

마지막 두 행이 인시던트를 결정합니다. 봇 API는 단일 벤더의 네트워크 상에 있는 단일 벤더의 엔드포인트입니다: 호출이 실패하면 발신자가 재시도 로직을 작성하지 않은 이상 메시지는 사라지며, 플랫폼이 접근 불가능하면 연동도 접근 불가능합니다. 이메일은 정반대 방향으로 설계되었습니다. 발신 서버가 메시지를 보관하고 재시도합니다; 발신자와 수신자 사이에 어떤 단일 운영자도 존재하지 않습니다.

교체도 같은 논리를 따릅니다. 봇 토큰을 취소하면 이를 가진 모든 발신자를 업데이트해야 합니다. 채널 주소를 교체하면 같은 발신자를 업데이트하지만, 주소가 애초에 자체 코드나 인프라에 저장되지 않았다는 차이가 있습니다: 벤더의 알림 필드에만 존재하며 다른 곳에는 없습니다.

이것의 용도

명백한 용도는 머신 메시지입니다: 알림, 영수증, 티켓, 빌드 결과. 덜 명백한 용도는 사람입니다. 어떤 것도 설치하지 않을 고객에게 "이 주소로 보내세요"라고 말할 수 있으며, 전체 팀이 채널에서 각자의 언어로 첨부 파일과 함께 스레드를 읽을 수 있습니다. 공급업체의 주간 보고서, 규제기관의 통지, 파트너의 계약 초안: 모두 작업이 이미 진행 중인 곳에 도착하며, 누구에게도 무언가에 참여하라고 요청하지 않습니다.

이것이 미팅이 아닌 영구 공간의 요점입니다: 도착한 것은 각 멤버가 읽는 언어로 그대로 남습니다. Email-in은 같은 방으로 향하는 또 하나의 문입니다. Telegram은 또 다른 문이며, 그 경로는 Telegram 채팅을 InterMIND로 가져오는 방법에 설명되어 있습니다.

사용해 보기

FAQ

어떤 서비스가 이메일로 채널에 게시할 수 있나요? 지정한 주소로 이메일을 보낼 수 있는 모든 서비스: 가동시간 및 에러 모니터링, 티케팅 및 헬프데스크 시스템, CRM, 결제 및 인보이싱, CI 파이프라인, 폼 빌더, 뉴스레터. 도구에 알림 이메일 필드가 있으면, 그 필드가 전체 연동입니다.

누가 채널의 이메일 주소를 볼 수 있나요? 채널 호스트만 볼 수 있습니다. 호스트가 채널의 표시 설정에서 생성, 교체, 제거합니다. 멤버는 주소가 아닌 메시지를 봅니다.

주소가 유출되면 어떻게 되나요? 이를 가진 사람은 누구나 채널에 게시할 수 있으므로, 비밀번호처럼 취급하세요. 같은 대화 상자에서 새 주소를 발급하면 이전 주소는 즉시 작동을 멈춥니다. 알려지지 않은 주소로 보낸 메일은 반송 없이 삭제되므로, 추측한 주소는 아무것도 알 수 없습니다.

첨부 파일도 전달되나요? 네, 파일당 최대 25MB의 파일 메시지로 전달됩니다. 팀의 스토리지 풀에 포함되며, 스토리지가 가득 차면 텍스트는 여전히 도착하고 첨부 파일은 메모와 함께 건너뜁니다.

인바운드 이메일이 번역되나요? 네. 메시지는 외부 발신자에 귀속되며, 채널의 다른 외부 메시지와 마찬가지로 각 읽는 사람에게 번역됩니다.

멤버가 채널에서 발신자에게 답장할 수 있나요? 아니요. 흐름은 채널로 들어오는 단방향 이메일입니다. 채널에서의 답장은 채널에 머뭅니다.

Email-in은 무료 플랜에서도 사용할 수 있나요? 네. Email to channel은 모든 플랜에서 사용할 수 있으며, 플랜에 따라 달라지는 부분은 첨부 파일이 포함되는 스토리지 풀뿐입니다.

Telegram이나 Slack에 봇을 추가하는 것으로는 안 되나요? 연결하려는 도구가 지원하는 경우 가능합니다. 차이는 이후에 유지보수해야 할 것입니다: 봇은 모든 발신자에 저장되고 플랫폼에서 관리되는 토큰 또는 웹훅 URL이 필요하며, 하나의 HTTP 호출로 전송되고 해당 플랫폼이 접근 가능한지에 의존합니다. 주소는 자체 측에 저장할 것이 없고, 전송 실패 시 발신자의 메일 서버가 재시도하며, 끌 수 있는 단일 운영자가 없습니다.

출처: Telegram Bot APIBots: From Beginner to Advanced (BotFather가 발급한 토큰; sendMessage는 채팅 id 사용; 토큰 취소); Slack — Sending messages using incoming webhooks (앱당 채널당 하나의 웹훅 URL; URL은 시크릿); RFC 5321 §4.5.4.1 — Sending Strategy (전달되거나 포기될 때까지 큐에 저장된 메일 재시도). 2026년 9월 확인.

이메일로 새 게시물 및 제품 업데이트 받기

새 게시물과 주간 제품 업데이트를 이메일로 보내드립니다. 언제든지 구독을 취소할 수 있습니다.