示例#1
0
        /// <summary>
        /// 发送自定义数据到门口机
        /// 并等待设备的回执
        /// </summary>
        /// <param name="num">设备机身号</param>
        /// <param name="data">数据内容</param>
        /// <exception cref="TimeoutException"></exception>
        /// <returns></returns>
        public static async Task <Message> EM_CustomDataSendAsync(string num, TimeoutDataSetting data)
        {
            var api    = Api.EM_CustomData_Send;
            var device = new Device(num);

            return(await EmqttdClient.SendAsync(device.SubDevice, api, data));
        }
示例#2
0
        /// <summary>
        /// 发送自定义数据到客户端
        /// 并等待设备的回执
        /// </summary>
        /// <param name="id">客户端id</param>
        /// <param name="data">数据内容</param>
        /// <exception cref="TimeoutException"></exception>
        /// <returns></returns>
        public static async Task <Message> Push_CustomDataSendAsync(string id, TimeoutDataSetting data)
        {
            var api    = Api.Push_CustomData_Send;
            var client = new PushClient(id);

            return(await EmqttdClient.SendAsync(client.SubPushClient, api, data));
        }
示例#3
0
        /// <summary>
        /// 门口机开锁
        /// </summary>
        /// <param name="num">门口机机身号</param>
        /// <param name="data">数据</param>
        /// <exception cref="TimeoutException"></exception>
        /// <returns></returns>
        public static async Task <Message <bool> > EM_UnlockAsync(string num, TimeoutDataSetting data)
        {
            var api    = Api.EM_Unlock;
            var device = new Device(num);

            var message = await EmqttdClient.SendAsync(device.SubDevice, api, data);

            return(message.Cast <bool>());
        }
示例#4
0
        /// <summary>
        /// 测试数据
        /// </summary>
        /// <param name="num">设备机身号</param>
        /// <param name="data">数据</pm>
        /// <exception cref="TimeoutException"></exception>
        /// <returns></returns>
        public static async Task <Message <string> > Sys_TestDataAsync(string num, string data)
        {
            var api    = Api.Sys_TestData;
            var device = new Device(num);
            var body   = new TimeoutDataSetting {
                Timeout = 5, Data = data
            };
            var message = await EmqttdClient.SendAsync(device.SubDevice, api, body);

            return(message.Cast <string>());
        }