Материал из Module developer
Перейти к: навигация, поиск

SubDevice.SetCharacteristicNotification

{{API Function/ru |description=Подписаться на изменение характеристики BLE устройства или отписаться от нее |constructor= SubDevice.SetCharacteristicNotification(Characteristic, subscription) |input=

Characteristic type: Object
Объект характеристики
subscription true type: Boolean
Флаг подписки

|output= - |JSsample=

var l_oDevice = module.CreateDevice(IR.DEVICE_BLE_DEVICE, "Kettle", UUID); //Создаем BLE устройство
var l_oSubDevice = module.AddSubDevice("SubDevice 1", l_oDevice); //создаем подустройство 
l_oSubDevice.DiscoverServices(); //исследуем сервисы
module.AddListener(IR.EVENT_SERVICES_DISCOVERED, l_oSubDevice, function(){
 
	var l_aServices = l_oSubDevice.GetServices(); //Получаем сервисы
	for (var i = 0; i < l_aServices.length; i++) {
		var l_aCharacteristics = l_aServices[i].GetCharacteristics();
		for (var j = 0; j < l_aCharacteristics.length; j++) {
			l_oSubDevice.SetCharacteristicNotification(l_aCharacteristics[j], true); //Подписываемся на изменение характеристики
		}
	}
 
});
module.AddListener(IR.EVENT_CHARACTERISTIC_CHANGED, l_oSubDevice, function(in_serviceUuid, in_characteristicUuid, in_status){
 
	IR.Log(in_serviceUuid);
    IR.Log(in_characteristicUuid);
	IR.Log(in_status);