本文以Python SDK為例介紹基本接口的使用案例。
初始化client
import os
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_vs20181212 import models as vs_20181212_models
from alibabacloud_tea_util import models as util_models
from alibabacloud_vs20181212.client import Client as vs20181212Client
config = open_api_models.Config(
# 必填,請確保代碼運行環境設置了環境變量 ALIBABA_CLOUD_ACCESS_KEY_ID。,
access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
# 必填,請確保代碼運行環境設置了環境變量 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
)
# Endpoint 請參考 https://api.aliyun.com/product/vs
config.endpoint = f'vs.cn-qingdao.aliyuncs.com'
c = vs20181212Client(config)
獲取空間列表
describe_groups_request = vs_20181212_models.DescribeGroupsRequest(
page_num=1 # 可選,指定查詢第幾頁
)
runtime = util_models.RuntimeOptions()
resp = c.describe_groups_with_options(describe_groups_request, runtime)
print(resp)
獲取設備列表
可按照空間ID查詢空間內的設備列表。若空間ID未知,請先參考獲取空間列表選取目標空間。
describe_devices_request = vs_20181212_models.DescribeDevicesRequest(
id='id' # 可選,指定空間ID查詢
)
runtime = util_models.RuntimeOptions()
resp = c.describe_devices_with_options(describe_devices_request, runtime)
print(resp)
獲取流列表
describe_streams_request = vs_20181212_models.DescribeStreamsRequest(
group_id='GroupId', # 可選,指定空間ID查詢
device_id='DeviceId' # 可選,指定設備ID查詢
)
runtime = util_models.RuntimeOptions()
resp = c.describe_streams_with_options(describe_streams_request, runtime)
print(resp)
獲取流的播放地址
可根據流ID獲取播放地址。若流ID未知,請先參考獲取流列表選取目標流。
describe_stream_urlrequest = vs_20181212_models.DescribeStreamURLRequest(
id='id', # 必選,流ID
out_protocol='rtmp', # 必選,播放協議。取值:rtmp、flv、hls
auth_key='AuthKey', # 必選,播放域名關聯的主key,用于生成鑒權URL
type='live' # 可選,流類型。取值:live、vod
)
runtime = util_models.RuntimeOptions()
resp = c.describe_stream_urlwith_options(describe_stream_urlrequest, runtime)
print(resp)
獲取錄制列表
可根據流ID獲取錄制列表。若流ID未知,請先參考獲取流列表選取目標流。
describe_records_request = vs_20181212_models.DescribeRecordsRequest(
type='record', # 必選,按存儲記錄類型查詢。取值:record(錄制),snapshot(截圖)
stream_id='StreamId', # 必選,流ID
start_time='StreamTime', # 必選,查詢的開始時間。格式:2019-10-08T14:02:00Z
end_time='EndTime', # 必選,查詢的結束時間。格式:2019-10-09T14:02:00Z
page_num=1, # 可選,第幾個分頁,默認為1
page_size=20 # 可選,分頁大小,默認為20
)
runtime = util_models.RuntimeOptions()
resp = c.describe_records_with_options(describe_records_request, runtime)
print(resp)
文檔內容是否對您有幫助?