Aktuelles TV-Programm in FHEM

Begonnen von Kuzl, 20 Oktober 2014, 20:41:43

Vorheriges Thema - Nächstes Thema

moonsorrox

ich denke ich werde mir soetwas mal abkupfern müssen, da bei mir Updatemäßig gar nichts passiert, steht wieder mal irgend etwas bei 17 Uhr von gestern... das ist Mist...! :-\
Mal schauen welche Variante da für mich in Frage kommt... sehe noch nicht ganz durch, aber werde das einfach mal bauen und schauen wo es hängt  ;)
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

Doggiebert

für Interessierte: schöne, einfache Logos mit transparentem Hintergrund:
http://www.kodinerds.net/index.php?page=Thread&threadID=27408
SW: FHEM 5.5, Raspian, XBMC, Testinstallation auf Win7
HW: Raspi B, 32GB SD, enocean Pi, RFXTRX433E, BSC - MwC-32, Onkyo TX-NR709, Samsung UE55F8090, Jung LS-Eno, permundo SmartPlug, KDG-FB 6490cable (ohne FHEM)

tilde1970

Hi @ all

super Arbeit hier,  nachdem dem Durcharbeiten klappt alles !

;D ;D









FHEM, RaspberryPi 3+SUSV, CUL, Jeelink, SMA-WR, PCA301, LaCrosse, SamsungTV, Fritzbox7390, etc.
HM-LC-Bl1PBU-FM;LD382; Rpi 2B+Volkszähler;Kodi
Fhem-Tablet-UI; Odys-Gate Tab

Tommy82

#198
Hi, erstmal Danke für die tolle möglichkeit die ihr hier aufzeigt.

Wollte das TV Programm jetzt auch mal in mein Fhem aufnemehn und hab dafür diesen Code genommen:

###########################
define TV_Programme HTTPMOD http://www.tvmovie.de/tv-programm-jetzt-im-tv.html?tv-stations-count=100&time=now&form_build_id=form-7f6a9332d4b1e7b5bc6af20e39353673&form_id=dikr_tvm_tv_guide_tv_stations_count_form 60
attr TV_Programme readingsName_Pro7 Pro7
attr TV_Programme readingsName_RTL RTL
attr TV_Programme readingsName_Sat1 Sat1
attr TV_Programme readingsRegex_Pro7 <span>PRO 7 <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme readingsRegex_RTL <span>RTL <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme readingsRegex_Sat1 <span>SAT.1 <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme stateFormat mein_TV_programm: Pro7
attr TV_Programme timeout 5
attr TV_Programme verbose 1

#######################
define TV_Programme_next HTTPMOD http://www.tvmovie.de/tv-programm-gleich-im-tv.html?tv-stations-count=100&time=soon&form_build_id=form-6c71e36a9e9651420736eccb5287fdec&form_id=dikr_tvm_tv_guide_tv_stations_count_form 60
attr TV_Programme_next readingsName_Pro7_next Pro7_next
attr TV_Programme_next readingsName_Pro7_next_time Pro7_next_time
attr TV_Programme_next readingsName_RTL_next RTL_next
attr TV_Programme_next readingsName_RTL_next_time RTL_next_time
attr TV_Programme_next readingsName_Sat1_next Sat1_next
attr TV_Programme_next readingsName_Sat1_next_time Sat1_next_time
attr TV_Programme_next readingsRegex_Pro7_next <span>PRO 7 <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme_next readingsRegex_Pro7_next_time <span>PRO 7 <[\w\W]*?air-time"><strong>(.*?)<\/strong>
attr TV_Programme_next readingsRegex_RTL_next <span>RTL <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme_next readingsRegex_RTL_next_time <span>RTL <[\w\W]*?air-time"><strong>(.*?)<\/strong>
attr TV_Programme_next readingsRegex_Sat1_next <span>SAT.1 <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme_next readingsRegex_Sat1_next_time <span>SAT.1 <[\w\W]*?air-time"><strong>(.*?)<\/strong>
attr TV_Programme_next stateFormat mein_TV_programm: Pro7_next
attr TV_Programme_next timeout 10
attr TV_Programme_next verbose 1

###########################
define TV_Programm readingsGroup <Programm>,<Jetzt>,<Dann>,<Uhrzeit> TV_Programme_next:Sat1@TV_Programme,Sat1_next,Sat1_next_time TV_Programme_next:Pro7@TV_Programme,Pro7_next,Pro7_next_time TV_Programme_next:RTL@TV_Programme,RTL_next,RTL_next_time TV_Programme_next
attr TV_Programm group TV_Programm
attr TV_Programm nameIcon { Pro7 => 'logo_pro7', Sat1 => 'logo_sat1', RTL => 'logo_rtl'}
attr TV_Programm nameStyle style="color:yellow;;font-weight:bold"
attr TV_Programm room Kuzl
attr TV_Programm style style="font-size:18px"

###########################


Grundsätzlich siehts auch gut aus, allerdings bekomme ich noch Zeilen, wie z.b.
ZitatTV_Programme_next:Pro7_next
angezeigt die nicht dahin gehören, siehe Bild.

Was hab  ich da noch falsch gemacht?

Danke


EDIT:
Habs gelöst, hatte noch eine Fehler in der ReadingsGroup
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Tommy82

#199
So,
ich habs jetzt mit diesem Code am laufen, denke die Sender reichen für meine ersten Versuche, bei bedarf werd ich das ganze aber erweitern:

###########################
define TV_Programme HTTPMOD http://www.tvmovie.de/tv-programm-jetzt-im-tv.html?tv-stations-count=100&time=now&form_build_id=form-7f6a9332d4b1e7b5bc6af20e39353673&form_id=dikr_tvm_tv_guide_tv_stations_count_form 60
attr TV_Programme readingsName_Pro7 Pro7
attr TV_Programme readingsName_RTL RTL
attr TV_Programme readingsName_Sat1 Sat1
attr TV_Programme readingsName_ARD ARD
attr TV_Programme readingsName_ZDF ZDF
attr TV_Programme readingsName_Sport1 Sport1
attr TV_Programme readingsName_rtl2 rtl2
attr TV_Programme readingsName_KABEL_1 KABEL_1
attr TV_Programme readingsName_VOX VOX
attr TV_Programme readingsRegex_Pro7 <span>PRO 7 <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme readingsRegex_RTL <span>RTL <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme readingsRegex_Sat1 <span>SAT.1 <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme readingsRegex_ARD <span>ARD <[\w\W]*?alt="(.*?)" title=
attr TV_Programme readingsRegex_ZDF <span>ZDF <[\w\W]*?alt="(.*?)" title=
attr TV_Programme readingsRegex_Sport1 <span>Sport1 <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme readingsRegex_rtl2 <span>RTL II <[\w\W]*?alt="(.*?)" title=
attr TV_Programme readingsRegex_KABEL_1 <span>KABEL 1 <[\w\W]*?alt="(.*?)" title=
attr TV_Programme readingsRegex_VOX <span>VOX <[\w\W]*?alt="(.*?)" title=
attr TV_Programme stateFormat mein_TV_programm: Pro7
attr TV_Programme timeout 5
attr TV_Programme verbose 1


