DevLog

엔지니어링 블로그를 한 곳에서 탐색하고, 최근 발행 흐름을 빠르게 파악할 수 있는 서비스 입니다.

Quick Links

  • Latest Feed
  • Engineering Directory

Support

  • 소개
  • 개인정보처리방침

Contribute

  • 원하는 블로그 추가 (준비 중)
  • Feedback

© 2026 DevLog Inc. All rights reserved.

본 사이트는 공개 RSS 피드를 통해 콘텐츠를 수집하며, 모든 콘텐츠의 저작권은 원저작자에게 있습니다.

Back to Feed
Read Original

Contents

Continue Reading

  • More from 채널 톡
#Backend

이메일 기반 고객 문의를 채널톡 유저챗으로 연결하기

이메일 기반 고객 문의를 채널톡 유저챗으로 연결하기
01

Summary

이메일 문의도 채널톡 안에서 해결한다! 메일 릴레이 아키텍처 구축기

인프라 권한은 감추고 도메인 로직은 나누는, 채널톡 앱스토어팀의 메일 릴레이 익스텐션 설계 비하인드

채널톡 앱스토어팀에서 채팅 API가 없는 외부 서비스의 이메일 문의를 채널톡 유저챗과 완벽하게 유기적으로 연동하는 'Mail Relay Extension'의 설계 방식을 공유합니다. 개별 연동 앱이 민감한 메일 인프라 및 저장소 권한을 직접 가지지 않도록 공통 보안 영역을 구축하고, SNS-SQS 비동기 큐 처리와 순차적 배포 검증을 적용해 인프라 안전성을 한층 더 강화했습니다.

  • 01기존 채널톡 이메일 유입 채널의 중단 없이 앱 전용 이메일 유입 경로를 안전하게 선제 격리
  • 02App Store가 raw MIME 메일 저장소 및 발송 권한을 독점하고 권한 확인 후 브로커링하는 안전한 보안 모델 적용
  • 03AWS SQS와 DLQ(Dead Letter Queue) 기반의 비동기 아키텍처를 도입하여 일시적인 앱 서버 실패 및 이벤트 유실 방지
  • 04SDK 인터페이스를 통한 표준 확장(Extension) 구조 설계로 외부 개발사 연동 복잡성 최소화
  • 05메일 발송 제한 상태(Production Access) 해제와 인증 상태 순차 적용 등 현업 배포 노하우 수록

+RECOMMENDATION

외부 서비스 통합 시 공통적인 파일/이메일 전송 인프라 권한을 중앙화하고 개별 도메인 비즈니스 로직만 유연하게 다루고 싶은 백엔드 개발자 및 시스템 아키텍트에게 권장합니다.

The Problem

채팅 API를 지원하지 않고 이메일 알림만 발송하는 외부 마켓플레이스나 쇼핑몰 문의로 인해, 상담사가 채널톡과 외부 메일함을 번갈아 이동하며 대응해야 하는 불편함과 문의 누락 및 중복 응대 위험이 존재했습니다.

The Solution

채널 App Store 내에 Mail Relay Extension을 설계하여 공통 메일 수발신 인프라 및 보안 권한 검증을 일원화하고, 개별 앱은 SQS 대기열을 거친 이벤트를 받아 Native Function(브로커)을 통해 raw MIME 원문 조회 및 답장 발송을 수행하도록 구현했습니다.

The Result

기존 이메일 수신 경로를 유지하면서 앱 전용 메일 유입만 완전히 격리 분리했으며, 신규 이메일 기반 연동 앱을 개발할 때마다 복잡한 이메일 인프라 설정이나 권한 복제 없이 안정적인 재처리(DLQ) 구조 기반 아래 비즈니스 로직에만 집중할 수 있게 되었습니다.

Trade-off

App Store가 메일을 파싱하지 않고 중립적 브로커 역할만 수행하므로 각 연동 앱은 직접 raw MIME 데이터 파싱, 주소 포맷 해독, 중복 수신 및 스레딩 처리를 직접 구현해야 해 개별 도메인 로직 구현 부담이 존재합니다.

03

Key Concepts

Concept · 01

Mail Relay Extension

채널톡 내부에서 메일 수발신 인프라와 외부 연동 애플리케이션 간의 통합 연계를 처리해 주는 공통 추상화 계층입니다.

  • 수발신 인프라 권한 및 메일 라우팅 검증 경계를 App Store 내부에서 숨김 처리하여 중앙화
  • 연동 앱은 명시적인 인터페이스 규약에 맞춰 inbound handler와 native function 호출만 수행
Concept · 02

Raw MIME

이메일 헤더, 본문, 첨부파일, 수발신 정보 등을 포함하는 가공되지 않은 이메일 본래의 텍스트 원문 포맷입니다.

  • App Store는 해당 데이터를 가공하지 않고 임시 저장 후 메일 고유 식별자 정보만 큐로 전달
  • 연동 앱은 본문이 필요한 순간에만 App Store Broker 기능을 호출하여 메일 원문을 다운로드 후 직접 파싱
Concept · 03

SQS & DLQ

분산 애플리케이션의 메시지 대기열 서비스(SQS)와 처리 실패 시 디버깅과 안전한 추적을 돕는 데드 레터 큐(DLQ) 메커니즘입니다.

  • SNS 웹훅 호출 즉시 응답을 반환하고 무거운 메일 파싱과 API 작업은 비동기 워커로 안전하게 처리
  • 네트워크 장애, 앱 서버 응답 지연 등 일시적 실패 요인에 직면했을 때 재시도 및 보관 메커니즘 제공
Continue reading · same source

채널 톡More from 채널 톡

View all posts from 채널 톡
  • [신청 중] AI Product Frontiers: AI 시대, 최전선에서 방향을 만드는 사람들

    MeetupAI InfrastructureArtificial Intelligence
    1일 전
  • 채널콘 2026 디자인 비하인드

    FramerGenerative AILocalization
    2일 전
  • Swift 6 어때요? (1): 스레드, 블록, 태스크

    Swift ConcurrencyGCDRxSwift
    2일 전
  • 5년, 340개의 이야기로 이어온 개발 문화

    Developer RelationsKnowledge SharingEngineering Culture
    3일 전
  • 유저챗 개인정보 마스킹 개발기

    RegexRE2ReDoS
    4일 전

Source

채널 톡
채널 톡
Engineering Blog

Published · August 10, 2026

Topics

Mail RelayMessage QueueEvent-Driven ArchitectureAWS SQSAPI Integration