Support direct instance addressing requests

This commit is contained in:
LordGrey 2024-04-23 21:45:34 +02:00
parent d29a747586
commit 69f8b1f1f0
16 changed files with 54 additions and 0 deletions

View File

@ -7,6 +7,9 @@
"required" : true,
"enum" : ["adjustment"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -7,6 +7,9 @@
"required" : true,
"enum" : ["clear"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -7,6 +7,9 @@
"required" : true,
"enum" : ["clearall"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
}

View File

@ -7,6 +7,9 @@
"required" : true,
"enum" : ["color"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -9,6 +9,9 @@
"required" : true,
"enum" : ["componentstate"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -12,6 +12,9 @@
"required" : true,
"enum" : ["getconfig","getschema","setconfig","restoreconfig","reload"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -7,6 +7,9 @@
"required" : true,
"enum" : ["create-effect"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -8,6 +8,9 @@
"required" : true,
"enum" : ["delete-effect"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -7,6 +7,9 @@
"required" : true,
"enum" : ["effect"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -7,6 +7,9 @@
"required" : true,
"enum" : ["image"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -7,6 +7,9 @@
"required" : true,
"enum" : ["ledcolors"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -7,6 +7,9 @@
"required" : true,
"enum" : ["leddevice"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -7,6 +7,9 @@
"required" : true,
"enum" : ["logging"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -7,6 +7,9 @@
"required" : true,
"enum" : ["processing"]
},
"instance" : {
"type" : "integer"
},
"tan" : {
"type" : "integer"
},

View File

@ -11,6 +11,9 @@
"type": "string",
"enum": ["getInfo", "subscribe", "unsubscribe", "getSubscriptions", "getSubscriptionCommands"]
},
"instance" : {
"type" : "integer"
},
"data": {
"type": ["null", "array"],
"properties": {

View File

@ -228,6 +228,15 @@ void JsonAPI::handleMessage(const QString &messageString, const QString &httpAut
return;
}
if ( message.contains("instance"))
{
const quint8 instance = static_cast<quint8>(message.value("instance").toInt());
if (!setHyperionInstance(instance))
{
sendErrorReply(QString("Invalid or stopped instance: %1").arg(instance), cmd);
}
}
handleCommand(cmd, message);
}