#######################
define TV_Programme_next HTTPMOD http://www.tvmovie.de/tv-programm-gleich-im-tv.html?tv-stations-count=100&time=soon&form_build_id=form-6c71e36a9e9651420736eccb5287fdec&form_id=dikr_tvm_tv_guide_tv_stations_count_form 60
attr TV_Programme_next readingsName_Pro7_next Pro7_next
attr TV_Programme_next readingsName_Pro7_next_time Pro7_next_time
attr TV_Programme_next readingsName_RTL_next RTL_next
attr TV_Programme_next readingsName_RTL_next_time RTL_next_time
attr TV_Programme_next readingsName_Sat1_next Sat1_next
attr TV_Programme_next readingsName_Sat1_next_time Sat1_next_time
attr TV_Programme_next readingsName_ARD_next ARD_next
attr TV_Programme_next readingsName_ARD_next_time ARD_next_time
attr TV_Programme_next readingsName_ZDF_next ZDF_next
attr TV_Programme_next readingsName_ZDF_next_time ZDF_next_time
attr TV_Programme_next readingsName_Sport1_next Sport1_next
attr TV_Programme_next readingsName_Sport1_next_time Sport1_next_time
attr TV_Programme_next readingsName_rtl2_next rtl2_next
attr TV_Programme_next readingsName_rtl2_next_time rtl2_next_time
attr TV_Programme_next readingsName_KABEL_1_next KABEL_1_next
attr TV_Programme_next readingsName_KABEL_1_next_time KABEL_1_next_time
attr TV_Programme_next readingsName_VOX_next VOX_next
attr TV_Programme_next readingsName_VOX_next_time VOX_next_time
attr TV_Programme_next readingsRegex_Pro7_next <span>PRO 7 <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme_next readingsRegex_Pro7_next_time <span>PRO 7 <[\w\W]*?air-time"><strong>(.*?)<\/strong>
attr TV_Programme_next readingsRegex_RTL_next <span>RTL <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme_next readingsRegex_RTL_next_time <span>RTL <[\w\W]*?air-time"><strong>(.*?)<\/strong>
attr TV_Programme_next readingsRegex_Sat1_next <span>SAT.1 <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme_next readingsRegex_Sat1_next_time <span>SAT.1 <[\w\W]*?air-time"><strong>(.*?)<\/strong>
attr TV_Programme_next readingsRegex_ARD_next <span>ARD <[\w\W]*?alt="(.*?)" title=
attr TV_Programme_next readingsRegex_ARD_next_time <span>ARD <[\w\W]*?air-time"><strong>(.*?)<\/strong>
attr TV_Programme_next readingsRegex_ZDF_next <span>ZDF <[\w\W]*?alt="(.*?)" title=
attr TV_Programme_next readingsRegex_ZDF_next_time <span>ZDF <[\w\W]*?air-time"><strong>(.*?)<\/strong>
attr TV_Programme_next readingsRegex_Sport1_next <span>Sport1 <span[\w\W]*?alt="(.*?)" title=
attr TV_Programme_next readingsRegex_Sport1_next_time <span>Sport1 <[\w\W]*?air-time"><strong>(.*?)<\/strong>
attr TV_Programme_next readingsRegex_rtl2_next <span>RTL II <[\w\W]*?alt="(.*?)" title=
attr TV_Programme_next readingsRegex_rtl2_next_time <span>RTL II <[\w\W]*?air-time"><strong>(.*?)<\/strong>
attr TV_Programme_next readingsRegex_KABEL_1_next <span>KABEL 1 <[\w\W]*?alt="(.*?)" title=
attr TV_Programme_next readingsRegex_KABEL_1_next_time <span>KABEL 1 <[\w\W]*?air-time"><strong>(.*?)<\/strong>
attr TV_Programme_next readingsRegex_VOX_next <span>VOX <[\w\W]*?alt="(.*?)" title=
attr TV_Programme_next readingsRegex_VOX_next_time <span>VOX <[\w\W]*?air-time"><strong>(.*?)<\/strong>
attr TV_Programme_next stateFormat mein_TV_programm: Pro7_next
attr TV_Programme_next timeout 10
attr TV_Programme_next verbose 1


###########################
define TV_Programm readingsGroup
<Programm>,<Jetzt>,<Dann>,<Uhrzeit>
TV_Programme_next:Sat1@TV_Programme,Sat1_next,Sat1_next_time
TV_Programme_next:Pro7@TV_Programme,Pro7_next,Pro7_next_time
TV_Programme_next:RTL@TV_Programme,RTL_next,RTL_next_time
TV_Programme_next:ARD@TV_Programme,ARD_next,ARD_next_time
TV_Programme_next:ZDF@TV_Programme,ZDF_next,ZDF_next_time
TV_Programme_next:Sport1@TV_Programme,Sport1_next,Sport1_next_time
TV_Programme_next:rtl2@TV_Programme,rtl2_next,rtl2_next_time
TV_Programme_next:KABEL_1@TV_Programme,KABEL_1_next,KABEL_1_next_time
TV_Programme_next:VOX@TV_Programme,VOX_next,VOX_next_time
attr TV_Programm group TV_Programm
attr TV_Programm nameIcon { Pro7 => 'pro7', Sat1 => 'sat1', RTL => 'rtl', Sport1 => 'sport1', ZDF => 'zdf', ARD => 'ard',rtl2 => 'rtl2',KABEL_1 => 'kabel1',VOX => 'vox' }
attr TV_Programm nameStyle style="color:yellow;;font-weight:bold"
attr TV_Programm style style="color:white;font-size:18px"

###########################


Hab die Schriftfarbe noch geändert um das ganze auf einem Floorplan platzieren zu können.

Hab dann noch versucht das Umschalten durch klicken was RoBra81 hier vorgestellt hat einzubauen, hab den Code so geäbdert:
Der Dummy
############################################
define Senderwechsel dummy
attr Senderwechsel room Wohnzimmer
attr Senderwechsel setList ARD ZDF Sat1 RTL rtl2 Pro7 VOX Kabel1 Sport1


das notify
############################################
define Senderwechsel.nf notify Senderwechsel.* {switchChannel('%EVENT')}
attr Senderwechsel.nf room Wohnzimmer


meine ReadingsGroup angepasst:
attr TV_Programm commands {"set Senderwechsel %READING"}

und dann die Funktion in die 99_myUtils.pm eingefügt
############################################
sub
switchChannel($)
{
  my %channellist = (
    Pro7 => '1',
    Sat1 => '2',
    RTL => '3',
    VOX => '7',
    rtl2 => '8',
    Kabel1 => '6',
    Sport1 => '45',
    ARD => '20',
ZDF => '21',
  );
 
  my $TVDevice = 'VU_Ultimo';

  my ($channel) = @_;
  $channel =~ s/_time//g;
  $channel = lc $channel;
  my $next = 0;
  if ($channel =~ /_next/)
  {
    my @array = split(/_/, $channel);
    $channel = $array[0];
    $next = 1;
  }
  my $command = '';
 
  my @digits = split("", $channellist{$channel});
 
  foreach (@digits)
  {
    if ($command ne '')
    {
      $command = $command.'; ';
    }
    $command = $command.'set '.$TVDevice.' '.$_;
  }
 
  if ($command ne '')
  {
    $command = $command.'; set '.$TVDevice.' ENTER';
    if ($next == 1)
    {
      $command =~ s/;/;;/g;
      fhem('delete '.$TVDevice.'.Senderwechsel.at');
      fhem('define '.$TVDevice.'.Senderwechsel.at at '.ReadingsVal('TV_Programm.dann', $channel.'_next_time', '00:00').' '.$command);
      fhem('attr '.$TVDevice.'.Senderwechsel.at room Wohnzimmer');
    }
    else
    {
      fhem($command);
    }
  }
  else
  {
    Log(1, 'Channelnumber not found for channel: '.$channel);
  }
}


Aber wenn ich dann eine Sendung anklicke passiert nichts, sprich es wird nicht geschaltet. Ich nutze das enigma2 Modul

Was könnte da noch  falsch sein?

Bekomme im Log dann immer diese Meldung:
2014.11.09 15:02:59.418 1: PERL WARNING: Use of uninitialized value in split at ./FHEM/99_myUtils.pm line 130.
2014.11.09 15:02:59.437 1: Channelnumber not found for channel: rtl

In Zeile 130 steht:
my @digits = split("", $channellist{$channel});

