콘텐츠로 이동

@k-msg/channel

k-msg의 Kakao 채널 처리를 위한 런타임 중심 패키지입니다.

Terminal window
npm install @k-msg/channel @k-msg/core
# or
bun add @k-msg/channel @k-msg/core

루트 export는 런타임 전용입니다.

  • KakaoChannelCapabilityService
  • KakaoChannelBindingResolver
  • KakaoChannelLifecycleService
  • 런타임 타입 (KakaoChannelCapabilityMode, KakaoChannelBinding, ResolvedKakaoChannelBinding, KakaoChannelListItem 등)
  • api: provider가 채널 온보딩 API(list/auth/add/categories)를 제공
  • manual: 수동 온보딩 모델(채널 온보딩 API 호출 불가)
  • none: 채널 온보딩 API 자체를 제공하지 않음
import { KakaoChannelBindingResolver } from "@k-msg/channel";
const resolver = new KakaoChannelBindingResolver(config);
const resolved = resolver.resolve({
providerId: "solapi-main",
channelAlias: "main",
});
// 우선순위: explicit > alias > defaults > provider config
console.log(resolved.senderKey, resolved.plusId);
import { KakaoChannelLifecycleService } from "@k-msg/channel";
const service = new KakaoChannelLifecycleService(provider);
const channels = await service.list();
if (channels.isSuccess) {
console.log(channels.value); // source="api" 포함 KakaoChannelListItem[]
}

기존 in-memory/관리 도구는 toolkit 서브패스로 분리되었습니다. 이 영역은 테스트/데모/관리용 로컬 상태 헬퍼이며, 채널 자체는 이미 provider 승인된 레코드라고 가정합니다. 따라서 실제 provider 승인/심사 lifecycle, 발신번호 검증, OTP 발급 흐름은 모델링하지 않습니다.

  • KakaoChannelManager
  • KakaoSenderNumberManager
  • ChannelCRUD
  • PermissionManager
  • ChannelService
  • BusinessVerifier
  • 레거시 channel 타입
import { KakaoChannelManager } from "@k-msg/channel/toolkit";

MIT