//
|
// Created by ps on 19-3-1.
|
//
|
|
#include <basic/debug/Debug.h>
|
#include "GB28181Server.h"
|
|
bool bGetLoaclRes = {false};
|
|
GB28181Server::GB28181Server() {}
|
|
GB28181Server::~GB28181Server() {
|
C_UnInitSDK();
|
}
|
|
void GB28181Server::setMysqlConnParam(const MysqlDBServerCfg &_MysqlConnParam) {
|
memset(&MysqlConnParam, 0, sizeof(MysqlConnParam_T));
|
strcpy(MysqlConnParam.Host, _MysqlConnParam.Host.c_str()); //连接数据库的ip地址
|
MysqlConnParam.Port = _MysqlConnParam.Port; //连接数据库的端口
|
strcpy(MysqlConnParam.UserName, _MysqlConnParam.UserName.c_str()); //连接数据库的用户名
|
strcpy(MysqlConnParam.Passwd, _MysqlConnParam.Passwd.c_str()); //连接数据库的密码
|
strcpy(MysqlConnParam.DBName, _MysqlConnParam.DBName.c_str()); //连接数据库的表名
|
MysqlConnParam.DBConnCount = _MysqlConnParam.DBConnCount; //连接数据库的数量
|
}
|
|
void GB28181Server::setGBServerParam(const GBServerCfg &_GBServerParam) {
|
memset(&GBServerParam, 0, sizeof(GBServerParam_T));
|
strcpy(GBServerParam.SvrIp, _GBServerParam.SvrIp.c_str()); // 国标服务的ip地址 (本机的ip地址)
|
//strcpy(GBServerParam.SvrNatIp, "222.35.102.22"); //注意: 此处如果没有穿网ip地址不需要配置 (一般部署公网时使用)
|
GBServerParam.SvrPort = _GBServerParam.SvrPort; // 国标服务监听的端口
|
// 44122500042001000123
|
strcpy(GBServerParam.SvrPubID, _GBServerParam.SvrPubID.c_str()); // 国标服务器的ID
|
GBServerParam.bMD5Auth = _GBServerParam.bMD5Auth; // 是否需要MD5加密
|
strcpy(GBServerParam.UserName, _GBServerParam.UserName.c_str()); // 国标服务的用户名 (下级设备注册的用户名)
|
strcpy(GBServerParam.Passwd, _GBServerParam.Passwd.c_str()); // 国标服务的密码 (下级设备注册的密码)
|
GBServerParam.SubScribeTime = _GBServerParam.SubScribeTime; // 订阅时间 如果为0 表示不订阅
|
}
|
|
void GB28181Server::setUpperPlatform(const UpperPFCfg &_upperinfo) {
|
memset(&upperinfo, 0, sizeof(UpperPlatform_T));
|
strcpy(upperinfo.Name, _upperinfo.Name.c_str());
|
strcpy(upperinfo.PublicID, _upperinfo.PublicID.c_str());
|
strcpy(upperinfo.AuthUserName, _upperinfo.AuthUserName.c_str());
|
strcpy(upperinfo.AuthPasswd, _upperinfo.AuthPasswd.c_str());
|
strcpy(upperinfo.IpAddr, _upperinfo.IpAddr.c_str());
|
upperinfo.Port = _upperinfo.Port;
|
upperinfo.RegisterItv = _upperinfo.RegisterItv;
|
upperinfo.KeepAliveItv = _upperinfo.KeepAliveItv;
|
}
|
|
bool GB28181Server::initServer() {
|
|
bool iRet = C_InitSDK(&GBServerParam, &MysqlConnParam, NULL, enventcallback);
|
DBG("iRet is " << iRet);
|
sleep(90);
|
|
return iRet;
|
}
|