add b2
This commit is contained in:
parent
bd24b5be05
commit
fa4cbef093
|
@ -1,4 +1,4 @@
|
||||||
from . import idl, utils, core, rpc, go2
|
from . import idl, utils, core, rpc, go2, b2
|
||||||
|
|
||||||
__all__ = [
|
__all__ = [
|
||||||
"idl"
|
"idl"
|
||||||
|
@ -6,4 +6,5 @@ __all__ = [
|
||||||
"core",
|
"core",
|
||||||
"rpc",
|
"rpc",
|
||||||
"go2",
|
"go2",
|
||||||
|
"b2",
|
||||||
]
|
]
|
||||||
|
|
|
@ -0,0 +1,25 @@
|
||||||
|
"""
|
||||||
|
" service name
|
||||||
|
"""
|
||||||
|
ROBOT_STATE_SERVICE_NAME = "robot_state"
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" service api version
|
||||||
|
"""
|
||||||
|
ROBOT_STATE_API_VERSION = "1.0.0.1"
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" api id
|
||||||
|
"""
|
||||||
|
ROBOT_STATE_API_ID_SERVICE_SWITCH = 1001
|
||||||
|
ROBOT_STATE_API_ID_REPORT_FREQ = 1002
|
||||||
|
ROBOT_STATE_API_ID_SERVICE_LIST = 1003
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" error code
|
||||||
|
"""
|
||||||
|
ROBOT_STATE_ERR_SERVICE_SWITCH = 5201
|
||||||
|
ROBOT_STATE_ERR_SERVICE_PROTECTED = 5202
|
|
@ -0,0 +1,84 @@
|
||||||
|
import json
|
||||||
|
|
||||||
|
from ...rpc.client import Client
|
||||||
|
from ...rpc.client_internal import *
|
||||||
|
from .robot_state_api import *
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" class ServiceState
|
||||||
|
"""
|
||||||
|
class ServiceState:
|
||||||
|
def __init__(self, name: str = None, status: int = None, protect: bool = None):
|
||||||
|
self.name = name
|
||||||
|
self.status = status
|
||||||
|
self.protect = protect
|
||||||
|
|
||||||
|
"""
|
||||||
|
" class RobotStateClient
|
||||||
|
"""
|
||||||
|
class RobotStateClient(Client):
|
||||||
|
def __init__(self):
|
||||||
|
super().__init__(ROBOT_STATE_SERVICE_NAME, False)
|
||||||
|
|
||||||
|
def Init(self):
|
||||||
|
# set api version
|
||||||
|
self._SetApiVerson(ROBOT_STATE_API_VERSION)
|
||||||
|
# regist api
|
||||||
|
self._RegistApi(ROBOT_STATE_API_ID_SERVICE_SWITCH, 0)
|
||||||
|
self._RegistApi(ROBOT_STATE_API_ID_REPORT_FREQ, 0)
|
||||||
|
self._RegistApi(ROBOT_STATE_API_ID_SERVICE_LIST, 0)
|
||||||
|
|
||||||
|
def ServiceList(self):
|
||||||
|
p = {}
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
|
||||||
|
code, data = self._Call(ROBOT_STATE_API_ID_SERVICE_LIST, parameter)
|
||||||
|
|
||||||
|
if code != 0:
|
||||||
|
return code, None
|
||||||
|
|
||||||
|
lst = []
|
||||||
|
|
||||||
|
d = json.loads(data)
|
||||||
|
for t in d:
|
||||||
|
s = ServiceState()
|
||||||
|
s.name = t["name"]
|
||||||
|
s.status = t["status"]
|
||||||
|
s.protect = t["protect"]
|
||||||
|
lst.append(s)
|
||||||
|
|
||||||
|
return code, lst
|
||||||
|
|
||||||
|
|
||||||
|
def ServiceSwitch(self, name: str, switch: bool):
|
||||||
|
p = {}
|
||||||
|
p["name"] = name
|
||||||
|
p["switch"] = int(switch)
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
|
||||||
|
code, data = self._Call(ROBOT_STATE_API_ID_SERVICE_SWITCH, parameter)
|
||||||
|
|
||||||
|
if code != 0:
|
||||||
|
return code
|
||||||
|
|
||||||
|
d = json.loads(data)
|
||||||
|
|
||||||
|
status = d["status"]
|
||||||
|
|
||||||
|
if status == 5:
|
||||||
|
return ROBOT_STATE_ERR_SERVICE_PROTECTED
|
||||||
|
|
||||||
|
if status != 0 and status != 1:
|
||||||
|
return ROBOT_STATE_ERR_SERVICE_SWITCH
|
||||||
|
|
||||||
|
return code
|
||||||
|
|
||||||
|
def SetReportFreq(self, interval: int, duration: int):
|
||||||
|
p = {}
|
||||||
|
p["interval"] = interval
|
||||||
|
p["duration"] = duration
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
|
||||||
|
code, data = self._Call(ROBOT_STATE_API_ID_REPORT_FREQ, p)
|
||||||
|
return code
|
|
@ -0,0 +1,58 @@
|
||||||
|
"""
|
||||||
|
" service name
|
||||||
|
"""
|
||||||
|
SPORT_SERVICE_NAME = "sport"
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" service api version
|
||||||
|
"""
|
||||||
|
SPORT_API_VERSION = "1.0.0.1"
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" api id
|
||||||
|
"""
|
||||||
|
SPORT_API_ID_DAMP = 1001;
|
||||||
|
SPORT_API_ID_BALANCESTAND = 1002;
|
||||||
|
SPORT_API_ID_STOPMOVE = 1003;
|
||||||
|
SPORT_API_ID_STANDUP = 1004;
|
||||||
|
SPORT_API_ID_STANDDOWN = 1005;
|
||||||
|
SPORT_API_ID_RECOVERYSTAND = 1006;
|
||||||
|
SPORT_API_ID_EULER = 1007;
|
||||||
|
SPORT_API_ID_MOVE = 1008;
|
||||||
|
SPORT_API_ID_SIT = 1009;
|
||||||
|
SPORT_API_ID_RISESIT = 1010;
|
||||||
|
SPORT_API_ID_SWITCHGAIT = 1011;
|
||||||
|
SPORT_API_ID_TRIGGER = 1012;
|
||||||
|
SPORT_API_ID_BODYHEIGHT = 1013;
|
||||||
|
SPORT_API_ID_FOOTRAISEHEIGHT = 1014;
|
||||||
|
SPORT_API_ID_SPEEDLEVEL = 1015;
|
||||||
|
SPORT_API_ID_HELLO = 1016;
|
||||||
|
SPORT_API_ID_STRETCH = 1017;
|
||||||
|
SPORT_API_ID_TRAJECTORYFOLLOW = 1018;
|
||||||
|
SPORT_API_ID_CONTINUOUSGAIT = 1019;
|
||||||
|
SPORT_API_ID_CONTENT = 1020;
|
||||||
|
SPORT_API_ID_WALLOW = 1021;
|
||||||
|
SPORT_API_ID_DANCE1 = 1022;
|
||||||
|
SPORT_API_ID_DANCE2 = 1023;
|
||||||
|
SPORT_API_ID_GETBODYHEIGHT = 1024;
|
||||||
|
SPORT_API_ID_GETFOOTRAISEHEIGHT = 1025;
|
||||||
|
SPORT_API_ID_GETSPEEDLEVEL = 1026;
|
||||||
|
SPORT_API_ID_SWITCHJOYSTICK = 1027;
|
||||||
|
SPORT_API_ID_POSE = 1028;
|
||||||
|
SPORT_API_ID_FRONTJUMP = 1031;
|
||||||
|
SPORT_API_ID_ECONOMICGAIT = 1035;
|
||||||
|
SPORT_API_ID_MOVETOPOS = 1036;
|
||||||
|
SPORT_API_ID_SWITCHEULERMODE = 1037;
|
||||||
|
SPORT_API_ID_SWITCHMOVEMODE = 1038;
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" error code
|
||||||
|
"""
|
||||||
|
# client side
|
||||||
|
SPORT_ERR_CLIENT_POINT_PATH = 4101
|
||||||
|
# server side
|
||||||
|
SPORT_ERR_SERVER_OVERTIME = 4201
|
||||||
|
SPORT_ERR_SERVER_NOT_INIT = 4202
|
|
@ -0,0 +1,241 @@
|
||||||
|
import json
|
||||||
|
|
||||||
|
from ...rpc.client import Client
|
||||||
|
from .sport_api import *
|
||||||
|
|
||||||
|
"""
|
||||||
|
" SPORT_PATH_POINT_SIZE
|
||||||
|
"""
|
||||||
|
SPORT_PATH_POINT_SIZE = 30
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" class PathPoint
|
||||||
|
"""
|
||||||
|
class PathPoint:
|
||||||
|
def __init__(self, timeFromStart: float, x: float, y: float, yaw: float, vx: float, vy: float, vyaw: float):
|
||||||
|
self.timeFromStart = timeFromStart
|
||||||
|
self.x = x
|
||||||
|
self.y = y
|
||||||
|
self.yaw = yaw
|
||||||
|
self.vx = vx
|
||||||
|
self.vy = vy
|
||||||
|
self.vyaw = vyaw
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" class SportClient
|
||||||
|
"""
|
||||||
|
class SportClient(Client):
|
||||||
|
def __init__(self, enableLease: bool = False):
|
||||||
|
super().__init__(SPORT_SERVICE_NAME, enableLease)
|
||||||
|
|
||||||
|
|
||||||
|
def Init(self):
|
||||||
|
# set api version
|
||||||
|
self._SetApiVerson(SPORT_API_VERSION)
|
||||||
|
|
||||||
|
# regist api
|
||||||
|
self._RegistApi(SPORT_API_ID_DAMP, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_BALANCESTAND, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_STOPMOVE, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_STANDUP, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_STANDDOWN, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_RECOVERYSTAND, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_EULER, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_MOVE, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_SIT, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_SWITCHGAIT, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_BODYHEIGHT, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_FOOTRAISEHEIGHT, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_SPEEDLEVEL, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_TRAJECTORYFOLLOW, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_CONTINUOUSGAIT, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_MOVETOPOS, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_FRONTJUMP, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_ECONOMICGAIT, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_POSE, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_SWITCHEULERMODE, 0)
|
||||||
|
self._RegistApi(SPORT_API_ID_SWITCHMOVEMODE, 0)
|
||||||
|
|
||||||
|
# 1001
|
||||||
|
def Damp(self):
|
||||||
|
p = {}
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_DAMP, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1002
|
||||||
|
def BalanceStand(self):
|
||||||
|
p = {}
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_BALANCESTAND, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1003
|
||||||
|
def StopMove(self):
|
||||||
|
p = {}
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_STOPMOVE, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1004
|
||||||
|
def StandUp(self):
|
||||||
|
p = {}
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_STANDUP, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1005
|
||||||
|
def StandDown(self):
|
||||||
|
p = {}
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_STANDDOWN, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1006
|
||||||
|
def RecoveryStand(self):
|
||||||
|
p = {}
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_RECOVERYSTAND, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1007
|
||||||
|
def Euler(self, roll: float, pitch: float, yaw: float):
|
||||||
|
p = {}
|
||||||
|
p["x"] = roll
|
||||||
|
p["y"] = pitch
|
||||||
|
p["z"] = yaw
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_EULER, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1008
|
||||||
|
def Move(self, vx: float, vy: float, vyaw: float):
|
||||||
|
p = {}
|
||||||
|
p["x"] = vx
|
||||||
|
p["y"] = vy
|
||||||
|
p["z"] = vyaw
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code = self._CallNoReply(SPORT_API_ID_MOVE, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1009
|
||||||
|
def Sit(self):
|
||||||
|
p = {}
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_SIT, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1011
|
||||||
|
def SwitchGait(self, t: int):
|
||||||
|
p = {}
|
||||||
|
p["data"] = t
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_SWITCHGAIT, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1013
|
||||||
|
def BodyHeight(self, height: float):
|
||||||
|
p = {}
|
||||||
|
p["data"] = height
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_BODYHEIGHT, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1014
|
||||||
|
def FootRaiseHeight(self, height: float):
|
||||||
|
p = {}
|
||||||
|
p["data"] = height
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_FOOTRAISEHEIGHT, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1015
|
||||||
|
def SpeedLevel(self, level: int):
|
||||||
|
p = {}
|
||||||
|
p["data"] = level
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_SPEEDLEVEL, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1018
|
||||||
|
def TrajectoryFollow(self, path: list):
|
||||||
|
l = len(path)
|
||||||
|
if l != SPORT_PATH_POINT_SIZE:
|
||||||
|
return SPORT_ERR_CLIENT_POINT_PATH
|
||||||
|
|
||||||
|
path_p = []
|
||||||
|
for i in range(l):
|
||||||
|
point = path[i]
|
||||||
|
p = {}
|
||||||
|
p["t_from_start"] = point.timeFromStart
|
||||||
|
p["x"] = point.x
|
||||||
|
p["y"] = point.y
|
||||||
|
p["yaw"] = point.yaw
|
||||||
|
p["vx"] = point.vx
|
||||||
|
p["vy"] = point.vy
|
||||||
|
p["vyaw"] = point.vyaw
|
||||||
|
path_p.append(p)
|
||||||
|
|
||||||
|
parameter = json.dumps(path_p)
|
||||||
|
code = self._CallNoReply(SPORT_API_ID_TRAJECTORYFOLLOW, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1019
|
||||||
|
def ContinuousGait(self, flag: int):
|
||||||
|
p = {}
|
||||||
|
p["data"] = flag
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_CONTINUOUSGAIT, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1036
|
||||||
|
def MoveToPos(self, x: float, y: float, yaw: float):
|
||||||
|
p = {}
|
||||||
|
p["x"] = x
|
||||||
|
p["y"] = y
|
||||||
|
p["yaw"] = yaw
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_MOVETOPOS, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1031
|
||||||
|
def FrontJump(self):
|
||||||
|
p = {}
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_FRONTJUMP, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
|
||||||
|
# 1035
|
||||||
|
def EconomicGait(self, flag: bool):
|
||||||
|
p = {}
|
||||||
|
p["data"] = flag
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_ECONOMICGAIT, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1028
|
||||||
|
def Pose(self, flag: bool):
|
||||||
|
p = {}
|
||||||
|
p["data"] = flag
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_POSE, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1037
|
||||||
|
def SwitchEulerMode(self, flag: bool):
|
||||||
|
p = {}
|
||||||
|
p["data"] = flag
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_SWITCHEULERMODE, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1038
|
||||||
|
def SwitchMoveMode(self, flag: bool):
|
||||||
|
p = {}
|
||||||
|
p["data"] = flag
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
code, data = self._Call(SPORT_API_ID_SWITCHMOVEMODE, parameter)
|
||||||
|
return code
|
|
@ -0,0 +1,16 @@
|
||||||
|
"""
|
||||||
|
" service name
|
||||||
|
"""
|
||||||
|
VIDEO_SERVICE_NAME = "videohub"
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" service api version
|
||||||
|
"""
|
||||||
|
VIDEO_API_VERSION = "1.0.0.1"
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" api id
|
||||||
|
"""
|
||||||
|
VIDEO_API_ID_GETIMAGESAMPLE = 1001
|
|
@ -0,0 +1,23 @@
|
||||||
|
import json
|
||||||
|
|
||||||
|
from ...rpc.client import Client
|
||||||
|
from .video_api import *
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" class VideoClient
|
||||||
|
"""
|
||||||
|
class VideoClient(Client):
|
||||||
|
def __init__(self):
|
||||||
|
super().__init__(VIDEO_SERVICE_NAME, False)
|
||||||
|
|
||||||
|
|
||||||
|
def Init(self):
|
||||||
|
# set api version
|
||||||
|
self._SetApiVerson(VIDEO_API_VERSION)
|
||||||
|
# regist api
|
||||||
|
self._RegistApi(VIDEO_API_ID_GETIMAGESAMPLE, 0)
|
||||||
|
|
||||||
|
# 1001
|
||||||
|
def GetImageSample(self):
|
||||||
|
return self._CallBinary(VIDEO_API_ID_GETIMAGESAMPLE, [])
|
|
@ -0,0 +1,21 @@
|
||||||
|
"""
|
||||||
|
" service name
|
||||||
|
"""
|
||||||
|
VUI_SERVICE_NAME = "vui"
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" service api version
|
||||||
|
"""
|
||||||
|
VUI_API_VERSION = "1.0.0.1"
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" api id
|
||||||
|
"""
|
||||||
|
VUI_API_ID_SETSWITCH = 1001
|
||||||
|
VUI_API_ID_GETSWITCH = 1002
|
||||||
|
VUI_API_ID_SETVOLUME = 1003
|
||||||
|
VUI_API_ID_GETVOLUME = 1004
|
||||||
|
VUI_API_ID_SETBRIGHTNESS = 1005
|
||||||
|
VUI_API_ID_GETBRIGHTNESS = 1006
|
|
@ -0,0 +1,86 @@
|
||||||
|
import json
|
||||||
|
|
||||||
|
from ...rpc.client import Client
|
||||||
|
from .vui_api import *
|
||||||
|
|
||||||
|
|
||||||
|
"""
|
||||||
|
" class VideoClient
|
||||||
|
"""
|
||||||
|
class VuiClient(Client):
|
||||||
|
def __init__(self):
|
||||||
|
super().__init__(VUI_SERVICE_NAME, False)
|
||||||
|
|
||||||
|
def Init(self):
|
||||||
|
# set api version
|
||||||
|
self._SetApiVerson(VUI_API_VERSION)
|
||||||
|
# regist api
|
||||||
|
self._RegistApi(VUI_API_ID_SETSWITCH, 0)
|
||||||
|
self._RegistApi(VUI_API_ID_GETSWITCH, 0)
|
||||||
|
self._RegistApi(VUI_API_ID_SETVOLUME, 0)
|
||||||
|
self._RegistApi(VUI_API_ID_GETVOLUME, 0)
|
||||||
|
self._RegistApi(VUI_API_ID_SETBRIGHTNESS, 0)
|
||||||
|
self._RegistApi(VUI_API_ID_GETBRIGHTNESS, 0)
|
||||||
|
|
||||||
|
# 1001
|
||||||
|
def SetSwitch(self, enable: int):
|
||||||
|
p = {}
|
||||||
|
p["enable"] = enable
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
|
||||||
|
code, data = self._Call(VUI_API_ID_SETSWITCH, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1002
|
||||||
|
def GetSwitch(self):
|
||||||
|
p = {}
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
|
||||||
|
code, data = self._Call(VUI_API_ID_GETSWITCH, parameter)
|
||||||
|
if code == 0:
|
||||||
|
d = json.loads(data)
|
||||||
|
return code, d["enable"]
|
||||||
|
else:
|
||||||
|
return code, None
|
||||||
|
|
||||||
|
# 1003
|
||||||
|
def SetVolume(self, level: int):
|
||||||
|
p = {}
|
||||||
|
p["volume"] = level
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
|
||||||
|
code, data = self._Call(VUI_API_ID_SETVOLUME, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1006
|
||||||
|
def GetVolume(self):
|
||||||
|
p = {}
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
|
||||||
|
code, data = self._Call(VUI_API_ID_GETVOLUME, parameter)
|
||||||
|
if code == 0:
|
||||||
|
d = json.loads(data)
|
||||||
|
return code, d["volume"]
|
||||||
|
else:
|
||||||
|
return code, None
|
||||||
|
|
||||||
|
# 1005
|
||||||
|
def SetBrightness(self, level: int):
|
||||||
|
p = {}
|
||||||
|
p["brightness"] = level
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
|
||||||
|
code, data = self._Call(VUI_API_ID_SETBRIGHTNESS, parameter)
|
||||||
|
return code
|
||||||
|
|
||||||
|
# 1006
|
||||||
|
def GetBrightness(self):
|
||||||
|
p = {}
|
||||||
|
parameter = json.dumps(p)
|
||||||
|
|
||||||
|
code, data = self._Call(VUI_API_ID_GETBRIGHTNESS, parameter)
|
||||||
|
if code == 0:
|
||||||
|
d = json.loads(data)
|
||||||
|
return code, d["brightness"]
|
||||||
|
else:
|
||||||
|
return code, None
|
Loading…
Reference in New Issue