mirror of
https://github.com/GeorgeSG/sarah.git
synced 2026-05-02 23:54:25 +00:00
Use folder-card. Refactor youtube play scripts
This commit is contained in:
@@ -7,7 +7,7 @@ homeassistant:
|
||||
time_zone: Europe/Sofia
|
||||
packages: !include_dir_named packages
|
||||
whitelist_external_dirs:
|
||||
- /config/www/audio/youtube/pds
|
||||
- /config/www/audio/youtube
|
||||
|
||||
#
|
||||
# ─── HOME ASSISTANT COMPONENTS ENABLED ──────────────────────────────────────────
|
||||
|
||||
@@ -4,38 +4,47 @@ panel: false
|
||||
icon: mdi:youtube
|
||||
badges: []
|
||||
cards:
|
||||
- type: entities
|
||||
style: |
|
||||
ha-icon {
|
||||
color: red;
|
||||
}
|
||||
title: Youtube controls
|
||||
icon: mdi:youtube
|
||||
show_header_toggle: false
|
||||
entities:
|
||||
- entity: input_text.youtube_download_url
|
||||
type: "custom:text-input-row"
|
||||
- entity: input_text.youtube_download_name
|
||||
type: "custom:text-input-row"
|
||||
|
||||
- type: horizontal-stack
|
||||
- type: vertical-stack
|
||||
cards:
|
||||
- type: entity-button
|
||||
entity: script.youtube_download_selected
|
||||
name: Download
|
||||
icon: mdi:download
|
||||
icon_height: 48px
|
||||
- type: entities
|
||||
style: |
|
||||
ha-icon {
|
||||
color: red;
|
||||
}
|
||||
title: Youtube controls
|
||||
icon: mdi:youtube
|
||||
show_header_toggle: false
|
||||
entities:
|
||||
- entity: input_text.youtube_download_url
|
||||
type: "custom:text-input-row"
|
||||
- entity: input_text.youtube_download_name
|
||||
type: "custom:text-input-row"
|
||||
|
||||
- type: horizontal-stack
|
||||
cards:
|
||||
- type: entity-button
|
||||
entity: script.youtube_download_selected
|
||||
name: Download
|
||||
icon: mdi:download
|
||||
icon_height: 48px
|
||||
tap_action:
|
||||
action: call-service
|
||||
service: script.youtube_download_selected
|
||||
- type: entity-button
|
||||
entity: script.youtube_download_and_play
|
||||
name: Download & Play
|
||||
icon: mdi:youtube-tv
|
||||
icon_height: 48px
|
||||
tap_action:
|
||||
action: call-service
|
||||
service: script.youtube_download_and_play
|
||||
- type: custom:folder-card
|
||||
entity: sensor.youtube
|
||||
title: Available Youtube
|
||||
icon: "mdi:youtube"
|
||||
tap_action:
|
||||
action: call-service
|
||||
service: script.youtube_download_selected
|
||||
- type: entity-button
|
||||
entity: script.youtube_download_and_play
|
||||
name: Download & Play
|
||||
icon: mdi:youtube-tv
|
||||
icon_height: 48px
|
||||
tap_action:
|
||||
action: call-service
|
||||
service: script.youtube_download_and_play
|
||||
service: script.youtube_play_file
|
||||
|
||||
- type: custom:config-template-card
|
||||
entities:
|
||||
@@ -54,8 +63,10 @@ cards:
|
||||
service: script.youtube_play_latest_pds
|
||||
- type: custom:text-element
|
||||
text: "${states['sensor.philip_defranco'].state}"
|
||||
|
||||
- type: custom:text-element
|
||||
text: "Available:"
|
||||
- type: custom:text-element
|
||||
text: "${states['sensor.pds'].attributes.file_list.join('<br />')}"
|
||||
- type: custom:folder-card
|
||||
entity: sensor.pds
|
||||
title: Available PDS
|
||||
icon: "mdi:youtube"
|
||||
tap_action:
|
||||
action: call-service
|
||||
service: script.youtube_play_file
|
||||
|
||||
@@ -40,3 +40,5 @@
|
||||
url: /hacsfiles/travel-time-card/travel-time-card.js
|
||||
- type: module
|
||||
url: /hacsfiles/weather-card/weather-card.js
|
||||
- type: module
|
||||
url: /hacsfiles/lovelace-folder-card/folder-card.js
|
||||
|
||||
@@ -3,6 +3,8 @@ sensor:
|
||||
channel_id: UClFSU9_bUb4Rc6OYfTt5SPw
|
||||
- platform: folder
|
||||
folder: /config/www/audio/youtube/pds
|
||||
- platform: folder
|
||||
folder: /config/www/audio/youtube
|
||||
|
||||
input_text:
|
||||
youtube_download_url:
|
||||
@@ -18,20 +20,25 @@ shell_command:
|
||||
youtube_download: python3.7 /config/custom_scripts/youtube_download.py {{ url }} {{ name }} {{ folder }}
|
||||
|
||||
script:
|
||||
youtube_play_latest_pds:
|
||||
alias: Youtube · Play latest PDS
|
||||
youtube_play_file:
|
||||
alias: Youtube · Play file
|
||||
sequence:
|
||||
- service: script.music_join_sonoses
|
||||
- service: media_player.play_media
|
||||
data_template:
|
||||
entity_id: media_player.master_bedroom
|
||||
media_content_id: >
|
||||
|
||||
{% set last_pds = state_attr('sensor.pds', 'file_list') | sort | last %}
|
||||
{{ states('sensor.sarah_url') }}/local/audio/youtube/pds/{{ last_pds.split('/') | last }}
|
||||
|
||||
{{ states('sensor.sarah_url') }}/local{{ file.split('/config/www') | last }}
|
||||
media_content_type: "music"
|
||||
|
||||
youtube_play_latest_pds:
|
||||
alias: Youtube · Play latest PDS
|
||||
sequence:
|
||||
- service: script.youtube_play_file
|
||||
data_template:
|
||||
file: "{{ state_attr('sensor.pds', 'file_list') | sort | last }}"
|
||||
|
||||
|
||||
youtube_download_selected:
|
||||
alias: Youtube · Download selected video
|
||||
sequence:
|
||||
|
||||
Reference in New Issue
Block a user