Rename voice_assistant to assist_pipeline (#16177)

This commit is contained in:
Bram Kragten 2023-04-13 23:25:32 +02:00 committed by GitHub
parent b21605e260
commit 689bc48f31
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 48 additions and 52 deletions

View File

@ -3,7 +3,7 @@ import type { ConversationResult } from "./conversation";
import type { ResolvedMediaSource } from "./media_source";
import type { SpeechMetadata } from "./stt";
export interface VoiceAssistantPipeline {
export interface AssistPipeline {
id: string;
conversation_engine: string;
language: string;
@ -12,7 +12,7 @@ export interface VoiceAssistantPipeline {
tts_engine: string;
}
export interface VoiceAssistantPipelineMutableParams {
export interface AssistPipelineMutableParams {
conversation_engine: string;
language: string;
name: string;
@ -131,7 +131,7 @@ export interface PipelineRun {
Partial<PipelineTTSEndEvent["data"]> & { done: boolean };
}
export const runVoiceAssistantPipeline = (
export const runAssistPipeline = (
hass: HomeAssistant,
callback: (event: PipelineRun) => void,
options: PipelineRunOptions
@ -213,43 +213,40 @@ export const runVoiceAssistantPipeline = (
},
{
...options,
type: "voice_assistant/run",
type: "assist_pipeline/run",
}
);
return unsubProm;
};
export const fetchVoiceAssistantPipelines = (hass: HomeAssistant) =>
hass.callWS<VoiceAssistantPipeline[]>({
type: "voice_assistant/pipeline/list",
export const fetchAssistPipelines = (hass: HomeAssistant) =>
hass.callWS<AssistPipeline[]>({
type: "assist_pipeline/pipeline/list",
});
export const createVoiceAssistantPipeline = (
export const createAssistPipeline = (
hass: HomeAssistant,
pipeline: VoiceAssistantPipelineMutableParams
pipeline: AssistPipelineMutableParams
) =>
hass.callWS<VoiceAssistantPipeline>({
type: "voice_assistant/pipeline/create",
hass.callWS<AssistPipeline>({
type: "assist_pipeline/pipeline/create",
...pipeline,
});
export const updateVoiceAssistantPipeline = (
export const updateAssistPipeline = (
hass: HomeAssistant,
pipelineId: string,
pipeline: Partial<VoiceAssistantPipelineMutableParams>
pipeline: Partial<AssistPipelineMutableParams>
) =>
hass.callWS<VoiceAssistantPipeline>({
type: "voice_assistant/pipeline/update",
hass.callWS<AssistPipeline>({
type: "assist_pipeline/pipeline/update",
pipeline_id: pipelineId,
...pipeline,
});
export const deleteVoiceAssistantPipeline = (
hass: HomeAssistant,
pipelineId: string
) =>
export const deleteAssistPipeline = (hass: HomeAssistant, pipelineId: string) =>
hass.callWS<void>({
type: "voice_assistant/pipeline/delete",
type: "assist_pipeline/pipeline/delete",
pipeline_id: pipelineId,
});

View File

@ -1,7 +1,7 @@
import { HomeAssistant } from "../types";
export const voiceAssistants = {
conversation: { domain: "voice_assistant", name: "Assist" },
conversation: { domain: "assist_pipeline", name: "Assist" },
"cloud.alexa": {
domain: "alexa",
name: "Amazon Alexa",

View File

@ -4,8 +4,8 @@ import "../../../../../../components/ha-button";
import {
PipelineRun,
PipelineRunOptions,
runVoiceAssistantPipeline,
} from "../../../../../../data/voice_assistant";
runAssistPipeline,
} from "../../../../../../data/assist_pipeline";
import "../../../../../../layouts/hass-subpage";
import "../../../../../../components/ha-formfield";
import "../../../../../../components/ha-checkbox";
@ -269,7 +269,7 @@ export class AssistPipelineDebug extends LitElement {
this._finished = false;
let added = false;
try {
await runVoiceAssistantPipeline(
await runAssistPipeline(
this.hass,
(updatedRun) => {
if (added) {

View File

@ -5,7 +5,7 @@ import "../../../../../../components/ha-alert";
import "../../../../../../components/ha-button";
import "../../../../../../components/ha-circular-progress";
import "../../../../../../components/ha-expansion-panel";
import type { PipelineRun } from "../../../../../../data/voice_assistant";
import type { PipelineRun } from "../../../../../../data/assist_pipeline";
import type { HomeAssistant } from "../../../../../../types";
import { formatNumber } from "../../../../../../common/number/format_number";

View File

@ -9,12 +9,12 @@ import "../../../components/ha-list-item";
import "../../../components/ha-switch";
import "../../../components/ha-button";
import {
createVoiceAssistantPipeline,
deleteVoiceAssistantPipeline,
fetchVoiceAssistantPipelines,
updateVoiceAssistantPipeline,
VoiceAssistantPipeline,
} from "../../../data/voice_assistant";
createAssistPipeline,
deleteAssistPipeline,
fetchAssistPipelines,
updateAssistPipeline,
AssistPipeline,
} from "../../../data/assist_pipeline";
import { showConfirmationDialog } from "../../../dialogs/generic/show-dialog-box";
import type { HomeAssistant } from "../../../types";
import { showVoiceAssistantPipelineDetailDialog } from "./show-dialog-voice-assistant-pipeline-detail";
@ -23,12 +23,12 @@ import { brandsUrl } from "../../../util/brands-url";
export class AssistPref extends LitElement {
@property({ attribute: false }) public hass!: HomeAssistant;
@state() private _pipelines: VoiceAssistantPipeline[] = [];
@state() private _pipelines: AssistPipeline[] = [];
protected firstUpdated(changedProps: PropertyValues) {
super.firstUpdated(changedProps);
fetchVoiceAssistantPipelines(this.hass).then((pipelines) => {
fetchAssistPipelines(this.hass).then((pipelines) => {
this._pipelines = pipelines;
});
}
@ -40,7 +40,7 @@ export class AssistPref extends LitElement {
<img
alt=""
src=${brandsUrl({
domain: "voice_assistant",
domain: "assist_pipeline",
type: "icon",
darkOptimized: this.hass.themes?.darkMode,
})}
@ -109,15 +109,15 @@ export class AssistPref extends LitElement {
this._openDialog();
}
private async _openDialog(pipeline?: VoiceAssistantPipeline): Promise<void> {
private async _openDialog(pipeline?: AssistPipeline): Promise<void> {
showVoiceAssistantPipelineDetailDialog(this, {
pipeline,
createPipeline: async (values) => {
const created = await createVoiceAssistantPipeline(this.hass!, values);
const created = await createAssistPipeline(this.hass!, values);
this._pipelines = this._pipelines!.concat(created);
},
updatePipeline: async (values) => {
const updated = await updateVoiceAssistantPipeline(
const updated = await updateAssistPipeline(
this.hass!,
pipeline!.id,
values
@ -145,7 +145,7 @@ export class AssistPref extends LitElement {
}
try {
await deleteVoiceAssistantPipeline(this.hass!, pipeline!.id);
await deleteAssistPipeline(this.hass!, pipeline!.id);
this._pipelines = this._pipelines!.filter((res) => res !== pipeline);
return true;
} catch (err: any) {
@ -186,6 +186,7 @@ export class AssistPref extends LitElement {
.card-header {
display: flex;
align-items: center;
padding-bottom: 0;
}
img {
height: 28px;

View File

@ -7,9 +7,9 @@ import { createCloseHeading } from "../../../components/ha-dialog";
import "../../../components/ha-form/ha-form";
import { SchemaUnion } from "../../../components/ha-form/types";
import {
VoiceAssistantPipeline,
VoiceAssistantPipelineMutableParams,
} from "../../../data/voice_assistant";
AssistPipeline,
AssistPipelineMutableParams,
} from "../../../data/assist_pipeline";
import { haStyleDialog } from "../../../resources/styles";
import { HomeAssistant } from "../../../types";
import { VoiceAssistantPipelineDetailsDialogParams } from "./show-dialog-voice-assistant-pipeline-detail";
@ -20,7 +20,7 @@ export class DialogVoiceAssistantPipelineDetail extends LitElement {
@state() private _params?: VoiceAssistantPipelineDetailsDialogParams;
@state() private _data?: Partial<VoiceAssistantPipeline>;
@state() private _data?: Partial<AssistPipeline>;
@state() private _error?: Record<string, string>;
@ -160,7 +160,7 @@ export class DialogVoiceAssistantPipelineDetail extends LitElement {
this._submitting = true;
try {
if (this._params!.pipeline?.id) {
const values: Partial<VoiceAssistantPipelineMutableParams> = {
const values: Partial<AssistPipelineMutableParams> = {
name: this._data!.name,
conversation_engine: this._data!.conversation_engine,
language: this._data!.language,
@ -170,7 +170,7 @@ export class DialogVoiceAssistantPipelineDetail extends LitElement {
await this._params!.updatePipeline(values);
} else {
await this._params!.createPipeline(
this._data as VoiceAssistantPipelineMutableParams
this._data as AssistPipelineMutableParams
);
}
this.closeDialog();

View File

@ -1,16 +1,14 @@
import { fireEvent } from "../../../common/dom/fire_event";
import {
VoiceAssistantPipeline,
VoiceAssistantPipelineMutableParams,
} from "../../../data/voice_assistant";
AssistPipeline,
AssistPipelineMutableParams,
} from "../../../data/assist_pipeline";
export interface VoiceAssistantPipelineDetailsDialogParams {
pipeline?: VoiceAssistantPipeline;
createPipeline: (
values: VoiceAssistantPipelineMutableParams
) => Promise<unknown>;
pipeline?: AssistPipeline;
createPipeline: (values: AssistPipelineMutableParams) => Promise<unknown>;
updatePipeline: (
updates: Partial<VoiceAssistantPipelineMutableParams>
updates: Partial<AssistPipelineMutableParams>
) => Promise<unknown>;
deletePipeline: () => Promise<boolean>;
}