def __init__(self, kbxModuleName, parentPath):
        '''
        Constructor
        '''
        super().__init__(kbxModuleName, parentPath)

        self.register_method(kbxMethodName="get_capabilities",
                             kbxMethodFunc=self.get_capabilities,
                             kbxMethodParams=[KBXString(kbxParamName="pairedDeviceId", kbxParamIsRequired=True)])

        self.register_method(kbxMethodName="get_status",
                             kbxMethodFunc=self.get_status,
                             kbxMethodParams=[KBXString(kbxParamName="pairedDeviceId", kbxparamIsRequired=True)])

        self.register_method(kbxMethodName="alert",
                             kbxMethodFunc=self.alert,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXRange(kbxParamName="alertLevel", kbxParamMinValue=0, kbxParamMaxValue=2, kbxParamStep=1)])

        self.register_method(kbxMethodName="set_link_loss_value",
                             kbxMethodFunc=self.set_link_loss_value,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXRange(kbxParamName="alertLevel", kbxParamMinValue=0, kbxParamMaxValue=2, kbxParamStep=1)])
        
        self.register_method(kbxMethodName="get_battery_level",
                             kbxMethodFunc=self.get_battery_level,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True)])
        
        self.register_method(kbxMethodName="get_link_loss_value",
                             kbxMethodFunc=self.get_link_loss_value,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True)])

        self.register_method(kbxMethodName="get_signal_info",
                             kbxMethodFunc=self.get_signal_info,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True)])
예제 #2
0
    def __init__(self, kbxModuleName, parentPath):
        '''
        Constructor
        '''
        super().__init__(kbxModuleName, parentPath)

        self.register_method(kbxMethodName="get_capabilities",
                             kbxMethodFunc=self.get_capabilities,
                             kbxMethodParams=[KBXString(kbxParamName="pairedDeviceId", kbxParamIsRequired=True)])

        self.register_method(kbxMethodName="get_status",
                             kbxMethodFunc=self.get_status,
                             kbxMethodParams=[KBXString(kbxParamName="pairedDeviceId", kbxparamIsRequired=True)])

        self.register_method(kbxMethodName="set_on",
                             kbxMethodFunc=self.set_on,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True)])

        self.register_method(kbxMethodName="set_off",
                             kbxMethodFunc=self.set_off,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamisRequired=True)])

        self.register_method(kbxMethodName="set_dim_level",
                             kbxMethodFunc=self.set_dim_level,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXRange(kbxParamName="level", kbxParamIsRequired=True, kbxParamMinValue=0, kbxParamMaxValue=99, kbxParamStep=1)])

        self.register_method(kbxMethodName="get_dim_level",
                             kbxMethodFunc=self.get_dim_level,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True)])

        self.register_method(kbxMethodName="get_dimmer_status",
                             kbxMethodFunc=self.get_dimmer_status,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True)])
    def __init__(self, kbxModuleName, parentPath):
        '''
        Constructor
        '''
        super().__init__(kbxModuleName, parentPath)

        self.register_method(kbxMethodName="get_capabilities",
                             kbxMethodFunc=self.get_capabilities,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_status",
                             kbxMethodFunc=self.get_status,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_activities",
                             kbxMethodFunc=self.get_activities,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_activity_start",
                             kbxMethodFunc=self.set_activity_start,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="activityIndex",
                                           kbxParamIsRequired=True)
                             ])
