Improve trigger and action description for conversation (#23141)

This commit is contained in:
Paul Bottein 2024-12-05 17:01:04 +01:00 committed by GitHub
parent 4092f56ea5
commit 512fee47b6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 23 additions and 8 deletions

View File

@ -682,19 +682,27 @@ const tryDescribeTrigger = (
// Conversation Trigger
if (trigger.trigger === "conversation") {
if (!trigger.command) {
if (!trigger.command || !trigger.command.length) {
return hass.localize(
`${triggerTranslationBaseKey}.conversation.description.empty`
);
}
const commands = ensureArray(trigger.command);
if (commands.length === 1) {
return hass.localize(
`${triggerTranslationBaseKey}.conversation.description.single`,
{
sentence: commands[0],
}
);
}
return hass.localize(
`${triggerTranslationBaseKey}.conversation.description.full`,
`${triggerTranslationBaseKey}.conversation.description.multiple`,
{
sentence: formatListWithOrs(
hass.locale,
ensureArray(trigger.command).map((cmd) => `'${cmd}'`)
),
sentence: commands[0],
count: commands.length - 1,
}
);
}

View File

@ -486,6 +486,11 @@ const tryDescribeAction = <T extends ActionType>(
if (actionType === "set_conversation_response") {
const config = action as SetConversationResponseAction;
if (isTemplate(config.set_conversation_response)) {
return hass.localize(
`${actionTranslationBaseKey}.set_conversation_response.description.template`
);
}
return hass.localize(
`${actionTranslationBaseKey}.set_conversation_response.description.full`,
{ response: config.set_conversation_response }

View File

@ -3125,7 +3125,8 @@
"description": {
"picker": "When Assist matches a sentence from a voice assistant.",
"empty": "When a sentence is said",
"full": "When the sentence {sentence} is said"
"single": "When the sentence ''{sentence}'' is said",
"multiple": "When the sentence ''{sentence}'' or {count, plural,\n one {another}\n other {{count} others}\n} are said"
}
},
"tag": {
@ -3599,7 +3600,8 @@
"label": "Set conversation response",
"description": {
"picker": "Set response of conversation if automation was triggered by conversation trigger.",
"full": "Set response of conversation to {response}"
"template": "Set response of conversation to a template",
"full": "Set response of conversation to ''{response}''"
}
},
"unknown": {