https://github.com/ilmattodel93/PseudoSocketIO
http://ilmattodel93.github.com/PseudoSocketIO/
Vi è mai venuta voglia di programmare ad eventi una bella chat qui su altervista? Oppure una chat visuale che coinvolga tutti i visitatori e che gli permetta in tempo reale* oppure di programmare dei giochi multiplayer in HTML5 e hostarli su altervista?
Ebbene PseudoSocketIO fa per voi!
PseudoSocketIO è una piccola libreria da me scritta che implementa una architettura in stile websocket utilizzando ajax e comet :)
Potrete quindi sfogarvi a sviluppare la vostra applicazione senza troppi problemi con le interazioni client-server :)
Features:
- API in stile websocket, in particolare SocketIO, con open, event, close
- Multichanneling, che permette di joinare più channel differenti
- Scambio di key tra client e server, che implementa una cifratura di base che evita di rubare l'id della connessione altrui
- OpenSource
- Possibilità di salvare valori associati al client $client->data
Codice PHP:
class Server extends PseudoSocketIO\Server{
function on_open($client){
$client->data = array('username' => 'guest'.rand(1234,9876));
$client->save();
$this->send(array('target' => 0, 'event' =>'message', 'data'=>array('username'=>'ChatBot','message'=>$client->data['username'].' joined')));
}
function on_event($client, $event){
// Broadcast received value.
$this->send(array('target' => 0, 'event' =>'message', 'data'=>array('username'=>$client->data['username'],'message'=>$event['data']['message'])));
}
function on_close($client){
$this->send(array('target' => 0, 'event' =>'message', 'data'=>array('username'=>'ChatBot','message'=>$client->data['username'].' left (timeout)')));
}
}
Pareri, domande, opinioni, migliorie? :)
*delay di 1-2 secondi