I know this has been asked before in passing.
I’m experimenting more with device-config
which acts as a final filter on how a device is displayed.
Today I was playing with the patch[]
section. Since the device-config
on its own doesn’t reference any living entities, there should be minimal syntax validation. At some point I started getting the following error from the CLI:
Error: Request failed with status code 400: {"requestId":"D0913D70-07A6-45A8-8AB0-2032727A3D1E","error":{"code":"UnexpectedError","message":"unsuccessful-http-call status=400","details":[]}}
I’ve found that if I change an (arbitrary) single character in the patch path, the error goes away. This sure looks like some sort of caching/storage issue specific to my account.
smartthings presentation:device-config:create
gives you a vid/presentationId
that can be referenced in a device profile. However, there does not appear to be a way to view/delete these objects. It looks like I’ve got a conflict with a phantom of sorts.
You can laugh at my example. I was trying to associate a filter with fanSpeed so that the enumerated options could be controlled dynamically. I don’t even know if that’s possible. I never got that far.
The following is rejected. I believe it was accepted previously.
{
"type": "profile",
"detailView": [
{
"component": "main",
"capability": "fanSpeed",
"version": 1,
"patch": [
{
"op": "add",
"path": "/0/list/command/supportedValues",
"value": "button.supportedButtonValues.value"
}
]
}
]
}
If I change the case of a single letter in path (e.g. “path”: “/0/list/command/supportedvalues”), the file is accepted. presentation:device-config:create
has no usage context, so the values are arbitrary at this point.