Extended Function Interfaces

Configure the Locks Status

Command Direction Description
lock_write Server → Controller Enable air conditioning parameter lock.

Request Example

{ 
    "sn": 14, 
    "cmd": "lock_write", 
    "uuid": "fa0000014000012402201180001015134", 
    "body": {   
        "addrs": [ 
            "16-1-1-1", 
            "16-1-2-1" 
        ], 
        "onOffLock": 1,  
        "onOff": 1, 
        "modeLock": 1, 
        "workMode": 1, 
        "tempLock": 1,   
        "tempSetLo": 24, 
        "tempSetHi": 26, 
        "fanSpeedLock": 1, 
        "fanSpeed": 0,  
        "fanDirectLock": 1, 
        "fanDirect": 0 
    } 
}

Response Example

{
    "sn": 14,
    "cmd": "lock_write",
    "uuid": "fa0000014000012402201180001015134",
    "body": {
        "errorCode": 0 
    }
}

Parameters

Name Description
addrs Target air conditioner address.
onOffLock Power lock: 0 = Not locked; 1 = Lock
onOff Power status to be locked.
modeLock Mode lock: 0 = Not locked; 1 = Lock
workMode Working mode(s) to be locked
  • 1 = Cool
  • 2 = Heat
  • 3 = Ventilation
  • 4 = Dehumidification
  • 10 = Heat/Ventilation
  • 11 = Cool/Ventilation
  • 12 = Cool/Dehumidification
  • 13 = Cool/Dehumidification/Ventilation
  • 14 = Dehumidification/Ventilation
tempLock Temperature lock: 0 = Not locked; 1 = Lock
tempSetLo Minimum set temperature, range: 16–31°C.
tempSetHi Maximum set temperature, range: 16–31°C.
fanSpeedLock Fan speed lock. Reserved.
fanSpeed Fan speed value.
fanDirectLock Airflow direction lock. Reserved.
fanDirect Airflow direction value.
Response Filed
Name Description
errorCode 0: Command received successfully. For other values, see ErrorCode.

Query the Lock Status

Command Direction Description
lock_status_read Server → Controller Query the air conditioning lock status.
  • all: All air conditioning
  • addrs: Specified air conditioning

Request Example

{
    "sn": 15,
    "cmd": "lock_status_read",
    "uuid": "fa0000014000012402201180001015134",
    "body": {
        "cmd": "all" 
    }
}

Response Example

{ 
    "sn": 15, 
    "cmd": "lock_status_read", 
    "uuid": "fa0000014000012402201180001015134", 
    "body": { 
        "cmd": "all", 
        "inUnitMessages": [  
            { 
                "a": "1-1-1-1",    
                "ol": 0,  
                "onOff": 1, 
                "ml": 0,  
                "workMode": 1, 
                "tl": 0,  
                "tsl": 24, 
                "tsh": 26, 
                "t": 1  
            }, 
        ], 
    } 
}

Parameters

Name Description
cmd all or addrs.
addrs Specified air conditioning addrs.
Response Filed
Name Description
a Air conditioner address.
ol Power lock status.
onOff Locked power status.
ml Mode lock status.
workMode Locked working mode.
tl Temperature lock status.
tsl Minimum set temperature.
tsh Maximum set temperature.
t Scheduled status: 0 = No, 1 = Yes.

Configure Automatic Reporting of Lock Status

Command Direction Description
lock_report_config Server → Controller Enable or disable periodic reporting of air conditioner lock status and configures the reporting interval.

Request Example

{ 
    "sn": 16, 
    "cmd": "lock_report_config", 
    "uuid": "fa0000014000012402201180001015134", 
    "body": {         
        "act": 0,      
        "interval": 300    
    }  
}

Response Example

{
    "sn": 16,
    "cmd": "lock_report_config",
    "uuid": "fa0000014000012402201180001015134",
    "body": {
        "errorCode": 0 
    }
}
{ 
        "sn": 0, 
        "cmd": "lock_status_report", 
        "uuid": "fa0000014000012402201180001015134", 
        "body": { 
                "cmd":"addrs", 
                "inUnitMessages": [ 
                { 
                    "a": "1-1-1-1",    
                    "ol": 0, 
                    "ml": 0,  
                    "tl": 0,  
                    "tsl": 24, 
                    "tsh": 26,  
                    "fsl": 0, 
                    "fdl": 0, 
                }
            ]
     } 
}