Wenn ich übers enigma2 Modul umschalte funktioniert es und im Log steht:
ENIGMA2 set VU_Ultimo channel ProSieben_HD

Was müss ich ändern?

Danke
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

RoBra81

Hallo Tommy82,

da ich mich nicht um die Groß- und Kleinschreibung kümmern wollt, konvertiere ich den übergebenen Kanal zu Kleinbuchstaben. Daher müsstest du alle Sender in der Variable %channellist klein schreiben - dann müsste es funktionieren...

Ronny

Tommy82

#201
Zitat von: RoBra81 am 09 November 2014, 15:50:44
Hallo Tommy82,

da ich mich nicht um die Groß- und Kleinschreibung kümmern wollt, konvertiere ich den übergebenen Kanal zu Kleinbuchstaben. Daher müsstest du alle Sender in der Variable %channellist klein schreiben - dann müsste es funktionieren...

Ronny

Hi Ronny,
ich hoffe ich hab dich  richtig verstanden, habs jetzt mal so geändert:
{
  my %channellist = (
    pro7 => '1',
    sat1 => '2',
    rtl => '3',
    vox => '7',
    rtl2 => '8',
    kabel1 => '6',
    sport1 => '45',
    ard => '20',
zdf => '21',
  );
 


geht aber trotzdem nicht

Im Log gibts diese Fehler:
2014.11.09 21:42:21.284 3: set VU_Ultimo s; set VU_Ultimo a; set VU_Ultimo t; set VU_Ultimo .; set VU_Ultimo 1; set VU_Ultimo _; set VU_Ultimo h; set VU_Ultimo d; set VU_Ultimo ENTER : Unknown argument s, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument a, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument t, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument ., choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument 1, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument _, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument h, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument d, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument ENTER, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
2014.11.09 21:42:21.296 3: Senderwechsel.nf return value: Unknown argument s, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument a, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument t, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument ., choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument 1, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument _, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument h, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument d, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Unknown argument ENTER, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel: mute:on,off input:-,tv,radio
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

RoBra81

Hallo,

es gibt da scheinbar zwei Probleme: zum einen liefert der Code

$channellist{$channel}

bei dir scheinbar nicht '1' sondern 'sat1_hd' -> das verstehe ich nicht ganz...

Und zum anderen kann man deinen Fernseher (das Enigma-Modul?) nicht wie beim STV-Modul für Samsung mit

set Fernseher 1

eine 1 senden. Wie muss denn das Enigma-Modul geschaltet werden?

Ronny

Tommy82

In Enigma ist es set Fernseher Channel RTL

Wenn ich es gerade richtig im Kopf habe, bin leider unterwegs , aber so müsste es sein
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Tommy82

#204
In Enigma ist es set Fernseher Channel RTL

Wenn ich es gerade richtig im Kopf habe, bin leider unterwegs , aber so müsste es sein

Du nutzt ja den Fernseher und ich will den Reciver damit schalten, macht das einen Unterschied?
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

RoBra81

Dann brauchst du eventuell den Umweg über die Funktion gar nicht - die nutze ich nur, um z.B. RTL auf 43 zu mappen und dann dem Fernseher eine 4 gefolgt von einer 3 zu senden...

Probier mal das:

############################################
sub
switchChannel($)
{
  my %channellist = (
    pro7 => 'ProSieben',
    rtl => 'RTL',
  );
 
  my $TVDevice = 'VU_Ultimo';

  my ($channel) = @_;
  $channel =~ s/_time//g;
  $channel = lc $channel;
  my $next = 0;
  if ($channel =~ /_next/)
  {
    my @array = split(/_/, $channel);
    $channel = $array[0];
    $next = 1;
  }
  my $command = '';
 
  $command = 'set '.$TVDevice.' Channel '.$channellist{$channel};

  if ($command ne '')
  {
    if ($next == 1)
    {
      $command =~ s/;/;;/g;
      fhem('delete '.$TVDevice.'.Senderwechsel.at');
      fhem('define '.$TVDevice.'.Senderwechsel.at at '.ReadingsVal('TV_Programm.dann', $channel.'_next_time', '00:00').' '.$command);
      fhem('attr '.$TVDevice.'.Senderwechsel.at room Wohnzimmer');
    }
    else
    {
      fhem($command);
    }
  }
  else
  {
    Log(1, 'Channelnumber not found for channel: '.$channel);
  }
}


(natürlich mit einer passenden Channellist)

Ronny

Tommy82

Danke werd ich heute Abend ausprobieren wenn ich zu Hause bin. Hab mich grade mal aufgewählt  und mal geguckt, wird über set vu_ultimo Channel rtl gesetzt
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Tommy82

#207
Hi Ronny, hab bei deinem Code nur mal ProSieben_HD geändert, ansonsten sollte er passen, sieht jetzt so aus:
############################################
sub
switchChannel($)
{
  my %channellist = (
    pro7 => 'ProSieben:HD',
    rtl => 'RTL',
  );
 
  my $TVDevice = 'VU_Ultimo';

  my ($channel) = @_;
  $channel =~ s/_time//g;
  $channel = lc $channel;
  my $next = 0;
  if ($channel =~ /_next/)
  {
    my @array = split(/_/, $channel);
    $channel = $array[0];
    $next = 1;
  }
  my $command = '';
 
  $command = 'set '.$TVDevice.' Channel: '.$channellist{$channel};

  if ($command ne '')
  {
    if ($next == 1)
    {
      $command =~ s/;/;;/g;
      fhem('delete '.$TVDevice.'.Senderwechsel.at');
      fhem('define '.$TVDevice.'.Senderwechsel.at at '.ReadingsVal('TV_Programm.dann', $channel.'_next_time', '00:00').' '.$command);
      fhem('attr '.$TVDevice.'.Senderwechsel.at room Wohnzimmer');
    }
    else
    {
      fhem($command);
    }
  }
  else
  {
    Log(1, 'Channelnumber not found for channel: '.$channel);
  }
}


Allerdings klappts trotzdem nicht.
Im Log steht jetzt
2014.11.10 20:47:32.859 5: ENIGMA2 VU_Ultimo: called function ENIGMA2_Set()
2014.11.10 20:47:32.873 5: ENIGMA2 VU_Ultimo: called function ENIGMA2_Set()
2014.11.10 20:47:35.777 5: ENIGMA2 VU_Ultimo: called function ENIGMA2_Set()
2014.11.10 20:47:35.821 3: set VU_Ultimo Channel: ProSieben_HD : Unknown argument Channel:, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel:ProSieben_HD,SAT.1_HD,RTL,kabel_eins_HD,13th_Street,VOX,Fox_HD,Fox_Serie,Das_Vierte,TNT_Serie_HD,RTL_II,SUPER_RTL,RTL_Crime,RTL_NITRO,RTL_Passion,SAT.1_Gold,Discovery_HD,sixx_HD,TELE_5,Syfy,arte_HD,Sky_Krimi,Sky_Action_HD,Disney_Junior,Disney_XD,Das_Erste_HD,ZDF_HD,Einsfestival,EinsPlus,Heimatkanal,n-tv,N24,Nat_Geo_Wild_HD,NatGeo_HD,National_Geographic,Spiegel_Geschichte,zdf.kultur,ZDFinfo,zdf_neo,ProSieben_MAXX,Disney_Ch._HD mute:on,off input:tv,radio
2014.11.10 20:47:35.822 3: Senderwechsel.nf return value: Unknown argument Channel:, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel:ProSieben_HD,SAT.1_HD,RTL,kabel_eins_HD,13th_Street,VOX,Fox_HD,Fox_Serie,Das_Vierte,TNT_Serie_HD,RTL_II,SUPER_RTL,RTL_Crime,RTL_NITRO,RTL_Passion,SAT.1_Gold,Discovery_HD,sixx_HD,TELE_5,Syfy,arte_HD,Sky_Krimi,Sky_Action_HD,Disney_Junior,Disney_XD,Das_Erste_HD,ZDF_HD,Einsfestival,EinsPlus,Heimatkanal,n-tv,N24,Nat_Geo_Wild_HD,NatGeo_HD,National_Geographic,Spiegel_Geschichte,zdf.kultur,ZDFinfo,zdf_neo,ProSieben_MAXX,Disney_Ch._HD mute:on,off input:tv,radio
2014.11.10 20:47:37.855 5: ENIGMA2 VU_Ultimo: called function ENIGMA2_Set()
2014.11.10 20:47:37.859 3: set VU_Ultimo Channel: ProSieben_HD : Unknown argument Channel:, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel:ProSieben_HD,SAT.1_HD,RTL,kabel_eins_HD,13th_Street,VOX,Fox_HD,Fox_Serie,Das_Vierte,TNT_Serie_HD,RTL_II,SUPER_RTL,RTL_Crime,RTL_NITRO,RTL_Passion,SAT.1_Gold,Discovery_HD,sixx_HD,TELE_5,Syfy,arte_HD,Sky_Krimi,Sky_Action_HD,Disney_Junior,Disney_XD,Das_Erste_HD,ZDF_HD,Einsfestival,EinsPlus,Heimatkanal,n-tv,N24,Nat_Geo_Wild_HD,NatGeo_HD,National_Geographic,Spiegel_Geschichte,zdf.kultur,ZDFinfo,zdf_neo,ProSieben_MAXX,Disney_Ch._HD mute:on,off input:tv,radio
2014.11.10 20:47:37.860 3: Senderwechsel.nf return value: Unknown argument Channel:, choose one of statusRequest:noArg toggle:noArg on:noArg off:noArg reboot:noArg restartGui:noArg shutdown:noArg volume:slider,0,1,100 volumeUp:noArg volumeDown:noArg msg remoteControl channelUp:noArg channelDown:noArg play:noArg pause:noArg stop:noArg record:noArg showText channel:ProSieben_HD,SAT.1_HD,RTL,kabel_eins_HD,13th_Street,VOX,Fox_HD,Fox_Serie,Das_Vierte,TNT_Serie_HD,RTL_II,SUPER_RTL,RTL_Crime,RTL_NITRO,RTL_Passion,SAT.1_Gold,Discovery_HD,sixx_HD,TELE_5,Syfy,arte_HD,Sky_Krimi,Sky_Action_HD,Disney_Junior,Disney_XD,Das_Erste_HD,ZDF_HD,Einsfestival,EinsPlus,Heimatkanal,n-tv,N24,Nat_Geo_Wild_HD,NatGeo_HD,National_Geographic,Spiegel_Geschichte,zdf.kultur,ZDFinfo,zdf_neo,ProSieben_MAXX,Disney_Ch._HD mute:on,off input:tv,radio
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Tommy82

#208
S
Juhu, ich hab den Fehler gefunden, der Code sieht jetzt so aus:
############################################
sub
switchChannel($)
{
  my %channellist = (
    pro7 => 'ProSieben_HD',
    rtl => 'RTL',
  );
 
  my $TVDevice = 'VU_Ultimo';

  my ($channel) = @_;
  $channel =~ s/_time//g;
  $channel = lc $channel;
  my $next = 0;
  if ($channel =~ /_next/)
  {
    my @array = split(/_/, $channel);
    $channel = $array[0];
    $next = 1;
  }
  my $command = '';
 
  $command = 'set '.$TVDevice.' channel '.$channellist{$channel};

  if ($command ne '')
  {
    if ($next == 1)
    {
      $command =~ s/;/;;/g;
      fhem('delete '.$TVDevice.'.Senderwechsel.at');
      fhem('define '.$TVDevice.'.Senderwechsel.at at '.ReadingsVal('TV_Programm.dann', $channel.'_next_time', '00:00').' '.$command);
      fhem('attr '.$TVDevice.'.Senderwechsel.at room Wohnzimmer');
    }
    else
    {
      fhem($command);
    }
  }
  else
  {
    Log(1, 'Channelnumber not found for channel: '.$channel);
  }
}


War ein Leerzeichen zuviel und ein "C" was ein "c" sein musst. Jetzt klappt das Umschalten. Jetzt mal abwarten ob um 21:15 umgeschaltet wird, hab dazu die "Nächste Sendung" auf einem anderen Programm angeklickt.
UNd werd den Code mal weiter füllen mit meinen Sendern.

Danke für die Tolle funktion



EDIT also die Funktion das wenn ich die "Nächste Sendung" anklicke dann zur entsprechenden Zeit umgeschaltet wurd funktioniert nicht, im Log steht dazu:
2014.11.10 21:28:19.636 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:29:19.686 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:30:19.568 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:31:19.785 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:32:19.666 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:33:19.783 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:34:19.786 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:35:19.634 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:36:20.027 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:37:19.659 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:38:19.667 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:39:19.785 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:40:19.775 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:41:19.713 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:42:19.924 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:43:19.892 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:44:19.964 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:45:19.913 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:46:19.491 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:47:19.495 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:48:19.488 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:49:19.642 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:50:19.458 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:51:19.479 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:52:19.920 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:53:20.067 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:54:19.636 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:55:19.797 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.10 21:56:20.026 3: HTTPMOD: Response didn't match Reading(s) Pro7


Heute nacht habe ich im Log immer diese Fehlermeldung:
2014.11.11 00:10:06.541 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:11:06.508 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:12:06.419 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:13:06.904 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:14:06.591 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:15:07.936 3: HTTPMOD got error in callback: connect to http://www.tvmovie.de:80 timed out
2014.11.11 00:16:06.689 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:17:06.656 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:18:06.916 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:19:06.560 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:20:06.669 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:21:06.686 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:22:06.566 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:23:06.712 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:24:06.601 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:25:06.596 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:26:06.752 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:27:06.561 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:28:06.564 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:29:06.693 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:30:07.967 3: HTTPMOD got error in callback: connect to http://www.tvmovie.de:80 timed out
2014.11.11 00:31:06.645 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:32:06.851 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:33:06.967 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:34:06.705 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:35:06.836 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:36:06.737 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:37:06.516 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:38:06.714 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:39:06.762 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:40:06.624 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:41:06.851 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:42:06.734 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:43:06.783 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:44:06.593 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:45:07.999 3: HTTPMOD got error in callback: connect to http://www.tvmovie.de:80 timed out
2014.11.11 00:46:06.700 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:47:06.657 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:48:06.682 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:49:06.729 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:50:06.860 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:51:06.739 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:52:06.683 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:53:06.741 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:54:06.728 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:55:06.685 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:56:06.825 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:57:07.056 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:58:06.659 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 00:59:06.669 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:00:08.043 3: HTTPMOD got error in callback: connect to http://www.tvmovie.de:80 timed out
2014.11.11 01:01:06.690 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:02:06.813 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:03:06.760 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:04:06.789 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:05:06.609 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:06:06.721 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:07:06.701 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:08:06.674 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:09:07.073 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:10:06.711 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:11:06.623 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:12:06.715 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:13:06.666 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:14:06.843 3: HTTPMOD: Response didn't match Reading(s) Pro7
2014.11.11 01:15:08.090 3: HTTPMOD got error in callback: connect to http://www.tvmovie.de:80 timed out
2014.11.11 01:16:06.708 3: HTTPMOD: Response didn't match Reading(s) Pro7


Also irgendwas stimt noch nicht
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Markus

@Doggiebert Funktioniert es bei dir jetzt oder bleibt es immer noch hängen?
Raspberry Pi2 als FHEM-Plattform
HM, FS20, 1-Wire, PanStamp,LW12,Intertechno,ESPEasy,Alexa