#ifndef __CMD_H
#define __CMD_H

/******************************************************************
** Copyright (c) 2009  Wuhan xiyun Technology Co., Ltd .
** FileName:	cmd.h
** Author:	 	chw
** Mail:		
** Editor:		chw
** Date:		2020-12-03 13:34
** Version: 	2020-12-03
** File Description:  mqtt 服务发送业务指令
** Param explain: char* mac : 网关MAC地址
   char* subMac             ：子节点MAC地址
  MQTTAsync_message *pubmsg : 消息结构体
  MYSQL *_db                ：数据库连接
******************************************************************/
list_node* file_list; //文件链表

//服务器下发时间同步
int  SendNTP(char *mac);

//校验协议长度
int CheckMsgLength(char *topicName,MQTTAsync_message *pubmsg,int protocal_length);

//备份服务器ip发送
int SendBakIP(char *mac , MYSQL *_db);

//节点信息表发送
int SendSubInfo(char *mac , MYSQL *_db);

//额定电压发送
int SendRatedVoltage(char *mac,char *subMac,MYSQL *_db);

//额定电流发送
int SendRatedCurrent(char *mac,char *subMac,MYSQL *_db);

//远程重启
int SendRestart(char *mac);

//设备恢复出厂设置
int SendFactoryReset(char *mac);

//服务器跳转
int SendServerJump(char *mac,MYSQL *_db);

//ota升级
int SendRemoteUpgrade(char *mac,MYSQL *_db);

//远程手动调光
int SendManualDimming(char* mac,int group,int luminance,int dimmingType);

//远程开关控制
int SendSwitchControl(char* mac,char* subMac,int type,int on_off);

//远程开关编组控制
int SendSwitchGroupControl(char* mac,int group,int type,int on_off);

//删除子节点
int SendDeleteNode(char* mac,char* subMac,int nodeType);

//设备数据上传间隔设置
int SendDataInterval(char* mac,MYSQL *_db);

//开关时间段设置
int SendOnOffTime(char* mac,char* subMac,MYSQL *_db);

//多个开关时间段设置,新增20201228
int SendOnOffTimeMuilt(char* mac,char* subMac,MYSQL *_db);

//获取子节点版本号
int SendGetSubVersion(char* mac,char* subMac);

//开关控制模式设置从数据库info表
int SendSwitchModeFromDB(char* mac,char* subMac,MYSQL* _db);

//调光节点分组设置
int SendDimmingNodeGroup(char* mac,char* subMac,MYSQL* _db);

//调光节点分组数据修改
int SendDimmingNodeGroupModify(char* mac,int group,MYSQL* _db);

//传感器报警阈值设置
int SendSensorThreshold(char* mac,MYSQL* _db);

//电表节点分组设置
//int ();

#endif /* #ifndef __CMD_H */