Gambas Web Radio 3.0

Eigene oder Gemeinschaftsprojekte, Klassen, Module, Codeschnipsel, HowTos, ...
Benutzeravatar
gambi
Moderator
Beiträge: 322
Registriert: Mi 8. Mai 2013, 22:46
Kontaktdaten:

Gambas Web Radio 3.0

Beitrag von gambi » Sa 6. Jan 2018, 14:22

Das Gambas-Web-Radio (GWR) in der Version 3.0 mit Streaming-Komponente ist fertig.
Somit könnt ihr den im GWR laufenden Musiksender auf einem UPnP-fähigen Mediaplayer z.B. einem AVR in eurem Wohnzimmer abspielen.

Mit mehr als 17.000 weltweiten Radiostationen findet ihr bestimmt einen Sender, der euren Musikgeschmack trifft.
GWR.png
GWR.png (81.09 KiB) 14378 mal betrachtet
Die wesentlichen Funktionen, die GWR mitbringt:
  • Play
  • Pause
  • Stop
  • Lautstärke
  • Balance
  • Favoriten
  • Radiostationen
  • Equalizer
  • Spektrum
  • Streamen
  • TrayIcon
Eine genauere Beschreibung findet ihr in der GWR-Hilfe, die auch dem Projekt im html-Format beiliegt.
GWR-Hilfe.pdf
(279.87 KiB) 543-mal heruntergeladen
Viel Spaß beim Hören wünscht euch gambi.

gg
GWR_3.0.0-3.0.tar.gz
(492.17 KiB) 656-mal heruntergeladen

besenmuckel
Foriker
Beiträge: 191
Registriert: Di 4. Nov 2014, 21:11
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von besenmuckel » Sa 6. Jan 2018, 19:12

Danke für das Projekt.
Ich verwende Gambas3 Version 3.9.1-3 und Dedian-Stretch(Kanotix-Steelfire)
Button(btnStream) sichtbar
z. B. btnStream = Grösse 20 x 20 und das Bild btnStream.png = Grösse 20 x 20
Button(btnCancel, btnMinimize und btnHelp) waren bei mir nicht sichtbar.
z. B. btnCancel = Grösse 14 x 14 und das Bild ESC.png = Grösse 19 x 19
Habe diese Button(btnCancel, btnMinimize und btnHelp) in den Eigenschaften Grösse 20 x 20 gesetzt. Dann gehts.
Das gleiche bei Equalizer

Code: Alles auswählen

  btnC = New Button($fEqualizer) As "CloseButton"
  btnC.h = 20
  btnC.W = 20
  btnC.x = 10
  btnC.y = 35
  btnC.Border = False
  btnC.Picture = Picture["icons/Esc.png"]
  btnC.Tooltip = "Beenden"
  
  btnS = New Button($fEqualizer) As "StandardButton"
  btnS.h = 20
  btnS.W = 20
  btnS.x = 10
  btnS.y = 70
  btnS.Border = False
  btnS.Picture = Picture["icons/StartValues.png"]
  btnS.Tooltip = "Alle Fader auf 0dB setzen"
und auch bei RStations

Code: Alles auswählen

  btnClose = New Button($Stations) As "CloseBtn"
  With btnClose
    .X = 10
    .Y = 35
    .W = 20
    .H = 20
    .Border = False
    .Picture = Picture["icons/Esc.png"]
TrayIcon auskommentiert, ging bei mir nicht. Schaue es mir noch genauer an.

Code: Alles auswählen

  ' $myTray.Show()
  ' $myTray.Visible = True  
Screenshot_20180106_211832.png
Screenshot_20180106_211832.png (45.19 KiB) 14366 mal betrachtet
Aber sonst tolle Arbeit!.

Benutzeravatar
gambi
Moderator
Beiträge: 322
Registriert: Mi 8. Mai 2013, 22:46
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von gambi » So 7. Jan 2018, 12:10

Hallo besenmuckel,
danke für dein Feedback. :D

Ich nutze derzeit Gambas 3.10 mit Linux Mint 17.3. Ist schon erstaunlich, wie unterschiedlich die Darstellung bei verschiedenen Linux-Distributionen ausfällt.
Durch die größeren Icons leidet dann sicherlich das Erscheinungsbild etwas :wink:

Das mit dem TrayIcon ist auch nicht schön. Wäre prima, wenn du dazu noch etwas herausfindest.

Hast du die Möglichkeit das Streamen auszuprobieren?

Danke und viele Grüße
gg

gambasso
Foriker
Beiträge: 1374
Registriert: Sa 17. Mär 2012, 09:55
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von gambasso » So 7. Jan 2018, 12:21

moin,

die von 'besenmuckel' gekennzeichnete und folgende Zeile mußte ich auskommentieren, sonst ging bei mir gar nichts. (Xubuntu 14.04.3)
PHP 5.5.X und VLC 2.1.3 habe ich drauf. Streamen > nix.
Hilfeseite kommt, aber wie hasste die denn gemacht? Irre viel Text. Haste die Bilder so mit eingbunden?
Gruss

Benutzeravatar
gambi
Moderator
Beiträge: 322
Registriert: Mi 8. Mai 2013, 22:46
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von gambi » So 7. Jan 2018, 13:46

Hallo gambasso, hallo besenmuckel.

Funktioniert bei euch TrayIcon generell?
Aktiviert die Komponente 'gb.gui.trayicon', zieht ein TrayIcon auf die Form und versucht mal: gambas code
Public Sub Form_Open()
  
  TrayIcon1.Picture = Picture["icon://access"]
  TrayIcon1.Show()
  
End
Was bedeutet 'Streamen > nix' genau?
Bekommst du keine UPnP-fähigen Geräte angezeigt? In 'Abb. 4: Gambas Web Radio - Streaming' der Hilfe ist z.B. der Gut-Fall dargestellt.
Oder hat GWR zwar streaming-fähige Geräte ermittelt und bei einem Klick auf das Gerät startet das Streaming nicht?