예제 #4
0
    def __init__(self, kbxModuleName, parentPath):
        '''
        Constructor
        '''
        super().__init__(kbxModuleName, parentPath)

        self.register_method(kbxMethodName="get_capabilities",
                             kbxMethodFunc=self.get_capabilities,
                             kbxMethodParams=[KBXString(kbxParamName="pairedDeviceId", kbxParamIsRequired=True)])

        self.register_method(kbxMethodName="get_status",
                             kbxMethodFunc=self.get_status,
                             kbxMethodParams=[KBXString(kbxParamName="pairedDeviceId", kbxparamIsRequired=True)])

        self.register_method(kbxMethodName="set_mode",
                             kbxMethodFunc=self.set_mode,
                             kbxMethodParams=[KBXString(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXString(kbxParamName="mode", kbxParamIsRequired=True)])
        
        self.register_method(kbxMethodName="set_fan_mode",
                             kbxMethodFunc=self.set_fan_mode,
                             kbxMethodParams=[KBXString(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXString(kbxParamName="fanMode", kbxParamIsRequired=True)])
        
        self.register_method(kbxMethodName="set_setpoint",
                             kbxMethodFunc=self.set_setpoint,
                             kbxMethodParams=[KBXString(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXString(kbxParamName="mode", kbxParamIsRequired=True),
                                              KBXNumber(kbxParamName="target", kbxParamIsRequired=True, kbxParamDecimal=1)])
예제 #5
0
    def __init__(self, kbxModuleName, parentPath):
        '''
        Constructor
        '''
        super().__init__(kbxModuleName, parentPath)

        self.register_method(kbxMethodName="get_capabilities",
                             kbxMethodFunc=self.get_capabilities,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_status",
                             kbxMethodFunc=self.get_status,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxparamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_lock",
                             kbxMethodFunc=self.set_lock,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_unlock",
                             kbxMethodFunc=self.set_unlock,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_battery_level",
                             kbxMethodFunc=self.get_battery_level,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_lock_status",
                             kbxMethodFunc=self.get_lock_status,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxparamIsRequired=True)
                             ])
예제 #6
0
 def __init__(self, moduleName, parentPath):
     '''
     Constructor
     Initialize protocol class
     register method which will show in list_api through web server
     '''
     super().__init__(moduleName, parentPath)  # This is needed
     self.register_method("get_pyapi", self.get_pyapi)
     self.register_method("printString",
                          self.printString,
                          input=KBXString())
예제 #7
0
    def __init__(self, kbxModuleName, parentPath):
        '''
        Constructor
        '''
        super().__init__(kbxModuleName, parentPath)

        self.register_method(kbxMethodName="get_capabilities",
                             kbxMethodFunc=self.get_capabilities,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_status",
                             kbxMethodFunc=self.get_status,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxparamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_meter_usage",
                             kbxMethodFunc=self.get_meter_usage,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxparamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_on",
                             kbxMethodFunc=self.set_on,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_off",
                             kbxMethodFunc=self.set_off,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxparamIsRequired=True)
                             ])
예제 #8
0
    def __init__(self, kbxModuleName, parentPath):

        super(IPCameraControllerModule, self).__init__(kbxModuleName,
                                                       parentPath)

        self.register_method(kbxMethodName="get_capabilities",
                             kbxMethodFunc=self.get_capabilities,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_status",
                             kbxMethodFunc=self.get_status,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxparamIsRequired=True)
                             ])

        self.register_method(
            kbxMethodName="get_camera_stream_configuration",
            kbxMethodFunc=self.get_camera_stream_configuration,
            kbxMethodParams=[
                KBXString(kbxParamName="pairedDeviceId",
                          kbxParamIsRequired=True),
                KBXBoolean(kbxParamName="isRemoteAccess",
                           kbxParamTrueLabel="Yes",
                           kbxParamFalseLabel="No",
                           kbxParamIsRequired=False)
            ])

        self.register_method(kbxMethodName="set_snapshot",
                             kbxMethodFunc=self.set_snapshot,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_snapshot_list",
                             kbxMethodFunc=self.get_snapshot_list,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_preset_angle_list",
                             kbxMethodFunc=self.get_preset_angle_list,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_preset_angle",
                             kbxMethodFunc=self.set_preset_angle,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="presetName",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_night_mode",
                             kbxMethodFunc=self.set_night_mode,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXBoolean(kbxParamName="mode",
                                            kbxParamTrueLabel="On",
                                            kbxParamFalseLabel="Off")
                             ])

        self.register_method(kbxMethodName="set_zoom_in",
                             kbxMethodFunc=self.set_zoom_in,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_zoom_out",
                             kbxMethodFunc=self.set_zoom_out,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        stateList = [{
            "kbxItemLabel": "LEFT",
            "kbxItemValue": 0
        }, {
            "kbxItemLabel": "RIGHT",
            "kbxItemValue": 1
        }, {
            "kbxItemLabel": "UP",
            "kbxItemValue": 2
        }, {
            "kbxItemLabel": "DOWN",
            "kbxItemValue": 3
        }, {
            "kbxItemLabel": "LEFT UP",
            "kbxItemValue": 4
        }, {
            "kbxItemLabel": "RIGHT UP",
            "kbxItemValue": 5
        }, {
            "kbxItemLabel": "LEFT DOWN",
            "kbxItemValue": 6
        }, {
            "kbxItemLabel": "RIGHT DOWN",
            "kbxItemValue": 7
        }]

        self.register_method(kbxMethodName="set_camera_move",
                             kbxMethodFunc=self.set_camera_move,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXOption(kbxParamName="moveTo",
                                           kbxParamItems=stateList,
                                           kbxParamDefaultValue=0,
                                           kbxParamMaxSize=1)
                             ])
        ''' KHLEE ADD : 20140902_1756 '''
        self.register_method(kbxMethodName="set_update_login",
                             kbxMethodFunc=self.set_update_login,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="username",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="password",
                                           kbxParamIsRequired=True)
                             ])
        ''' END ADD '''
