trigger: music and conversation
Music Assistant
ha voice pe
alias: 播放音乐意图
description: ""
triggers:
- trigger: conversation
command:
- 播放{name}(的歌|的歌曲|的专辑)
id: album
- trigger: conversation
command:
- 播放(音乐|上一首|上1首|下一首|下1首)
id: play
- trigger: conversation
command: 播放歌曲{title}
id: track
conditions: []
actions:
- alias: 判断漫步者音响有没有开机
if:
- condition: state
entity_id: media_player.man_bu_zhe_yin_xiang
state: "off"
then:
- action: script.1663317296306
metadata: {}
data: {}
- delay:
hours: 0
minutes: 0
seconds: 1
- action: shell_command.bt_speeker_connect
data: {}
- alias: 播放某某的歌曲专辑
if:
- condition: trigger
id:
- album
then:
- action: music_assistant.search
data:
limit: 10
library_only: true
config_entry_id: 01JGDGA7ZKA72W5VTN6YP6XG9D
media_type:
- artist
- playlist
name: "{{ trigger.slots.name }}"
response_variable: results
alias: 音乐搜索校验
- if:
- condition: or
conditions:
- condition: template
value_template: "{{ results.artists | length > 0}}"
- condition: template
value_template: "{{ results.playlists | length > 0}}"
then:
- if:
- condition: state
entity_id: device_tracker.edifier_bluetooth_edifier_bluetooth_tracker
state: home
then:
- set_conversation_response: "{{ trigger.slots.name }}的歌已经播放"
else:
- delay:
hours: 0
minutes: 0
seconds: 2
- set_conversation_response: "{{ trigger.slots.name }}的歌已经播放"
- delay:
hours: 0
minutes: 0
seconds: 3
- action: media_player.shuffle_set
metadata: {}
data:
shuffle: false
target:
entity_id: media_player.vlc_telnet_ma
- action: music_assistant.play_media
target:
entity_id:
- media_player.vlc_telnet_ma
data:
media_id: "{{ trigger.slots.name }}"
media_type: >-
{% if results.playlists | length > 0 %}playlist{% else
%}artist{% endif %}
enqueue: replace
else:
- set_conversation_response: 抱歉,没有找到{{ trigger.slots.name }}的歌曲!
- alias: 播放音乐、上一首、下一首
if:
- condition: trigger
id:
- play
then:
- if:
- condition: template
value_template: "{{ trigger.sentence=='播放音乐' }}"
then:
- alias: 判断音响关机开机延迟操作
if:
- condition: state
entity_id: media_player.man_bu_zhe_yin_xiang
state: "off"
then:
- delay:
hours: 0
minutes: 0
seconds: 1
- set_conversation_response: 已经随机开始播放音乐
- delay:
hours: 0
minutes: 0
seconds: 2
else:
- set_conversation_response: 好的
- action: media_player.shuffle_set
metadata: {}
data:
shuffle: true
target:
entity_id:
- media_player.vlc_telnet_ma
- action: music_assistant.play_media
target:
entity_id:
- media_player.vlc_telnet_ma
data:
media_id: library://playlist/14
media_type: playlist
enqueue: replace
- if:
- condition: template
value_template: "{{ trigger.sentence in ("播放上一首", "播放上1首")}}"
then:
- action: media_player.media_previous_track
metadata: {}
data: {}
target:
entity_id:
- media_player.vlc_telnet_ma
- set_conversation_response: 搞定
- if:
- condition: template
value_template: "{{ trigger.sentence in ("播放下一首", "播放下1首")}}"
then:
- action: media_player.media_next_track
metadata: {}
data: {}
target:
entity_id:
- media_player.vlc_telnet_ma
- set_conversation_response: 搞定
- alias: 播放某某歌曲
if:
- condition: trigger
id:
- track
then:
- action: music_assistant.search
data:
limit: 1
library_only: true
config_entry_id: 01JGDGA7ZKA72W5VTN6YP6XG9D
media_type:
- track
name: "{{ trigger.slots.title }}"
response_variable: results2
alias: 音乐搜索校验
- if:
- condition: template
value_template: "{{ results2.tracks | length > 0}}"
then:
- if:
- condition: state
entity_id: device_tracker.edifier_bluetooth_edifier_bluetooth_tracker
state: home
then:
- set_conversation_response: 歌曲{{ trigger.slots.title }}已经播放
else:
- delay:
hours: 0
minutes: 0
seconds: 2
- set_conversation_response: 歌曲{{ trigger.slots.title }}已经播放
- delay:
hours: 0
minutes: 0
seconds: 3
- action: music_assistant.play_media
target:
entity_id:
- media_player.vlc_telnet_ma
data:
media_id: "{{ trigger.slots.title }}"
media_type: track
enqueue: replace
else:
- set_conversation_response: 抱歉,没有{{ trigger.slots.title }}这首歌!
mode: single
search Music Assistant语音命令随机播放nas歌曲(手拉手教程 on wechat
Comments
Comments are closed