From 12879769af38a00425309e292b2c167afc6612c1 Mon Sep 17 00:00:00 2001
From: pansen <pansen626@sina.com>
Date: 星期四, 04 四月 2019 11:27:38 +0800
Subject: [PATCH] 增加点播功能
---
QiaoJiaSystem/DataManagerServer/http_configserver.cpp | 83 +++++++++++++++++++++++++++--------------
1 files changed, 54 insertions(+), 29 deletions(-)
diff --git a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
index 494356c..9296951 100644
--- a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
+++ b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
@@ -1318,28 +1318,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 +1370,31 @@
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";
+ {
+ 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