Creare una chat minimal in tempo reale

ho appena cominciato il mio primo progetto rails e ho smanettato con
l’aspetto della homepage (reset css, e un p di layout, cos per giocare
un
p con compass :P)

ora come prossimo passo mi piacerebbe implementare una chat in tempo
reale,
senza alcun tipo di utenza, pubblica diciamo (per semplificarmi il +
possibile la vita) inserisci il tuo nome e parli!

Consigli? Fonti da condividere al riguardo? Gemme in particolare?

Il 19/01/2012 10:08, Luca B. ha scritto:

grazie, mi sto guardando il cast:

ma per gestire le richieste ajax, devo per forza utilizzare questi file
nome_file.js.erb? Non possibile utilizzare coffee-script?

Il giorno 19 gennaio 2012 10:14, Andrea P. [email protected] ha
scritto:

Riaccendo la conversazione dopo aver provato private_pub

a parte il fatto che non mi si installa la gemma su windows (su ubuntu
si…), il problema di private_pub (e di faye) che praticamente usa un
altro server thin per rendere i messaggi in tempo reale…

Siccome utilizzo heroku (al momento gratuitamente) faye ovviamente non
mi
funziona.

Ho sentito parlare di un’altra soluzione con la gemma “Pusher”, cosa ne
pensate?

Avete altre gemme da proporre? O altre soluzioni?

Il giorno 19 gennaio 2012 10:46, Luca B. [email protected] ha
scritto:

Pusher se non sbaglio è un servizio che offre un servizio di Websocket e
se superi una certa soglia inizi a pagare…
Non so, ma credo che per fare una chat realtime ti serve poter gestire
un server asincrono oppure vai su IRC :stuck_out_tongue:
In alternativa non la fai realtime e via js fai una richiesta ogni x
secondi per vedere se c’è qualcosa di nuovo

Luigi

Ho paura che utilizzare ajax sia l’unica soluzione T-T

Il giorno 01 febbraio 2012 10:19, Luigi M. - grigio.org <
[email protected]> ha scritto:

In effetti dal sito di Pusher c’ un limite di 20 connessioni (credo
contemporanee) e 100,000 messaggi al giorno per utilizzare le API in
modo
gratuito. C’ una libreria che offre funzionalit simili (cross-browser) e
si basa su node.js, si chiama socket.io (http://socket.io/). Permette
comunicazioni full-duplex tra client (browser) e server, nascondendo i
tecnicismi sottostanti (websockets, long polling, ecc…) che la libreria
utilizza under-the-hood per garantire la compatibilit con tutti i
browser
(anche su mobile a quanto pare). Consiglio la lettura di questo articolo
http://howtonode.org/websockets-socketio in cui, dopo una chiara
introduzione alla libreria, parla proprio di implementare una chat
realtime
in 10 linee di codice. Mi sembra che Heroku supporti anche applicazioni
node.js.

Ciao,
Max

2012/2/1 Luca B. [email protected]

secondi per vedere se c’ qualcosa di nuovo


Luca B.


Ml mailing list
[email protected]
http://lists.ruby-it.org/mailman/listinfo/ml

Cmq a quanto pare vedo che implementare comportamenti real-time in Rails
non cos semplice, visto che probabilmente non dovr fare solo la chat in
tempo reale, forse meglio che cambio proprio framework? Zan zan zaaan!

(vi pongo questa domanda perch leggo spesso in giro per forum e affini
che
l’architettura di Rails non adatta per questi comportamenti…)

Il giorno 01 febbraio 2012 10:53, Massimiliano T. <
[email protected]> ha scritto:

Cmq a quanto pare vedo che implementare comportamenti real-time in Rails
non cos semplice, visto che probabilmente non dovr fare solo la chat
in
tempo reale, forse meglio che cambio proprio framework? Zan zan zaaan!

(vi pongo questa domanda perch leggo spesso in giro per forum e affini
che
l’architettura di Rails non adatta per questi comportamenti…)

Praticamente nessun framework full-stack MVC lo e’.

Queste tecnologie si basano sul tenere aperte connessioni per molto
tempo,
e il 99% delle volte i framework mvc sono pensati con

1 connessione → 1 richiesta.

Alla connessione poi spesso e volentieri (come nel caso di rails)
corrispondono un processo/thread e a questo punto per avere una chat con
10 utenti ti ritrovi a spendere un capitale.

Anche io mi sento di consigliarti node.js per questi “utilizzi”. Non
sono
un grande fan di javascript, ma ti assicuro che implementare le stesse
cose con un altro linguaggio/tool e’ davvero complesso. (in realta’
eventmachine di ruby fa a pezzi node.js come architettura, ma non
dispone
di un equivalente di socket.io altrettanto valido)

Occhio anche al webserver che metterai davanti (se ce lo metti)
praticamente nessuno dei “famosi” supporta socket.io se non attraverso
moduli di terze parti.

Bella fregatura T-T

Il giorno 01 febbraio 2012 16:53, Roberto De Ioris [email protected] ha
scritto:

http://rubygems.org/gems/cramp

il problema che sto cramp funzioner? Sar supportato? O_o

Il giorno 01 febbraio 2012 16:57, Alberto F. [email protected] ha
scritto:

Il 01/02/2012 16:59, Luca B. ha scritto:

Il 01/02/2012 16:53, Roberto De Ioris ha scritto:

2012/2/1 Luca B. [email protected]

Ho sentito parlare di un’altra soluzione con la gemma “Pusher”, cosa ne
pensate?

non potresti cavartela con lo stack cedar? Sostanzialmente ti lanci i
processi da te, quindi se sono due server non un problema, penso.


twitter: @riffraff
blog (en, it): www.riffraff.info riffraff.blogsome.com
work: cascaad.com circleme.com

http://www.erlang.org/ - altro che real time chat, e` utilizzato per
gestire le telefonate…


David N. Welton

http://www.welton.it/davidw/

http://www.dedasys.com/

infatti quello che sto pensando (ho poca esperienza con heroku ancora!)

in locale private pub mi funziona alla perfezione! Apro 2 terminali, sul
primo faccio rails s e sul secondo faccio rackup private_pub.ru -s
thin
-E production
che sarebbe il comando per far partire il secondo server

online funziona, ma non c’ il realtime in quanto appunto non esegue il
secondo comando… come dovrei fare?

Il giorno 02 febbraio 2012 00:14, gabriele renzi [email protected] ha
scritto: