Google Smart Home Intent Request For All AC's When Friendly Name is Air Conditioner(Hindi Language) - google-smart-home

I have named my Smart AC as Air Conditioner and when i am trying to give Hindi command to start Air Conditioner(एयर कंडीशनर को चालू करो), google process the request and send me the EXECUTE intent request for all smart AC's linked to my account.
As you can see below SYNC response there are 5 devices whose Friendly Names are
Air Conditioner(labtest)
Bedroom A/C(stest240)
Kitchen A/C(stest98)
Room A/C(stest250)
Showroom A/C(stest236)
{
"requestId": "8348398861868564002",
"payload": {
"agentUserId": "1234",
"devices": [
{
"id": "stest98",
"name": {
"name": "Kitchen AC",
"defaultNames": [
"Smart Air Conditioner"
]
},
"type": "action.devices.types.THERMOSTAT",
"traits": [
"action.devices.traits.OnOff",
"action.devices.traits.TemperatureSetting",
"action.devices.traits.Toggles"
],
"willReportState": false,
"deviceInfo": {
"manufacturer": "smart-home",
"model": "hs1234",
"hwVersion": "3.2",
"swVersion": "11.4"
},
"attributes": {
"availableThermostatModes": [
"cool",
"dry",
"fan-only"
],
"thermostatTemperatureUnit": "C",
"thermostatTemperatureRange": {
"minThresholdCelsius": 16,
"maxThresholdCelsius": 30
},
"availableToggles": [
{
"name": "horizontalswing",
"name_values": [
{
"name_synonym": [
"horizontal swing"
],
"lang": "en"
},
{
"name_synonym": [
"हॉरिजोंटल स्विंग",
"हॉरिजॉन्टल स्विंग"
],
"lang": "hi"
}
]
},
{
"name": "verticalswing",
"name_values": [
{
"name_synonym": [
"vertical swing"
],
"lang": "en"
},
{
"name_synonym": [
"वर्टिकल स्विंग",
"वर्टीकल स्विंग"
],
"lang": "hi"
}
]
}
]
}
},
{
"id": "stest250",
"name": {
"name": "Room AC",
"defaultNames": [
"Smart Air Conditioner"
]
},
"type": "action.devices.types.THERMOSTAT",
"traits": [
"action.devices.traits.OnOff",
"action.devices.traits.TemperatureSetting",
"action.devices.traits.Toggles"
],
"willReportState": false,
"deviceInfo": {
"manufacturer": "smart-home",
"model": "hs1234",
"hwVersion": "3.2",
"swVersion": "11.4"
},
"attributes": {
"availableThermostatModes": [
"cool",
"dry",
"fan-only"
],
"thermostatTemperatureUnit": "C",
"thermostatTemperatureRange": {
"minThresholdCelsius": 16,
"maxThresholdCelsius": 30
},
"availableToggles": [
{
"name": "horizontalswing",
"name_values": [
{
"name_synonym": [
"horizontal swing"
],
"lang": "en"
},
{
"name_synonym": [
"हॉरिजोंटल स्विंग",
"हॉरिजॉन्टल स्विंग"
],
"lang": "hi"
}
]
},
{
"name": "verticalswing",
"name_values": [
{
"name_synonym": [
"vertical swing"
],
"lang": "en"
},
{
"name_synonym": [
"वर्टिकल स्विंग",
"वर्टीकल स्विंग"
],
"lang": "hi"
}
]
}
]
}
},
{
"id": "stest240",
"name": {
"name": "Bedroom A/C",
"defaultNames": [
"Smart Air Conditioner"
]
},
"type": "action.devices.types.THERMOSTAT",
"traits": [
"action.devices.traits.OnOff",
"action.devices.traits.TemperatureSetting",
"action.devices.traits.Toggles"
],
"willReportState": false,
"deviceInfo": {
"manufacturer": "smart-home",
"model": "hs1234",
"hwVersion": "3.2",
"swVersion": "11.4"
},
"attributes": {
"availableThermostatModes": [
"cool",
"dry",
"fan-only"
],
"thermostatTemperatureUnit": "C",
"thermostatTemperatureRange": {
"minThresholdCelsius": 16,
"maxThresholdCelsius": 30
},
"availableToggles": [
{
"name": "horizontalswing",
"name_values": [
{
"name_synonym": [
"horizontal swing"
],
"lang": "en"
},
{
"name_synonym": [
"हॉरिजोंटल स्विंग",
"हॉरिजॉन्टल स्विंग"
],
"lang": "hi"
}
]
},
{
"name": "verticalswing",
"name_values": [
{
"name_synonym": [
"vertical swing"
],
"lang": "en"
},
{
"name_synonym": [
"वर्टिकल स्विंग",
"वर्टीकल स्विंग"
],
"lang": "hi"
}
]
}
]
}
},
{
"id": "stest236",
"name": {
"name": "Showroom Ac",
"defaultNames": [
"Smart Air Conditioner"
]
},
"type": "action.devices.types.THERMOSTAT",
"traits": [
"action.devices.traits.OnOff",
"action.devices.traits.TemperatureSetting",
"action.devices.traits.Toggles"
],
"willReportState": false,
"deviceInfo": {
"manufacturer": "smart-home",
"model": "hs1234",
"hwVersion": "3.2",
"swVersion": "11.4"
},
"attributes": {
"availableThermostatModes": [
"cool",
"dry",
"fan-only"
],
"thermostatTemperatureUnit": "C",
"thermostatTemperatureRange": {
"minThresholdCelsius": 16,
"maxThresholdCelsius": 30
},
"availableToggles": [
{
"name": "verticalswing",
"name_values": [
{
"name_synonym": [
"vertical swing"
],
"lang": "en"
},
{
"name_synonym": [
"वर्टिकल स्विंग",
"वर्टीकल स्विंग"
],
"lang": "hi"
}
]
}
]
}
},
{
"id": "labtest",
"name": {
"name": "Air Conditioner",
"defaultNames": [
"Smart Air Conditioner"
]
},
"type": "action.devices.types.THERMOSTAT",
"traits": [
"action.devices.traits.OnOff",
"action.devices.traits.TemperatureSetting",
"action.devices.traits.Toggles"
],
"willReportState": false,
"deviceInfo": {
"manufacturer": "smart-home",
"model": "hs1234",
"hwVersion": "3.2",
"swVersion": "11.4"
},
"attributes": {
"availableThermostatModes": [
"cool",
"dry",
"fan-only"
],
"thermostatTemperatureUnit": "C",
"thermostatTemperatureRange": {
"minThresholdCelsius": 16,
"maxThresholdCelsius": 30
},
"availableToggles": [
{
"name": "horizontalswing",
"name_values": [
{
"name_synonym": [
"horizontal swing"
],
"lang": "en"
},
{
"name_synonym": [
"हॉरिजोंटल स्विंग",
"हॉरिजॉन्टल स्विंग"
],
"lang": "hi"
}
]
}
]
}
}
]
}
}
Current Result:
Google EXECUTE INTENT Request for all devices when i am giving command एयर कंडीशनर को चालू करो.
{
"version": "2.0",
"routeKey": "$default",
"rawPath": "/",
"rawQueryString": "",
"body": "{"inputs":[{"context":{"locale_country":"IN","locale_language":"hi"},"intent":"action.devices.EXECUTE","payload":{"commands":[{"devices":[{"id":"stest250"},{"id":"stest240"},{"id":"stest98"},{"id":"stest236"},{"id":"labtest"}],"execution":[{"command":"action.devices.commands.OnOff","params":{"on":true}}]}]}}],"requestId":"7557367445885049606"}",
"isBase64Encoded": false
}
Expected Result:
Google EXECUTE INTENT Request for air conditioner device only when i am giving command एयर कंडीशनर को चालू करो.

