第一次提交:阿龙电竞 Django 后端最新版本

This commit is contained in:
XingQue
2026-06-14 02:23:24 +08:00
commit 4f7bf00224
9654 changed files with 5417000 additions and 0 deletions

View File

@@ -0,0 +1,48 @@
# -*- coding: utf8 -*-
# Copyright (c) 2017-2025 Tencent. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# CAM签名/鉴权错误。
AUTHFAILURE = 'AuthFailure'
# 操作失败。
FAILEDOPERATION = 'FailedOperation'
# 交易流水号重复
FAILEDOPERATION_DUPLICATETRADESERIALNO = 'FailedOperation.DuplicateTradeSerialNo'
# 直播会员已经过期
FAILEDOPERATION_USERLIVEVIPTIMEEXPIRE = 'FailedOperation.UserLiveVipTimeExpire'
# 非直播会员用户
FAILEDOPERATION_USERNOTLIVEVIP = 'FailedOperation.UserNotLiveVip'
# 内部错误。
INTERNALERROR = 'InternalError'
# 参数错误。
INVALIDPARAMETER = 'InvalidParameter'
# 参数取值错误。
INVALIDPARAMETERVALUE = 'InvalidParameterValue'
# 缺少参数错误。
MISSINGPARAMETER = 'MissingParameter'
# 资源不存在。
RESOURCENOTFOUND = 'ResourceNotFound'
# 资源不可用。
RESOURCEUNAVAILABLE = 'ResourceUnavailable'

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,486 @@
# -*- coding: utf8 -*-
# Copyright (c) 2017-2025 Tencent. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import json
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
from tencentcloud.common.abstract_client import AbstractClient
from tencentcloud.yinsuda.v20220527 import models
class YinsudaClient(AbstractClient):
_apiVersion = '2022-05-27'
_endpoint = 'yinsuda.tencentcloudapi.com'
_service = 'yinsuda'
def ApplyChorus(self, request):
r"""申请合唱相关信息,用于标记用户的演唱是在合唱场景下。
:param request: Request instance for ApplyChorus.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.ApplyChorusRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.ApplyChorusResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("ApplyChorus", params, headers=headers)
response = json.loads(body)
model = models.ApplyChorusResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def BatchDescribeKTVMusicDetails(self, request):
r"""批量获取歌曲详细信息,包括:歌词下载链接、播放凭证、音高数据下载链接信息等。
:param request: Request instance for BatchDescribeKTVMusicDetails.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.BatchDescribeKTVMusicDetailsRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.BatchDescribeKTVMusicDetailsResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("BatchDescribeKTVMusicDetails", params, headers=headers)
response = json.loads(body)
model = models.BatchDescribeKTVMusicDetailsResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def CreateKTVRobot(self, request):
r"""创建机器人,支持进入 RTC 房间,播放曲库歌曲。
:param request: Request instance for CreateKTVRobot.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.CreateKTVRobotRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.CreateKTVRobotResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("CreateKTVRobot", params, headers=headers)
response = json.loads(body)
model = models.CreateKTVRobotResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DescribeKTVMatchMusics(self, request):
r"""根据输入的规则匹配曲库中的歌曲。
:param request: Request instance for DescribeKTVMatchMusics.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVMatchMusicsRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVMatchMusicsResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DescribeKTVMatchMusics", params, headers=headers)
response = json.loads(body)
model = models.DescribeKTVMatchMusicsResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DescribeKTVMusicAccompanySegmentUrl(self, request):
r"""获取歌曲伴奏片段链接,可用于抢唱
:param request: Request instance for DescribeKTVMusicAccompanySegmentUrl.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVMusicAccompanySegmentUrlRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVMusicAccompanySegmentUrlResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DescribeKTVMusicAccompanySegmentUrl", params, headers=headers)
response = json.loads(body)
model = models.DescribeKTVMusicAccompanySegmentUrlResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DescribeKTVMusicAccompanySegmentUrlVip(self, request):
r"""获取歌曲伴奏高潮的开始、结束时间,可用于抢唱
:param request: Request instance for DescribeKTVMusicAccompanySegmentUrlVip.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVMusicAccompanySegmentUrlVipRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVMusicAccompanySegmentUrlVipResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DescribeKTVMusicAccompanySegmentUrlVip", params, headers=headers)
response = json.loads(body)
model = models.DescribeKTVMusicAccompanySegmentUrlVipResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DescribeKTVMusicsByTag(self, request):
r"""通过标签过滤歌曲列表。
:param request: Request instance for DescribeKTVMusicsByTag.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVMusicsByTagRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVMusicsByTagResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DescribeKTVMusicsByTag", params, headers=headers)
response = json.loads(body)
model = models.DescribeKTVMusicsByTagResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DescribeKTVPlaylistDetail(self, request):
r"""根据歌单 Id 获取歌单详情。
:param request: Request instance for DescribeKTVPlaylistDetail.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVPlaylistDetailRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVPlaylistDetailResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DescribeKTVPlaylistDetail", params, headers=headers)
response = json.loads(body)
model = models.DescribeKTVPlaylistDetailResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DescribeKTVPlaylists(self, request):
r"""获取歌单列表。
:param request: Request instance for DescribeKTVPlaylists.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVPlaylistsRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVPlaylistsResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DescribeKTVPlaylists", params, headers=headers)
response = json.loads(body)
model = models.DescribeKTVPlaylistsResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DescribeKTVRobots(self, request):
r"""获取机器人列表,支持 Id、状态等过滤条件。
:param request: Request instance for DescribeKTVRobots.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVRobotsRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVRobotsResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DescribeKTVRobots", params, headers=headers)
response = json.loads(body)
model = models.DescribeKTVRobotsResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DescribeKTVSuggestions(self, request):
r"""根据关键词获取联想词列表。
:param request: Request instance for DescribeKTVSuggestions.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVSuggestionsRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVSuggestionsResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DescribeKTVSuggestions", params, headers=headers)
response = json.loads(body)
model = models.DescribeKTVSuggestionsResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DescribeKTVTags(self, request):
r"""获取标签分组及分组下的标签列表信息。
:param request: Request instance for DescribeKTVTags.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVTagsRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DescribeKTVTagsResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DescribeKTVTags", params, headers=headers)
response = json.loads(body)
model = models.DescribeKTVTagsResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DescribeLiveVipTradeInfos(self, request):
r"""批量获取直播会员充值流水详细信息,包括:流水号,订单状态,下订单时间等
:param request: Request instance for DescribeLiveVipTradeInfos.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DescribeLiveVipTradeInfosRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DescribeLiveVipTradeInfosResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DescribeLiveVipTradeInfos", params, headers=headers)
response = json.loads(body)
model = models.DescribeLiveVipTradeInfosResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DescribeUserInfo(self, request):
r"""获取用户信息,包括是否为直播会员,及直播会员信息等
:param request: Request instance for DescribeUserInfo.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DescribeUserInfoRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DescribeUserInfoResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DescribeUserInfo", params, headers=headers)
response = json.loads(body)
model = models.DescribeUserInfoResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DescribeVipUserInfo(self, request):
r"""获取会员信息:获取用户是否开通会员
:param request: Request instance for DescribeVipUserInfo.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DescribeVipUserInfoRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DescribeVipUserInfoResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DescribeVipUserInfo", params, headers=headers)
response = json.loads(body)
model = models.DescribeVipUserInfoResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def DestroyKTVRobot(self, request):
r"""销毁机器人,机器人退出 RTC 房间。
:param request: Request instance for DestroyKTVRobot.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.DestroyKTVRobotRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.DestroyKTVRobotResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("DestroyKTVRobot", params, headers=headers)
response = json.loads(body)
model = models.DestroyKTVRobotResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def RechargeLiveVip(self, request):
r"""充值直播会员,使该用户可以在直播场景使用
:param request: Request instance for RechargeLiveVip.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.RechargeLiveVipRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.RechargeLiveVipResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("RechargeLiveVip", params, headers=headers)
response = json.loads(body)
model = models.RechargeLiveVipResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def RechargeVip(self, request):
r"""充值会员
:param request: Request instance for RechargeVip.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.RechargeVipRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.RechargeVipResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("RechargeVip", params, headers=headers)
response = json.loads(body)
model = models.RechargeVipResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def SearchKTVMusics(self, request):
r"""根据关键词搜索歌曲,返回相关歌曲列表。
:param request: Request instance for SearchKTVMusics.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.SearchKTVMusicsRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.SearchKTVMusicsResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("SearchKTVMusics", params, headers=headers)
response = json.loads(body)
model = models.SearchKTVMusicsResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))
def SyncKTVRobotCommand(self, request):
r"""下发操作机器人指令,支持播放、暂停、恢复、歌单设置等操作指令,实现对机器人行为的控制。
:param request: Request instance for SyncKTVRobotCommand.
:type request: :class:`tencentcloud.yinsuda.v20220527.models.SyncKTVRobotCommandRequest`
:rtype: :class:`tencentcloud.yinsuda.v20220527.models.SyncKTVRobotCommandResponse`
"""
try:
params = request._serialize()
headers = request.headers
body = self.call("SyncKTVRobotCommand", params, headers=headers)
response = json.loads(body)
model = models.SyncKTVRobotCommandResponse()
model._deserialize(response["Response"])
return model
except Exception as e:
if isinstance(e, TencentCloudSDKException):
raise
else:
raise TencentCloudSDKException(type(e).__name__, str(e))

View File

@@ -0,0 +1,386 @@
# -*- coding: utf8 -*-
# Copyright (c) 2017-2025 Tencent. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from tencentcloud.common.abstract_client_async import AbstractClient
from tencentcloud.yinsuda.v20220527 import models
from typing import Dict
class YinsudaClient(AbstractClient):
_apiVersion = '2022-05-27'
_endpoint = 'yinsuda.tencentcloudapi.com'
_service = 'yinsuda'
async def ApplyChorus(
self,
request: models.ApplyChorusRequest,
opts: Dict = None,
) -> models.ApplyChorusResponse:
"""
申请合唱相关信息,用于标记用户的演唱是在合唱场景下。
"""
kwargs = {}
kwargs["action"] = "ApplyChorus"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.ApplyChorusResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def BatchDescribeKTVMusicDetails(
self,
request: models.BatchDescribeKTVMusicDetailsRequest,
opts: Dict = None,
) -> models.BatchDescribeKTVMusicDetailsResponse:
"""
批量获取歌曲详细信息,包括:歌词下载链接、播放凭证、音高数据下载链接信息等。
"""
kwargs = {}
kwargs["action"] = "BatchDescribeKTVMusicDetails"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.BatchDescribeKTVMusicDetailsResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def CreateKTVRobot(
self,
request: models.CreateKTVRobotRequest,
opts: Dict = None,
) -> models.CreateKTVRobotResponse:
"""
创建机器人,支持进入 RTC 房间,播放曲库歌曲。
"""
kwargs = {}
kwargs["action"] = "CreateKTVRobot"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.CreateKTVRobotResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DescribeKTVMatchMusics(
self,
request: models.DescribeKTVMatchMusicsRequest,
opts: Dict = None,
) -> models.DescribeKTVMatchMusicsResponse:
"""
根据输入的规则匹配曲库中的歌曲。
"""
kwargs = {}
kwargs["action"] = "DescribeKTVMatchMusics"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DescribeKTVMatchMusicsResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DescribeKTVMusicAccompanySegmentUrl(
self,
request: models.DescribeKTVMusicAccompanySegmentUrlRequest,
opts: Dict = None,
) -> models.DescribeKTVMusicAccompanySegmentUrlResponse:
"""
获取歌曲伴奏片段链接,可用于抢唱
"""
kwargs = {}
kwargs["action"] = "DescribeKTVMusicAccompanySegmentUrl"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DescribeKTVMusicAccompanySegmentUrlResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DescribeKTVMusicAccompanySegmentUrlVip(
self,
request: models.DescribeKTVMusicAccompanySegmentUrlVipRequest,
opts: Dict = None,
) -> models.DescribeKTVMusicAccompanySegmentUrlVipResponse:
"""
获取歌曲伴奏高潮的开始、结束时间,可用于抢唱
"""
kwargs = {}
kwargs["action"] = "DescribeKTVMusicAccompanySegmentUrlVip"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DescribeKTVMusicAccompanySegmentUrlVipResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DescribeKTVMusicsByTag(
self,
request: models.DescribeKTVMusicsByTagRequest,
opts: Dict = None,
) -> models.DescribeKTVMusicsByTagResponse:
"""
通过标签过滤歌曲列表。
"""
kwargs = {}
kwargs["action"] = "DescribeKTVMusicsByTag"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DescribeKTVMusicsByTagResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DescribeKTVPlaylistDetail(
self,
request: models.DescribeKTVPlaylistDetailRequest,
opts: Dict = None,
) -> models.DescribeKTVPlaylistDetailResponse:
"""
根据歌单 Id 获取歌单详情。
"""
kwargs = {}
kwargs["action"] = "DescribeKTVPlaylistDetail"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DescribeKTVPlaylistDetailResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DescribeKTVPlaylists(
self,
request: models.DescribeKTVPlaylistsRequest,
opts: Dict = None,
) -> models.DescribeKTVPlaylistsResponse:
"""
获取歌单列表。
"""
kwargs = {}
kwargs["action"] = "DescribeKTVPlaylists"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DescribeKTVPlaylistsResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DescribeKTVRobots(
self,
request: models.DescribeKTVRobotsRequest,
opts: Dict = None,
) -> models.DescribeKTVRobotsResponse:
"""
获取机器人列表,支持 Id、状态等过滤条件。
"""
kwargs = {}
kwargs["action"] = "DescribeKTVRobots"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DescribeKTVRobotsResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DescribeKTVSuggestions(
self,
request: models.DescribeKTVSuggestionsRequest,
opts: Dict = None,
) -> models.DescribeKTVSuggestionsResponse:
"""
根据关键词获取联想词列表。
"""
kwargs = {}
kwargs["action"] = "DescribeKTVSuggestions"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DescribeKTVSuggestionsResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DescribeKTVTags(
self,
request: models.DescribeKTVTagsRequest,
opts: Dict = None,
) -> models.DescribeKTVTagsResponse:
"""
获取标签分组及分组下的标签列表信息。
"""
kwargs = {}
kwargs["action"] = "DescribeKTVTags"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DescribeKTVTagsResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DescribeLiveVipTradeInfos(
self,
request: models.DescribeLiveVipTradeInfosRequest,
opts: Dict = None,
) -> models.DescribeLiveVipTradeInfosResponse:
"""
批量获取直播会员充值流水详细信息,包括:流水号,订单状态,下订单时间等
"""
kwargs = {}
kwargs["action"] = "DescribeLiveVipTradeInfos"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DescribeLiveVipTradeInfosResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DescribeUserInfo(
self,
request: models.DescribeUserInfoRequest,
opts: Dict = None,
) -> models.DescribeUserInfoResponse:
"""
获取用户信息,包括是否为直播会员,及直播会员信息等
"""
kwargs = {}
kwargs["action"] = "DescribeUserInfo"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DescribeUserInfoResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DescribeVipUserInfo(
self,
request: models.DescribeVipUserInfoRequest,
opts: Dict = None,
) -> models.DescribeVipUserInfoResponse:
"""
获取会员信息:获取用户是否开通会员
"""
kwargs = {}
kwargs["action"] = "DescribeVipUserInfo"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DescribeVipUserInfoResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def DestroyKTVRobot(
self,
request: models.DestroyKTVRobotRequest,
opts: Dict = None,
) -> models.DestroyKTVRobotResponse:
"""
销毁机器人,机器人退出 RTC 房间。
"""
kwargs = {}
kwargs["action"] = "DestroyKTVRobot"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.DestroyKTVRobotResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def RechargeLiveVip(
self,
request: models.RechargeLiveVipRequest,
opts: Dict = None,
) -> models.RechargeLiveVipResponse:
"""
充值直播会员,使该用户可以在直播场景使用
"""
kwargs = {}
kwargs["action"] = "RechargeLiveVip"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.RechargeLiveVipResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def RechargeVip(
self,
request: models.RechargeVipRequest,
opts: Dict = None,
) -> models.RechargeVipResponse:
"""
充值会员
"""
kwargs = {}
kwargs["action"] = "RechargeVip"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.RechargeVipResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def SearchKTVMusics(
self,
request: models.SearchKTVMusicsRequest,
opts: Dict = None,
) -> models.SearchKTVMusicsResponse:
"""
根据关键词搜索歌曲,返回相关歌曲列表。
"""
kwargs = {}
kwargs["action"] = "SearchKTVMusics"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.SearchKTVMusicsResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)
async def SyncKTVRobotCommand(
self,
request: models.SyncKTVRobotCommandRequest,
opts: Dict = None,
) -> models.SyncKTVRobotCommandResponse:
"""
下发操作机器人指令,支持播放、暂停、恢复、歌单设置等操作指令,实现对机器人行为的控制。
"""
kwargs = {}
kwargs["action"] = "SyncKTVRobotCommand"
kwargs["params"] = request._serialize()
kwargs["resp_cls"] = models.SyncKTVRobotCommandResponse
kwargs["headers"] = request.headers
kwargs["opts"] = opts or {}
return await self.call_and_deserialize(**kwargs)