Channels API를 사용하여 채널 검색

이 항목에서는 Channels API를 사용하여 Cloud Playout 채널을 검색하는 방법을 설명합니다.

서문

Cloud Playout 채널을 많이 만드는 경우 현재 작업하려는 채널을 검색하는 것이 유용할 수 있습니다. Cloud Playout은 Studio 모듈 또는 채널 API를 사용하여 채널을 검색하는 강력한 메커니즘을 제공합니다.

이 항목에서는 채널 API를 사용하여 채널을 검색하는 방법을 다룹니다.

검색 매개변수

채널 검색은 GET CHANNELS 요청에 추가된 매개 변수 ( q ) 를 사용합니다.

https://cm.cloudplayout.brightcove.com/accounts/{account_id}/cp_channels

값이 있는 q 매개변수의 일반적인 형식은 다음과 같습니다.

q=search_text advanced_search

검색 쿼리의 구성 요소는 다음과 같습니다.

  • search_text - 채널 이름, 설명 또는 ID에서 검색할 단어
  • advanced_search - 검색 범위를 좁히는 필터 세트

search_textadvanced_search필터는 모두 선택 사항입니다.

...?q=nature stories loop:true desc:"nature stories" startTime:2021-12-11 10:30:00..2021-12-12 12:23:00

고급 검색 패턴

쿼리의 advanced_search 부분은 공백으로 구분된 패턴의 조합입니다. 허용되는 패턴과 일치하지 않는 패턴은 오류가 반환됩니다. 아래 표는 지원되는 패턴을 보여줍니다.

고급 검색 패턴
Pattern Name 설명 Accepted Values
state 상태에 따라 채널을 필터링합니다. 이 패턴은 여러 값을 허용합니다. & 값은 단일 값인 경우에도 항상 대괄호([])로 묶어야 합니다. 이것은 OR 케이스입니다. API는 주어진 상태와 일치하는 채널을 가져옵니다. state:[draft,running,create_error]
state:[running,stopping]또는
state:[starting]
region 지역에 따라 채널을 필터링합니다. 이 패턴은 여러 값을 허용합니다. & 값은 단일 값인 경우에도 항상 대괄호([])로 묶어야 합니다. 이것은 OR 케이스입니다. API는 지정된 지역과 일치하는 채널을 가져옵니다. region:[us-east-1,us-east-2,us-west-2]
region:[eu-west-1,eu-west-2]또는
region:[us-west-2]
live 라이브 입력으로 채널을 필터링하려면 live:true/false
loop 루프/비루프 채널을 필터링합니다. loop:true/false
dynamicOverlays 동적 오버레이로 채널을 필터링하려면 dynamicOverlays:true/false
output 채널 출력을 기반으로 필터링합니다. 여러 값을 허용하며 단일 값의 경우에도 값을 항상 대괄호([])로 묶어야 합니다. 허용되는 값만 rtmp, rtp이지만 & s3. 이것은 AND 케이스입니다. 만약 RTMP & s3이 선택되면 API는 두 rtmp로 채널을 필터링합니다. & s3을 출력으로 사용합니다. output:[rtmp,s3]
output:[rtp,s3]또는
output:[rtmp]
name 채널 이름에 포함된 용어를 기반으로 필터링합니다. 이름에 공백이 있으면 작은따옴표/큰따옴표로 묶어야 합니다. name:nature
name:'nature stories'또는
name:"nature videos"
desc 채널 설명에 포함된 용어를 기반으로 필터링합니다. 값에 공백이 포함되어 있으면 작은따옴표/큰따옴표로 묶어야 합니다. desc:nature
desc:'nature stories'또는
desc:"nature videos 'amateur'"
id 채널 공개 ID를 기반으로 필터링 id:67ytd89또는id:252748cef5de464e8e8f87b7e15e7d34
startTime 채널 시작 시간 범위를 기준으로 필터링합니다. 시작 날짜 시간과 종료 날짜 시간은 모두 로..구분되며 허용되는 날짜 시간 형식은 입니다yyyy-mm-dd hh:mm:ss . 시간대 오프셋도 허용되며 선택 사항입니다. 제공되지 않으면 값은 UTC 날짜 시간으로 간주됩니다. 24시간 형식만 허용됩니다. startTime:2021-10-29 05:57:10..2021-10-30 05:57:10
startTime:..2021-10-30 05:57:10또는
startTime:2021-10-30 05:57:10..또는
startTime:2021-10-29 05:57:10 +09:30..2021-10-30 05:57:10 +09:30
createTime 채널 생성 시간 범위를 기준으로 필터링합니다. 시작 날짜 시간과 종료 날짜 시간은 모두 로..구분되며 허용되는 날짜 시간 형식은 입니다yyyy-mm-dd hh:mm:ss . 시간대 오프셋도 허용되며 선택 사항입니다. 제공되지 않으면 값은 UTC 날짜 시간으로 간주됩니다. 24시간 형식만 허용됩니다. createTime:2021-10-29 05:57:10..2021-10-30 05:57:10
createTime:..2021-10-30 05:57:10또는
createTime:2021-10-30 05:57:10..또는
createTime:2021-10-29 05:57:10 +09:30..2021-10-30 05:57:10 +09:30

다음은 샘플 쿼리입니다.

...?q=hello world 'in this world' loop:true live:true startTime:..2021-12-11 10:30:00 state:[draft,running] output:[rtmp,s3]

여기서 검색_텍스트는 다음과hello world 'in this world'같고 고급_검색은loop:true live:true startTime:..2021-12-11 10:30:00 state:[draft,running] output:[rtmp,s3]

더 많은 예:

검색 예
search_text 고급 검색 코멘트
hello "world is (비어 있는) search_text만 ID, 이름 및 설명에 대해 검색됩니다.
(비어 있는) loop:true name:cloud 필터와 일치하는 채널만 반환됩니다.
ced52df ad:true region[us-east-1,us-west-2] 결과에는 "ced52df"가 ID, 이름 또는 설명에 포함되고 채널이 필터와 일치하는 채널이 포함됩니다.