Übrigens: VLC 2.2.3 sollte mindestens installiert sein - nicht 2.1.3. Wenn du dennoch schon 2.2.3 haben solltest, dann versuche es bitte mit einer höheren Version, wie in der Hilfe unter 'Installation notwendiger Komponenten' beschrieben. Wichtig dabei: cvlc, also der Konsolen-Part von VLC wird in GWR benutzt!
gambasso hat geschrieben:
So 7. Jan 2018, 12:21
Hilfeseite kommt, aber wie hasste die denn gemacht?
Ja, das ist toll, nicht? :wink: Das war mal ein Versuch direkt aus Libre-Office-Writer heraus ein HTML-Dokument zu erzeugen. Dabei werden die im Originaldokument eingebetteten Bilder als Base64 codierte Daten eingefügt (src="data:image/*;base64).

gg

besenmuckel
Foriker
Beiträge: 191
Registriert: Di 4. Nov 2014, 21:11
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von besenmuckel » Mo 8. Jan 2018, 00:31

Aktiviert die Komponente 'gb.gui.trayicon', zieht ein TrayIcon auf die Form und versucht mal: gambas code
Hatte ich schon probiert. Ging aber nicht. Prinzipiell funktioniert aber TrayIcon. Habe jetzt den Fehler gefunden. Nach den entpacken der GWR_3.0.0-3.0.tar.gz die entpackte GWR_3.0.0 umbenennen z. B. in GWR_hustensaft und schon geht es mit den TrayIcon. Im neuen Namen dürfen keine Punkte sein.
Noch ein Problem, manchmal hängt er sich bei der Suche nach Sender auf.
Grösse der Button habe ich auf 17 x 17 gesetzt, damit sie sichtbar sind. Erscheinungsbild ist ok. Man könnte aber auch noch die Bilder verkleinern.
Screenshot_20180108_010325.png
Screenshot_20180108_010325.png (92.25 KiB) 14325 mal betrachtet

Benutzeravatar
gambi
Moderator
Beiträge: 322
Registriert: Mi 8. Mai 2013, 22:46
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von gambi » Fr 12. Jan 2018, 20:13

Hallo besenmuckel,
grafisch geht das ja eingermaßen. Ich hatte mir das schlimmer vorgestellt. Einzig die Nummern auf den Favoritentasten werden nicht richtig dargestellt, da noch zu groß.
besenmuckel hat geschrieben:
Mo 8. Jan 2018, 00:31
Noch ein Problem, manchmal hängt er sich bei der Suche nach Sender auf.
Wo und wann genau hängt es? Was passiert genau?

Danke und viele Grüße
gg

besenmuckel
Foriker
Beiträge: 191
Registriert: Di 4. Nov 2014, 21:11
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von besenmuckel » Sa 13. Jan 2018, 00:59

Fehler kommt bei der Suche nach Sender, wenn ich einen falschen Buchstaben geschrieben habe und die und die Taste zurück(bei mir über die Enter-Taste - mir fällt der Name nicht ein) benutze. Siehe Bild. Vielleicht habe aber nur ich das Problem.
Screenshot_20180113_023805.png
Screenshot_20180113_023805.png (43.82 KiB) 14281 mal betrachtet
Habe mal live Linux-Mint 18.3 Mate und Gambas 3-Version 3.10 das Programm getestet. Ja stimmt da werden die Schliess-Button korrekt angezeigt. Hatte hier kein Ton, da ich aber nur live unterwegs war und ich nur 2 GB Ram habe war ich schon am Limit. Deshalb nix weiter getestet.
Unterschiedliches Aussehen kommt schon wenn ich verschiedene Fenstermanger benutze. Ich benutze selber KDE. Wenn ich meine Programme dann unter LXDE teste gleiche Distribution und hier noch das Aussehen(Crux, Redmond, Industireal o. a.) wechsel ist das so. Es verschieben sich die Schaltflächen ein wenig. Ist minimal aber ärgerlich. Jetzt lasse ich in meinen Programmen etwas mehr Platz, wenn sie sich um 1 - 4 px verschieben.
Ich glaube habe noch was gefunden in WebRadio Zeile 250.

Code: Alles auswählen

btnFav3.Tooltip = $LastStations["Favourites/Favourite02"]
Sollte vorn bestimmt btnFav2.Tooltip heissen.

Benutzeravatar
gambi
Moderator
Beiträge: 322
Registriert: Mi 8. Mai 2013, 22:46
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von gambi » So 14. Jan 2018, 11:47

Hallo besenmuckel,
vielen Dank für das intensive Testen und das Code-Review.

Den von dir dokumentierten Fehler bei der Suche kann ich leider nicht nachvollziehen. Bei der Eingabe von "ras", dann das letzte Zeichen löschen (s) und statt dessen "d" eingeben, führt nicht zum Abbruch. Löschen des letzten Zeichens geht bei mir über die Backspace-Taste. Einzig die Suche dabei dauert relativ lange. Das hängt ja vielleicht am Suchbegriff. Denn fast alle der über 18.000 Stationen haben irgendwie ein "rad" im Namen :wink:

4tionov hatte schon mal eine lokale Datenbank ins Spiel gebracht, in der alle Stationen vorgehalten werden. Das würde die Suche sicherlich verkürzen. Dabei ist halt zu beachten, dass immer nur die Stationen in die DB kommen, die tatsächlich auch online sind. Das ändert sich mitunter. Siehe hier: http://www.radio-browser.info/gui/#/broken.
besenmuckel hat geschrieben:
Sa 13. Jan 2018, 00:59
Ich glaube habe noch was gefunden in WebRadio Zeile 250.
Das ist richtig und in der Tat ein Fehler. Super, dass du den gefunden hast. 8-)
Richtig muss es gambas code
btnFav2.Tooltip = $LastStations["Favourites/Favourite02"]
heißen.

gg

besenmuckel
Foriker
Beiträge: 191
Registriert: Di 4. Nov 2014, 21:11
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von besenmuckel » So 14. Jan 2018, 13:48