Related

Google Smart Home Actions Toggle Trait for Horizontal & Vertical Swing

I am toggling horizontal swing and vertical swing in Hindi language, but assistant is not taking my command and always take me to a web page.
English Utterance: Start Horizontal Swing on Bedroom A/C. (working)
Hindi Utterance: बैडरूम एसी के हॉरिजॉन्टल स्विंग को चालू कर दो.(not working)
I have given all the possible commands in Hindi related to toggle but its not working. Please help me out from this.
Result : Command is to be executed when i am toggling Horizontal swing and vertical swing.
Below is my Google SYNC response:
{
"requestId": "11311483680465073646",
"payload": {
"agentUserId": "123",
"devices": [
{
"id": "stest240",
"name": {
"name": "Bedroom A/C",
"defaultNames": [
"Smart Air Conditioner"
]
},
"type": "action.devices.types.THERMOSTAT",
"traits": [
"action.devices.traits.OnOff",
"action.devices.traits.TemperatureSetting",
"action.devices.traits.Toggles"
],
"willReportState": false,
"deviceInfo": {
"manufacturer": "smart-home",
"model": "hs1234",
"hwVersion": "3.2",
"swVersion": "11.4"
},
"attributes": {
"availableThermostatModes": [
"cool",
"dry",
"fan-only"
],
"thermostatTemperatureUnit": "C",
"thermostatTemperatureRange": {
"minThresholdCelsius": 16,
"maxThresholdCelsius": 30
},
"availableToggles": [
{
"name": "horizontalswing",
"name_values": [
{
"name_synonym": [
"horizontal swing"
],
"lang": "en"
},
{
"name_synonym": [
"हॉरिजोंटल स्विंग",
"हॉरिजॉन्टल स्विंग"
],
"lang": "hi"
}
]
},
{
"name": "verticalswing",
"name_values": [
{
"name_synonym": [
"vertical swing"
],
"lang": "en"
},
{
"name_synonym": [
"वर्टिकल स्विंग",
"वर्टीकल स्विंग"
],
"lang": "hi"
}
]
}
]
}
}
]
}
}

