-
Notifications
You must be signed in to change notification settings - Fork 0
Username & Clientkey
Maxi Zink edited this page Feb 6, 2022
·
4 revisions
You dont need to do that every Time! When you already know you Credentials (IP, Username, Clientkey) you can skip this Step.
When you execute the generateHueBridgeCredentials Method, make sure that you pressed the Link Button on your Bridge a few Seconds ago. Otherwise the Response returns you "LINK_BUTTON_NOT_PRESSED" and throws an error, if you still want to get the Credentials.
@SneakyThrows
private void createHueBridgeCredentials() {
BridgeIpDiscovery bridgeIpDiscovery = ServiceAccessor.accessService(BridgeIpDiscovery.class);
BridgeCredentialsDiscovery bridgeCredentialsDiscovery = ServiceAccessor.accessService(BridgeCredentialsDiscovery.class);
String bridgeIp = bridgeIpDiscovery.discoverBridgeIP();
HueBridgeCredentialsResponse keyGenerateResponse = bridgeCredentialsDiscovery.generateHueBridgeCredentials(bridgeIp);
if (keyGenerateResponse.getRespone().equals(HueBridgeCredentialsResponse.Respone.LINK_BUTTON_NOT_PRESSED)) {
//Handle here what should happen if the link button was not pressed
//INFO: The getCredentials() Method returns null and throws an error!
log.info("No Credentials generated! Press the Link Button");
}
if (keyGenerateResponse.getRespone().equals(HueBridgeCredentialsResponse.Respone.GENERATED)) {
HueBridgeCredentials hueBridgeCredentials = keyGenerateResponse.getHueBridgeCredentials();
//Do Stuff here you want if the Credentials were generated!
log.info("Credentials were generated:");
log.info(" - UserName -> " + hueBridgeCredentials.getUserName());
log.info(" - ClientKey -> " + hueBridgeCredentials.getClientKey());
}
}