Den von dir dokumentierten Fehler bei der Suche kann ich leider nicht nachvollziehen.
Konnte jetzt aber den Fehler etwas eingrenzen.
Nur bei Suchbegriff radio kommt der Fehler.
Suche nach den Sender okerwelle funktioniert auch mit der Backspace-Taste. Auch Suchbegriff 70er oder anderes geht. Nur wenn ich bei der Suche nach den Sender Radio38 Braunschweig und bei der Suche nach radio38 eingeben will hängt er sich auf. Ich kann nur ra eingeben weiter komme ich nicht. Gebe ich aber bei der Suche braunschweig oder auch io38 ein funktioniert es.
Das hängt ja vielleicht am Suchbegriff. Denn fast alle der über 18.000 Stationen haben irgendwie ein "rad" im Namen
Ja liegt am Suchbegriff. Suchbegriff ras geht, aber rad will nicht. Vielleicht ist es auch nur an meiner alten Kiste so. :?
Um evtl. Fehler an diesen Rechner oder Tastatur auszuschliessen, habe ich mal Linux-Mint live und GWR auf den anderen Rechner getestet. Ist aber da das gleiche. Suchbegriff ras oder anderes geht, aber rad will nicht. Meine Rechner haben beide nur Dual-Core-CPU und 2 GB RAM. Gebe ich aber bei der Suche z. B. ra dio38 ein und entferne dann mit der Backspace-Taste das Leerzeichen geht es auch wieder. Bei Suchbegriff ra dio und entferne dann mit der Backspace-Taste das Leerzeichen hängt er sich wieder auf.

besenmuckel
Foriker
Beiträge: 191
Registriert: Di 4. Nov 2014, 21:11
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von besenmuckel » Mo 15. Jan 2018, 13:33

Hier meine kurze Zusammenfassung
Der Fehler mit den Tray-Icon tritt nur bei Fenstermanager KDE(Plasma5) auf. Umbenennen wie schon beschrieben funktioniert. Bei mir mit folgenden Distri getestet und notwendig.
Debian-Stretch(Kanotix-KDE)
Debian-Unstable(Siduction-KDE)
Kubuntu(KDE)
Bei der Versionen mit LXDE oder Mate keine Probleme mit Tray-Icon. Umbenennen nicht erforderlich. Bei mir mit folgenden Distri getestet.
Debian-Stretch(Kanotix-LXDE)
Linux-Mint(Mate)
Button-Grösse musste ich bei keiner Distri ändern. Favoriten und Schliess-Button wurden korrekt angezeigt. Außer bei Debian-Unstable(Siduction-KDE) war es bei den Favoriten am Limit aber noch OK. Warum bei meinen installierten System(beide Partitionen das nicht nicht ging weiss ich nicht. Hängt wahrscheinlich mit der installierten Standard-Schriftgrösse oder dpi zusammen.
gwrtest.png
gwrtest.png (139.82 KiB) 14206 mal betrachtet
Die Suche mit Eingabe von rad wie schon beschrieben hängen sich alle Distri bei mir auf. Bei mir mit folgenden Distri getestet.
Debian-Stretch(Kanotix-KDE)
Debian-Stretch(Kanotix-LXDE)
Debian-Unstable(Siduction-KDE)
Kubuntu(KDE)
Linux-Mint(Mate)
Streaming nicht getestet. Die Hilfe-Seite finde ich persönlich sehr gut und ausreichend. Das mit der lokale Datenbank finde ich eine gute Idee, nur wer aktualisiert die und löscht nicht funktionierende raus. :lol:
Zum Schluss noch was mir persönlich nicht gefällt.
Die Dreiecke wechseln der Favoriten rote Dreiecke auf grauen Hintergrund für mich nicht optimal, aber noch erkennbar. Habe eine Rot-Grün-Schwäche. Gibt mehrere Menschen die das Problem haben.
Vielleicht hilft es dir ja weiter.

Benutzeravatar
gambi
Moderator
Beiträge: 322
Registriert: Mi 8. Mai 2013, 22:46
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von gambi » Di 16. Jan 2018, 20:54

Hallo besenmuckel,
wow!
Herzlichen Dank für dein ausführliches Review zum Programm. Da hast du sicherlich eine Menge Zeit investiert.
Der Tipp mit dem Ändern des Dateinamens beim TrayIcon ist schon tricky 8-)

