Repository navigation
TypeScript SDK 0.4.0
Ilhwan Seo edited this page Aug 29, 2026
·
2 revisions
현재 권장 버전입니다.
- package:
@seorilabs/platform-sdk@0.4.0 - tag:
sdk-ts-v0.4.0 - tarball: 통합 릴리스
v0.6.7의seorilabs-platform-sdk-0.4.0.tgz— sha2568d7151f6ec7ff0c0fe8c9fe6fee2e6aa5a1158bd394dc03cc09a4e40f5a6abd7 - 기준 commit:
64abc0f580be08b2fcbd75da1b484fc748683711
0.3.0의 인증, 이벤트, IAP, Remote Config, Ads, Content, Identity API를 유지하면서
선택적 RPI Presence를 추가한 additive release입니다.
새 공개 API:
PlatformOptions.presenceEnabled?: booleanPlatformOptions.presenceContext?: PresenceContext | (() => PresenceContext)platform.presence.start()platform.presence.stop()platform.presence.resume()-
Presence,PresenceContext,PresencePlatformexport
const platform = createPlatform({
baseUrl: PLATFORM_API_URL,
ingestBaseUrl: PLATFORM_INGEST_URL,
appId: "my-app",
eventContext: {
platform: "android",
appVersion: "1.2.3",
},
presenceEnabled: false,
});
platform.start();presenceContext를 생략하면 eventContext의 platform, appVersion을 사용합니다.
platform이 없으면 heartbeat를 보내지 않습니다.
아래 조건을 모두 만족한 앱만 presenceEnabled: true로 바꿉니다.
- SDK
0.4.0설치와 기존 기능 회귀 검증 완료 - Platform app registry 등록 완료
- 서버의
features.presence=true적용 및 readback 완료 - canary 범위와 관찰 담당자 확정
SDK flag와 서버 feature가 모두 켜져야 Edge heartbeat가 동작합니다.
-
start()는 즉시 반환하며 첫 네트워크 요청을 기다리지 않습니다. - token 요청은 일반 재시도 없이 최대 5초, Edge heartbeat는 별도 최대 2초입니다.
- heartbeat 실패를 호출자에게 throw하지 않습니다.
- 같은 heartbeat를 재시도하거나 outbox/local queue에 보존하지 않습니다.
- 실패 시 jitter가 있는 backoff를 적용하며 상한은 5분입니다.
- 서버에서 비활성화한 앱은 Edge 요청 없이 5분 뒤 다시 bootstrap합니다.
- Web hidden 상태에서는 timer를 멈추고 visible 복귀 시
resume()합니다.
heartbeat에는 익명 session ID, 증가 sequence, platform, 선택적 appVersion만
포함합니다. Firebase UID, 광고 ID, 이메일과 원시 사용자 식별자를 보내지 않습니다.
pnpm add https://github.com/seorilabs/platform/releases/download/v0.6.7/seorilabs-platform-sdk-0.4.0.tgz
# 또는 GitHub Packages
pnpm add @seorilabs/platform-sdk@0.4.0먼저 presenceEnabled: false를 명시하고 기존 test/build를 통과시킵니다. 옵션을
생략해도 기본값은 비활성이지만, 도입 상태를 코드 리뷰에서 식별할 수 있도록 명시를
권장합니다. canary 승인 전에는 true로 바꾸지 않습니다.
구현과 API 계약의 정본은 seorilabs/platform 저장소입니다.