Example #1
0
        public static async Task RegisterGattApplication(ServerContext serverContext)
        {
            var gattServiceDescription = new GattServiceDescription
            {
                UUID    = "12345678-1234-5678-1234-56789abcdef0",
                Primary = true
            };

            var gattCharacteristicDescription = new GattCharacteristicDescription
            {
                CharacteristicSource = new ExampleCharacteristicSource(),
                UUID  = "12345678-1234-5678-1234-56789abcdef1",
                Flags = CharacteristicFlags.Read | CharacteristicFlags.Write | CharacteristicFlags.WritableAuxiliaries
            };
            var gattDescriptorDescription = new GattDescriptorDescription
            {
                Value = new[] { (byte)'t' },
                UUID  = "12345678-1234-5678-1234-56789abcdef2",
                Flags = new[] { "read", "write" }
            };
            var gab = new GattApplicationBuilder();

            gab
            .AddService(gattServiceDescription)
            .WithCharacteristic(gattCharacteristicDescription, new[] { gattDescriptorDescription });

            await new GattApplicationManager(serverContext).RegisterGattApplication(gab.BuildServiceDescriptions());
        }
Example #2
0
        public static GattCharacteristic1Properties CreateGattCharacteristic(GattCharacteristicDescription characteristic)
        {
            var characteristicProperties = new GattCharacteristic1Properties {
                UUID = characteristic.UUID, Flags = CharacteristicFlagConverter.ConvertFlags(characteristic.Flags)
            };

            return(characteristicProperties);
        }
Example #3
0
        public void WithCharacteristic(GattCharacteristicDescription gattCharacteristicDescription,
                                       GattDescriptorDescription[] gattDescriptorDescriptions)
        {
            foreach (var description in gattDescriptorDescriptions)
            {
                gattCharacteristicDescription.AddDescriptor(description);
            }

            ServiceDescription.AddCharacteristic(gattCharacteristicDescription);
        }
Example #4
0
        private async Task <GattCharacteristic> AddNewCharacteristic(GattService gattService, GattCharacteristicDescription characteristic)
        {
            var gattCharacteristic1Properties = GattPropertiesFactory.CreateGattCharacteristic(characteristic);
            var gattCharacteristic            = gattService.AddCharacteristic(gattCharacteristic1Properties, characteristic.CharacteristicSource);
            await _ServerContext.Connection.RegisterObjectAsync(gattCharacteristic);

            return(gattCharacteristic);
        }