Skip to content

Document Assist satellite ask_question #39733

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 7 commits into from
Jun 30, 2025
Merged

Conversation

synesthesiam
Copy link
Contributor

@synesthesiam synesthesiam commented Jun 26, 2025

Proposed change

Document Assist satellite's ask_question action: home-assistant/architecture#1150

Type of change

  • Spelling, grammar or other readability improvements (current branch).
  • Adjusted missing or incorrect information in the current documentation (current branch).
  • Added documentation for a new integration I'm adding to Home Assistant (next branch).
  • Added documentation for a new feature I'm adding to Home Assistant (next branch).
  • Removed stale or deprecated documentation.

Additional information

Checklist

  • This PR uses the correct branch, based on one of the following:
    • I made a change to the existing documentation and used the current branch.
    • I made a change that is related to an upcoming version of Home Assistant and used the next branch.
  • The documentation follows the Home Assistant documentation standards.

Summary by CodeRabbit

  • New Features
    • Introduced a new action to the Assist Satellite integration that allows prompting a question and processing spoken user responses.
    • Supports both text and media-based questions, customizable chime sounds, and answer matching with variable extraction.
    • Added multiple usage examples to the documentation for various scenarios.

@synesthesiam synesthesiam added this to the 2025.7 milestone Jun 26, 2025
@synesthesiam synesthesiam requested a review from a team as a code owner June 26, 2025 19:19
@home-assistant home-assistant bot added has-parent This PR has a parent PR in a other repo next This PR goes into the next branch labels Jun 26, 2025
Copy link

netlify bot commented Jun 26, 2025

Deploy Preview for home-assistant-docs ready!

Name Link
🔨 Latest commit 4d02ba3
🔍 Latest deploy log https://app.netlify.com/projects/home-assistant-docs/deploys/6862df4b9fb6dd00081b6a73
😎 Deploy Preview https://deploy-preview-39733--home-assistant-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link
Contributor

coderabbitai bot commented Jun 26, 2025

📝 Walkthrough

Walkthrough

A new action, assist_satellite.ask_question, has been added to the Assist Satellite integration. This action enables prompting the satellite with a question (as text or media), listens for a spoken user response, transcribes it, and matches it against predefined answers. The result is stored in a specified variable, with options for customizing pre-question chimes.

Changes

File(s) Change Summary
source/_integrations/assist_satellite.markdown Documented new assist_satellite.ask_question action, its parameters, response handling, and YAML usage examples.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant System
    participant AssistSatellite

    System->>AssistSatellite: ask_question (with question or media)
    AssistSatellite->>User: Play preannounce chime (optional)
    AssistSatellite->>User: Ask question (TTS or media)
    User->>AssistSatellite: Speak response
    AssistSatellite->>System: Transcribe response (STT)
    System->>System: Match response to answers (if provided)
    System->>System: Store result in response_variable
Loading

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai or @coderabbitai title anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

♻️ Duplicate comments (1)
source/_integrations/assist_satellite.markdown (1)

200-208: Same copy-paste error in third example

Repeats the wrong service name and the data:/target: inconsistency.

-action: assist_satellite.start_conversation
+action: assist_satellite.ask_question
-target:
+target:
   entity_id: assist_satellite.my_entity
   question: QUESTION
 response_variable: answer
 # do something with answer.sentence
🧹 Nitpick comments (1)
source/_integrations/assist_satellite.markdown (1)

115-136: Minor style/grammar nits

  1. “pre-defined” → “predefined”.
  2. “will be stored in the answer's slots field” → “in the answer’s slots field” (possessive apostrophe).
  3. Consider monospace formatting for slots.album / slots.artist to match other inline code.

No functional impact; purely readability.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge Base: Disabled due to data retention organization setting

📥 Commits

Reviewing files that changed from the base of the PR and between 1a1a65a and 0f7c78e.

