Advertisement
LA_

AndroidTV + WOL + Home Assistant

LA_
Jan 10th, 2023
1,123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 5.50 KB | None | 0 0
  1. # https://www.home-assistant.io/integrations/wake_on_lan
  2. wake_on_lan:
  3. switch:
  4.   - platform: wake_on_lan
  5.     mac: 'd8:14:df:98:fd:22' # TV
  6.     turn_off:
  7.       service: androidtv.adb_command # https://www.home-assistant.io/integrations/androidtv/
  8.       target:
  9.         entity_id: media_player.android_tv_192_168_1_64
  10.       data:
  11.         command: 'POWER'
  12.  
  13. # option 1
  14. # default settings
  15. # - не работает: изменение громкости (как ползунком, так и плюс-минус), выбор источников (hdmi1, hdmi2), переключение каналов
  16. # - работает: включение и выключение, выбор источников (youtube), mute, пауза
  17.  
  18. # option 2
  19. # media_player based
  20. # https://www.home-assistant.io/integrations/universal/
  21. # - не работает: включение* (wake_on_lan было отключено), выключение, mute (failed to find service), выбор громкости ползунком, убавление громкости, выбор источника (hdmi1)
  22. # - работает: пауза, прибавление громкости, выбор источника (youtube)
  23. media_player:
  24.   - platform: universal
  25.     name: 'TV test'
  26.     children:
  27.      - media_player.android_tv_192_168_1_64
  28.     commands:
  29.       turn_on:
  30.         service: switch.turn_on
  31.         data: {}
  32.         target:
  33.           entity_id: switch.wake_on_lan
  34.       set_volume:
  35.          service: media_player.set_volume
  36.          target:
  37.            entity_id: media_player.android_tv_192_168_1_64
  38.       volume_up:
  39.         service: media_player.volume_up
  40.         target:
  41.           entity_id: media_player.android_tv_192_168_1_64
  42.       volume_down:
  43.         service: media_player.volume_down
  44.         target:
  45.           entity_id: media_player.android_tv_192_168_1_64
  46.       volume_mute:
  47.         service: media_player.mute_volume
  48.         target:
  49.           entity_id: media_player.android_tv_192_168_1_64
  50.       select_source:
  51.         service: media_player.select_source
  52.         target:
  53.           entity_id: media_player.android_tv_192_168_1_64
  54.       media_pause:
  55.         service: media_player.media_pause
  56.         target:
  57.           entity_id: media_player.android_tv_192_168_1_64
  58.  
  59.     device_class: tv
  60.     unique_id: 'tv_test'    
  61.  
  62. # option 3
  63. # androidtv based
  64. # https://www.home-assistant.io/integrations/androidtv/
  65. # https://github.com/home-assistant/core/blob/dev/homeassistant/components/androidtv/media_player.py
  66. # - не работает: ничего (нет сервисов androidtv.*, оказывается)
  67. # - работает: выключение
  68. media_player:
  69.   - platform: universal
  70.     name: 'TV test'
  71.     children:
  72.      - media_player.android_tv_192_168_1_64
  73.     commands:
  74.       turn_on:
  75.         service: switch.turn_on
  76.         data: {}
  77.         target:
  78.           entity_id: switch.wake_on_lan
  79.       set_volume:
  80.          service: androidtv.set_volume_level
  81.          target:
  82.            entity_id: media_player.android_tv_192_168_1_64      
  83.       volume_up:
  84.         service: androidtv.volume_up
  85.         target:
  86.           entity_id: media_player.android_tv_192_168_1_64
  87.       volume_down:
  88.         service: androidtv.volume_down
  89.         target:
  90.           entity_id: media_player.android_tv_192_168_1_64
  91.       volume_mute:
  92.         service: androidtv.mute_volume
  93.         target:
  94.           entity_id: media_player.android_tv_192_168_1_64
  95.       select_source:
  96.         service: androidtv.select_source
  97.         target:
  98.           entity_id: media_player.android_tv_192_168_1_64
  99.       media_pause:
  100.         service: androidtv.media_pause
  101.         target:
  102.           entity_id: media_player.android_tv_192_168_1_64
  103.     device_class: tv
  104.     unique_id: 'tv_test'  
  105.  
  106. # option 4
  107. # adb commands
  108. # https://github.com/JeffLIrion/python-androidtv/blob/master/androidtv/constants.py#L316
  109. # - не работает: выбор громкости, включение, пауза
  110. # - работает: прибавление громкости, убавление громкости, выключение, продолжение воспроизведения, выбор источника (просто показывает диалог выбора источника), выключение
  111. media_player:
  112.   - platform: universal
  113.     name: 'TV test'
  114.     children:
  115.      - media_player.android_tv_192_168_1_64
  116.     commands:
  117.       turn_on:
  118.         service: switch.turn_on
  119.         data: {}
  120.         target:
  121.           entity_id: switch.wake_on_lan
  122.       volume_up:
  123.         service: androidtv.adb_command
  124.         target:
  125.           entity_id: media_player.android_tv_192_168_1_64
  126.         data:
  127.           command: 'VOLUME_UP'    
  128.       volume_down:
  129.         service: androidtv.adb_command
  130.         target:
  131.           entity_id: media_player.android_tv_192_168_1_64
  132.         data:
  133.           command: 'VOLUME_DOWN'    
  134.       volume_mute:
  135.         service: androidtv.adb_command
  136.         target:
  137.           entity_id: media_player.android_tv_192_168_1_64
  138.         data:
  139.           command: 'MUTE'
  140.       select_source:        
  141.         service: androidtv.adb_command
  142.         target:
  143.           entity_id: media_player.android_tv_192_168_1_64
  144.         data:
  145.           command: 'INPUT'
  146.       media_pause:
  147.         service: androidtv.adb_command
  148.         target:
  149.           entity_id: media_player.android_tv_192_168_1_64
  150.         data:
  151.           command: 'CENTER'
  152.     device_class: tv
  153.     unique_id: 'tv_test'    
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement