Ejemplo n.º 1
0
        /// <summary>
        /// 向网关同步数据
        /// </summary>
        /// <param name="SendItemList"></param>
        /// <returns></returns>
        private bool SynchronousDataToGateway(List <Jc_DefInfo> SendItemList)
        {
            foreach (Jc_DefInfo deviceInfo in SendItemList)
            {
                TerminalControlRequest terminalControlRequest = new TerminalControlRequest();
                //查找分区标识
                AreaCacheGetByKeyRequest AreaCacheRequest = new AreaCacheGetByKeyRequest();
                AreaCacheRequest.Areaid = deviceInfo.Areaid;
                AreaInfo areaInfo = _areaCacheService.GetByKeyAreaCache(AreaCacheRequest).Data;
                if (areaInfo != null)
                {
                    terminalControlRequest.zoneId = areaInfo.Areadescribe;//分区标识
                }
                else
                {
                    Basic.Framework.Logging.LogHelper.Error("未找到广播设备对应的分区信息,设备标识:" + deviceInfo.Point);
                    return(false);
                }
                terminalControlRequest.termDN    = deviceInfo.Point; //终端号码
                terminalControlRequest.type      = deviceInfo.Bz6;   //终端类型
                terminalControlRequest.name      = deviceInfo.Wz;    //终端名称
                terminalControlRequest.record    = deviceInfo.Bz7;   //录音使能是否启用
                terminalControlRequest.auth      = deviceInfo.Bz8;   //注册鉴权是否启用
                terminalControlRequest.password  = deviceInfo.Bz9;   //注册鉴权密码
                terminalControlRequest.pa        = deviceInfo.Bz11;  //广播使能是否启用
                terminalControlRequest.cfuDN     = deviceInfo.Bz12;  //始终呼叫转移号码
                terminalControlRequest.cfxDN     = deviceInfo.Bz13;  //条件呼叫转移号码
                terminalControlRequest.InfoState = deviceInfo.InfoState;
                //调用RPC发送
                MasProtocol masProtocol = new MasProtocol(SystemType.Broadcast, DirectionType.Down, ProtocolType.TerminalControlRequest);
                masProtocol.Protocol = terminalControlRequest;
                TerminalControlResponse result = RpcService.Send <TerminalControlResponse>(masProtocol, RequestType.BusinessRequest);

                if (result == null && result.retCode != "0")
                {
                    Basic.Framework.Logging.LogHelper.Error("向网关同步广播设备信息失败!,设备标识:" + deviceInfo.Point);
                    return(false);
                }
            }
            return(true);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 设备管理
        /// </summary>
        /// <param name="masProtocol"></param>
        /// <returns></returns>
        public static RpcResponse termManage(MasProtocol masProtocol)
        {
            TerminalControlRequest request = masProtocol.Deserialize <TerminalControlRequest>();

            if (request == null)
            {
                return(null);
            }
            if (request.InfoState == InfoState.AddNew)
            {
                addTerm(request);
            }
            if (request.InfoState == InfoState.Modified)
            {
                setTerm(request);
            }
            if (request.InfoState == InfoState.Delete)
            {
                delTerm(request);
            }
            return(null);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 删除终端
        /// </summary>
        /// <param name="masProtocol"></param>
        /// <returns></returns>
        public static RpcResponse delTerm(TerminalControlRequest request)
        {
            TerminalControlResponse response = BroadCastControllerProxy.broadCastControllerProxy.delTerm(request);

            return(RpcResponse.Response <TerminalControlResponse>(response));
        }
        /// <summary>
        /// 删除终端
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public TerminalControlResponse delTerm(TerminalControlRequest request)
        {
            var responseStr = HttpClientHelper.Post(Webapi + "/api/REST-API/delTerm.do?accessToken=" + Token, JSONHelper.ToJSONString(request));

            return(JSONHelper.ParseJSONString <TerminalControlResponse>(responseStr));
        }