📒 Files selected for processing (1)
  • source/_integrations/assist_satellite.markdown (1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
`source/_integrations/*`: Integration documentation must use the provided template structure and section order.

source/_integrations/*: Integration documentation must use the provided template structure and section order.

📄 Source: CodeRabbit Inference Engine (.github/copilot-instructions.md)

List of files the instruction was applied to:

  • source/_integrations/assist_satellite.markdown
🪛 LanguageTool
source/_integrations/assist_satellite.markdown

[duplication] ~118-~118: Possible typo: you repeated a word.
Context: ...ask_question` The {% my developer_call_service service="assist_satellite.ask_question" %} acti...

(ENGLISH_WORD_REPEAT_RULE)

🔇 Additional comments (1)
source/_integrations/assist_satellite.markdown (1)

141-160: ```shell
#!/bin/bash
set -e

echo "1. Showing lines 1-200 of assist_pipeline.markdown:"
sed -n '1,200p' source/_integrations/assist_pipeline.markdown


</details>

</blockquote></details>

</details>

<!-- This is an auto-generated comment by CodeRabbit for review status -->

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (3)
source/_integrations/assist_satellite.markdown (3)

116-118: Minor wording / duplication – drop the repeated “action” lead-in

…ask_question\ action asks a question on the satellite…` already conveys the subject; the leading “action” after the snippet is redundant and flagged by LanguageTool.

-The {% my developer_call_service service="assist_satellite.ask_question" %} action asks a question on the satellite, listens for a response, and matches it against a pre-defined list of possible answers.
+The {% my developer_call_service service="assist_satellite.ask_question" %} asks a question on the satellite, listens for a response, and matches it against a predefined list of possible answers.

172-174: Missing blank line before the subtitle “Examples in YAML”

All previous action sections include an empty line before the “Examples in YAML:” heading for readability; add the same here to keep formatting consistent.


196-206: Clarify variable access syntax in the no-answers example

Readers unfamiliar with Jinja might not realise answer.sentence is accessed via templates. Consider an inline comment for completeness:

# do something with answer.sentence  # e.g. {{ answer.sentence }}
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge Base: Disabled due to data retention organization setting

📥 Commits

Reviewing files that changed from the base of the PR and between 0f7c78e and 28482c3.

📒 Files selected for processing (1)
  • source/_integrations/assist_satellite.markdown (1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
`source/_integrations/*`: Integration documentation must use the provided template structure and section order.

source/_integrations/*: Integration documentation must use the provided template structure and section order.

📄 Source: CodeRabbit Inference Engine (.github/copilot-instructions.md)

List of files the instruction was applied to:

  • source/_integrations/assist_satellite.markdown
🪛 LanguageTool
source/_integrations/assist_satellite.markdown

[duplication] ~118-~118: Possible typo: you repeated a word.
Context: ...ask_question` The {% my developer_call_service service="assist_satellite.ask_question" %} acti...

(ENGLISH_WORD_REPEAT_RULE)

@frenck frenck requested a review from Copilot June 26, 2025 21:16
Copilot

This comment was marked as outdated.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

♻️ Duplicate comments (1)
source/_integrations/assist_satellite.markdown (1)

141-161: Keep the parameter nesting style consistent across all service-call examples

Existing announce and start_conversation snippets put all service parameters (including message, start_message, preannounce_media_id, …) under target:.
The newly-added ask_question examples switch to the canonical data: style, creating an internal docs inconsistency that will confuse copy-pasting users.

Either

  1. migrate all earlier snippets to the data: style, or
  2. keep the original (albeit unconventional) target: style and update the new examples accordingly.

If you choose option 2, something like this keeps the page self-consistent:

-action: assist_satellite.ask_question
-data:
+action: assist_satellite.ask_question
+target:
   entity_id: assist_satellite.my_entity
-  question: "Welcome home! What kind of music would you like to listen to?"
-  answers:
+  question: "Welcome home! What kind of music would you like to listen to?"
+  answers:
     - id: jazz
       sentences:
         - "[some] jazz [music] [please]"
         - "something spicy"
@@
-action: assist_satellite.ask_question
-data:
+action: assist_satellite.ask_question
+target:
   entity_id: assist_satellite.my_entity
-  question_media_id: ITEM_ID
-  answers: ANSWERS
+  question_media_id: ITEM_ID
+  answers: ANSWERS
@@
-action: assist_satellite.ask_question
-data:
+action: assist_satellite.ask_question
+target:
   entity_id: assist_satellite.my_entity
   preannounce_media_id: ITEM_ID  # custom chime
   question: QUESTION
   answers: ANSWERS
@@
-action: assist_satellite.ask_question
-data:
+action: assist_satellite.ask_question
+target:
   entity_id: assist_satellite.my_entity
   preannounce: false  # chime disabled
   question: QUESTION
   answers: ANSWERS

Replicate the adjustment for the “no answers” example further down as well.
Consistent structure avoids reader errors and keeps the docs looking polished.

Also applies to: 164-170, 176-184, 187-194

🧹 Nitpick comments (2)
source/_integrations/assist_satellite.markdown (2)

118-120: Minor wording nit – drop the repeated article

“…matches it against a a predefined list of possible answers.”

There’s a doubled “a”. Delete one to read cleanly:

“…matches it against a predefined list of possible answers.”


196-208: Consider adding a complete “choose” automation example

A maintainer previously asked whether a full choose: example should be included.
Showing how response_variable.id drives branching would make this section more actionable for readers.
(Only a suggestion—feel free to defer if scope-creep.)

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge Base: Disabled due to data retention organization setting

📥 Commits

Reviewing files that changed from the base of the PR and between 28482c3 and 0ae195c.

📒 Files selected for processing (1)
  • source/_integrations/assist_satellite.markdown (1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
`source/_integrations/*`: Integration documentation must use the provided template structure and section order.

source/_integrations/*: Integration documentation must use the provided template structure and section order.

📄 Source: CodeRabbit Inference Engine (.github/copilot-instructions.md)

List of files the instruction was applied to:

  • source/_integrations/assist_satellite.markdown
🪛 LanguageTool
source/_integrations/assist_satellite.markdown

[duplication] ~118-~118: Possible typo: you repeated a word.
Context: ...ask_question` The {% my developer_call_service service="assist_satellite.ask_question" %} acti...

(ENGLISH_WORD_REPEAT_RULE)

⏰ Context from checks skipped due to timeout of 90000ms (3)
  • GitHub Check: Redirect rules - home-assistant-docs
  • GitHub Check: Header rules - home-assistant-docs
  • GitHub Check: Pages changed - home-assistant-docs

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

♻️ Duplicate comments (4)
source/_integrations/assist_satellite.markdown (4)

141-147: YAML keys are invalid / inconsistent (actions: key + entity_id under data)

actions: is not a valid key for automations or scripts (use action: or sequence:).
Placing entity_id inside data: deviates from the earlier examples that put all service-targeting parameters under target: – a pattern users will copy-paste.

-actions:
+action:
   - action: assist_satellite.ask_question
-    data:
-      question: "Welcome home! What kind of music would you like to listen to?"
-      entity_id: assist_satellite.my_entity
+    target:
+      entity_id: assist_satellite.my_entity
+    data:
+      question: "Welcome home! What kind of music would you like to listen to?"

Apply the same key layout to keep the page internally consistent.


184-190: Move entity_id to target: section

For consistency with the rest of the document and with Home Assistant docs in general, keep the entity selection separate from the data payload:

-action: assist_satellite.ask_question
-data:
-  entity_id: assist_satellite.my_entity
-  question_media_id: ITEM_ID
-  answers: ANSWERS
+action: assist_satellite.ask_question
+target:
+  entity_id: assist_satellite.my_entity
+data:
+  question_media_id: ITEM_ID
+  answers: ANSWERS
 response_variable: answer

196-204: Chime-customisation example repeats the same layout issue

Replicate the target: / data: split here as well:

-action: assist_satellite.ask_question
-data:
-  entity_id: assist_satellite.my_entity
-  preannounce_media_id: ITEM_ID  # custom chime
-  question: QUESTION
-  answers: ANSWERS
+action: assist_satellite.ask_question
+target:
+  entity_id: assist_satellite.my_entity
+data:
+  preannounce_media_id: ITEM_ID  # custom chime
+  question: QUESTION
+  answers: ANSWERS
 response_variable: answer

206-214: Disabled-chime example needs the same correction

-action: assist_satellite.ask_question
-data:
-  entity_id: assist_satellite.my_entity
-  preannounce: false  # chime disabled
-  question: QUESTION
-  answers: ANSWERS
+action: assist_satellite.ask_question
+target:
+  entity_id: assist_satellite.my_entity
+data:
+  preannounce: false  # chime disabled
+  question: QUESTION
+  answers: ANSWERS
 response_variable: answer
🧹 Nitpick comments (9)
source/_integrations/zabbix.markdown (2)

67-71: Clarify wording & implications of the new option

The current description is technically correct but a bit ambiguous:

  1. “states which cannot be cast to a numeric value” → readers might not realise this includes all non-numeric values, e.g. "on", "idle", "standby", "home", etc.
  2. Enabling this can dramatically increase the number of discovered items in Zabbix (every textual state gets its own value_type = TEXT item). A brief hint about the potential item-count impact would help users decide whether to enable it.

Consider expanding the description:

-  description: Also publish string states, i.e. states which cannot be cast to a numeric value.
+  description: Publish non-numeric (string) states as TEXT items as well.  
+  Note: Enabling this may create many additional items in Zabbix because every
+  state that cannot be converted to a number (e.g. "on", "idle") will be sent
+  unchanged.

This keeps the docs concise while preventing surprises for operators.


119-119: Avoid subtle “default vs example” confusion

Above you document default: false, yet the full-configuration example sets publish_string_states: true. That’s perfectly valid, but some readers skim only the example and assume true is the default.

A quick inline comment could remove doubt:

  publish_string_states: true  # default is false – set to true to include TEXT states

No functional change, just clearer guidance.

source/_integrations/kostal_plenticore.markdown (3)

33-38: Bullet-list grammar / punctuation polish

LanguageTool is flagging missing sentence parts and punctuation.
At the moment every bullet ends abruptly and line 36 is missing a final period.
For consistency and to silence the linter, consider adding periods (or remove them everywhere) – e.g.

- - Should only be done if you fully understand the implications
+ - Should only be done if you fully understand the implications.

173-178: Call out installer-only sensors explicitly

Nice addition!
Because these entities are potentially dangerous, you may want to label the table header or put the whole block inside an {% warning %} like you did earlier, e.g.

-| Name                    | Unit | RW | Description   |
+| **Installer-only sensors** |     |    |               |
+| Name                    | Unit | RW | Description   |

That makes the extra risk unmistakable.


197-202: Minor wording & comma – improve flow

A tiny style tweak to read more naturally and satisfy the linter:

-The Battery Manual Charge sensor allows you to force charge the battery to 100%, regardless of PV generation or home usage.
-This setting is available when using installer access and should therefore only be used with the same caution as using installer access.
-More on [Installer Access](#installer-access)
+The **Battery Manual Charge** sensor lets you force-charge the battery to 100 %, regardless of PV generation or home usage.  
+This setting is available **only** when installer access is enabled, and it should therefore be used with the same caution.  
+For details, see [Installer access](#installer-access).
source/_integrations/tesla_fleet.markdown (3)

135-135: Remove repeated verb in “polling polls” sentence

The verb “polling polls” is duplicated. Dropping the first instance keeps the sentence clear.

- The {% term integration %} {% term polling polls %} each vehicle every 10 minutes while it's awake.
+ The {% term integration %} {% term polling %} each vehicle every 10 minutes while it's awake.

141-141: Use “set up” (verb) instead of “setup” (noun)

- ... and the key has not been setup correctly.
+ ... and the key has not been set up correctly.

146-146: Add a comma after “For more details”

- For more details see [Tesla Fleet API vehicle commands documentation](https://developer.tesla.com/docs/fleet-api/endpoints/vehicle-commands#key-pairing).
+ For more details, see [Tesla Fleet API vehicle commands documentation](https://developer.tesla.com/docs/fleet-api/endpoints/vehicle-commands#key-pairing).
source/_integrations/template.markdown (1)

385-385: Clarify case-insensitivity & tighten wording

The availability section above explicitly states that string comparisons are case-insensitive; it would be good to keep this behaviour consistent here and avoid potential reader confusion.

-      description: The sensor is `on` if the template evaluates as `True`, `yes`, `on`, `enable` or a positive number. The sensor is `unknown` if the template evaluates as `None`. Any other value will render it as `off`. The actual appearance in the frontend (`Open`/`Closed`, `Detected`/`Clear` etc) depends on the sensor's device_class value
+      description: The sensor is `on` if the template evaluates as `True`, `yes`, `on`, `enable` or a positive number (string comparisons are case-insensitive). The sensor is `unknown` if the template evaluates to `None`. Any other value renders it as `off`. The actual appearance in the frontend (`Open`/`Closed`, `Detected`/`Clear`, etc.) depends on the sensor's `device_class` value.
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge Base: Disabled due to data retention organization setting

📥 Commits

Reviewing files that changed from the base of the PR and between 0ae195c and e232b49.

📒 Files selected for processing (7)
  • source/_integrations/assist_satellite.markdown (1 hunks)
  • source/_integrations/dweet.markdown (0 hunks)
  • source/_integrations/kostal_plenticore.markdown (3 hunks)
  • source/_integrations/template.markdown (1 hunks)
  • source/_integrations/tesla_fleet.markdown (1 hunks)
  • source/_integrations/zabbix.markdown (2 hunks)
  • source/_redirects (1 hunks)
💤 Files with no reviewable changes (1)
  • source/_integrations/dweet.markdown
✅ Files skipped from review due to trivial changes (1)
  • source/_redirects
🧰 Additional context used
🪛 LanguageTool
source/_integrations/assist_satellite.markdown

[duplication] ~118-~118: Possible typo: you repeated a word.
Context: ...ask_question` The {% my developer_call_service service="assist_satellite.ask_question" %} acti...

(ENGLISH_WORD_REPEAT_RULE)

source/_integrations/tesla_fleet.markdown

[grammar] ~135-~135: You’ve repeated a verb. Did you mean to only write one of them?
Context: ...tes The {% term integration %} {% term polling polls %} each vehicle every 10 minutes while ...

(REPEATED_VERBS)


[grammar] ~141-~141: Make sure that the noun ‘setup’ is correct. Did you mean the past participle “set up”?
Context: ...is is required and the key has not been setup correctly. Your public key must be add...

(BE_VB_OR_NN)


[uncategorized] ~146-~146: Possible missing comma found.
Context: ...webpage and finish the setup. For more details see [Tesla Fleet API vehicle commands d...

(AI_HYDRA_LEO_MISSING_COMMA)

source/_integrations/kostal_plenticore.markdown

[style] ~33-~33: To form a complete sentence, be sure to include a subject.
Context: ...ing %} Using installer credentials: - Should only be done if you fully understand th...

(MISSING_IT_THERE)


[uncategorized] ~36-~36: A period might be missing here.
Context: ...onfigured - Should be done with extreme caution {% endwarning %} To enable installer ...

(AI_EN_LECTOR_MISSING_PUNCTUATION_PERIOD)


[uncategorized] ~200-~200: Possible missing comma found.
Context: ...tting is available when using installer access and should therefore only be used with ...

(AI_HYDRA_LEO_MISSING_COMMA)

@frenck frenck requested a review from Copilot June 30, 2025 17:30
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request updates the documentation to support new features and improvements for Home Assistant. It introduces documentation for the new assist_satellite.ask_question action, updates changes for integrations such as Zabbix, Tesla Fleet, and Kostal Plenticore, and removes the deprecated Dweet integration documentation.

Reviewed Changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated no comments.

Show a summary per file
File Description
source/_redirects Added redirect entry for the removed Dweet integration.
source/_integrations/zabbix.markdown Added new configuration option for publishing string states.
source/_integrations/tesla_fleet.markdown Updated and restructured setup instructions and configuration details.
source/_integrations/template.markdown Clarified binary sensor state description with the addition of the 'unknown' state.
source/_integrations/kostal_plenticore.markdown Documented a new sensor for Battery Manual Charge when using installer access.
source/_integrations/dweet.markdown Removed the deprecated Dweet integration documentation.
source/_integrations/assist_satellite.markdown Added detailed documentation and examples for the new ask_question action.

Copy link
Member

@frenck frenck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems like something went wrong here @synesthesiam?

There are unrelated things now in this pull request. Could you take a look?

../Frenck

@home-assistant home-assistant bot marked this pull request as draft June 30, 2025 17:31
@home-assistant
Copy link

Please take a look at the requested changes, and use the Ready for review button when you are done, thanks 👍

Learn more about our pull request process.

@synesthesiam synesthesiam force-pushed the synesthesiam-20250626-ask-question branch from e232b49 to 84b5119 Compare June 30, 2025 18:46
@synesthesiam synesthesiam marked this pull request as ready for review June 30, 2025 18:46
@home-assistant home-assistant bot requested a review from frenck June 30, 2025 18:46
@synesthesiam
Copy link
Contributor Author

Cleaned it up 👍

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

♻️ Duplicate comments (3)
source/_integrations/assist_satellite.markdown (3)

139-161: YAML structure deviates from earlier examples and official pattern

Earlier examples in this same document place all parameters under target: (even service-specific ones).
The new example switches to a separate data: block and also puts entity_id inside data: instead of target:, creating three different styles in one page.

For consistency and to stay aligned with Home Assistant’s recommended service-call syntax, use:

-  - action: assist_satellite.ask_question
-    data:
-      question: "Welcome home! What kind of music would you like to listen to?"
-      entity_id: assist_satellite.my_entity
+  - action: assist_satellite.ask_question
+    target:
+      entity_id: assist_satellite.my_entity
+    data:
+      question: "Welcome home! What kind of music would you like to listen to?"
       answers:
         …

Apply the same pattern to the other ask_question snippets below.
(See identical comment left on earlier commit.)


174-179: Level mix-up: data: sibling of target:

In this follow-up announce call, data: and target: are on the same level, which is valid, but earlier in the page message was shown inside target:.
Pick one style and stick to it; mixing both increases copy-paste errors.

Recommend moving message under data::

-      - action: assist_satellite.announce
-        data:
-          message: "OK, maybe some other time."
-        target:
-          entity_id: assist_satellite.my_entity
+      - action: assist_satellite.announce
+        target:
+          entity_id: assist_satellite.my_entity
+        data:
+          message: "OK, maybe some other time."

183-190: entity_id should live under target:

Same structural issue here; place entity_id under target: to match HA service-call guidelines.

-action: assist_satellite.ask_question
-data:
-  entity_id: assist_satellite.my_entity
+action: assist_satellite.ask_question
+target:
+  entity_id: assist_satellite.my_entity
+data:
   question_media_id: ITEM_ID
   answers: ANSWERS
 response_variable: answer
🧹 Nitpick comments (1)
source/_integrations/assist_satellite.markdown (1)

118-118: Minor typo – double-space falsely trips spell-checker

LanguageTool flags a “word repeat” here because of the double space after the back-tick.
Drop the extra space to silence the linter.

-The {% my developer_call_service service="assist_satellite.ask_question" %}  action asks
+The {% my developer_call_service service="assist_satellite.ask_question" %} action asks
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge Base: Disabled due to data retention organization setting

📥 Commits

Reviewing files that changed from the base of the PR and between e232b49 and 84b5119.

📒 Files selected for processing (1)
  • source/_integrations/assist_satellite.markdown (1 hunks)
🧰 Additional context used
🪛 LanguageTool
source/_integrations/assist_satellite.markdown

[duplication] ~118-~118: Possible typo: you repeated a word.
Context: ...ask_question` The {% my developer_call_service service="assist_satellite.ask_question" %} acti...

(ENGLISH_WORD_REPEAT_RULE)

🔇 Additional comments (1)
source/_integrations/assist_satellite.markdown (1)

196-214: Keep examples uniform – fix preannounce variants too

Both custom-chime and chime-disabled examples repeat the entity_id-in-data: pattern. Please adjust as in previous comments so readers don’t have to mentally translate between styles.

No further content issues detected.

Copy link
Member

@frenck frenck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @synesthesiam 👍

../Frenck

@frenck frenck merged commit adf7251 into next Jun 30, 2025
8 of 9 checks passed
@frenck frenck deleted the synesthesiam-20250626-ask-question branch June 30, 2025 19:04
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🧹 Nitpick comments (2)
source/_integrations/assist_satellite.markdown (2)

118-118: Minor wording glitch – repeated article
Static-analysis flagged a duplicated “The The” at the start of this sentence. Worth a quick pass to ensure it reads cleanly and avoids distraction in the rendered docs.


183-185: Remove the extra blank line to satisfy markdown-lint (MD012)

There are two consecutive empty lines here; trimming one keeps the document tidy and silences the linter.

-
-
 Instead of text, the question can also be a media ID:
+
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge Base: Disabled due to data retention organization setting

📥 Commits

Reviewing files that changed from the base of the PR and between 84b5119 and 4d02ba3.

📒 Files selected for processing (1)
  • source/_integrations/assist_satellite.markdown (1 hunks)
🧰 Additional context used
🪛 LanguageTool
source/_integrations/assist_satellite.markdown

[duplication] ~118-~118: Possible typo: you repeated a word.
Context: ...ask_question` The {% my developer_call_service service="assist_satellite.ask_question" %} acti...

(ENGLISH_WORD_REPEAT_RULE)

🪛 markdownlint-cli2 (0.17.2)
source/_integrations/assist_satellite.markdown

185-185: Multiple consecutive blank lines
Expected: 1; Actual: 2

(MD012, no-multiple-blanks)

Comment on lines +141 to +163
{% raw %}

```yaml
actions:
- action: assist_satellite.ask_question
data:
question: "Welcome home! What kind of music would you like to listen to?"
entity_id: assist_satellite.my_entity
answers:
- id: jazz
sentences:
- "[some] jazz [music] [please]"
- "something spicy"
- id: rock
sentences:
- "[some] rock [music] [please]"
- "something with a beat"
- id: nothing
sentences:
- "nothing [for now] [please]"
- "nevermind"
- "cancel"
response_variable: answer
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Move entity_id to target: and keep parameters under data:

Current example places entity_id under data: and mixes service parameters in the same block.
The canonical Home Assistant service-call shape is:

action: <service>
target:
  entity_id: <entity>
data:
  <service-specific-fields>

Applying that pattern keeps these docs consistent with all other integration pages and with the UI-generated YAML, reducing copy/paste errors.

-    data:
-      question: "Welcome home! What kind of music would you like to listen to?"
-      entity_id: assist_satellite.my_entity
-      answers:
+    target:
+      entity_id: assist_satellite.my_entity
+    data:
+      question: "Welcome home! What kind of music would you like to listen to?"
+      answers:

Replicate the same split for the default branch’s assist_satellite.announce call (move entity_id out of data:).

🤖 Prompt for AI Agents
In source/_integrations/assist_satellite.markdown between lines 141 and 163, the
YAML example incorrectly places entity_id under data:, mixing it with service
parameters. To fix this, move entity_id under a new target: key, separate from
data:, which should only contain service-specific fields. Also, apply the same
change to the default branch’s assist_satellite.announce call by moving its
entity_id out of data: into target: to maintain consistency with Home
Assistant's canonical service-call structure.

Comment on lines +201 to +209
```yaml
action: assist_satellite.ask_question
data:
entity_id: assist_satellite.my_entity
preannounce_media_id: ITEM_ID # custom chime
question: QUESTION
answers: ANSWERS
response_variable: answer
```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

YAML style consistency – target vs data

This example still mixes entity_id with other parameters. Align with the previous suggestion so readers don’t have to mentally switch styles between snippets.

🤖 Prompt for AI Agents
In source/_integrations/assist_satellite.markdown around lines 201 to 209, the
YAML example uses `data` to group parameters but includes `entity_id` inside it,
mixing styles. To fix this, move `entity_id` out of the `data` section and place
it at the same level as `action` and `response_variable`, aligning with the
previous examples for consistent YAML style.

Comment on lines +211 to +219
```yaml
action: assist_satellite.ask_question
data:
entity_id: assist_satellite.my_entity
preannounce: false # chime disabled
question: QUESTION
answers: ANSWERS
response_variable: answer
```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Final example: apply the same structural correction

Keeping one consistent snippet style throughout the page prevents confusion and avoids inadvertent misconfiguration.

🤖 Prompt for AI Agents
In source/_integrations/assist_satellite.markdown around lines 211 to 219, the
YAML snippet style is inconsistent with the rest of the page. Update this
snippet to match the consistent snippet style used elsewhere on the page to
maintain uniformity and prevent confusion or misconfiguration.

Comment on lines +188 to +195
```yaml
action: assist_satellite.ask_question
data:
entity_id: assist_satellite.my_entity
question_media_id: ITEM_ID
answers: ANSWERS
response_variable: answer
```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Same entity/parameter separation applies here

For consistency (and to match what the automation editor produces) please move entity_id to target: and keep question_media_id/answers under data:.

🤖 Prompt for AI Agents
In source/_integrations/assist_satellite.markdown around lines 188 to 195, the
YAML structure places entity_id under data, but for consistency and to match the
automation editor, move entity_id out of data and place it under a new target:
key, while keeping question_media_id and answers under data:. Adjust the
indentation accordingly to reflect this separation.

@github-actions github-actions bot locked and limited conversation to collaborators Jul 1, 2025
@frenck frenck added the cherry-picked This PR has been manually picked and merged into the current branch label Jul 2, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
cherry-picked This PR has been manually picked and merged into the current branch has-parent This PR has a parent PR in a other repo next This PR goes into the next branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants