From f946a62d3921e86b44ff8e2973138304b9cd53cd Mon Sep 17 00:00:00 2001 From: chenshijun <csj_sky@126.com> Date: 星期二, 16 四月 2019 16:36:32 +0800 Subject: [PATCH] 解决修改参数和推流画面跳跃问题 --- QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h | 53 ++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 46 insertions(+), 7 deletions(-) diff --git a/QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h b/QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h index 8923fdb..2656b88 100755 --- a/QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h +++ b/QiaoJiaSystem/DataManagerServer/vss/controller/CamDevController.h @@ -8,6 +8,7 @@ #include "vss/model/CamDev.h" #include "VssBaseController.h" #include <mysql++.h> +#include <NsqMsgTool.hpp> using namespace std; @@ -18,15 +19,25 @@ private: /** 鎽勫儚澶磋澶囨瀯閫犲嚱鏁� */ CamDevController() {} + public: /** 鎽勫儚澶磋澶囧崟渚嬫ā寮� */ - static CamDevController* instance() { + static CamDevController *instance() { static CamDevController instance; return &instance; } + +private: + //shared_ptr + BasicMsg::Nsq::NsqMsgProducer *_nsqMsgProducer; +public: + void nsqMsgProducerSet(BasicMsg::Nsq::NsqMsgProducer *nsqMsgProducer){ + _nsqMsgProducer = nsqMsgProducer; + } + public: /** 娉ㄥ唽{label}http鏈嶅姟 */ - void registerHttpServices(HttpSrvRetRecieve& _HttpSrvRetRecieve) { + void registerHttpServices(HttpSrvRetRecieve &_HttpSrvRetRecieve) { _HttpSrvRetRecieve.setInfo("^/addCamDev$", "POST", std::bind(&CamDevController::addCamDev, this, @@ -54,6 +65,7 @@ std::placeholders::_3, std::placeholders::_4)); } + public: /** 娣诲姞鎽勫儚澶磋澶� */ std::string addCamDev(std::string ip, unsigned int port, std::string content, PResponse &response) { @@ -68,11 +80,17 @@ Json::Value idJsonValue = requestJsonValue[CamDev_id]; if (idJsonValue.type() != Json::ValueType::nullValue) { camDevBuilder.addid(std::stoi((idJsonValue.asString()))); + } else { + ERR("CamDev_id is null " << " is null"); +// return responseJsonValue.toStyledString(); } Json::Value cam_dev_idJsonValue = requestJsonValue[CamDev_cam_dev_id]; if (cam_dev_idJsonValue.type() != Json::ValueType::nullValue) { camDevBuilder.addcam_dev_id((cam_dev_idJsonValue.asString())); + } else { + ERR(CamDev_cam_dev_id << " is null"); + return responseJsonValue.toStyledString(); } Json::Value nameJsonValue = requestJsonValue[CamDev_name]; @@ -154,6 +172,18 @@ } } + + { + std::string topic = "VideoToImageMulth"; + std::string topic1 = "VideoAnalysFromHC"; + Json::Value json_cfg; + json_cfg["cam_del"] = content; + std::string msg = json_cfg.toStyledString(); + DBG("msg:" << msg); + _nsqMsgProducer->Publish(topic, (void *) (&msg)); + _nsqMsgProducer->Publish(topic1, (void *) (&msg)); + } + return responseJsonValue.toStyledString(); } @@ -232,9 +262,22 @@ camDevBuilder.addtype((typeJsonValue.asString())); } if (idJsonValue.type() != Json::ValueType::nullValue) { - responseJsonValue = CamDevSqliteDao::instance()->updateCamDev(camDevBuilder.buildCamDevMap(), "id", idJsonValue.asString()); + responseJsonValue = CamDevSqliteDao::instance()->updateCamDev(camDevBuilder.buildCamDevMap(), "id", + idJsonValue.asString()); } } + + { + std::string topic = "VideoToImageMulth"; + std::string topic1 = "VideoAnalysFromHC"; + Json::Value json_cfg; + json_cfg["cam_edit"] = content; + std::string msg = json_cfg.toStyledString(); + DBG("msg:" << msg); + _nsqMsgProducer->Publish(topic, (void *) (&msg)); + _nsqMsgProducer->Publish(topic1, (void *) (&msg)); + } + return responseJsonValue.toStyledString(); } @@ -405,10 +448,6 @@ return responseJsonValue.toStyledString(); } }; - - - - #endif //CAMDEV_CONTROLLER_H -- Gitblit v1.8.0