Exemplo n.º 1
0
        public async Task <ServiceResponse <IEnumerable <byte> > > ReadFromCharacteristic(string deviceUuid,
                                                                                          string serviceUuid, string characteristicUuid)
        {
            var errMessage = "";
            var response   = new ServiceResponse <IEnumerable <byte> >();

            try
            {
                response.Data = await _bluetoothManager.ReadFromCharacteristic(deviceUuid, serviceUuid, characteristicUuid);

                var successFlag = response.Data != null;
                response.Result = successFlag ? ServiceResponseResult.Success : ServiceResponseResult.Fail;
                if (successFlag)
                {
                    return(response);
                }
            }
            catch (Exception e)
            {
                errMessage = "\n" + e.Message;
            }

            if (response.Result == ServiceResponseResult.NotSet)
            {
                response.Result = ServiceResponseResult.NotAcceptable;
            }

            response.Message = $"Failed to read from characteristic. device Id: \'{deviceUuid}\' gatt-service Id: \'{serviceUuid}\' characteristic id: \'{characteristicUuid}\'.{errMessage}";
            return(response);
        }