custom-sentences.json•4.63 kB
{
"type": "object",
"properties": {
"language": {
"description": "The language of this custom sentence file.\nhttps://www.home-assistant.io/integrations/conversation/#adding-custom-sentences",
"type": "string"
},
"intents": {
"description": "Intents",
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"data": {
"description": "List of sentences/slots/etc.",
"type": "array",
"items": {
"type": "object",
"properties": {
"sentences": {
"description": "List of sentences for this intent.",
"type": "array",
"items": { "type": "string" }
},
"slots": {
"description": "Optional fixed slots for the recognized intent.",
"type": "object",
"additionalProperties": {
"anyOf": [
{ "type": "array", "items": { "type": "string" } },
{ "type": "string" }
]
}
},
"response": { "type": "string" },
"requires_context": {
"type": "object",
"additionalProperties": {
"anyOf": [
{ "type": "array", "items": { "type": "string" } },
{ "type": "string" }
]
}
},
"excludes_context": {
"type": "object",
"additionalProperties": {
"anyOf": [
{ "type": "array", "items": { "type": "string" } },
{ "type": "string" }
]
}
}
},
"additionalProperties": false,
"required": ["sentences"]
}
}
},
"additionalProperties": false,
"required": ["data"]
}
},
"lists": {
"description": "Optional lists of items that become alternatives in sentence templates. Referenced as {list_name} or {list_name:slot_name}.",
"type": "object",
"additionalProperties": {
"anyOf": [
{
"type": "object",
"properties": {
"values": {
"type": "array",
"items": {
"anyOf": [
{
"type": "object",
"properties": {
"in": { "type": "string" },
"out": { "type": "string" },
"context": {
"type": "object",
"additionalProperties": { "type": "string" }
}
},
"additionalProperties": false,
"required": ["in", "out"]
},
{ "type": "string" }
]
}
}
},
"additionalProperties": false,
"required": ["values"]
},
{
"type": "object",
"properties": {
"range": {
"type": "object",
"properties": {
"type": {
"enum": ["number", "percentage", "temperature"],
"type": "string"
},
"from": { "type": "number" },
"to": { "type": "number" }
},
"additionalProperties": false,
"required": ["from", "to"]
}
},
"additionalProperties": false,
"required": ["range"]
},
{
"type": "object",
"properties": { "wildcard": { "type": "boolean" } },
"additionalProperties": false,
"required": ["wildcard"]
}
]
}
},
"expansion_rules": {
"description": "Optional rules that are expanded in sentence templates.",
"type": "object",
"additionalProperties": { "type": "string" }
},
"skip_words": {
"description": "Optional words that the intent recognizer can skip during recognition.",
"type": "array",
"items": { "type": "string" }
}
},
"additionalProperties": false,
"required": ["intents", "language"],
"$schema": "http://json-schema.org/draft-07/schema#"
}