> For the complete documentation index, see [llms.txt](https://docs.ggwp.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ggwp.com/kr/ggwp-sdk/additional-supported-integrations/vivox/unity-ssr.md).

# Unity SSR과 통합

## 개요

제발 [여기를 참조하세요](/kr/ggwp-sdk/additional-supported-integrations/vivox/vivox-unity-ssr-ggwp-sdk.md) Unity SSR + GGWP의 일반적인 통합 흐름에 대해서는.

다음은 SSR과 관련된 Unity 문서의 몇 가지 관련 링크입니다:

* [서버 측 녹음](https://docs.unity.com/ugs/en-us/manual/vivox-unity/manual/Unity/server-side-recording/ssr-overview)
* [개발자 문서](https://docs.vivox.com/v5/general/core/5_19_0/en-us/Default.htm#Core/developer-guide/server-side-recording/ssr-overview.htm)
* [Unity Services Web API 문서](https://services.docs.unity.com/ssr/v2/)

## API 요구사항

Vivox 녹음은 SSR API 호출을 통해 트리거되어야 합니다. 이는 게임의 음성 세션 동안 고정 빈도로 수행하거나 경기 종료와 같은 이벤트에서 수행할 수 있습니다. 적절한 SSR 트리거 전략 설정에 대해 도움을 받으려면 귀하의 Vivox 담당자에게 문의하세요.

SSR API 호출을 위해 다음 입력이 필요합니다:

<table><thead><tr><th width="122.23828125">자격 증명</th><th>출처</th><th>목적</th></tr></thead><tbody><tr><td>조직 ID</td><td>Unity 대시보드 → Vivox → 구성 페이지</td><td>게임에 연결된 조직 ID</td></tr><tr><td>프로젝트 ID</td><td>위와 동일합니다.</td><td>게임에 할당된 프로젝트 ID</td></tr><tr><td>액세스 토큰</td><td>위와 동일합니다.</td><td>JWT 서명에 사용되는 공유 비밀</td></tr><tr><td>채널 세션 ID</td><td>사용자가 채널에 참여할 때 런타임에 이를 가져옵니다</td><td>녹음할 특정 세션을 지정하는 데 사용됩니다</td></tr><tr><td>AWS 액세스 키</td><td>GGWP에서 제공</td><td>저장을 위한 S3 버킷 액세스</td></tr><tr><td>AWS 비밀 키</td><td>GGWP에서 제공</td><td>저장을 위한 S3 버킷 액세스</td></tr><tr><td>S3 버킷 이름</td><td>GGWP에서 제공</td><td>음성 녹음을 저장하기 위해</td></tr></tbody></table>

## SSR을 트리거하는 샘플 스크립트

이 스크립트는 마지막 15분의 음성 데이터를 녹음하도록 트리거합니다.

```python
import requests

ORG_ID = "UNITY_ORG_ID"
PROJECT_ID = "UNITY_PROJECT_ID"
ACCESS_TOKEN = "UNITY_ACCESS_TOKEN"
CHANNEL_SESSION_ID = "UNITY_SOMETHING_LIKE_sip:confctl-g-xxxx@mtu1xp.vivox.com"
ACCESS_KEY_ID = "GGWP_AWS_KEY"
SECRET_KEY = "GGWP_AWS_SECRET"

# AWS S3 설정
S3_BUCKET = "GGWP_BUCKET"

url = f"https://vivox.services.api.unity.com/ssr/v2/organizations/{ORG_ID}/projects/{PROJECT_ID}/monitor"

headers = {
    "Authorization": f"Basic {ACCESS_TOKEN}",
    "Content-Type": "application/json"
}

payload = {
  "targetUri": CHANNEL_SESSION_ID,
  "history": 15,
  "callbackUrl": "https://something.somthing",
  "callbackKey": "test-123",
  "storageOptions": {
    "provider": "aws",
    "credentials": {
      "bucket": S3_BUCKET,
      "accessKeyId": ACCESS_KEY_ID,
      "secretAccessKey": SECRET_KEY
    }
  }
}

response = requests.post(url, json=payload, headers=headers)

if response.status_code == 202:
    print("✅ SSR이 성공적으로 시작되었습니다.")
    print(response.json())
else:
    print(f"❌ SSR 시작 실패: {response.status_code}")
    print(response.text)
```
