使用 Channels API 搜索頻道

本主題介紹如何使用 Channels API 搜索 Cloud Playout 頻道。

簡介

如果您創建了許多 Cloud Playout 頻道,您可能會發現搜索您當前想要處理的頻道很有用。Cloud Playout 提供了一種強大的機制,用於使用 Studio 模塊 或 Channels API 搜索頻道。

本主題介紹如何使用 Channels API 搜索頻道。

搜索參數

通道搜尋會使用新增至 GET 頻道要求的參數 ( 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:67ytd89id: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]

更多示例:

搜索示例
搜索文本 高級搜索 評論
hello "world is (空的) 只有 search_text 將根據 id、name 和 description 進行搜索
(空的) loop:true name:cloud 僅返回與過濾器匹配的頻道
ced52df ad:true region[us-east-1,us-west-2] 結果將包括 ID、名稱或描述中包含“ced52df”且頻道與過濾器匹配的頻道