From a2ea58c567a078bb97a9e45a56fe50df41438d22 Mon Sep 17 00:00:00 2001 From: chenshijun <csj_sky@126.com> Date: 星期一, 15 四月 2019 10:37:31 +0800 Subject: [PATCH] 整合c++ver1.3的修改代码进入该分支 --- QiaoJiaSystem/DataManagerServer/http_configserver.cpp | 105 +++++++++++++++++++++++++++++++++------------------- 1 files changed, 66 insertions(+), 39 deletions(-) diff --git a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp index 494356c..52adf80 100644 --- a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp +++ b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp @@ -1164,11 +1164,11 @@ std::string brand) const { if (brand == "haikang") { - bool ret = getHKDevSerialNumber(ip.c_str(), port, username.c_str(), passwd.c_str()); - if (!ret) { - ERR("getHKDevSerialNumber ERR"); - return false; - } +// bool ret = getHKDevSerialNumber(ip.c_str(), port, username.c_str(), passwd.c_str()); +// if (!ret) { +// ERR("getHKDevSerialNumber ERR"); +// return false; +// } //璋冪敤rtsp娴乺tsp://admin:a1234567@192.168.1.215:554/h264/ch1/main/av_stream port = 554;//TODO // std::string rtsp_url = "rtsp://" + username + ":" + passwd + "@" + ip + ":" + std::to_string(port) + @@ -1218,11 +1218,11 @@ return false;//TODO } else if (brand == "yushi") { // rtsp://admin:admin@192.168.8.8:554/video1 - bool ret = getUVDevSerialNumber(ip.c_str(), username.c_str(), passwd.c_str()); - if (!ret) { - ERR("getUVDevSerialNumber ERR"); - return false; - } +// bool ret = getUVDevSerialNumber(ip.c_str(), username.c_str(), passwd.c_str()); +// if (!ret) { +// ERR("getUVDevSerialNumber ERR"); +// return false; +// } port = 554; // std::string rtsp_url = "rtsp://" + username + ":" + passwd + "@" + ip + ":" + std::to_string(port) + @@ -1294,6 +1294,7 @@ if (m_rtmp[ip].userCounter == 0) { m_rtmp[ip].appPC->stop(); m_rtmp[ip].appPC->wait(); + delete m_rtmp[ip].appPC; m_rtmp.erase(ip); } } @@ -1318,28 +1319,41 @@ } Json::Value value; if (value_reader.isMember("id")) { - if (value_reader["id"].isNull()) return "{\"ret_status\": \"id鍐呭鏈夎锛岃妫�鏌ワ紒\"}"; - value["connect_status"] = "True"; - std::string rtmp_url = appConfig.getStringProperty("srsAddr"); - rtmp_url.append("cam").append(value_reader["id"].asCString()); - value["video_url"] = rtmp_url; - out = value.toStyledString(); - - } else { - //TODO - //璋冪敤rtsp娴乺tsp://admin:a1234567@192.168.1.215:554/h264/ch1/main/av_stream + if (value_reader["id"].isNull()) { + //鏈湴瑙嗛婧� 绗竴娆℃祴璇曡繛鎺� + //TODO + //璋冪敤rtsp娴乺tsp://admin:a1234567@192.168.1.215:554/h264/ch1/main/av_stream // std::string rtsp_url = "rtsp://" + username + ":" + passwd + "@" + ip + ":" + std::to_string(port) + "/h264/ch1/main/av_stream"; - bool ret = cam_connect_video_start(value_reader["str_ip"].asString(), value_reader["n_port"].asInt(), \ + bool ret = cam_connect_video_start(value_reader["str_ip"].asString(), value_reader["n_port"].asInt(), \ value_reader["str_username"].asString(), value_reader["str_password"].asString(), \ value_reader["str_brand"].asString()); - if (!ret) { + if (!ret) { + return "{\"ret_status\": \"鍐呭鏈夎锛岃妫�鏌ワ紒\"}"; + } + std::string rtmp_url = m_rtmp[value_reader["str_ip"].asCString()].appPC->getRtmp(); + value["connect_status"] = "True"; + value["video_url"] = rtmp_url; + out = value.toStyledString(); + } else if (!value_reader["type"].isNull()) { + + value["connect_status"] = "True"; + std::string rtmp_url = appConfig.getStringProperty("srsAddr"); + rtmp_url.append("cam").append(value_reader["id"].asCString()); + value["video_url"] = rtmp_url; + out = value.toStyledString(); + { + std::string topic = "VideoToImageMulth"; + Json::Value json_cfg; + json_cfg["cam_startPublish"] = content; + std::string msg = json_cfg.toStyledString(); + DBG("msg:" << msg); + nsqMsgProducer->Publish(topic, (void *) (&msg)); + } + } else { return "{\"ret_status\": \"鍐呭鏈夎锛岃妫�鏌ワ紒\"}"; } - - std::string rtmp_url = m_rtmp[value_reader["str_ip"].asCString()].appPC->getRtmp(); - value["connect_status"] = "True"; - value["video_url"] = rtmp_url; - out = value.toStyledString(); + } else { + return "{\"ret_status\": \"鍐呭鏈夎锛岃妫�鏌ワ紒\"}"; } return out; @@ -1357,19 +1371,32 @@ if (!reader.parse(content, value_reader)) { return "{\"ret_status\": \"浼犺緭閿欒锛岃妫�鏌ワ紒\"}"; } - - //TODO - //璋冪敤rtsp娴乺tsp://admin:a1234567@192.168.1.215:554/h264/ch1/main/av_stream -// std::string rtsp_url = "rtsp://" + username + ":" + passwd + "@" + ip + ":" + std::to_string(port) + "/h264/ch1/main/av_stream"; - DBG("cam_connect_video_stop begin"); - bool ret = cam_connect_video_stop(value_reader["str_ip"].asString()); - if (!ret) { - return "{\"ret_status\": \"浼犺緭閿欒锛岃妫�鏌ワ紒\"}"; - } - DBG("cam_connect_video_stop end"); - Json::Value value; - value["ret_status"] = "ok_ack"; + if (value_reader.isMember("id")) { + value["ret_status"] = "ok_ack"; + cam_connect_video_stop(value_reader["str_ip"].asString()); + { + std::string topic = "VideoToImageMulth"; + Json::Value json_cfg; + json_cfg["cam_stopPublish"] = content; + std::string msg = json_cfg.toStyledString(); + DBG("msg:" << msg); + nsqMsgProducer->Publish(topic, (void *) (&msg)); + } + } else { + //TODO + //璋冪敤rtsp娴乺tsp://admin:a1234567@192.168.1.215:554/h264/ch1/main/av_stream +// std::string rtsp_url = "rtsp://" + username + ":" + passwd + "@" + ip + ":" + std::to_string(port) + "/h264/ch1/main/av_stream"; + DBG("cam_connect_video_stop begin"); + bool ret = cam_connect_video_stop(value_reader["str_ip"].asString()); + if (!ret) { + return "{\"ret_status\": \"浼犺緭閿欒锛岃妫�鏌ワ紒\"}"; + } + DBG("cam_connect_video_stop end"); + + value["ret_status"] = "ok_ack"; + } + std::string out = value.toStyledString(); -- Gitblit v1.8.0