Busch Jäger inet Radio VD

Hallo ich benötige Hilfe bei einem VD für ein Busch Jäger Inet Radio.
Ziel soll es sein wenn man das Badezimmer betritt das das Radio an geht. Ein Motionsensor ist vorhanden.

Folgendes habe ich schon im Internet gefunden.

Sender:

http://xxx.xxx.x.xx/de/index.cgi?n1=Radio+Sauerland&p1=+Abspielen+

Lautstärke:

http://xxx.xxx.x.xx/de/index.cgi?vo=1-31

Das ganze geht auch im Browser.

Jetzt mein Frage wie kann ich hierzu ein VD erstellen.

Leider habe ich bis jetzt noch keine Funktion die das Radio ausschalten würde. Evtl hat wer ja eine Idee…

Mir würde aber erstmal ein funktionierendes VD reichen.

Dann kann man das doch bestimmt mit Blockszene umsetzen.

Bei Bewegenung press Button …hier würde ja dann der Button vom VD benutzt.
Ausmachen kann man es dann von Hand, bis ich was gefunden habe um es per Befehl aus zu machen.

So habe hier Forum den Thread zum RooWifi RooWifi gefunden und mir zum nutzen gemacht…

-- hole ip adresse aus virtuellem modul
selfId = fibaro:getSelfId()
radioIP = fibaro:get(selfId, "IPAddress")
-- setze variable RADIO aus IP
RADIO = Net.FHttp(radioIP)
-- geting info about specific device
response = RADIO:GET("/de/index.cgi?n1=Radio+Sauerland&p1=+Abspielen+")
-- decoding json string to table
result = response;
Fibaro.log(result);

Jetzt habe ich zumindest den Button in einem VD den ich haben wollte.
Habe mir dann eine Blockszene erstellt und das Radio geht auch an wenn ich den Raum betrete.

Jetzt das Problem wenn ich das Radio ausschalte und noch im Raum bin sollte es doch sofort wieder angehen, wenn ich mich bewegen, da passiert aber nix… evtl. wäre hier eine Lua Szene doch von Vorteil.

Schöne wäre natürlich das ganze so zu machen “Radio an solange Bewegung” und es dann wieder ausgeht wenn man den Raum verlässt.

Das Radio soll aber auch nur zu bestimmten Zeiten angehen zwischen 22 uhr und 6 Uhr morgen z.b. nicht.

Den Befehl zum Ausschalten haben ich in Form eines Schlaftimer gefunden.

http://xxx.xxx.x.xx/de/general.cgi?es=1&ss=01 (ss=00-59 Minuten, es=1 => aktiv, es=0 => inaktiv)

Zusammenfassung:

  • Raum wird betreten Radio geht an
  • solange Bewegung im Raum Radio bleit an
  • wenn keine Bewegung z.b. 2 min mehr ist soll der Schlaftimer gestartet werden
  • es wäre auch nicht schlimm wenn das Radio beim Duschen ausgeht da hört man es eh nicht :slight_smile: geht ja wieder an wenn man aus der Dusche kommt
  • zwischen 22:00 Uhr und 6:00 Uhr soll das Radio nicht automatisch angehen

Kann mir wer da weiter helfen ich weis leider nicht wie ich das hinbekommen soll.

Hi,

schau dir mal folgendes Skript an:

https://www.siio.de/kleine-lua-scripte-teil-5-bewegung-im-raum-erkennen/

Mit diesem kannst du das so umsetzen, wie du es möchtest.

Gruß

Ja super das hat soweit alles geklappt.

Zusammenfassung:

– Raum wird betreten Radio geht an (geht super)
– solange Bewegung im Raum Radio bleit an (geht super)
– wenn keine Bewegung z.b. 2 min mehr ist soll der Schlaftimer gestartet werden (geht super per parameter 6 und dem delay)

– zwischen 22:00 Uhr und 6:00 Uhr soll das Radio nicht automatisch angehen
(das geht leider noch nicht hast du dafür auch eine Lösung bzw. ein Stück Code was ich reinkopieren kann)

Ansonsten echt Top genau das was ich benötigt habe.

Danke boomx

Hi,

dazu würde ich eine Variable nutzen, da diese wesentlich leichter im Code abzufragen ist, als ein bestimmter Zeitraum. Diese Variable könntest du dann mit einer Blockszene abändern oder alternativ natürlich auch mit einer LUA-Szene.

Die Variable fragst du im Skript dann so ab:

if (fibaro:getGlobal('Time') == '22') then
 fibaro:debug('Starte kein Radio')
else
 fibaro:debug('Starte Radio')
end

Die Variablen & Inhalte müssen natürlich durch dich angepasst werden.

Gruß

Leider weis ich da jetzt nix mit anzufangen bzw. kann dir nicht folgen.

Kannst du mir das nicht in die Szene einbauen ?