예제 #9
0
    def __init__(self, kbxModuleName, parentPath):
        '''
        Constructor
        '''
        super().__init__(kbxModuleName, parentPath)

        self.register_method(kbxMethodName="get_capabilities",
                             kbxMethodFunc=self.get_capabilities,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_all_keys",
                             kbxMethodFunc=self.get_all_keys,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_key_info",
                             kbxMethodFunc=self.set_key_info,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXNumber(kbxParamName="pageNum",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="keyId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="data",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="add_page",
                             kbxMethodFunc=self.add_page,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="pageName",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="info",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="edit_page_info",
                             kbxMethodFunc=self.edit_page_info,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXNumber(kbxParamName="pageNum",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="pageName",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="info",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="remove_key",
                             kbxMethodFunc=self.remove_key,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXNumber(kbxParamName="pageNum",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="keyId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="remove_page",
                             kbxMethodFunc=self.remove_page,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXNumber(kbxParamName="pageNum",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_keys_info",
                             kbxMethodFunc=self.set_keys_info,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXNumber(kbxParamName="pageNum",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="keysData",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="record_key",
                             kbxMethodFunc=self.record_key,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXNumber(kbxParamName="pageNum",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="keyId",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="cancel_record_key",
                             kbxMethodFunc=self.cancel_record_key,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="send_key",
                             kbxMethodFunc=self.send_key,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXNumber(kbxParamName="pageNum",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="keyId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="edit_remote_info",
                             kbxMethodFunc=self.edit_remote_info,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="info",
                                           kbxParamIsRequired=False)
                             ])
예제 #10
0
    def on_system_connected(self):
        super().on_system_connected()

        self.register_method(kbxMethodName="get_capabilities",
                             kbxMethodFunc=self.get_capabilities,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_player_pause",
                             kbxMethodFunc=self.set_player_pause,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_player_resume",
                             kbxMethodFunc=self.set_player_resume,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_player_stop",
                             kbxMethodFunc=self.set_player_stop,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_player_volume_increase",
                             kbxMethodFunc=self.set_player_volume_increase,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_player_volume_decrease",
                             kbxMethodFunc=self.set_player_volume_decrease,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_player_mute",
                             kbxMethodFunc=self.set_player_mute,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_player_unmute",
                             kbxMethodFunc=self.set_player_unmute,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_player_mute_status",
                             kbxMethodFunc=self.get_player_mute_status,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_status",
                             kbxMethodFunc=self.get_status,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_player_send_key",
                             kbxMethodFunc=self.set_player_send_key,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="keyCode",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_player_play_link",
                             kbxMethodFunc=self.set_player_play_link,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="link",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="mediaType",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="title",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="get_recently_played_list",
                             kbxMethodFunc=self.get_recently_played_list,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(
            kbxMethodName="set_player_play_recently_played",
            kbxMethodFunc=self.set_player_play_recently_played,
            kbxMethodParams=[
                KBXString(kbxParamName="pairedDeviceId",
                          kbxParamIsRequired=True),
                KBXString(kbxParamName="playbackArgs", kbxParamIsRequired=True)
            ])
예제 #11
0
    def __init__(self, kbxModuleName, parentPath):
        '''
        Constructor
        '''
        super().__init__(kbxModuleName, parentPath)

        self.register_method(kbxMethodName="get_capabilities",
                             kbxMethodFunc=self.get_capabilities,
                             kbxMethodParams=[KBXString(kbxParamName="pairedDeviceId", kbxParamIsRequired=True)])

        self.register_method(kbxMethodName="get_status",
                             kbxMethodFunc=self.get_status,
                             kbxMethodParams=[KBXString(kbxParamName="pairedDeviceId", kbxparamIsRequired=True)])

        self.register_method(kbxMethodName="set_on",
                             kbxMethodFunc=self.set_on,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXNumber(kbxParamName="transitionTime", kbxParamIsRequired=False)])

        self.register_method(kbxMethodName="set_off",
                             kbxMethodFunc=self.set_off,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXNumber(kbxParamName="transitionTime", kbxParamIsRequired=False)])

        self.register_method(kbxMethodName="set_brightness",
                             kbxMethodFunc=self.set_brightness,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXRange(kbxParamName="brightness", kbxParamMinValue=0, kbxParamMaxValue=255, kbxParamIsRequired=True),
                                              KBXNumber(kbxParamName="transitionTime", kbxParamIsRequired=False)])

        self.register_method(kbxMethodName="set_hue",
                             kbxMethodFunc=self.set_hue,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXRange(kbxParamName="hue", kbxParamIsRequired=True, kbxParamMinValue=0, kbxParamMaxValue=65535),
                                              KBXNumber(kbxParamName="transitionTime", kbxParamIsRequired=False)])

        self.register_method(kbxMethodName="set_saturation",
                             kbxMethodFunc=self.set_saturation,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXRange(kbxParamName="saturation", kbxParamMinValue=0, kbxParamMaxValue=255, kbxParamIsRequired=True),
                                              KBXNumber(kbxParamName="transitionTime", kbxParamIsRequired=False)])

        self.register_method(kbxMethodName="set_color_rgb",
                             kbxMethodFunc=self.set_color_rgb,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXColor(kbxParamName="color", kbxParamIsRequired=True),
                                              KBXNumber(kbxParamName="transitionTime", kbxParamIsRequired=False)])
        
        self.register_method(kbxMethodName="set_color_hsb",
                             kbxMethodFunc=self.set_color_hsb,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXHSBColor(kbxParamName="color", kbxParamIsRequired=True),
                                              KBXNumber(kbxParamName="transitionTime", kbxParamIsRequired=False)])
        

        self.register_method(kbxMethodName="set_color_temperature",
                             kbxMethodFunc=self.set_color_temperature,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True),
                                              KBXNumber(kbxParamName="ct", kbxParamIsRequired=True),
                                              KBXNumber(kbxParamName="transitionTime", kbxParamIsRequired=False)])

        self.register_method(kbxMethodName="get_hue_state",
                             kbxMethodFunc=self.get_hue_state,
                             kbxMethodParams=[KBXNumber(kbxParamName="pairedDeviceId", kbxParamIsRequired=True)])
