Een uitleg van achter de schermen.
Het moet er toch eens van komen, een uitleg (met wat plaatjes) van de server software waarmee de online ontvangers met het internet verbonden zijn.
Mijn online receivers (Icom PCR100, Ten-Tec RX320 en af en toe de Yaesu FT817) zijn natuurlijk ‘niet zomaar’ op het internet beschikbaar. Er is speciale sofware voor geschreven en met behulp van vrij beschikbare software, een aantal gekochte programma’s en natuurlijk veel coderen, is een en ander gerealiseerd.
Allereerst maar eens het complete blokschema.

Je zit hier alle scripts en ‘blokken’ software welke gebruikt worden. De SAM Encoder V3.7.1 (website) is aangeschaft. De Winamp player is V2.9.1 (website). Dit is een oude versie! om de belasting voor de server zo laag mogelijk te houden. De Shoutcast server is eveneens een oude versie namelijk v1.6.0rc2/win32 (website). De oude vesie van de Shoutcast server is nodig om een minimale vertraging te behouden. Als je de laaste versie gebruikt (v1.9.7) kan de vertraging in het audiosignaal oplopen tot wel zo’n 2 minuten. NB: Alle sofware draait op een Windows 98 omgeving.
Tijdens het laden van de HTML pagina wordt automatisch gecontroleerd of er gebruik gemaakt kan worden van de RealPlayer (4 seconden delay) of dat er moet worden uitgeweken naar de Windows Media Player (10 seconden delay).
Goed dat wat betreft de audio verbinding. Dan nu de aansturing van de ontvanger, welke start op de remote HTML /PHP server. Daar wordt door middel van een PHP script een HTML-FORM aangemaakt (controller), die de ontvanger instellingen uitleest en als de gebruiker veranderingen wenst, dit doorzend naar de ontvanger. Het doorsturen vindt vanuit de remote server plaats via een beveiligde verbinding naar de local server.
Op de lokale server staat een in java geschreven programma te draaien. De ’tree’ van dit programma vindt je hieronder waarbij gebruik gemaakt wordt van de Java JDK 1.5 Design Kit.

Deze server software bevat modules voor de verschillende ontvangers en bevat alle functies om via de beveiligde verbinding met de remote server te communiceren en via RS-232 met de ontvanger(s). Deze in java gecodeerde software is ‘ons’ eigendom en niet voor publicatie beschikbaar. Om je toch een indruk te geven, hieronder een stukje code.

Goed, dat is dat. Nu de rest. Op de remote server draait nog wat andere sofware. Scripts nodig voor de opmaak van de site en scripts voor bijvoorbeeld de shoutbox of de embedded players. Ook de registratie en de nieuwsbalk worden hier dynamisch met behulp van PHP scripting gemaakt. (PHP is ideaal voor dit doel en goed te beveiligen). Verder wordt er gebruik gemaakt van een MYSQL database waar allerlei statistieken in bijgehouden worden. Deze database is IP-nummer georienteerd.

We kunnen hierdoor de luisteraars uit de anonimiteit halen (naam in de shoutbox) en bijvoorbeeld ook statistieken per ontvanger maken.

Tot slot nog een foto-tje van de server plus de PCR100 en RX320 ontvangers. (op een plank onder mijn bureau)

De server PC is een oude IBM Thinkpad 390 (P2/450MHz) en voor de 2e RS-232 en 2e Soundcard wordt gebruik gemaakt van een Sitecom USB-Serial Cable en een Sitecom USB Audio 5.1 Adapter. Daarnaast is er een PCMCIA LAN kaartje van 3COM geplaatst.
Op de server draaien twee ‘Winamp – SAM encoder – Shoutcast server‘ combinaties. De belasting van de PC blijft ruim onder de 50%, dus de server staat op z’n gemakkie zijn werk te doen.
Verder hebben we op het geheel nog een paar SMS ‘alerts’ staan waarbij de status (of juist de verandering) van de server(s) wordt gemeld. Ook zijn de beide servers op afstand toegankelijk.
Ik hoop dat dit verhaal enige duidelijkheid geeft over de opzet van de ‘online ontvangers’. Mocht je vragen hebben dan kun je me altijd mailen.
vy 73 de Johan, PA3ANG
