tgauchat
(ActionTiles.com co-founder Terry @ActionTiles; GitHub: @cosmicpuppy)
4
Thanks for fixing the link.
But now the āconcernā ⦠oh⦠doc enhancement request?
If the attribute does not have any possible values (for example, ābatteryā), you would just use the attribute name.
This is inaccurate and unncessary, IMHO: The Attribute capability.battery.battery most certain does have āpossible valuesā. It has a value from 0 to 100 representing the percentage power level of the battery.
The syntax or semantic problem isnāt yours, it is the titles of the Capability Document:
I recommend ā[possible values]ā column header be changed to ā[data type, valid enumerated values, or valid range]ā or something similar.
The āno valueā syntax of subscribe() is valid for all Attributes, even if they donāt have an enumerated list of āpossible valuesā. Without a value name, the subscription applies to (and fires upon) any change in the value of the Attribute. (Which you do describe in the next sub-section Subscribe to All Device Events.
We have on our backlog work to better document web-services in general, and this falls into that. For now, know that request.getHeaderNames() returns an enumeration of the header strings:
Weāre working towards ensuring that bug fixes / features are documented as they roll out, but arenāt all the way there yet. But we wanted developers to know that they can get the request header names now, as they might in other frameworks.
I was trying to communicate how one would create a subscription for attributes that have no discrete values, for lack of a better term. In the battery case, you would subscribe to ābatteryā, not ābattery.batteryā. There would be a value in the event for battery as you described. But yes, the way they are described in the capabilities taxonomy is not entirely clear/thorough at the moment.
tgauchat
(ActionTiles.com co-founder Terry @ActionTiles; GitHub: @cosmicpuppy)
8
Wellā¦: The better ātermā is that which you just used ā āno discrete valuesā (or no āenumeratedā values, as I called them, but discrete is fine).
It appears some HTTPS authenticated integrations are going haywire last few hours. Canāt control Nest temp setting, no Nest device log activity since 2:43PM PST. Loading Nest thing activity feed causes Android mobile app to crash. Log errors:
9:23:30 PM: error java.lang.NullPointerException: Cannot get property āuriā on null object @ line 520
9:24:56 PM: error groovyx.net.http.HttpResponseException: Too Many Requests @ line 565
Ubi lost its association. Re-authorized Ubi and now seeing more than 48 log entries per second in live logs. Yet integration seems to be working for Ubi announcements. Log error: physicalgraph.app.exception.SmartAppException: Device not found @ line 463
And MyQ control works, but no logs of event open/close activity since 5:57PM PST.
error java.lang.NullPointerException: Cannot invoke method toLong() on null object @ line 475
@Jim, Could you elaborate what is being checked? Iām getting this error on save that I have not seen previously:
You have multiple inputs with the same name
⦠but thereās no line number or input name to reference the code. This is not very helpful. I checked and re-checked my code and I canāt see any duplicate names. I even went as far as commenting out all inputs and Iām still getting this error.
Iāll ask about providing a more informative message.
Can you post your code or a sample that is giving the error? By chance does a browser refresh fix it (wouldnāt expect so, but I always do a hard browser refresh whenever Iām having any issues in a web client. Old habit )
Not sure if related to all the new releases, but since all the updating, IDE will not let me delete a DeviceType, error says - DeviceType still in use by devices.
Yet it is not in my list of current devices or being used?
Support has been looking at it a few days, anyone else having similar. I can create a new one and delete it fineā¦
Iāve been having issues with publiching and installing device types in the IDE for debugging. I started getting ācacheloader returned null for keyā errors for those two operations. I switched to a copy of the same device type, which did not present me with that error, but when I installed it on the same local device for debugging logging, the output looked like it was still from the last version of the original device-type that I was able to debug. Then the simulator stopped working for me altogether.
I deleted the copy, and Iām not getting the cacheloader errors anymore, but selecting location just spins and doesnāt complete.
I donāt know if this will help anyone but I had the same issue with the delete problem. I had deleted the device itself but the device type wouldnāt clear stating that it was in use by a device. Using the simulator in the ide I did an install and then an uninstall. After that the devicetype would let me delete. I hope that helps.