Hallo zusammen,
wie ich lese, bin ich hier nicht alleine mit diesem Thema. Leider finde ich in den Artikeln keine Lösung für mein Problem.
Der Gong funktioniert, die SD-Karte ist o.k., auch kann ich die MP3-Files ausgeben. Aber alles nur wir in der beigefügten Grafik dargestellt.
Mein Problem ist, dass ich den Gong ( bei mir mit Namen "Gong1") nicht per Skript ansprechen kann.
Was ich finde ist folgendes Skript, mit dem man den Gong1 ansprechen soll und das File 005 abspielt.
dom.GetObject("Gong1:1").DPByHssDP("SUBMIT").State("1,1,1080000,5");
Aber nichts geht.
Geht das mit dem Bausatz HM-OU-CM-PCB von ELV nicht?
Oder steuer ich den Gong1 falsch an.
Da ich eigentlich über ein Skript mehrere Variablen prüfen muß, ist mir die Ansteuerung per Skript sehr wichtig.
Für einen hilfreichen Tip wäre ich dankbar.
Reinhard
Gong HM-OU-CM-PCB
Moderator: Co-Administratoren
Re: Gong HM-OU-CM-PCB
Mach' bitte einmal einen Scrennshot des Gonges unter "Einstellungen > Geräte" mit aufgeklappten Kanälen, damit man die Namen sehen kann.
.
.
Re: Gong HM-OU-CM-PCB
In Deinem Scriptschnipsel wird versucht ein Object mit dem Namen "Gong1:1" zu finden. Dieses existiert nicht, da Dein Kanal "Gong1" heißt und nicht "Gong1:1".fautec56 hat geschrieben:habe ich in meine Anfrage eingefügt.
Entweder Du benennst den Kanal um in "Gong1:1" oder Du passt das Skript an den Namen an, wobei es dann 50:50 steht, ob es funktioniert, da Dein Kanal dann immernoch so heißt wie Dein Gerät und durch dom.GetObject() in Verbindung mit Namen, nicht gewährleistet ist, welches Objekt gefunden wird.
Die beste Entscheidung wäre den Kanal "Gong1:1" zu benennen und das Skript wie folgt anzupassen:
Code: Alles auswählen
((channels.Get("Gong1:1")).DPByHssDP("SUBMIT")).State("1,1,1080000,5");
.
Re: Gong HM-OU-CM-PCB
Ganke für den Tip.
Das mit dem :1 weglassen, hatte ich schon getestet. Ohne ERgebnis. Allerdings mit "channels.Get" nicht.
Habe kurz einen TestSkript erstellt.
((channels.Get("Gong1")).DPByHssDP("SUBMIT")).State("1,1,1080000,5,8,9,100");
Es klappt!
Danke.
LG Reinhard
Das mit dem :1 weglassen, hatte ich schon getestet. Ohne ERgebnis. Allerdings mit "channels.Get" nicht.
Habe kurz einen TestSkript erstellt.
((channels.Get("Gong1")).DPByHssDP("SUBMIT")).State("1,1,1080000,5,8,9,100");
Es klappt!
Danke.
LG Reinhard
Re: Gong HM-OU-CM-PCB
Das hatte ich ja oben beschrieben, dass das in Verbindung mit dom.GetObject() ein Glücksspiel ist, da hier global auf Objekte zugergriffen wird und bei Namensgleichheit nicht gewährleistet ist, welches Objekt genommen wird.fautec56 hat geschrieben:Das mit dem :1 weglassen, hatte ich schon getestet. Ohne ERgebnis.
Daher nimmt man immer die Methode .Get() der entsprechenden Liste und nicht dom.GetObject() in verbindung mit Namen.
.