예제 #12
0
    def __init__(self, kbxModuleName, parentPath):
        super().__init__(kbxModuleName, parentPath)

        self.register_module(
            DimmerControllerModule("dimmer_controller",
                                   self.get_abs_module_path()))
        self.register_module(
            DimmerStepperControllerModule("dimmer_stepper_controller",
                                          self.get_abs_module_path()))
        self.register_module(
            DoorLockControllerModule("door_lock_controller",
                                     self.get_abs_module_path()))
        self.register_module(
            HornControllerModule("horn_controller",
                                 self.get_abs_module_path()))
        self.register_module(
            HueControllerModule("hue_controller", self.get_abs_module_path()))
        self.register_module(
            IPCameraControllerModule("ip_camera_controller",
                                     self.get_abs_module_path()))
        self.register_module(
            MediaPlayerControllerModule("media_player_controller",
                                        self.get_abs_module_path()))
        self.register_module(
            PowerStripControllerModule("power_strip_controller",
                                       self.get_abs_module_path()))
        self.register_module(
            SensorControllerModule("sensor_controller",
                                   self.get_abs_module_path()))
        self.register_module(
            SpeakerControllerModule("speaker_controller",
                                    self.get_abs_module_path()))
        self.register_module(
            SwitchControllerModule("switch_controller",
                                   self.get_abs_module_path()))
        self.register_module(
            SwitchNoStatusControllerModule("switch_no_status_controller",
                                           self.get_abs_module_path()))
        self.register_module(
            TrackerControllerModule("tracker_controller",
                                    self.get_abs_module_path()))
        self.register_module(
            ThermostatControllerModule("thermostat_controller",
                                       self.get_abs_module_path()))
        self.register_module(
            VirtualRemoteControlControllerModule(
                "virtual_remote_control_controller",
                self.get_abs_module_path()))
        self.register_module(
            VirtualActivityControllerModule("virtual_activity_controller",
                                            self.get_abs_module_path()))

        self.register_method(kbxMethodName="set_paired_devices_scan",
                             kbxMethodFunc=self.set_paired_devices_scan,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="get_supported_protocol_list",
                             kbxMethodFunc=self.get_supported_protocol_list)

        self.register_method(kbxMethodName="set_device_scan",
                             kbxMethodFunc=self.set_device_scan,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="protocolId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="rescan",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="data",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="set_device_scan_stop",
                             kbxMethodFunc=self.set_device_scan_stop,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="protocolId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="data",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="get_device_list",
                             kbxMethodFunc=self.get_device_list,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="protocolId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="data",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="set_device_pair",
                             kbxMethodFunc=self.set_device_pair,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="protocolId",
                                           kbxParamIsRequired=True),
                                 KBXNumber(kbxParamName="deviceId",
                                           kbxParamIsRequired=False),
                                 KBXNumber(kbxParamName="locationId",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="get_paired_device_list",
                             kbxMethodFunc=self.get_paired_device_list,
                             kbxMethodParams=[
                                 KBXRange(kbxParamName="offset",
                                          kbxParamMinValue=1,
                                          kbxParamMaxValue=1000,
                                          kbxParamStep=1,
                                          kbxParamDefaultValue=1,
                                          kbxParamDecimal=False),
                                 KBXRange(kbxParamName="limit",
                                          kbxParamMinValue=1,
                                          kbxParamMaxValue=50,
                                          kbxParamStep=1,
                                          kbxParamDefaultValue=50,
                                          kbxParamDecimal=False),
                                 KBXNumber(kbxParamName="protocolId",
                                           kbxParamIsRequired=False),
                                 KBXNumber(kbxParamName="deviceTypeId",
                                           kbxParamIsRequired=False),
                                 KBXBoolean(kbxParamName="enable",
                                            kbxParamIsRequired=False),
                                 KBXNumber(kbxParamName="locationId",
                                           kbxParamIsRequired=False),
                                 KBXBoolean(kbxParamName="cachedDTO",
                                            kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="set_device_unpair",
                             kbxMethodFunc=self.set_device_unpair,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_device_unpair_abort",
                             kbxMethodFunc=self.set_device_unpair_abort,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_group_unpair",
                             kbxMethodFunc=self.set_group_unpair,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="protocolId",
                                           kbxParamIsRequired=True),
                                 KBXNumber(kbxParamName="groupId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_paired_device_info",
                             kbxMethodFunc=self.get_paired_device_info,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_paired_device_info",
                             kbxMethodFunc=self.set_paired_device_info,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="name",
                                           kbxParamMinLength=1,
                                           kbxParamMaxLength=255,
                                           kbxParamIsRequired=True,
                                           kbxParamDefaultValue="Device Name"),
                                 KBXString(kbxParamName="description",
                                           kbxParamIsRequired=False),
                                 KBXNumber(kbxParamName="typeId",
                                           kbxParamIsRequired=True),
                                 KBXNumber(kbxParamName="deviceGroupId",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="icon",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="status",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="statusUnit",
                                           kbxParamIsRequired=False),
                                 KBXNumber(kbxParamName="locationId",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="get_device_type_list",
                             kbxMethodFunc=self.get_device_type_list,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="protocolId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_advanced_control_list",
                             kbxMethodFunc=self.get_advanced_control_list,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_advanced_setting",
                             kbxMethodFunc=self.set_advanced_setting)
예제 #13
0
    def __init__(self, kbxModuleName, parentPath):
        '''
        Constructor
        '''
        super().__init__(kbxModuleName, parentPath)

        self.register_method(kbxMethodName="get_capabilities",
                             kbxMethodFunc=self.get_capabilities,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_status",
                             kbxMethodFunc=self.get_status,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxparamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_init",
                             kbxMethodFunc=self.set_init,
                             kbxMethodParams=[
                                 KBXString(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXBoolean(kbxParamName="forceInit",
                                            kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="set_speak",
                             kbxMethodFunc=self.set_speak,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="text",
                                           kbxParamIsRequired=True,
                                           kbxParamMaxLength=100),
                                 KBXString(kbxParamName="serviceProvider",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="lang",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="set_start",
                             kbxMethodFunc=self.set_start,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="url",
                                           kbxParamIsRequired=True),
                                 KBXString(kbxParamName="name",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="album",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="artist",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="albumArt",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="urlDetails",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="urlFormat",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="set_pause",
                             kbxMethodFunc=self.set_pause,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_resume",
                             kbxMethodFunc=self.set_resume,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_stop",
                             kbxMethodFunc=self.set_stop,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_mute_status",
                             kbxMethodFunc=self.get_mute_status,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_mute_status",
                             kbxMethodFunc=self.set_mute_status,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXBoolean(kbxParamName="mute",
                                            kbxParamTrueLabel="Mute",
                                            kbxParamFalseLabel="Unmute",
                                            kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_volume",
                             kbxMethodFunc=self.get_volume,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="set_volume",
                             kbxMethodFunc=self.set_volume,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True),
                                 KBXRange(kbxParamName="volume",
                                          kbxParamMinValue=0,
                                          kbxParamMaxValue=100,
                                          kbxParamIsRequired=True)
                             ])

        self.register_method(kbxMethodName="get_now_playing_status",
                             kbxMethodFunc=self.get_now_playing_status,
                             kbxMethodIsPrivate=False,
                             kbxMethodLabel="Get Now Playing Status",
                             kbxMethodDesc="Get now playing status",
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="pairedDeviceId",
                                           kbxParamIsRequired=True)
                             ])
예제 #14
0
    def on_system_connected(self):
        super().on_system_connected()

        Logger.log_info("on_system_connected begins...")

        DebugModule.DEBUG_ON_SYSTEM_CONNECTED.append(time.time())
        self.__automationModule = AutomationModuleWrapper()

        # ID must be retrieved before timer module register groups.
        self.__get_default_group_ids()

        # ===== Register methods =====
        # APIs
        paramSection = KBXString(kbxParamName="section")
        paramLimit = KBXNumber(kbxParamName="limit", kbxParamIsRequired=False, kbxParamMinValue=0, \
                               kbxParamMaxValue=200)
        paramOffset = KBXNumber(kbxParamName="offset",
                                kbxParamIsRequired=False,
                                kbxParamMinValue=0)

        self.register_method(kbxMethodName="list_groups",
                             kbxMethodIsPrivate=True,
                             kbxMethodFunc=self.__automationModule.list_groups,
                             kbxMethodParams=[
                                 KBXNumber(kbxParamName="parentId",
                                           kbxParamIsRequired=False,
                                           kbxParamMinValue=1), paramSection
                             ])
        self.register_method(
            kbxMethodName="list_methods",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.list_methods,
            kbxMethodParams=[
                KBXNumber(kbxParamName="groupId", kbxParamMinValue=1),
                paramSection
            ])
        self.register_method(
            kbxMethodName="update_kbx_method",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.update_kbx_method,
            kbxMethodParams=[
                KBXNumber(kbxParamName="kbxMethodId", kbxParamMinValue=1)
            ])
        self.register_method(
            kbxMethodName="update_kbx_group",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.update_kbx_group,
            kbxMethodParams=[
                KBXNumber(kbxParamName="kbxGroupId", kbxParamMinValue=1)
            ])
        self.register_method(
            kbxMethodName="list_kbx_methods",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.list_kbx_methods,
            kbxMethodParams=[paramLimit, paramOffset])
        self.register_method(
            kbxMethodName="list_kbx_groups",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.list_kbx_groups,
            kbxMethodParams=[paramLimit, paramOffset])

        # Rules
        paramRuleId = KBXNumber(kbxParamName="ruleId",
                                kbxParamDecimal=0,
                                kbxParamMinValue=1)

        self.register_method(kbxMethodName="set_rule",
                             kbxMethodIsPrivate=True,
                             kbxMethodFunc=self.__automationModule.set_rule)
        self.register_method(kbxMethodName="list_rules",
                             kbxMethodIsPrivate=True,
                             kbxMethodFunc=self.__automationModule.list_rules,
                             kbxMethodParams=[paramLimit, paramOffset])
        self.register_method(kbxMethodName="get_rule",
                             kbxMethodIsPrivate=True,
                             kbxMethodFunc=self.__automationModule.get_rule,
                             kbxMethodParams=[paramRuleId])
        self.register_method(kbxMethodName="delete_rule",
                             kbxMethodIsPrivate=True,
                             kbxMethodFunc=self.__automationModule.delete_rule,
                             kbxMethodParams=[paramRuleId])
        self.register_method(
            kbxMethodName="trigger_rule",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.trigger_rule,
            kbxMethodParams=[
                paramRuleId,
                KBXBoolean(kbxParamName="checkCondition",
                           kbxParamIsRequired=False)
            ])
        self.register_method(kbxMethodName="enable_rule",
                             kbxMethodIsPrivate=True,
                             kbxMethodFunc=self.__automationModule.enable_rule,
                             kbxMethodParams=[
                                 paramRuleId,
                                 KBXBoolean(kbxParamName="enabled",
                                            kbxParamIsRequired=True)
                             ])

        # Scenes
        paramSceneId = KBXNumber(kbxParamName="sceneId",
                                 kbxParamDecimal=0,
                                 kbxParamMinValue=1)

        self.register_method(kbxMethodName="set_scene",
                             kbxMethodIsPrivate=True,
                             kbxMethodFunc=self.__automationModule.set_scene)
        self.register_method(
            kbxMethodName="execute_scene",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.execute_scene,
            kbxMethodParams=[
                paramSceneId,
                KBXString(kbxParamName="serUrl", kbxParamIsRequired=False)
            ])
        self.register_method(kbxMethodName="stop_scene",
                             kbxMethodIsPrivate=True,
                             kbxMethodFunc=self.__automationModule.stop_scene,
                             kbxMethodParams=[paramSceneId])
        self.register_method(
            kbxMethodName="delete_scene",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.delete_scene,
            kbxMethodParams=[paramSceneId])
        self.register_method(kbxMethodName="get_scene",
                             kbxMethodIsPrivate=True,
                             kbxMethodFunc=self.__automationModule.get_scene,
                             kbxMethodParams=[paramSceneId])
        self.register_method(kbxMethodName="list_scenes",
                             kbxMethodIsPrivate=True,
                             kbxMethodFunc=self.__automationModule.list_scenes,
                             kbxMethodParams=[paramOffset, paramLimit])

        # Scene Execution Results
        paramSerId = KBXString(kbxParamName="serId")

        self.register_method(
            kbxMethodName="get_scene_execution_result",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.get_scene_execution_result,
            kbxMethodParams=[paramSerId])
        self.register_method(kbxMethodName="retry_scene_execution_result_item",
                             kbxMethodIsPrivate=True,
                             kbxMethodFunc=self.__automationModule.
                             retry_scene_execution_result_item,
                             kbxMethodParams=[
                                 paramSerId,
                                 KBXNumber(kbxParamName="seriIndex",
                                           kbxParamIsRequired=False,
                                           kbxParamMinValue=0)
                             ])
        self.register_method(
            kbxMethodName="list_scene_execution_results",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.list_scene_execution_results,
            kbxMethodParams=[paramOffset, paramLimit])
        self.register_method(kbxMethodName="delete_scene_execution_result",
                             kbxMethodIsPrivate=True,
                             kbxMethodFunc=self.__automationModule.
                             delete_scene_execution_result,
                             kbxMethodParams=[paramSerId])

        # Favorited Scenes
        self.register_method(
            kbxMethodName="set_favorited_scene",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.set_favorited_scene,
            kbxMethodParams=[
                paramSceneId,
                KBXNumber(kbxParamName="prevSceneId",
                          kbxParamIsRequired=False,
                          kbxParamDecimal=0,
                          kbxParamMinValue=1)
            ])
        self.register_method(
            kbxMethodName="delete_favorited_scene",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.delete_favorited_scene,
            kbxMethodParams=[paramSceneId])
        self.register_method(
            kbxMethodName="list_favorited_scenes",
            kbxMethodIsPrivate=True,
            kbxMethodFunc=self.__automationModule.list_favorited_scenes,
            kbxMethodParams=[paramLimit, paramOffset])

        Logger.log_info("on_system_connected ends...")
예제 #15
0
    def __init__(self, kbxModuleName, parentPath):
        super().__init__(kbxModuleName, parentPath)
        self.__pyapi = KBXString(kbxParamName="pyapi",
                                 kbxParamIsRequired=False)
        self.__offset = KBXNumber(kbxParamName="offset",
                                  kbxParamIsRequired=False)
        self.__limit = KBXNumber(kbxParamName="limit",
                                 kbxParamIsRequired=False)

        self.register_method(kbxMethodName="get_locations",
                             kbxMethodFunc=self.get_locations,
                             kbxMethodParams=[
                                 self.__pyapi, self.__offset, self.__limit,
                                 KBXNumber(kbxParamName="zoneId",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(
            kbxMethodName="get_all_locations",
            kbxMethodFunc=self.get_all_locations,
            kbxMethodParams=[self.__pyapi, self.__offset, self.__limit])

        self.register_method(kbxMethodName="get_locations_with_devices",
                             kbxMethodFunc=self.get_locations_with_devices,
                             kbxMethodParams=[
                                 self.__pyapi, self.__offset, self.__limit,
                                 KBXBoolean(
                                     kbxParamName="showEmptyDeviceLocation",
                                     kbxParamIsRequired=False),
                                 KBXNumber(kbxParamName="zoneId",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(
            kbxMethodName="get_location_others",
            kbxMethodFunc=self.get_location_others,
            kbxMethodParams=[self.__pyapi,
                             KBXNumber(kbxParamName="zoneId")])

        self.register_method(kbxMethodName="get_zones",
                             kbxMethodFunc=self.get_zones,
                             kbxMethodParams=[
                                 self.__pyapi, self.__offset, self.__limit,
                                 KBXNumber(kbxParamName="locationId",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="get_zone_details",
                             kbxMethodFunc=self.get_zone_details,
                             kbxMethodParams=[
                                 self.__pyapi, self.__offset, self.__limit,
                                 KBXNumber(kbxParamName="zoneId")
                             ])

        self.register_method(kbxMethodName="add_location",
                             kbxMethodFunc=self.add_location,
                             kbxMethodParams=[
                                 self.__pyapi,
                                 KBXString(kbxParamName="name"),
                                 KBXString(kbxParamName="description",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="imageURL",
                                           kbxParamIsRequired=False),
                                 KBXNumber(kbxParamName="zoneId",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="add_zone",
                             kbxMethodFunc=self.add_zone,
                             kbxMethodParams=[
                                 self.__pyapi,
                                 KBXString(kbxParamName="name"),
                                 KBXString(kbxParamName="description",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="imageURL",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="locationName"),
                                 KBXString(kbxParamName="locationDesc",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="locationImageURL",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="remove_location",
                             kbxMethodFunc=self.remove_location,
                             kbxMethodParams=[
                                 self.__pyapi,
                                 KBXNumber(kbxParamName="locationId")
                             ])

        self.register_method(
            kbxMethodName="remove_zone",
            kbxMethodFunc=self.remove_zone,
            kbxMethodParams=[self.__pyapi,
                             KBXNumber(kbxParamName="zoneId")])

        self.register_method(kbxMethodName="update_location",
                             kbxMethodFunc=self.update_location,
                             kbxMethodParams=[
                                 self.__pyapi,
                                 KBXNumber(kbxParamName="locationId"),
                                 KBXString(kbxParamName="name",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="description",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="imageURL",
                                           kbxParamIsRequired=False),
                                 KBXNumber(kbxParamName="zoneId",
                                           kbxParamIsRequired=False)
                             ])

        self.register_method(kbxMethodName="update_zone",
                             kbxMethodFunc=self.update_zone,
                             kbxMethodParams=[
                                 self.__pyapi,
                                 KBXNumber(kbxParamName="zoneId"),
                                 KBXString(kbxParamName="name",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="description",
                                           kbxParamIsRequired=False),
                                 KBXString(kbxParamName="imageURL",
                                           kbxParamIsRequired=False)
                             ])