2009-05-11 36 views
5

Sitem için özel bir karışıklık fonksiyonu üzerinde çalışıyorum, Sunucudan push bildirimleri almanın bir yolu var, kullanıcının yeni bir mesaj aldığını?Push bildirimi ile gerçek zamanlı sohbet

Bildiğim tek teknik, yeni mesajlar olup olmadığını görmek için sunucuyu sürekli olarak ajax yoluyla sorgulamak ve gerekirse mesaj penceresini yeniden yüklemek.

Geri bildiriminiz için teşekkürler!

UPD: Şimdiye kadar aşağıdaki tarifi tespit edilmiştir:

1) Comet
2) BOSH - Senkron HTTP
3) XMPP Üzeri Çift yönlü-dere - Bu google talk

dayanmaktadır budur
+1

sadece bir not BOSH ve XMPP el ele gider. – Kinlan

cevap

5

. Nginx ile birleştiğinde çok kuyruklu ve ejabberd çok küçük bir kutuda 1000'in bağlantılarını koruyabilir.

XMPP ve BOSH ile neler yaptığımızı görmek için projelerimden birine www.vooices.us bir bakın.

http://www.ejabberd.im/

http://github.com/ssoper/jquery-bosh/tree/master JQueryBosh - HTTP

kurmak ve yüklemek için relativly kolaydır üzerinde XMPP hızlı ve kolay erişim sağlamak için.

Paul. Bu

XMPP yapmak için yardımcı iyi kütüphanelerin bir yeri vardır

+0

Ancak Internet Explorer'da çalışıyor mu? –

+0

Evet, çok iyi çalışıyor. Adil olmak için IE6'da denemedim ama IE7 ve IE8'i yaptım – Kinlan

+0

İyi olan şey, müşteri perspektifinden javascript olmasıdır. – Kinlan

0

Sunucunun istemciye bilgi iletmesinin hiçbir yolu yoktur, ancak her zaman Comet'u kullanabilirsiniz. Evet, sunucuyu yoklarsın, ama sürekli değil. Her bir bağlantıyı yaklaşık 30 saniye boyunca açık tutuyorsunuz (bu her zaman kullandığım aralık) ve gerektiğinde yeni bir bağlantı açıyorsunuz.

DÜZENLEME: Adobe Flash, sunucuya kalıcı bağlantılar yapılmasını sağlar, böylece bunu kullanabilirsiniz. Detaylar için bakınız this article. Comet muhtemelen bazı yararlı şeyler bağlanan gibi

+0

Ben badoo.com bakıyorum, herhangi bir kaynak kodu mevcut olup olmadığını merak, haberdar olmak için bazı flaş eklentisi kullanıyoruz .. – Andy

+0

Ah, evet, bunu düşünmedim. Flash, kalıcı bağlantılara izin veriyor, bu yüzden bir seçenek. –

+0

Cidden, XMPP ve BOSH'a bakın. – Kinlan

0

- BOSH ben

XMPP sunucuları

ejabberd, Openfire ben ejabberd kullanmak benim web sitelerinde kullanmak iyi bir kombinasyonudur

Javascript'te bildirimleri yakalamak için Strophe ile birlikte Ejabberd öğesini kullanabilirsiniz. Bildirim göndermek istiyorsanız

Bunu yapmanıza izin veren JAXL ve XMPPHP gibi kütüphaneler vardır, ancak bu PHP'dir.