Grant rights to the collection(Apache Solr)

I have this security.json configuration
How can I grant separate rights to the google.cloud.integration.1 collection?
With the current configuration, the google.cloud.integration.1 collection or alias cannot be deleted, I get error 403
solr version 8.11
{
"authentication": {
"class": "com.us.CustomSSLAuthenticationPlugin"
},
"authorization": {
"class": "com.us.BasedAuthorizationPlugin",
"user-role": {
"CN=...": [
"admin_ro"
]
},
"permissions": [
{
"collection": "google.cloud.integration.1",
"path": "/admin/collections",
"params": {
"action": [
"LIST",
"LISTALIASES",
"CREATEALIAS",
"DELETEALIAS",
"CLUSTERSTATUS",
"ADDREPLICA"
]
},
"role": [
"admin_rw",
"admin_ow",
"admin_ro",
"solr-internal-traffic"
]
},
{
"collection": null,
"path": "/admin/collections",
"params": {
"action": [
"LIST",
"LISTALIASES",
"CLUSTERSTATUS"
]
},
"role": [
"rb55_bhb_epkid_rw",
"admin_ro",
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"collection": null,
"path": "/admin/collections",
"params": {
"action": [
"LIST",
"LISTALIASES",
"CREATEALIAS",
"DELETEALIAS",
"CLUSTERSTATUS",
"ADDREPLICA"
]
},
"role": [
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"collection": null,
"path": "/admin/configs",
"params": {
"action": [
"LIST"
]
},
"role": [
"admin_ro",
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"collection": null,
"path": "/admin/configs",
"params": {
"action": [
"LIST",
"CREATE",
"DELETE",
"UPDATE"
]
},
"role": [
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "update",
"role": [
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "config-edit",
"role": [
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "schema-edit",
"role": [
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "security-edit",
"role": [
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "core-admin-edit",
"role": [
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "collection-admin-edit",
"role": [
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "read",
"role": [
"admin_ro",
"admin_rw",
"solr-internal-traffic"
]
},
{
"name": "config-read",
"role": [
"admin_ro",
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "schema-read",
"role": [
"admin_ro",
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "security-read",
"role": [
"admin_ro",
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "core-admin-read",
"role": [
"admin_ro",
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "collection-admin-read",
"role": [
"admin_ro",
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "metrics-read",
"role": [
"admin_ro",
"admin_rw",
"jmx_ro",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "all",
"role": [
"admin_ro",
"admin_rw",
"admin_ow",
"solr-internal-traffic"
]
},
{
"name": "read",
"role": "default-deny-all"
},
{
"name": "schema-read",
"role": "default-deny-all"
},
{
"name": "config-read",
"role": "default-deny-all"
},
{
"name": "collection-admin-read",
"role": "default-deny-all"
},
{
"name": "metrics-read",
"role": "default-deny-all"
},
{
"name": "core-admin-read",
"role": "default-deny-all"
},
{
"name": "security-read",
"role": "default-deny-all"
},
{
"name": "update",
"role": "default-deny-all"
},
{
"name": "schema-edit",
"role": "default-deny-all"
},
{
"name": "config-edit",
"role": "default-deny-all"
},
{
"name": "collection-admin-edit",
"role": "default-deny-all"
},
{
"name": "core-admin-edit",
"role": "default-deny-all"
},
{
"name": "security-edit",
"role": "default-deny-all"
},
{
"name": "all",
"role": "default-deny-all"
}
]
}
}
I want to make the collection google.cloud.integration.1 could be deleted

Update nested object using positional-filters on different levels - MongoDb update

Considering I have the following collection (ignoring documents _id):
Collection
[
{
"Id": "1",
"Level2": [
{
"Id": "1.1",
"Level3": [
{
"Id": "1.1.1",
"Level3_4": {
"Transport": "Car",
"Level4": [
{
"Id": "1.1.1.1",
"Status": "run",
"Direction": "N"
},
{
"Id": "1.1.1.2",
"Status": "run",
"Direction": "S"
},
{
"Id": "1.1.1.3",
"Status": "pause",
"Direction": "S"
},
{
"Id": "1.1.1.4",
"Status": "run",
"Direction": "W"
}
]
}
},
{
"Id": "1.1.2",
"Level3_4": {
"Transport": "Bus",
"Level4": [
{
"Id": "1.1.2.1",
"Status": "run",
"Direction": "S"
},
{
"Id": "1.1.2.2",
"Status": "stop",
"Direction": "N"
},
{
"Id": "1.1.2.3",
"Status": "stop",
"Direction": "W"
},
{
"Id": "1.1.2.4",
"Status": "run",
"Direction": "E"
}
]
}
}
]
},
{
"Id": "1.2",
"Level3": [
{
"Id": "1.2.1",
"Level3_4": {
"Transport": "Train",
"Level4": [
{
"Id": "1.2.1.1",
"Status": "run",
"Direction": "N"
}
]
}
},
{
"Id": "1.2.2",
"Level3_4": {
"Transport": "Bus",
"Level4": []
}
}
]
}
]
}
]
Update
I want to update all documents in the collection such as:
Level2.Level3.Level3_4.Level4.Status: "pause"
Using updateOne and without upsert
All Level4 that match the next conditions
Conditions
where:
Level2.Level3.Id $in ["1.1.1","1.1.2"] AND
Level2.Level3.Level3_4.Level4.Status $in ["run", "stop"] AND
Level2.Level3.Level3_4.Level4.Direction $in ["N", "S"]
RESULT
The result collection should be:
[
{
"Id": "1",
"Level2": [
{
"Id": "1.1",
"Level3": [
{
"Id": "1.1.1",
"Level3_4": {
"Transport": "Car",
"Level4": [
{
"Id": "1.1.1.1",
"Status": "pause",
"Direction": "N"
},
{
"Id": "1.1.1.2",
"Status": "pause",
"Direction": "S"
},
{
"Id": "1.1.1.3",
"Status": "pause",
"Direction": "S"
},
{
"Id": "1.1.1.4",
"Status": "run",
"Direction": "W"
}
]
}
},
{
"Id": "1.1.2",
"Level3_4": {
"Transport": "Bus",
"Level4": [
{
"Id": "1.1.2.1",
"Status": "pause",
"Direction": "S"
},
{
"Id": "1.1.2.2",
"Status": "pause",
"Direction": "N"
},
{
"Id": "1.1.2.3",
"Status": "stop",
"Direction": "W"
},
{
"Id": "1.1.2.4",
"Status": "run",
"Direction": "E"
}
]
}
}
]
} ...
]
}
]
I'm struggling with the $set operator and arrayFilters. How can I accomplish this?
This is where I went so far:
db.test.update({},
{
$set: {
"Level2.$[level2].Level3.$[level3].Level3_4.Level4.$[level4].Status": "pause"
}
},
{
arrayFilters: [
{
"level3.Id": {
$in: [
"1.1.1",
"1.1.2"
]
}
},
{
"level4.Status": {
$in: [
"run",
"stop"
]
}
},
{
"level4.Direction": {
$in: [
"N",
"S"
]
}
}
]
}
)
However it doesn't work... What am I doing wrong?
You were almost there :)
Just the issue was with the last array filter and in $set
I have Updated the query:
db.session.update(
{},
{
$set: {
"Level2.$[].Level3.$[level3].Level3_4.Level4.$[level4].Status": "pause"
}
},
{
arrayFilters: [
{
"level3.Id": {
$in: [
"1.1.1",
"1.1.2"
]
}
},
{
"level4.Status": {
$in: [
"run",
"stop"
]
},
"level4.Direction": {
$in: [
"N",
"S"
]
}
}
]
}
)
Hope this will help :)

Support for ColorSetting trait on non-Light device types

Our hood supports a backlight which supports full RGB color change. The backlight on/off switch was implemented with a trigger, and we implemented the ColorSetting trait to change the color.
When trying to use Google Assistant to change the color however, we get the reply 'It looks like the device hasn't been set up yet'.
We tried changing the device type to 'Light', and the commands to change colors work flawlessly. Is the ColorSetting trait restricted to Light type only, and is there a workaround for this?
Thanks for your help
Edit: SYNC response for hood:
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"payload": {
"agentUserId": "userID",
"devices": [
{
"id": "HAID",
"type": "action.devices.types.HOOD",
"traits": [
"action.devices.traits.OnOff",
"action.devices.traits.StartStop",
"action.devices.traits.Modes",
"action.devices.traits.FanSpeed",
"action.devices.traits.Toggles",
"action.devices.traits.ColorSetting"
],
"deviceInfo": {
"manufacturer": "MANUFACTURER",
"model": "MODEL",
"hwVersion": "",
"swVersion": ""
},
"name": {
"name": "Dunstabzugshaube",
"nicknames": [
"Dunstabzugshaube"
],
"defaultNames": [
"Dunstabzugshaube"
]
},
"willReportState": true,
"attributes": {
"pausable": false,
"availableModes": [
{
"name": "program",
"name_values": [
{
"name_synonym": [
"program"
],
"lang": "en"
}
],
"settings": [
{
"setting_name": "Auto",
"setting_values": [
{
"lang": "en",
"setting_synonym": [
"auto",
"automatic"
]
}
]
},
{
"setting_name": "circulation",
"setting_values": [
{
"lang": "en",
"setting_synonym": [
"circulation",
"ventilation",
"airflow",
"air flow"
]
}
]
}
],
"ordered": false
}
],
"availableFanSpeeds": {
"speeds": [
{
"speed_name": "S1",
"speed_values": [
{
"lang": "en",
"speed_synonym": [
"fan stage 1",
"Fan Stage 1",
"lowest",
"one"
]
},
{
"lang": "de",
"speed_synonym": [
"lüfter stufe 1",
"Lüfter Stufe 1",
"minimum",
"eins",
"Stufe 1"
]
}
]
},
{
"speed_name": "S2",
"speed_values": [
{
"lang": "en",
"speed_synonym": [
"fan stage 2",
"Fan Stage 2",
"low",
"two"
]
},
{
"lang": "de",
"speed_synonym": [
"lüfter stufe 2",
"Lüfter Stufe 2",
"niedrig",
"zwei",
"Stufe 2"
]
}
]
},
{
"speed_name": "S3",
"speed_values": [
{
"lang": "en",
"speed_synonym": [
"fan stage 3",
"Fan Stage 3",
"medium",
"three"
]
},
{
"lang": "de",
"speed_synonym": [
"lüfter stufe 3",
"Lüfter Stufe 3",
"mittel",
"drei",
"Stufe 3"
]
}
]
}
],
"ordered": true
},
"reversible": false,
"colorModel": "rgb",
"commandOnlyColorSetting": true,
"availableToggles": [
{
"name": "Light",
"name_values": [
{
"name_synonym": [
"light"
],
"lang": "en"
}
]
},
{
"name": "backlight",
"name_values": [
{
"name_synonym": [
"backlight",
"mood light"
],
"lang": "en"
},
{
"name_synonym": [
"Hintergrundbeleuchtung",
"Stimmungslicht"
],
"lang": "de"
}
]
}
]
}
}
]
}
}
Best,
Frank
Your sync response provided above looks correct. Your concern about the command working flawlessly when you set the device type as LIGHT is because LIGHT does have a recommended trait as ColorSetting. To clarify your concern further, some device types do have better support for certain types of relevant grammar/language, which might explain why ColorSetting works better when the device type is set to light.
Google constantly works on the NLU (Natural Language Understanding) algorithms, so this grammar issue would be resolved by now and the ColorSetting trait should now be widely accessible to more devices.
More information about the HOOD and LIGHT device types and their associated traits along with sync, execute and query responses can be found here:
https://developers.google.com/assistant/smarthome/guides/hood
https://developers.google.com/assistant/smarthome/guides/light

Azure SQL Server ARM template deployment error messages

When deploying an ARM template for a single Azure SQL Server using the portal's exported template I get these errors that I cannot understand/classify/resolve. What does it want from me???
New-AzureRmResourceGroupDeployment : ... Resource Microsoft.Sql/servers...
- ./advisors 'sqls01/DbParameterization' failed
- ./advisors 'sqls01/DefragmentIndex' failed
- ./vulnerabilityAssessments 'sqls01/Default' failed
- ./databases/auditingPolicies 'sqls01/master/Default' failed
- ./databases/auditingSettings 'sqls01/master/Default' failed
- ./databases/vulnerabilityAssessments 'sqls01/master/Default' failed
The server deploys correctly, though; the template is working fine otherwise. Are these errors only 'warnings'; can they be ignored? How to supress them if so?
This is just to automate a standard Azure SQL Server deployment; automatic tuning, auditing etc are not configured (only transparent data encryption is). I googled the error messages, and also searched here but to no avail.
Does anyone see the same issue - surely I cannot release a deployment set that throws such four pages of red error lines even as the deployment succeeds what I can see in the resource group.
Here the ARM template's SQL Server parts for it:
,
{
"type": "Microsoft.Sql/servers",
"apiVersion": "2015-05-01-preview",
"name": "[parameters('servers_initialsql01_name')]",
"location": "[variables('rgLocation')]",
"kind": "v12.0",
"properties": {
"administratorLogin": "[parameters('sqls01LI')]",
"administratorLoginPassword": "[parameters('sqls01PW')]",
"version": "12.0"
}
},
...
,
{
"type": "Microsoft.Sql/servers/advisors",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/CreateIndex')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"autoExecuteValue": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/advisors",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/DbParameterization')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"autoExecuteValue": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/advisors",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/DefragmentIndex')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"autoExecuteValue": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/advisors",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/DropIndex')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"autoExecuteValue": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/advisors",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/ForceLastGoodPlan')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"autoExecuteValue": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/auditingPolicies",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/Default')]",
"location": "[variables('rgLocation')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"auditingState": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/auditingSettings",
"apiVersion": "2017-03-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/Default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"state": "Disabled",
"retentionDays": 0,
"auditActionsAndGroups": [],
"storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000",
"isStorageSecondaryKeyInUse": false
}
},
{
"type": "Microsoft.Sql/servers/databases/auditingPolicies",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/master/Default')]",
"location": "[variables('rgLocation')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"auditingState": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/databases/auditingSettings",
"apiVersion": "2017-03-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/master/Default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"state": "Disabled",
"retentionDays": 0,
"storageAccountSubscriptionId": "00000000-0000-0000-0000-000000000000",
"isStorageSecondaryKeyInUse": false
}
},
{
"type": "Microsoft.Sql/servers/databases/geoBackupPolicies",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/master/Default')]",
"location": "[variables('rgLocation')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"state": "Enabled"
}
},
{
"type": "Microsoft.Sql/servers/databases/securityAlertPolicies",
"apiVersion": "2018-06-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/master/Default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"state": "Disabled",
"disabledAlerts": [
""
],
"emailAddresses": [
""
],
"emailAccountAdmins": false,
"retentionDays": 0
}
},
{
"type": "Microsoft.Sql/servers/databases/transparentDataEncryption",
"apiVersion": "2014-04-01",
"name": "[concat(parameters('servers_initialsql01_name'), '/master/current')]",
"location": "[variables('rgLocation')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"status": "Disabled"
}
},
{
"type": "Microsoft.Sql/servers/databases/vulnerabilityAssessments",
"apiVersion": "2017-03-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/master/Default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"recurringScans": {
"isEnabled": false,
"emailSubscriptionAdmins": true
}
}
},
{
"type": "Microsoft.Sql/servers/encryptionProtector",
"apiVersion": "2015-05-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/current')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"kind": "servicemanaged",
"properties": {
"serverKeyName": "ServiceManaged",
"serverKeyType": "ServiceManaged"
}
},
{
"type": "Microsoft.Sql/servers/firewallRules",
"apiVersion": "2015-05-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/AllowAllWindowsAzureIps')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"startIpAddress": "0.0.0.0",
"endIpAddress": "0.0.0.0"
}
},
{
"type": "Microsoft.Sql/servers/keys",
"apiVersion": "2015-05-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/ServiceManaged')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"kind": "servicemanaged",
"properties": {
"serverKeyType": "ServiceManaged"
}
},
{
"type": "Microsoft.Sql/servers/securityAlertPolicies",
"apiVersion": "2017-03-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/Default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"state": "Disabled",
"disabledAlerts": [
""
],
"emailAddresses": [
""
],
"emailAccountAdmins": false,
"retentionDays": 0
}
},
{
"type": "Microsoft.Sql/servers/vulnerabilityAssessments",
"apiVersion": "2018-06-01-preview",
"name": "[concat(parameters('servers_initialsql01_name'), '/Default')]",
"dependsOn": [
"[resourceId('Microsoft.Sql/servers', parameters('servers_initialsql01_name'))]"
],
"properties": {
"recurringScans": {
"isEnabled": false,
"emailSubscriptionAdmins": true
}
}
},
I have just removed all those SQL Server-related definitions I mentioned in the OP except for the primary creator definition* from the template JSON. Deployment was fine again, but no error messages anymore. Downside is that I apparently need to do this additional manual step after every template (re-)export :(
*I just kept:
,
{
"type": "Microsoft.Sql/servers",
"apiVersion": "2015-05-01-preview",
"name": "[parameters('servers_initialsql01_name')]",
"location": "[variables('rgLocation')]",
"kind": "v12.0",
"properties": {
"administratorLogin": "[parameters('sqls01LI')]",
"administratorLoginPassword": "[parameters('sqls01PW')]",
"version": "12.0"
}
},

Resources