Parameters

Name Description
act 0 = Disabled (default), 1 = Enabled.
interval Reporting interval, Unit: s. Default: 300s.
Response Filed
Name Description
errorCode 0: Command received successfully. For other values, see ErrorCode.

Query Periodic Lock Status Reporting Configuration

Command Direction Description
lock_report_config_read Server → Controller Query whether periodic lock status reporting is enabled and the reporting interval.

Request Example

{ 
    "sn": 17, 
    "cmd": "lock_report_config_read", 
    "uuid": "fa0000014000012402201180001015134", 
    "body": {
    } 
}

Response Example

{
    "sn": 17,
    "cmd": "lock_report_config_read",
    "uuid": "fa0000014000012402201180001015134",
    "body": {
            "act": 0,        
            "interval": 300  
            "errorCode":0    
            }
}

Response Filed

Name Description
act 0 = Disabled, 1 = Enabled.
interval Reporting interval, Unit: s.
errorCode 0: Command received successfully. For other values, see ErrorCode.

Configure Automatic Reporting of Lock Status Changes

Command Direction Description
lock_update_config Server → Controller Enable or disable automatic reporting of lock status changes.
lock_status_report Controller → Server Report air conditioner lock status changes.

Request Example

{ 
    "sn": 18, 
    "cmd": "lock_update_config", 
    "uuid": "fa0000014000012402201180001015134", 
    "body": {   
        "auto": 1, 
    }  
}

Response Example

{
    "sn": 18,
    "cmd": "lock_update_config",
    "uuid": "fa0000014000012402201180001015134",
    "body": {
        "errorCode": 0 
    }
}
{ 
        "sn": 0, 
        "cmd": "lock_status_report", 
        "uuid": "fa0000014000012402201180001015134", 
        "body": { 
                "cmd":"addrs", 
                "inUnitMessages": [  
                {  
                    "a": "1-1-1-1",     
                    "ol": 0,  
                    "ml": 0, 
                    "tl": 0,  
                    "tsl": 24, 
                    "tsh": 26,  
                    "fsl": 0, 
                    "fdl": 0, 
                }
            ]
     } 
}

Parameters

Name Description
auto 0 = Disabled, 1 = Enabled (default).
Response Filed
Name Description
errorCode 0: Command received successfully. For other values, see ErrorCode.

Query Automatic Reporting of Lock Status Changes

Command Direction Description
lock_update_config_read Server → Controller Query whether automatic reporting of lock status changes is enabled.

Request Example

{ 
    "sn": 19, 
    "cmd": "lock_update_config_read", 
    "uuid": "fa0000014000012402201180001015134", 
    "body": {
    } 
}

Response Example

{
    "sn": 19,
    "cmd": "lock_update_config_read",
    "uuid": "fa0000014000012402201180001015134",
    "body": {
            "auto": 1,       
            "errorCode":0    
            }
}

Response Filed

Name Description
auto 0 = Disabled, 1 = Enabled.
errorCode 0: Command received successfully. For other values, see ErrorCode.

Configure Batch Lock Status

Command Direction Description
lock_write_batch Server → Controller Batch configure the lock status of air conditioners.

Request Example

{ 
    "sn": 42, 
    "cmd": "lock_write_batch", 
    "uuid": "fa0000014000012402201180001015134", 
    "body": {   
        “batchCmd”: [ 
                        {
                        "addrs": "16-1-1-1", 
                                "onOffLock": 0, 
                                "onOff": 1, 
                                "modeLock": 0, 
                                "workMode": 1, 
                                "tempLock": 0, 
                                "tempSetLo": 24,  
                                "tempSetHi": 26, 
                                "fanSpeedLock": 0, 
                                "fanSpeed": 0,  
                                "fanDirectLock": 0, 
                                "fanDirect": 0 
                        },
                        {
                        "addrs": "16-1-1-2", 
                                "onOffLock": 0, 
                                "onOff": 1, 
                                "modeLock": 0, 
                                "workMode": 1, 
                                "tempLock": 0, 
                                "tempSetLo": 24, 
                                "tempSetHi": 26, 
                                "fanSpeedLock": 0, 
                                "fanSpeed": 0,  
                                "fanDirectLock": 0,
                                "fanDirect": 0 
                        }
                    ]
            } 
}
Response Example
{
    "sn": 42,
    "cmd": "lock_write_batch",
    "uuid": "fa0000014000012402201180001015134",
    "body": {
            "errorCode": 0 
    }
}
Parameters
Name Description
batchCmd Multiple Lock Commands
addrs Target air conditioner address.
onOffLock Power lock: 0 = Not locked; 1 = Lock
onOff Power status to be locked.
modeLock Mode lock: 0 = Not locked; 1 = Lock
workMode Working mode(s) to be locked
  • 1 = Cool
  • 2 = Heat
  • 3 = Ventilation
  • 4 = Dehumidification
  • 10 = Heat/Ventilation
  • 11 = Cool/Ventilation
  • 12 = Cool/Dehumidification
  • 13 = Cool/Dehumidification/Ventilation
  • 14 = Dehumidification/Ventilation
