//
// Created by WJG on 2020-12-29.
//

#ifndef NEWCOSS_LIGHTJIAAPP_REQUEST_PROCESS_H
#define NEWCOSS_LIGHTJIAAPP_REQUEST_PROCESS_H

#include <string>
#include "json/json.h"

void lightjiaInterface_init();

void lightjiaAppRequest_process(const std::string& cmd, const Json::Value& data, Json::Value &resp);

void controlDevice(const Json::Value& data, Json::Value &resp);
void removeDevice(const Json::Value& data, Json::Value &resp);
void roomMsg(const Json::Value& data, Json::Value &resp);
void deleteRoom(const Json::Value& data, Json::Value &resp);
void changeDeviceLocation(const Json::Value& data, Json::Value &resp);
void changeDeviceNickName(const Json::Value& data, Json::Value &resp);
void sceneMsg(const Json::Value& data, Json::Value &resp);
void deleteSceneMsg(const Json::Value& data, Json::Value &resp);
void groupOperation(const Json::Value& data, Json::Value &resp);
void getDevices(const Json::Value& data, Json::Value &resp);
void getGroups(const Json::Value& data, Json::Value &resp);
void executeScene(const Json::Value& data, Json::Value &resp);
void sceneSwitch(const Json::Value& data, Json::Value &resp);  //情景开关
void lightSwitch(const Json::Value& data, Json::Value &resp);  //照明开关
void fourKeySwitch(const Json::Value& data, Json::Value &resp);  //四键开关
void changeRoomName(const Json::Value& data, Json::Value &resp);
void deleteGroup(const Json::Value& data, Json::Value &resp);
void modifyPanelName(const Json::Value& data, Json::Value &resp);   //修改面板名
void unbindAccount(const Json::Value& data, Json::Value &resp);   //面板和app账户解除绑定
void updateSceneList(const Json::Value& data, Json::Value &resp);  //更新场景列表
void getGwSceneList(const Json::Value& data, Json::Value &resp);   //gaffic获取本地场景列表
void pushGwScene2Cloud(const Json::Value& data, Json::Value &resp);   //gaffic获取本地场景列表

void regroupSceneFile(const Json::Value& data, Json::Value &resp);  //场景加速优化
void clearSceneGroup(const Json::Value& data, Json::Value &resp);   //取消场景加速

void queryDeviceInfo(const Json::Value& data, Json::Value &resp);   //向gaffic反馈设备状态消息。
//void modifyPanelLocation(const Json::Value& data, Json::Value &resp);
//void modifyPanelFamily(const Json::Value& data, Json::Value &resp);
//void modifyPanelPhoto(const Json::Value& data, Json::Value &resp);
//void deletePanel(const Json::Value& data, Json::Value &resp);


#endif //NEWCOSS_LIGHTJIAAPP_REQUEST_PROCESS_H
