채팅 메시지를 가져오기 위해 첫 번째 요청을 하면 API는 채팅 기록의 길이에 따라 채팅 기록의 일부 또는 전부를 반환합니다. 응답의 메시지는 오래된 순서에서 최신 순서로 정렬됩니다.
- 응답의
nextPageToken은 다음 요청에서 API 클라이언트가 가져와야 하는 다음 결과 집합을 식별하는 토큰을 제공합니다. pollingIntervalMillis속성은 API 클라이언트가 추가 결과를 요청하기 전에 대기해야 하는 시간을 나타냅니다.
pageToken 매개변수를 nextPageToken 값으로 설정하면 API 서버는 사용 가능한 경우 추가 채팅 메시지를 반환합니다. 다시 말하지만 결과 집합 내에서 메시지는 오래된 순서에서 최신 순서로 정렬됩니다.
할당량 영향: 이 메서드를 호출하면 할당량 비용이 5단위입니다.
일반적인 사용 사례
요청
HTTP 요청
GET https://www.googleapis.com/youtube/v3/liveChat/messages
매개변수
다음 표에는 이 쿼리에서 지원하는 매개변수가 나와 있습니다. 나열된 모든 매개변수는 쿼리 매개변수입니다.
| 매개변수 | ||
|---|---|---|
| 필수 매개변수 | ||
liveChatId |
stringliveChatId 매개변수는 반환될 메시지의 채팅 ID를 지정합니다. 브로드캐스트와 연결된 실시간 채팅 ID는 liveBroadcast 리소스의 snippet.liveChatId 속성에 반환됩니다. |
|
part |
stringpart 매개변수는 API 응답에 포함될 liveChatMessage 리소스 부분을 지정합니다. 지원되는 값은 id, snippet, authorDetails입니다. |
|
| 선택적 매개변수 | ||
hl |
stringhl 매개변수는 YouTube 웹사이트에서 지원하는 특정 애플리케이션 언어의 현지화된 통화 표시 문자열을 가져오도록 API에 지시합니다. 예를 들어 영어에서는 통화가 $1.50으로 표시되지만 프랑스어에서는 1,50$으로 표시됩니다.파라미터 값은 i18nLanguages.list 메서드에서 반환된 목록에 포함된 언어 코드여야 합니다. |
|
maxResults |
unsigned integer
연속 토큰 없이 이루어진 초기 요청에는 가장 최근 메시지만 포함됩니다. 제공된 경우 API는 연속 토큰 없이 이루어진 초기 요청에서 반환된 메시지보다 오래된 메시지를 가져오지 않습니다. |
|
pageToken |
stringpageToken 매개변수는 반환되어야 하는 결과 집합의 특정 페이지를 식별합니다. API 응답에서 nextPageToken 속성은 가져올 수 있는 다른 페이지를 식별합니다. |
|
profileImageSize |
unsigned integerprofileImageSize 매개변수는 결과 집합에서 반환되어야 하는 사용자 프로필 사진의 크기를 지정합니다. 이미지는 정사각형입니다. 기본값은 88이며, 이는 사진이 88x88픽셀임을 의미합니다. 허용되는 값은 16~720 범위입니다(포함). |
|
요청 본문
이 메서드를 호출할 때는 요청 본문을 제공하지 마세요.
응답
요청에 성공할 경우 이 메소드는 다음과 같은 구조의 응답 본문을 반환합니다.
{
"kind": "youtube#liveChatMessageListResponse",
"etag": etag,
"nextPageToken": string,
"pollingIntervalMillis": unsigned integer,
"offlineAt": datetime,
"pageInfo": {
"totalResults": integer,
"resultsPerPage": integer
},
"items": [
liveChatMessage Resource
],
"activePollItem": liveChatMessage Resource
}속성
다음 표는 이 리소스에 표시되는 속성을 정의합니다.
| 속성 | |
|---|---|
kind |
stringAPI 리소스의 유형을 식별합니다. 값은 youtube#liveChatMessageListResponse입니다. |
etag |
etag이 리소스의 ETag입니다. |
nextPageToken |
string결과 집합의 다음 페이지를 가져오기 위해 pageToken 매개변수의 값으로 사용할 수 있는 토큰입니다. |
pollingIntervalMillis |
unsigned integer클라이언트가 새 실시간 채팅 메시지를 다시 폴링하기 전에 대기해야 하는 시간(밀리초)입니다. |
offlineAt |
datetime기본 라이브 스트림이 오프라인 상태가 된 날짜 및 시간입니다. 이 속성은 스트림이 이미 오프라인 상태인 경우에만 표시됩니다. 값은 ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ) 형식으로 지정됩니다. |
pageInfo |
objectpageInfo 객체는 결과 집합의 페이지 나누기 정보를 캡슐화합니다. |
pageInfo.totalResults |
integer결과 집합의 총 결과 수입니다. |
pageInfo.resultsPerPage |
integerAPI 응답에 포함된 결과 수입니다. |
items[] |
list메시지 목록입니다. 목록의 각 항목은 liveChatMessage 리소스입니다. |
activePollItem |
object메시지의 설문조사 데이터입니다. 각 설문조사는 활성 설문조사를 나타내는 pollEvent 유형의 liveChatMessage 리소스입니다. 채팅당 설문조사는 하나만 있을 수 있습니다. |
오류
다음 표에서는 이 메서드 호출에 대한 응답으로 API가 반환할 수 있는 오류 메시지를 식별합니다. 자세한 내용은 오류 메시지 문서를 참고하세요.
| 오류 유형 | 오류 세부정보 | 설명 |
|---|---|---|
forbidden (403) |
forbidden |
지정된 실시간 채팅의 메시지를 가져오는 데 필요한 권한이 없습니다. |
forbidden (403) |
liveChatDisabled |
지정된 브로드캐스트에 실시간 채팅이 사용 설정되어 있지 않습니다. |
forbidden (403) |
liveChatEnded |
지정된 실시간 채팅이 더 이상 라이브가 아닙니다. |
notFound (404) |
liveChatNotFound |
가져오려는 실시간 채팅을 찾을 수 없습니다. 요청의 liveChatId 매개변수 값이 올바른지 확인하세요. |
rateLimitExceeded |
rateLimitExceeded |
이전 요청 후 너무 빨리 요청이 전송되었습니다. 이 오류는 메시지를 가져오는 API 요청이 YouTube의 새로고침 빈도보다 더 자주 전송되어 대역폭이 불필요하게 낭비될 때 발생합니다. |
기능을 사용해 보세요.
APIs Explorer를 사용하여 이 API를 호출하고 API 요청 및 응답을 확인하세요.