@k-msg/channel
Runtime-first Kakao channel orchestration for k-msg.
Installation
Section titled “Installation”npm install @k-msg/channel @k-msg/core# orbun add @k-msg/channel @k-msg/coreRuntime API (@k-msg/channel)
Section titled “Runtime API (@k-msg/channel)”Root exports are runtime-focused:
KakaoChannelCapabilityServiceKakaoChannelBindingResolverKakaoChannelLifecycleService- runtime types (
KakaoChannelCapabilityMode,KakaoChannelBinding,ResolvedKakaoChannelBinding,KakaoChannelListItem, …)
Capability modes
Section titled “Capability modes”api: provider exposes channel onboarding APIs (list/auth/add/categories)manual: provider requires manual onboarding (no channel onboarding API calls)none: provider does not support channel onboarding APIs
Example: resolve config binding
Section titled “Example: resolve config binding”import { KakaoChannelBindingResolver } from "@k-msg/channel";
const resolver = new KakaoChannelBindingResolver(config);
const resolved = resolver.resolve({ providerId: "solapi-main", channelAlias: "main", senderKey: undefined, plusId: undefined,});
// precedence: explicit > alias > defaults > provider configconsole.log(resolved.senderKey, resolved.plusId);Example: provider lifecycle calls
Section titled “Example: provider lifecycle calls”import { KakaoChannelLifecycleService } from "@k-msg/channel";
const service = new KakaoChannelLifecycleService(provider);
const channels = await service.list();if (channels.isSuccess) { console.log(channels.value); // KakaoChannelListItem[] with source="api"}Toolkit API (@k-msg/channel/toolkit)
Section titled “Toolkit API (@k-msg/channel/toolkit)”In-memory channel/admin helpers are now toolkit-only exports. They are local-state utilities for tests, demos, and admin tooling. They assume the channel record is already approved by the provider and do not model provider approval/review lifecycles, sender verification, or OTP issuance:
KakaoChannelManagerKakaoSenderNumberManagerChannelCRUDPermissionManagerChannelServiceBusinessVerifier- legacy channel types
import { KakaoChannelManager } from "@k-msg/channel/toolkit";License
Section titled “License”MIT