Last updated:
0 purchases
hue dart
hue_dart #
A library for creating Philips Hue apps in Flutter and/or AngularDart.
This library aims to make it easier to handle with the Philips Hue bridge.
Using #
Discovery #
Import the library and search for bridges.
import 'package:http/http.dart';
import 'package:hue_dart/hue_dart.dart';
final client = Client();
final discovery = BridgeDiscovery(client);
List<DiscoveryResult> discoverResults = await discovery.automatic();
final discoveryResult = discoverResults.first;
final bridge = Bridge(client, discoveryResult.ipAddress);
copied to clipboard
For web, use the BrowserClient.
import 'package:http/browser_client.dart';
import 'package:hue_dart/hue_dart.dart';
final client = BrowserClient();
final discovery = BridgeDiscovery(client);
List<DiscoveryResult> discoverResults = await discovery.automatic();
final discoveryResult = discoverResults.first;
final bridge = Bridge(client, discoveryResult.ipAddress);
copied to clipboard
Searching for a bridge by entering an IP address is also supported.
import package:hue_dart/hue.dart;
final client = Client();
final discovery = BridgeDiscovery(client);
DiscoveryResult discoverResult = await discovery.manual('192.168.1.2');
final bridge = Bridge(client, discoveryResult.ipAddress);
copied to clipboard
Create a new user #
To create a user press the push link button before calling the createUser method
final bridge = Bridge(client, discoveryResult.ipAddress);
final whiteListItem = bridge.createUser('hue_dart');
bridge.username = whiteListItem.username;
copied to clipboard
Lights #
To get the current lights on the bridge, create a Bridge, set a username and
final lights = bridge.lights();
copied to clipboard
Changing a light's color while respecting its current color mode is done by using the Light#changeColor method.
final light = lights.first.changeColor(red: 1.0, green: 0.5, blue: 1.0);
LightState state = lightStateForColorOnly(light);
await bridge.updateLightState(light.rebuild(
(l) => l..state = state.toBuilder(),
));
copied to clipboard
Different light state attributes can also be changed.
final light = lights.first;
LightState state = LightState((s) => s
..brightness = 100,
);
await bridge.updateLightState(light.rebuild(
(l) => l..state = state.toBuilder(),
));
copied to clipboard
To get the light's current color in rgb values (and other known means) use the Light#colors method
final light = lights.first;
HueColor colors = light.colors();
print('red:${colors.red}, green: ${colors.green}, blue:${colors.blue}');
copied to clipboard
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.