added bar card and colors
This commit is contained in:
+68
-18
@@ -5,12 +5,12 @@
|
|||||||
## about the current played song and
|
## about the current played song and
|
||||||
## players current state
|
## players current state
|
||||||
## USAGE:
|
## USAGE:
|
||||||
|
## substitutions:
|
||||||
|
## music_card_enity_id: 'media_player.media_keuken_2'
|
||||||
## package:
|
## package:
|
||||||
## ...
|
## remote_package_files:
|
||||||
## card_music: !include
|
## url: https://github.com/dixi83/ESPHome_ButtonPlus
|
||||||
## file: cards/music.yaml
|
## files: [<other files>,'package/cards/music.yaml']
|
||||||
## vars:
|
|
||||||
## entity_id: media_player.xxxx
|
|
||||||
##
|
##
|
||||||
## display:
|
## display:
|
||||||
## - id: !extend main_display
|
## - id: !extend main_display
|
||||||
@@ -21,6 +21,7 @@
|
|||||||
## // insert music card:
|
## // insert music card:
|
||||||
## // >> id(music_card).execute(x, y);
|
## // >> id(music_card).execute(x, y);
|
||||||
## id(music_card).execute(20, 125);
|
## id(music_card).execute(20, 125);
|
||||||
|
## - id: !extend bar1_left
|
||||||
##
|
##
|
||||||
#####################################################
|
#####################################################
|
||||||
|
|
||||||
@@ -55,6 +56,26 @@ image:
|
|||||||
- file: mdi:download-box-outline
|
- file: mdi:download-box-outline
|
||||||
id: icon_music_buffering
|
id: icon_music_buffering
|
||||||
resize: 75x75
|
resize: 75x75
|
||||||
|
- file: mdi:volume-plus
|
||||||
|
id: icon_music_vol_up
|
||||||
|
resize: 75x75
|
||||||
|
- file: mdi:volume-minus
|
||||||
|
id: icon_music_vol_down
|
||||||
|
resize: 75x75
|
||||||
|
- file: mdi:skip-forward
|
||||||
|
id: icon_music_next
|
||||||
|
resize: 75x75
|
||||||
|
- file: mdi:skip-backward
|
||||||
|
id: icon_music_prev
|
||||||
|
resize: 75x75
|
||||||
|
|
||||||
|
color:
|
||||||
|
- id: music_card_text_color
|
||||||
|
hex: ${music_card_text_color}
|
||||||
|
- id: music_card_icon_main_color
|
||||||
|
hex: ${music_card_icon_main_color}
|
||||||
|
- id: music_card_icon_bar_color
|
||||||
|
hex: ${music_card_icon_bar_color}
|
||||||
|
|
||||||
text_sensor:
|
text_sensor:
|
||||||
- platform: homeassistant
|
- platform: homeassistant
|
||||||
@@ -62,6 +83,7 @@ text_sensor:
|
|||||||
entity_id: ${music_card_enity_id}
|
entity_id: ${music_card_enity_id}
|
||||||
attribute: media_album_name
|
attribute: media_album_name
|
||||||
on_value:
|
on_value:
|
||||||
|
- delay: 500ms
|
||||||
- script.execute: update_main
|
- script.execute: update_main
|
||||||
- platform: homeassistant
|
- platform: homeassistant
|
||||||
id: music_artist
|
id: music_artist
|
||||||
@@ -72,6 +94,7 @@ text_sensor:
|
|||||||
entity_id: ${music_card_enity_id}
|
entity_id: ${music_card_enity_id}
|
||||||
attribute: media_title
|
attribute: media_title
|
||||||
on_value:
|
on_value:
|
||||||
|
- delay: 500ms
|
||||||
- script.execute: update_main
|
- script.execute: update_main
|
||||||
- platform: homeassistant
|
- platform: homeassistant
|
||||||
id: music_playerstate
|
id: music_playerstate
|
||||||
@@ -88,29 +111,56 @@ script:
|
|||||||
- lambda: |-
|
- lambda: |-
|
||||||
// player state
|
// player state
|
||||||
if (strcmp(id(music_playerstate).state.c_str(), "off") == 0) {
|
if (strcmp(id(music_playerstate).state.c_str(), "off") == 0) {
|
||||||
id(main_display).image(x, 1+y, id(icon_music_off), ImageAlign::TOP_LEFT, id(orange));
|
id(main_display).image(x, 1+y, id(icon_music_off), ImageAlign::TOP_LEFT, id(music_card_icon_main_color));
|
||||||
} else if (strcmp(id(music_playerstate).state.c_str(), "on") == 0) {
|
} else if (strcmp(id(music_playerstate).state.c_str(), "on") == 0) {
|
||||||
id(main_display).image(x, 1+y, id(icon_music_on), ImageAlign::TOP_LEFT, id(orange));
|
id(main_display).image(x, 1+y, id(icon_music_on), ImageAlign::TOP_LEFT, id(music_card_icon_main_color));
|
||||||
} else if (strcmp(id(music_playerstate).state.c_str(), "idle") == 0) {
|
} else if (strcmp(id(music_playerstate).state.c_str(), "idle") == 0) {
|
||||||
id(main_display).image(x, 1+y, id(icon_music_idle), ImageAlign::TOP_LEFT, id(orange));
|
id(main_display).image(x, 1+y, id(icon_music_idle), ImageAlign::TOP_LEFT, id(music_card_icon_main_color));
|
||||||
} else if (strcmp(id(music_playerstate).state.c_str(), "playing") == 0) {
|
} else if (strcmp(id(music_playerstate).state.c_str(), "playing") == 0) {
|
||||||
id(main_display).image(x, 1+y, id(icon_music_play), ImageAlign::TOP_LEFT, id(orange));
|
id(main_display).image(x, 1+y, id(icon_music_play), ImageAlign::TOP_LEFT, id(music_card_icon_main_color));
|
||||||
} else if (strcmp(id(music_playerstate).state.c_str(), "paused") == 0) {
|
} else if (strcmp(id(music_playerstate).state.c_str(), "paused") == 0) {
|
||||||
id(main_display).image(x, 1+y, id(icon_music_pause), ImageAlign::TOP_LEFT, id(orange));
|
id(main_display).image(x, 1+y, id(icon_music_pause), ImageAlign::TOP_LEFT, id(music_card_icon_main_color));
|
||||||
} else if (strcmp(id(music_playerstate).state.c_str(), "standby") == 0) {
|
} else if (strcmp(id(music_playerstate).state.c_str(), "standby") == 0) {
|
||||||
id(main_display).image(x, 1+y, id(icon_music_standby), ImageAlign::TOP_LEFT, id(orange));
|
id(main_display).image(x, 1+y, id(icon_music_standby), ImageAlign::TOP_LEFT, id(music_card_icon_main_color));
|
||||||
} else if (strcmp(id(music_playerstate).state.c_str(), "buffering") == 0) {
|
} else if (strcmp(id(music_playerstate).state.c_str(), "buffering") == 0) {
|
||||||
id(main_display).image(x, 1+y, id(icon_music_buffering), ImageAlign::TOP_LEFT, id(orange));
|
id(main_display).image(x, 1+y, id(icon_music_buffering), ImageAlign::TOP_LEFT, id(music_card_icon_main_color));
|
||||||
}
|
}
|
||||||
//
|
//
|
||||||
// album
|
// album
|
||||||
id(main_display).image(75+3+x, 4+y, id(icon_music_album), ImageAlign::TOP_LEFT, id(orange));
|
id(main_display).image(75+3+x, 4+y, id(icon_music_album), ImageAlign::TOP_LEFT, id(music_card_icon_main_color));
|
||||||
id(main_display).print(75+25+x, 0+y, id(font_arial20), id(white), TextAlign::TOP_LEFT , id(music_album).state.c_str());
|
id(main_display).print(75+25+x, 0+y, id(font_arial20), id(music_card_text_color), TextAlign::TOP_LEFT , id(music_album).state.c_str());
|
||||||
//
|
//
|
||||||
// artist
|
// artist
|
||||||
id(main_display).image(75+3+x, 30+y, id(icon_music_artist), ImageAlign::TOP_LEFT, id(orange));
|
id(main_display).image(75+3+x, 30+y, id(icon_music_artist), ImageAlign::TOP_LEFT, id(music_card_icon_main_color));
|
||||||
id(main_display).print(75+25+x, 26+y, id(font_arial20), id(white), TextAlign::TOP_LEFT , id(music_artist).state.c_str());
|
id(main_display).print(75+25+x, 26+y, id(font_arial20), id(music_card_text_color), TextAlign::TOP_LEFT , id(music_artist).state.c_str());
|
||||||
//
|
//
|
||||||
// song title
|
// song title
|
||||||
id(main_display).image(75+3+x, 56+y, id(icon_music_songtitle), ImageAlign::TOP_LEFT, id(orange));
|
id(main_display).image(75+3+x, 56+y, id(icon_music_songtitle), ImageAlign::TOP_LEFT, id(music_card_icon_main_color));
|
||||||
id(main_display).print(75+25+x, 52+y, id(font_arial20), id(white), TextAlign::TOP_LEFT , id(music_title).state.c_str());
|
id(main_display).print(75+25+x, 52+y, id(font_arial20), id(music_card_text_color), TextAlign::TOP_LEFT , id(music_title).state.c_str());
|
||||||
|
- id: music_card_bar
|
||||||
|
parameters:
|
||||||
|
type: str
|
||||||
|
then:
|
||||||
|
- lambda: |-
|
||||||
|
if (strcmp(type, "volume_up") == 0) { // button "volume_up"
|
||||||
|
id(main_display).image(80, 2, id(icon_music_vol_up), ImageAlign::TOP_CENTER, id(music_card_icon_bar_color));
|
||||||
|
} else if (strcmp(type, "volume_down") == 0) { // button "volume_down"
|
||||||
|
id(main_display).image(80, 2, id(icon_music_vol_down), ImageAlign::TOP_CENTER, id(music_card_icon_bar_color));
|
||||||
|
} else if (strcmp(type, "next") == 0) { // button "next"
|
||||||
|
id(main_display).image(80, 2, id(icon_music_next), ImageAlign::TOP_CENTER, id(music_card_icon_bar_color));
|
||||||
|
} else if (strcmp(type, "prev") == 0) { // button "prev"
|
||||||
|
id(main_display).image(80, 2, id(icon_music_prev), ImageAlign::TOP_CENTER, id(music_card_icon_bar_color));
|
||||||
|
} else if (strcmp(type, "playpause") == 0) { // button "playpause"
|
||||||
|
if (strcmp(id(music_playerstate).state.c_str(), "playing") == 0) {
|
||||||
|
id(main_display).image(80, 2, id(icon_music_pause), ImageAlign::TOP_CENTER, id(music_card_icon_bar_color));
|
||||||
|
} else {
|
||||||
|
id(main_display).image(80, 2, id(icon_music_play), ImageAlign::TOP_CENTER, id(music_card_icon_bar_color));
|
||||||
|
}
|
||||||
|
} else if (strcmp(type, "power") == 0) { // button "power"
|
||||||
|
if (strcmp(id(music_playerstate).state.c_str(), "off") == 0) {
|
||||||
|
id(main_display).image(80, 2, id(icon_music_off), ImageAlign::TOP_CENTER, id(music_card_icon_bar_color));
|
||||||
|
} else {
|
||||||
|
id(main_display).image(80, 2, id(icon_music_on), ImageAlign::TOP_CENTER, id(music_card_icon_bar_color));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Reference in New Issue
Block a user