tempLock Temperature lock: 0 = Not locked; 1 = Lock
tempSetLo Minimum set temperature, range: 16–31°C.
tempSetHi Maximum set temperature, range: 16–31°C.
fanSpeedLock Fan speed lock. Reserved.
fanSpeed Fan speed value.
fanDirectLock Airflow direction lock. Reserved.
fanDirect Airflow direction value.
Response Fields
Name Description
errorCode 0: Command received successfully. For other values, see ErrorCode.

Create a Schedule

Command Detection Description
schedule_write Server → Controller Writes scheduled tasks. Supports up to 64 tasks.

Request Example

{ 
    "sn": 20, 
    "cmd": "schedule_write", 
    "uuid": "fa0000014000012402201180001015134", 
    "body": {       
        "schNo": 1, 
        "addrs": [ 
            "1-1-1-1", 
            "1-1-1-2" 
        ],  
        "pointTime": "7:30",
        "startDate": "2021-04-01", 
        "endDate": "2021-04-10", 
        "exclDate": [ 
            "2021-04-03", 
            "2021-04-05" 
        ],  
        "scheInfo": { 
            "action": 1, 
            "onOff": 1,     
            "tempSet": 24,  
            "workMode": 1, 
            "fanSpeed": 1, 
            "fanDirect": 1, 
            "onOffLock": 1, 
            "modeLock": 1, 
            "tempLock": 1, 
            "tempSetLo": 24, 
            "tempSetHi": 26, 
            "fanSpeedLock": 0, 
            "fanDirectLock": 0 
        } 
    } 
}

Response Example

{
    "sn": 20,
    "cmd": "schedule_write",
    "uuid": "fa0000014000012402201180001015134",
    "body": {
        "errorCode": 0 
    }
}

Parameters

Name Description
schNo Scheduled ID.
addrs Target air conditioner address.
pointTime Execution time.
startDate / endDate Effective date range.
exclDate List of excluded dates.
scheInfo.action
  • 0 = Power off
  • 1 = Power on
  • 2 = Power off and lock
  • 3 = Unlock power control
  • 4 = Unlock and power on
  • 7 = Apply lock settings
scheInfo.Control Used when action = 1. Includes onOff, tempSet, workMode, fanSpeed, and fanDirect.
scheInfo.Lock Used when action = 7. Includes onOffLock, modeLock, tempLock, tempSetLo/Hi, etc.
Note: When enabling the lock function, adjust any non-compliant settings first. For example, to lock the air conditioner in the off state, turn it off before applying the lock.
Response Filed
Name Description
errorCode 0: Command received successfully. For other values, see ErrorCode.

Query the Schedule

Command Detection Description
schedule_read Server → Controller Query the air conditioner schedule information.

Request Example

{ 
    "sn": 23, 
    "cmd": "schedule_read", 
    "uuid": "fa0000014000012402201180001015134", 
    "body": { 
        "schNos": [1],  
    } 
}

Response Example

{
    "sn": 23,
    "cmd": "schedule_read",
    "uuid": "fa0000014000012402201180001015134",
    "body": {
        "items": [
            {
                "schNo": 1, 
                "addrs": [
                    "1-1-1-1",
                    "1-1-1-2"
                ],
                "type": "v", 
                "pointTime": "7:30", 
                "startDate": "2021-04-01",
                "endDate": "2021-04-10",
                "scheInfo": {
                    "action": 1, 
                    "onOff": 1, 
                    "tempSet": 24, 
                    "workMode": 1, 
                    "fanSpeed": 1, 
                    "fanDirect": 1, 
                    "onOffLock": 1, 
                    "modeLock": 1, 
                    "tempLock": 1, 
                    "tempSetLo": 24, 
                    "tempSetHi": 26 
                }
            },
        ]
    }
}

Parameters

Name Description
schNos Scheduled task ID. Empty array queries all scheduled tasks.
Response Filed
Name Description
schNo Scheduled task ID
addrs Air conditioner address
type v: Refrigerant-system air conditioner
pointTime Execution time.
startDate/endDate Effective date range.
scheInfo Scheduled action parameters.

Delete a Schedule

Command Detection Description
schedule_delete Server → Controller Delete the air conditioning schedule.

Request Example

{ 
    "sn": 24, 
    "cmd": "schedule_delete", 
    "uuid": "fa0000014000012402201180001015134", 
    "body": { 
        "schNos": [1],  
    } 
}

Response Example

{
    "sn": 24,
    "cmd": "schedule_delete",
    "uuid": "fa0000014000012402201180001015134",
    "body": {
        "errorCode": 0 
    }
}

Parameters

Name Description
schNos Scheduled task ID. Empty array queries all scheduled tasks.
Response Filed
Name Description
errorCode 0: Command received successfully. For other values, see ErrorCode.

Query the Runtime

Command Direction Description
energy_read Server → Controller Query the accumulated working time within the specified time range.

Request Example

{
    "sn": 27,
    "cmd": "energy_read",                                
    "uuid": "fa0000014000012402201180001015134",
    "body": {
            "runtime": {        
                "timeRange": "202102031800~202102032000",  
                "addrs": [      
                    "1-1-8-9", 
                    "1-1-8-10"
            ],
             "si":"s"    
        }
    }
}
Response Example
{
    "sn": 27,
    "cmd": "energy_read",                 
    "uuid": "fa0000014000012402201180001015134",
    "body": {
        "sn": "a",                       
        "timeRange": "202102031800~202102032000", 
        "runtime": [                     
            {
                "a": "1-1-8-9",           
                "i": [
                    {
                    "r":"20"        
                    }
                    ],
                "C":"71"           
            },
            {
                "a": "1-1-8-10",
                "i": [
                    {
                    "r":"20"      
                    }
                    ],
                "C":"71"          
            }
        ]
    }
}
Parameters
Name Description
timeRange Query time range. The start and end times must be on the hour.
addrs Indoor unit address. An empty array queries all indoor units.
si Equivalent flag bit. Include this field in the first request packet only. Continue sending read commands until the final packet is received. Do not include "si":"s" in subsequent requests.
Response Fields
Name Description
sn Packet sequence flag for segmented transmission. "a" indicates a non-final packet; "e" indicates the final packet.
timeRange Query time range.
a Indoor unit address.
r Accumulated operating time within the specified period, Unit; min.
C Indoor unit capacity.

Query the Equivalent Data

Command Key Direction Description
energy_read shareEquivalents Server → Controller Query equivalent value information for air conditioners within the specified time range.

Request Example

{
    "sn": 28,
    "cmd": "energy_read", 
    "uuid": "fa0000014000012402201180001015134",
    "body": {
        "shareEquivalents": {        
            "timeRange": "202102031800~202102032000",        
            "addrs": [   
                "1-1-8-9",
                "1-1-8-10"
            ],
             "si":"s"    
        }
    }
}
Response Example
{
    "sn": 28,
    "cmd": "energy_read",        
    "uuid": "fa0000014000012402201180001015134",
    "body": {
        "sn": "a",                 
        "timeRange": "202102031800~202102032000", 
        "shareEquivalents": [                  
            {
                "a": "1-1-8-9",                  
                "i": [
                    {
                        "t": "202102032000", 
                        "X": "8.6"          
                    }
                ],
                "C":"71"     
            },
            {
                "a": "1-1-8-10",
                "i": [
                    {
                        "t": "202102032000", 
                        "X": "65.2"          
                    }
                ],
                "C":"71"     
            }
        ]
    }
}
Parameters
Name Description
timeRange Query time range. The start and end times must be on the hour.
addrs Indoor unit address. An empty array queries all indoor units.
si Equivalent flag bit. Include this field in the first request packet only. Continue sending read commands until the final packet is received. Do not include "si":"s" in subsequent requests.
Response Fields
Name Description
sn Packet sequence flag for segmented transmission. "a" indicates a non-final packet; "e" indicates the final packet.
timeRange Query time range.
a Indoor unit address.
t Query end time.
X Sum of equivalent values within the specified time range.
C Indoor unit capacity.