Das mit der Eingabe von "rad" werde ich mir nochmal genau anschauen. Ich mutmaße mal, dass das TreeView da nicht mitkommt :?: Wenn ich die Anfrage direkt bei radio-browser eingebe (http://www.radio-browser.info/webservic ... ations/rad), bekomme ich rund 8000 Stationen zurück. Das aber relativ schnell.

Ja, sorry. An mögliche Farbsehschwächen hatte ich in der Tat nicht gedacht. Was wären denn gute Farbkombinationen für dich?

Viele Grüße
gg

besenmuckel
Foriker
Beiträge: 191
Registriert: Di 4. Nov 2014, 21:11
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von besenmuckel » Fr 19. Jan 2018, 14:28

Herzlichen Dank für dein ausführliches Review zum Programm. Da hast du sicherlich eine Menge Zeit investiert.
Da ich mein Programm auch mit anderen Distri und Fenstermanger teste habe ich gleich auch das WebRadio mit getestet der Zeitaufwand war minimal.
Der Tipp mit dem Ändern des Dateinamens beim TrayIcon ist schon tricky
Hier war der Zeitaufwand etwas höher. Es bestand aber auch eigenes Interesse warum es nicht ging, da ja TrayIcon sonst funktioniert. Also Projekt unter anderen Namen neu aufgebaut, die Sachen impotiert und Code kopiert usw.. TrayIcon ging. Erst nach Umbenennen in Orginalnamen kam der Fehler mit den TrayIcon. War eher Zufall das ich es gefunden habe. Auch erst gemerkt mit anderen Distri und Fenstermanger das dies nur bei KDE so ist.
Ja, sorry. An mögliche Farbsehschwächen hatte ich in der Tat nicht gedacht. Was wären denn gute Farbkombinationen für dich?
Einfach so lassen. Denn sonst kommt ein Wanderer des Weges und will es wieder anders haben. Vielleicht bin ich auch der Wanderer, das ist doch alles viel zu klein bei meinen schlechten Augen. :lol:
Das mit der Eingabe von "rad" werde ich mir nochmal genau anschauen.
Das wäre schön. Habe noch mal etwas herumgespielt. Bei Suchbegriffen mit nur 1. 2 oder ein paar Ergebnissen geht die Tastatureingabe flüssig. Bei Suchbegriff rock, hits oder classic dauert es immer bevor er die Ergebnisse geladen hat und ich den nächsten Buchstaben bzw. Backspace benutzen kann. Hängt sich aber nicht auf. Ändere ich die minimale Zeilenanzahl auf 6 und Suchbegriff auf radio3 werden nur einige Sender gefunden und Tastatureingabe ist flüssig. Dann funktioniert aber Suchbegriff rock oder hits nicht mehr.

Code: Alles auswählen

If Len($txtSearch.Text) < 6 Then Return
Ändere ich es auf 5 und Suchbegriff radio hängt er sich auf.
Vielleicht liegt es an meine alten Kisten, beide Rechner nur Dual-Core-CPU, 2 GB RAM und DSL 6000-er. :(

Benutzeravatar
gambi
Moderator
Beiträge: 322
Registriert: Mi 8. Mai 2013, 22:46
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von gambi » Sa 20. Jan 2018, 16:38

Hallo besenmuckel,
wie ich vermutet hatte, liegt das "rad"-Problem tatsächlich am TreeView. Und zwar genauer bei TreeView.Current.Clear() bzw. TreeView.Current.Delete().

Natürlich braucht der Download auch einige Zeit, je nach Internetspeed, dann noch die Aufbereitung in ein JSON-String und die Übergabe der Daten in eine Collection.

Was aber geschieht dann? Beim ersten Suchlauf mit "rad" ist noch alles ok. Es dauert ein paar Sekunden und dann werden die Daten im TreeView angezeigt. Etwa 7.800 Einträge mit den entsprechenden Untereinträgen. Macht in Summe ca. 45.800 Einträge (TreeView.count).
Änderst du jetzt die Suche, z.B. durch den weiteren Buchstaben "i", wird das TreeView Item "Search", also die 45.800 items gecleared. Und das dauert........

Im Anhang findest du ein Projekt, mit dem ich den Punkt einmal simuliere.
Hier die Zeitmessungen für den ersten und den zweiten Durchlauf, um ein TreeView mit 10.000 Items zu füllen, zu löschen bzw. clearen und dann erneut zu füllen.
Im ersten Durchlauf werden bei mir 5 Sekunden benötigt, um das TreeView zu füllen.
Im zweiten Durchlauf auch wieder 5 Sekunden um zu füllen - aber über 30 Sekunden um das vorhandene zu löschen!!!

Erster Durchlauf:

FMain.btnFillTV_Click.18: Start: 20.01.2018 16:11:00
FMain.btnFillTV_Click.20: End delete: 20.01.2018 16:11:00
FMain.fillIT.38: Begin Clear: 20.01.2018 16:11:00
FMain.fillIT.40: End Clear: 20.01.2018 16:11:00
FMain.btnFillTV_Click.30: End: 20.01.2018 16:11:05

Zweiter Durchlauf:
FMain.btnFillTV_Click.18: Start: 20.01.2018 16:11:11
FMain.btnFillTV_Click.20: End delete: 20.01.2018 16:11:43
FMain.fillIT.38: Begin Clear: 20.01.2018 16:11:43
FMain.fillIT.40: End Clear: 20.01.2018 16:11:43
FMain.btnFillTV_Click.30: End: 20.01.2018 16:11:48

Es wäre prima, wenn du das einmal testen könntest und mir berichtest.
Wenn das Verhalten ähnlich ist, werde ich das einmal als Bug einstellen.

Danke und viele Grüße
gg
TreeView-Test-0.0.1.tar.gz
(11.76 KiB) 465-mal heruntergeladen

besenmuckel
Foriker
Beiträge: 191
Registriert: Di 4. Nov 2014, 21:11
Kontaktdaten:

Re: Gambas Web Radio 3.0

Beitrag von besenmuckel » Sa 20. Jan 2018, 17:50

Was aber geschieht dann? Beim ersten Suchlauf mit "rad" ist noch alles ok.
Nein komme bei der Eingabe von rad nur bis ra, das d nimmt er schon nicht mehr und hängt sich auf.

Hier meine Ergebnisse.
1. Test
Erster Durchlauf:
FMain.btnFillTV_Click.18: Start: 20.01.2018 17:12:14
FMain.btnFillTV_Click.20: End delete: 20.01.2018 17:12:14
FMain.fillIT.38: Begin Clear: 20.01.2018 17:12:14
FMain.fillIT.40: End Clear: 20.01.2018 17:12:14
FMain.btnFillTV_Click.30: End: 20.01.2018 17:12:21
Zweiter Durchlauf:
FMain.btnFillTV_Click.18: Start: 20.01.2018 17:14:39
FMain.btnFillTV_Click.20: End delete: 20.01.2018 17:14:39
FMain.fillIT.38: Begin Clear: 20.01.2018 17:14:39
FMain.fillIT.40: End Clear: 20.01.2018 17:15:34
FMain.btnFillTV_Click.30: End: 20.01.2018 17:15:41

2. Test
Erster Durchlauf:
FMain.btnFillTV_Click.18: Start: 20.01.2018 17:43:51
FMain.btnFillTV_Click.20: End delete: 20.01.2018 17:43:51
FMain.fillIT.38: Begin Clear: 20.01.2018 17:43:51
FMain.fillIT.40: End Clear: 20.01.2018 17:43:51
FMain.btnFillTV_Click.30: End: 20.01.2018 17:44:00
Zweiter Durchlauf:
FMain.btnFillTV_Click.18: Start: 20.01.2018 17:44:32
FMain.btnFillTV_Click.20: End delete: 20.01.2018 17:45:31
FMain.fillIT.38: Begin Clear: 20.01.2018 17:45:31
FMain.fillIT.40: End Clear: 20.01.2018 17:45:31
FMain.btnFillTV_Click.30: End: 20.01.2018 17:45:39

Wäre schön wenn es eine Lösung gebe für schnelleres Löschen.
Zuletzt geändert von besenmuckel am Sa 20. Jan 2018, 18:20, insgesamt 2-mal geändert.

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste