HttpIRC

Abstract

Sembra strano, però è quello che permette di fare questo Sub-Server: ogni apparechiatura elettronica, ormai, ha un ricevitore ad infrarosso per essere comandata quasi interamente a distanza. Il progetto permette di virtualizzare su un qualsiasi browser Http (quindi ad esempio anche su un telefonino) un qualsiasi telecomando, quindi basterebbe collegarsi via internet al proprio server casalingo (che ha preimpostato il telecomando virtuale) per inviare comandi virtuali, che il sistema traduce in comandi Infrarosso per le tue apparecchiature.

Il nome del progetto, HttpIrc, si rifa al nome di lIRC/winlIRC, cioè un software che serve per apprendere comandi infrarosso e trasmetterli all’occorrenza (tramire Hardware apposito), HttpIrc possiamo quindi considerarla un estenzione che permette di trasmettere all’occorrenza il segnale (tramite Lirc/WinLirc), però in questo caso, permette di farlo da qualsiasi parte del mondo lo si voglia!

Principio di funzionamento


Come funziona

La parte più riuscita del progetto, secondo me, sta nel fatto che il sistema è in grado di trasmettere un comando (cioè una pressione “virtuale” di un tasto del telecomando) da qualsiasi terminale che abbia la possibilita di visualizzare pagine web HTML standard tramite il protocollo Http.

In breve, da un terminale (ad esempio un telefonino) tramite browser mi collego al server Http (nel caso specifico ho utilizzato Apache) e tramite delle pagine HTML (precompilate dal PHP e del tutto trasparenti al browser che le rileva tutte come HTML) invio “la pressione” di un tasto del telecomando; HttpIrc, rilevando la pressione si connette tramite socket tcp a Lirc/WinLirc inviando il nome del tasto e del telecomando. Lirc/Winlirc tramite queste due informazioni è in grado di inviare il segnale infrarosso desiderato.

Ovviamente Lirc/Winlirc deve essere pre-configurato con i parametri dei telecomandi virtualizzati.

Da notare che il terminale è indipendente da tutto il sistema: basta che esso abbia la possibilità di visualizzare pagine HTML; posso utilizzare un pc, un palmare, un vecchio telefonino con browser java ecc ecc…

Adesso lo schema “Principio di funzionamento” dovrebbe risultare più chiaro anche ad i meno esperti.

Lato client

Non è necessaria alcuna installazione da parte del Client, basta utilizzare un normale browser html per accedere al server (ovviamente il sistema client deve sia essere collegato ad internet, sia avere un browser http).

Firefox

Opera disponibile anche per sistema operativo Symbian

Internet Explorer

Installazione

La compatibilita del progetto è ampia anche per il sistema server: è sufficiente un sistema dotato di Webserver con PHP, nel caso specifico ho utilizzato Apache (con PHP) per Windows, per l’installazione di entrambi mi sono servito di EasyPHP il quale senza imbattersi in configurazioni particolari, installa una base da subito funzionante di Apache, PHP e MySQL (che a noi non servirà a niente).

Apache e PHP sono disponibili anche per sistemi Linux: anzi il supporto per tale sistema è di maggiore livello (anche Lirc, nato per Linux è disponibile nella versione WinLirc per Windows).

Eseguita l’installazione del pacchetto EasyPHP, dobbiamo configurare le estensioni di php: Basta aggiungere nell’elenco delle estensioni php_sockets, senza questa estensione il Sub-Server non funzionerà.

Nella directory di installazione di EasyPHP troveremo una directory “WWW” che sarà la root del Web-server, basterà estrarre il file telecomando.zip (disponibile in download) nella cartella WWW per eseguire l’installazione.

Per verificare accediamo dal un browser all’indirizzo: http://locahost/telecomando/ se troviamo riscontro abbiamo effettuato il tutto correttamente.

Per sistemi Linux l’installazione sarà analoga almeno “logicamente”, la procedura di installazione, invece, differirà sicuramente di un bel pò.

N.B. WinLirc (credo anche Lirc) non riceve alcuna connessione se non si imposta una password (vedi WinLirc Password); La password su HttpIrc va impostata nel file “send.php” contenuto della directory “telecomando” (Il file è commentato e non necessita di spiegazioni).

Nuovo telecomando

Accedere a http://localhost/telecomando/

Cliccare su “Crea telecomando”

Inserire il nome del telecomando e premere crea (deve esserci corrispondenza con Lirc/Winlirc, vedi “Corrispondenza Lirc (WinLirc)

Inserire i bottoni della prima fila di tasti orizzontale del telecomando separati da virgole (deve esserci corrispondenza con Lirc/Winlirc, vedi “Corrispondenza Lirc (WinLirc) e premere “Crea riga”

HttpIrc crea la fila, cliccare su indietro

Inserire le file successive (passaggio precedente); quando non ci sono più nuove file cliccare su:”Nessuna nuova riga! vai al telecomando…”

Si avrà a disposizione un modello, per disposizione dei tasti, simile al telecomando originale e bastera cliccare sul nome del tasto per inviare una pressione virtuale a Lirc/WinLirc tramite Sub-server HttpIrc)

Altre funzioni

Altre funzioni disponibili sono: Lista telecomando ed Elimina telecomando, non anno bisogno di molte spiegazioni; il primo visualizza tutti i telecomandi creati, il secondo elimina un telecomando sapendone il nome.

Corrispondenza (Win)Lirc

In Lirc/WinLirc ogni telecomando ha un nome, e i tasti associati al telecomando hanno anche essi un nome: questi nomi devono corrispondere con le configurazioni di HttpIrc.

Maggiori dettagli dettagli su:

Lirc

WinLirc

WinLirc Password

Dove si trova la password di WinLirc?

Apparentemente nella configurazione di WinLirc non vi è alcun campo dove impostare la password, infatti WinLirc di default non accetta alcuna connessione al proprio server, per far si che invece accetti le connessioni provenienti da HttpIrc bisogna impostare la password nel seguente modo:

Start>Esegui>regedit>OK

Posizionarsi in: HKEY_LOCAL_MACHINESOFTWARELIRC

Aggiungere, se non esiste già un campo String dal nome password e impostarlo con la password scelta

Nell’area sezione Download è disponibile un file *.reg che esegue la configurazione automaticamente.

Download

Nome Dimensione Descrizione
telecomando.zip 11 Kbytes HttpIrc v0.1
winlirc.reg 1 Kbytes File registro che imposta la password di WinLirc