Query the Operation Logs

Command Direction Description
energy_read Server → Controller Query the air conditioner operation records.

Request Example

{
    "sn": 35,
    "cmd": "energy_read",                                
    "uuid": "fa0000014000012402201180001015134",
    "body": {
            "operateLogs": {                          
            "timeRange": "202102031800~202102031900",  
            "addrs": [               
                    "1-1-8-9",        
                    "1-1-8-10"       
            ]
        }
    }
}

Response Example

{
    "sn": 35,
    "cmd": "energy_read",                      
    "uuid": "fa0000014000012402201180001015134",
    "body": {
    "timeRange": "202102031800~202102031900",
        "operateLogs": [                      
            {                                
                "a": "1-1-8-9",               
                "i": [
                    {
                        "t": "202102031800",  
                        "o": 1,               
                        "ts": 24,             
                        "w": 1,               
                        "fs": 1,              
                        "fd": 1,              
                        "a": ""               
                    },
                    {
                        "t": "202102031805",
                        "o": 1,
                        "ts": 24,
                        "w": 1,
                        "fs": 1,
                        "fd": 1,
                        "a": "LOST"           
                    }
                ]
            },
            {                              
                "a": "1-1-8-10",              
                "i": [
                    {
                        "t": "202102031800",
                        "o": 1,
                        "ts": 24,
                        "w": 1,
                        "fs": 1,
                        "fd": 1,
                        "a": "U5"            
                    },
                    {
                        "t": "20210203180110",
                        "o": 1,
                        "ts": 24,
                        "w": 1,
                        "fs": 1,
                        "fd": 1,
                        "a": "6686"        
                    }
                ]
            }
        ]
    }
}
Parameters
Name Description
timeRange Query time range. The start and end times must be on the hour.
addrs Indoor unit address. An empty array queries all indoor units.
Response Fields
Name Description
timeRange Query time range.
a Indoor unit address.
t Timestamp.
o Power status.
ts Set temperature.
w Working mode.
fs Fan speed.
fd Airflow direction.
a Fault code. Empty indicates no fault, LOST indicates offline or not discovered.

Start Load Regulation

Command Direction Description
start_regulate Server → Controller Enable load control mode.

Request Example

{ 
                "sn": 38, 
                "cmd": "start_regulate", 
                "uuid": "fa0000014000012402201180001015134", 
                "body": { 
                "addrs": [  
                "1-1-1-1", 
                "1-2-1-2" 
                ], 
                "end":"2023-11-24 09:26:59", 
                "trempCtl": 0, 
                "modelCtl": 0, 
                "onOffCtl": 0 
                } 
                }
Response Example
{
                        "sn": 38,
                        "cmd": "start_regulate",
                        "uuid": "fa0000014000012402201180001015134",
                        "body": { 
                        "errorCode":0   
                        } 
                        }
Parameters
Name Description
addrs Target air conditioner address. An empty array applies to all air conditioners.
end Load control end time.
trempCtl User temperature control: 0 = Allowed, 1 = Not allowed.
modelCtl User mode control: 0 = Allowed, 1 = Not allowed.
onOffCtl User power control: 0 = Allowed, 1 = Not allowed.
Response Fields
Name Description
errorCode 0: Command received successfully. For other values, see ErrorCode.

End Load Regulation

Command Direction Description
end_regulate Server → Controller Disable load control mode.

Request Example

{ 
                "sn": 39, 
                "cmd": "end_regulate", 
                "uuid": "fa0000014000012402201180001015134", 
                "body": { 
                } 
                }
Response Example
{
                        "sn": 39,
                        "cmd": "end_regulate",
                        "uuid": "fa0000014000012402201180001015134",
                        "body": { 
                        "errorCode":0   
                        } 
                        }
Response Fields
Name Description
errorCode 0: Command received successfully. For other values, see ErrorCode.