라이프사이클(서버 측)
세션에 자체 고객 ID가 연결되는 순간 당사 서버에서 ActiveCampaign, Mailchimp, Iterable 또는 Klaviyo로 재생 링크를 보냅니다.
1. 브라우저 브리지 외에 이 기능이 있는 이유
MousePlayer에는 이미 Klaviyo, Braze, Customer.io 및 여섯 도구의 페이지 SDK에 기록하는 라이프사이클 브리지가 있습니다. 이 브리지는 같은 일을 서버에서 합니다. 큰 플랫폼 두 곳에서 브라우저 경로를 사용할 수 없기 때문입니다:
- ActiveCampaign에는 이벤트용 브라우저 API가 없습니다. 해당
vgo()는 계정과 이메일을 설정하고 추적을 시작할 수 있지만 이벤트를 보낼 수 없습니다. 이벤트는 별도 이벤트 키를 사용하는 서버 전용 Event Tracking API로 보냅니다. - Mailchimp에는 있지만 정해진 이름만 허용합니다. 사이트 추적 픽셀은
PAGE_VIEWED,PRODUCT_VIEWED,PURCHASED및 소수의 미리 정한 이름만 받습니다. 사용자 정의 이벤트 자리가 없으며 자체 데이터를PAGE_VIEWED에 억지로 넣으면 데이터 모델에 거짓 정보를 만들게 됩니다.
Iterable과 Klaviyo에서도 서버 경로가 더 안정적입니다. 광고 차단기, SDK 로드 여부 및 탭 조기 종료의 영향을 받지 않습니다.
2. 필요한 것
세 필드이며 플랫폼에 따라 작성할 항목이 다릅니다.
| 플랫폼 | 계정 필드 | 키 |
|---|---|---|
| ActiveCampaign | actid | 웹사이트 → 사이트 추적의 이벤트 키 옆 |
| Mailchimp | 대상 고객 ID | API 키. 다음 형식의 -us14 접미사를 유지하세요. 여기서 데이터 센터를 읽습니다 |
| Iterable | 불필요 — 비워 두기 | “Allow event track calls” 권한이 있는 키 |
| Klaviyo | 불필요 — 비워 두기 | 다음 유형의 비공개 API 키 |
세 번째 필드는 표시할 이벤트 이름입니다. 짧게 작성하세요: 최대 32자. 당사가 아닌 API의 제한입니다. 전송할 때가 아닌 저장할 때 줄여야 입력 화면과 실제 전송 내용이 달라지지 않습니다.
Mailchimp: API 키의 접미사를 유지하세요. 마지막 대시 뒤 부분(-us14)이 계정의 데이터 센터를 나타내며 이 값으로 주소를 만듭니다. 없으면 보이지 않는 곳에서 실패하는 대신 명확한 메시지와 함께 거부합니다.
3. 실행되는 때와 실행되지 않는 때
세션이 식별되는 순간, 즉 사이트가 MousePlayer.setUserId()를 호출하거나 분석 브리지가 distinct ID를 읽거나 서버가 identify 엔드포인트를 호출할 때입니다. 그전에는 누구의 녹화인지 모릅니다.
이메일 주소만
네 플랫폼 모두 이메일로 연락처를 찾습니다. 고객 ID가 계약 번호이면 아무것도 보내지 않습니다. 실패할 작업을 대기열에 넣으면 로그만 불필요하게 채우기 때문입니다.
연락처가 이미 있어야 합니다. 이벤트로 연락처를 생성하는 플랫폼은 없습니다. ActiveCampaign은 주소를 모르면 이벤트를 완전히 버립니다. 기존 연락처를 보강할 뿐 목록을 새로 만들지 않습니다.
모든 이벤트에 ID 포함
작업을 재시도해도 같은 세션을 두 번 집계하지 않습니다.
4. 수신되는 내용
하나의 이벤트에 다음 이름의 속성으로 재생 링크를 담습니다: mouseplayer_session_url. 열면 정확히 해당 세션의 녹화로 이동합니다.
이후에는 자체 플랫폼 로직에 따릅니다. 자동화 트리거, 세그먼트 조건으로 사용하거나 연락처에서 팀이 녹화를 열도록 할 수 있습니다.
키는 당사 서버를 떠나지 않음
AES-256-GCM으로 암호화하여 저장하고 다시 표시하지 않습니다. 작업을 전달하는 내부 대기열에도 넣지 않으며 워커가 데이터베이스에서 직접 가져옵니다.
HTTP 200은 전송 완료를 뜻하지 않음
ActiveCampaign은 이벤트 거부 시 상태 200과 {"success":0} 를 반환합니다. 상태뿐 아니라 본문을 읽어 거부를 전송 로그의 실패로 표시하며 조용히 성공 처리하지 않습니다.
5. Braze, Customer.io 및 Brevo
서버 경로에 세 플랫폼이 추가됩니다. 그중 둘은 다른 곳에 필요 없는 정보, 위치가 필요합니다.
| 제공할 정보 | 식별 기준 | |
|---|---|---|
| Braze | REST 엔드포인트 및 API 키 | 이메일 주소 |
| Customer.io | 사이트 ID, API 키 및 리전 | 자체 고객 ID |
| Brevo | 추적기 키만 | 이메일 주소 |
두 플랫폼의 위치는 정해져 있음
Braze는 인스턴스별 REST 엔드포인트를 사용하며 Customer.io는 서로 다른 호스트의 두 리전으로 운영됩니다. 키만으로 추측할 수 없고 틀리면 401을 반환하여 키를 의심하게 됩니다. 두 필드는 이를 위해 있습니다.
Customer.io에는 이메일이 필요하지 않음
직접 할당한 ID로 사용자를 식별하므로 이메일을 요구하면 불필요한 장애물입니다. 나머지 여섯 플랫폼은 이메일로 매칭하므로 계약 번호로 식별한 세션에서는 전송하지 않는 것이 정상입니다.
새 프로필 없음
Braze 호출에는 _update_existing_only가 포함됩니다. CRM 브리지와 같은 결정입니다. 브라우저 세션만으로 고객을 확실히 판단할 수 없으며 익명 방문자마다 프로필을 만드는 플랫폼은 연동이 없는 것보다 나쁩니다.
Brevo는 204, Braze는 주의가 필요한 201 반환
Brevo에는 응답 본문이 없어 2xx만으로 결과를 알 수 있습니다. Braze는 "message": "success" 와 함께 errors 배열을 반환할 수 있습니다. 치명적인 문제는 message에, 허용된 필드 손실은 errors에만 표시됩니다. 하나만 읽으면 어느 한쪽을 오판합니다.
여기에 언급된 모든 상표는 각 소유자에게 귀속됩니다. MousePlayer는 이 제공업체들과 사업 관계가 없습니다.