I have a Shelly wall display x2 and use the display for showing HA panels.
It works fine, but when I send notification text messages, then I would like Shelly wall display to make at sound (bip-sound) og even greater if I can make a tts message (like I already can to my mobile phones).
I haven’t found a way to get the wall display to make any sound at all. Can anyone help me ?
Does the Shelly expose media_player entities? If it doesn’t, then there’s not much you can do
No ![]()
Thanx - then I don’t need to spend more time to get Shelly to play anything.
you can use rest api, see list if useful commands
https://community.shelly.cloud/topic/1793-walldisplay-list-for-useful-rpc-commands/
e. g. I use the following rest_command
# data:
# x: 180 # ([0..719])
# y: 180 # ([0..719])
shelly_display_tap_command:
url: 'http://192.168.200.34/rpc/Ui.Tap?x={{x}}&y={{y}}'
authentication: digest
username: 'admin'
password: !secret shelly_password
OK - then I have to try harder ![]()
I have setup some rest in my config - I also want to turn on and off the display as well.
But I don’t know how to send the rest command to the display.
I have tryed to do this by making “turn off the screen”.
I have in config file:
rest_command:
shelly_wall_display_off:
url: “http://192.168.0.5//rpc/Ui.Screen.Set?params={\“on\”:false}”
method: POST
payload: “”
shelly_wall_display_on:
url: “http://192.168.0.5//rpc/Ui.Screen.Set?params={\“on\”:true}”
method: POST
payload: “”
But can’t integrate this in an automation.
I can press this - and it works fine:

And had the plan to integrate this into a automation, but dont know how to do this
So basic question - how do I setup these information in an HA automation ?
Action in automation: ??? don’t know how to do:
action: button.press
metadata: {}
target:
entity_id:
- button.shellywalldisplay_00a90b53e40d_turn_off_the_screen
data: {}
What I want in an automation is something like this:
actions:
type: tile
entity: button.shellywalldisplay_00a90b53e40d_turn_off_the_screen
name: Displ OFF
vertical: false
tap_action:
action: toggle
features_position: bottom
My setup:
in configuration.yaml:
rest_command: !include rest_command.yaml
in secrets.yaml (only needed if you set a password for your Shelly device):
shelly_password: myVerySecretPassword
in rest_command.yaml:
# data: {}
shelly_display_app_restart:
url: 'http://192.168.200.34/rpc/Sys.RestartApplication'
authentication: digest
username: 'admin'
password: !secret shelly_password
# data:
# x: 180 # ([0..719])
# y: 180 # ([0..719])
shelly_display_tap_command:
url: 'http://192.168.200.34/rpc/Ui.Tap?x={{x}}&y={{y}}'
authentication: digest
username: 'admin'
password: !secret shelly_password
reload RESTful commands in developer options.
Then in an automation I can then use the rest_command with some error handling:
actions:
- action: rest_command.shelly_display_tap_command
data:
x: "360"
y: "700"
response_variable: return_struct
- if:
- condition: template
value_template: "{{ return_struct['content']['response'] != '' }}"
then:
- action: notify.persistent_notification
data:
title: shelly_display_tap_command
message: "{{ return_struct['content']['response'] }}"
Thanx ![]()
I have not yet had time to get sound to work.
But if you can get it to work, then I also can with some help ![]()
It is directly like in the above examples, look in the link above for useful commands, e.g. to play a ringtone from the pre-configured ones
follow instructions from above and add:
# data:
# id: 1 # ([1..numbeOfRingtones])
# volume: 8 # ([1..maxVolume])
shelly_display_play_ringtone:
url: 'http://192.168.200.34/rpc/Media.MediaPlayer.PlayRingtone?id={{id}}&volume={{volume}}'
authentication: digest
username: 'admin'
password: !secret shelly_password
and then you can play a ringtone like this:
action: rest_command.shelly_display_play_ringtone
data:
id: 1
volume: 8
response_variable: return_struct