Und so eine Szene mit den Variablen muss doch dann so aussehen das die Variable zwischen 22 und 6 uhr auf false steht.

Hier kann ich aber auch nicht folgen was genau ich da machen muss da hört Lua bei mir leider auf ich übe zwar und teste aber so leicht ist das Ganze leider nicht.

Kann man diese beiden Szenen nicht verbinden die erste habe ich ja für das Radio die zweite nutze ich für Lichsteuerung Flur.


--[[
%% properties
205 value
%% globals
--]]
local sensors = {205}
local radio = 274

local delay = 180
local debug = false

function actionsMotion()
 fibaro:debug('Führe Aktionen bei Bewegungserkennung aus')
 fibaro:call(radio, "pressButton", "1")
 fibaro:sleep(1000)
 fibaro:call(radio, "pressButton", "3")
end

function actionsNoMotion()
 fibaro:debug('Führe Aktionen nach Ende Bewegung aus')
 fibaro:call(radio, "pressButton", "2")
end

local instances = tonumber(fibaro:countScenes());

function getSensorStatus()
for i,n in ipairs(sensors) do
 if (tonumber(fibaro:getValue(n, "value")) > 0) then
  return 1;
 end
end
 return 0;
end

function getLastBreach()
local breach = 0;
for i,n in ipairs(sensors) do
 local nBreach = tonumber(fibaro:getValue(n, "lastBreached"));
 if(nBreach > breach) then
  breach = nBreach;
 end
end
 return breach;
end

function checkMotion()
lastBreached = getLastBreach();
time = os.time();
if (debug) then fibaro:debug("Zuletzt ausgelöst: Vor "..(time-lastBreached).." Sekunden"); end
if (getSensorStatus() == 1) then
 return true;
end

if ((time-lastBreached)>=delay) then
 return false;
end
 return true;
end

local lastBreached = getLastBreach()

if (fibaro:getSourceTriggerType() == 'property' and getSensorStatus() == 1) then
 if (instances > 1) then fibaro:abort(); end
  fibaro:debug('Bewegung im Raum erkannt - Starte Timer')
  actionsMotion()
 while (checkMotion()) do
  fibaro:sleep(5000);
 end
if (debug) then fibaro:debug("Keine Bewegung mehr erkannt."); end
 actionsNoMotion()
end
--[[
%% properties
43 value
%% globals
--]]
 
-- VARIABLEN Konfiguration (Bewegungsmelder muss oben unter %% properties aufgeführt sein) löst die szene aus
-----------------------------------------------------------------------------------------------------------------------------------------
local scene = 262 -- ID dieser Szene
local motion = 43 -- ID des Bewegungssensors
local licht = 45 -- ID Lichtsensor
local switch = 55 -- ID der Lampe
 
local nachtstart = 1800 -- 22:00 = 2200
local nachtende = 0800 -- 07:00 = 0700
local starttimer = 20 -- licht an zeit (+ zeit des bewegungssensors - par. 6)
local lichtwert = 0 -- grenze zum nachtmodus (nur ausführen, wenn licht größer als)
-----------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------
---------------------Script-----------------
fibaro:debug("start1")
if (fibaro:countScenes()>1) then
    fibaro:debug("stop scene");
    fibaro:abort();
end
 
-- SCHALTE LICHT EIN & AUS (wenn nicht nacht)
if (tonumber(fibaro:getValue(motion, "value")) > 0 ) and tonumber(fibaro:getValue(licht, "value")) > lichtwert and (tonumber(os.date("%H%M")) >= nachtstart or tonumber(os.date("%H%M")) <= nachtende) then -- hier fehlt noch "und schalter aus"
    fibaro:debug("ausgelöst");
    --led auf wert einstellen
    fibaro:call(switch, "turnOn");
    -- timer start und einstellen
    timer = os.time();
    while os.time() - timer < starttimer do
        fibaro:sleep(1000);
        -- Timer zurücksetzen, wenn neue Bewegung erkannt wird innherhalb der Verzögerungszeit
        if (tonumber(fibaro:getValue(motion, "value"))) > 0 then
            timer = os.time();
        end
end
    -- Schalte Licht aus, wenn Timer vollständig abgelaufen ist
    fibaro:call(switch, "turnOff");
end
fibaro:debug("ende1");
fibaro:killScenes(scene);

Hi,

klar kannst du die zusammenfassen. Das zweite Skript brauchst du eigentlich nicht mehr, du kannst darüber die Lampen schalten.
Welchen Inhalt du bei der Variablen setzt ist eigentlich egal. Mein Skript war nur ein Beispiel und so kannst du das einfach einbauen.

Gruß

Hi Splinter,

kannst du mir kurz deine Erfahrungen mit dem Inet radio schildern? Ist der Klang sehr gut? Ich bin auch auf der Suche nach einem geeigneten Badradio. Würde mich auch mit nem schicken Radiowecker zufrieden geben, den man mittels festem Kippschalter auf Radio Dauerbetrieb schaltet. Dann müsste man nur den Strom schalten. So einen Wecker scheint es aber nicht mehr zu geben und gehört wohl zum alten Eisen.

Ist natürlich nett mit der Streaming Funktionalität des Inet Radios. Der Preis ist aber auch happig :-/
Hast du schon an eine Steuerung mit Alexa gedacht? Mit einer HA Bridge könnte man ja auch Sprachkommandos absenden, wenn alles über die URLs gesteuert wird.

Sorry das ich in deinem Thread poste, ich hoffe das ist o.k.
Grüße!

Hi,

hast du dir mal die Schwaiger-Lautprecher angeschaut? Dort gibt es auch einen Multiroom-Support, welchen zum Beispiel ein Alexa-Lautsprecher nicht bietet. Die Lautsprecher von Schwaiger können auch ins HomeCenter integriert werden. Alternativ würde es auch mit einem Rocki gehen.

Gruß

Hi boomx,

sieht gut aus. Ich habe mir gerade die HAS110 bestellt. Das “text to speech” hört sich mega interessant an. Ich hoffe nur, dass der Lautsprecher mit der Luftfeuchtigkeit im Bad umgehen kann.

Stell dich bald schonmal auf ein paar Fragen dazu hier im Forum ein :stuck_out_tongue:

Hi IYTI,

also ich bin sehr zufrieden mit dem Inet Radio von Busch Jäger. Über den klang kann man streiten, mir reicht es auf jeden Fall aus morgens mal eben die Nachrichten und etwas Musik zu hören.
Habe an dem radio auch nur eine Box also Mono.
Der Preis ist recht hoch.
Mir war es wichtig das es ein W-Lan Radio ist und Unterputz kommt.
Das Schwaiger hört sich aber auch gut an ist nur leider nicht Unterputz.
Zum Thema Alexa… ich habe zwar einen Echo und einen Echo Dot aber das Thema Sprachsteuerung ist noch nicht so ganz ausgereift es ist eine tolle Spielerei mehr aber auch nicht.Mal versteht Alexa eine und dann wider nicht…
Mit der Luftfeuchtigkeit hatte ich noch keine Problme läuft schon zwei Jahre das Radio.

Gruß

Hallo Splinter,

das ist eine interessante Idee die du hast. Ich habe auch das INet Radio im Bad. Dennoch habe ich Fragen an dich.

  1. Hast du das Radio mit einem Relais angeschlossen?
  2. Welchen Motion Sensor verwendest du?
  3. Ist dein LUA-Script fertig? Funktioniert alles?

Würde mich sehr interessieren, da ich das bei mir auch gerne einbauen würde.

Gruß

Beans

Hallo Beans,

  1. Hast du das Radio mit einem Relais angeschlossen?
    Nein das ist nicht Notwendig. Ist ja über W-LAN verbudnen.
  2. Welchen Motion Sensor verwendest du?
    Den Fibaro Motion.
  3. Ist dein LUA-Script fertig? Funktioniert alles?
    Nein leider nicht. Soweit geht das mit dem ersten Skipt was ich oben gepostet habe ganz gut.
    Ganz zufrieden bin ich noch nicht hatte aber noch keine Zeit das Skript zu verbessern oder hier fragen zu stellen damit ich weiter komme.

Durch ein VD was du erstellst kann man auf die API des Radio zugreifen.

Den Luacode findest du für das VD auch oben im Post, man muss etwas basteln.

Hier mal die Befehle:

XXX.XXX.XXX.XXX = IP des Radio

Ganz Wichtig ist das das Radio nicht im ECO Modus ist, sonst gehts nicht es muss immer mit dem W-LAn verbunden sein.
Den Eco Modus kannst du am Radio selber um stellen auf Premium…

Station 1 abspielen:
http://XXX.XXX.XXX.XXX/de/index.cgi?p1 (p1…p7 fuer Station 1-7)

Lautstärke:
http://XXX.XXX.XXX.XXX/de/index.cgi?vo=1 (0…32)

Alarm:
http://XXX.XXX.XXX.XXX/de/general.cgi?ea=1&ah=08&am=00 (ah=Stunde 00…24, am=Minute 00…59, ea=1 => aktiv, ea=0 => inaktiv)

Kurzzeit-Timer:
http://XXX.XXX.XXX.XXX/de/general.cgi?et=1&st=01 (st=00…59 Minuten, et=1 => aktiv, et=0 => inaktiv)

Schlaf-Timer:
http://XXX.XXX.XXX.XXX/de/general.cgi?es=1&ss=01 (ss=00-59 Minuten, es=1 => aktiv, es=0 => inaktiv)

Gruss Splinter

Hier mal mein VD und das Icon für das Radio.