XMPP ile ilgili iyi öğreticiler? [kapalı]


110

Bazı açık kaynaklı XMPP sunucularına bakıyordum ve http://xmpp.org/ resmi sayfasına aşinayım . Ancak şu ana kadar " Genişletilebilir Mesajlaşma ve Durum Protokolü (XMPP) gerçek zamanlı iletişim için açık bir teknolojidir " ile XEP özelliklerinin listesi arasında hiçbir şey bulamadım . Örneğin, temel bilgileri ve terminolojiyi açıklayan makaleler - kıta, IQ, mevcudiyet, vb. Wikipedia sayfası bile bunu gözden kaçırıyor, şaşırtıcı olmayan bir şekilde, açık kaynak projeleri siz kodu incelemeye başlamadan önce bunları bildiğinizi varsayıyor.

Bununla ilgili iyi, (yarı-) resmi bir eğitim seti var mı? XMPP yerine Jabber kaynaklarını aramam gerekiyor mu?

Diğer şeylerin yanı sıra, sadece kuru protokol metni değil, kullanım durumları ve akış şemaları görmeyi umuyorum. XMPP ile ilgili kitapların var olduğunu biliyorum, ancak genellikle bir kitaptaki her şeye çevrimiçi olarak da bir şekilde ulaşılabilir.

Yanıtlar:



36

İşte beni XMPP Geliştirme konusunda başlatan şey:

  • İyi bir kitap: XMPP The Definivie Guide
  • Olgun bir Java API. Ignite Realtime'dan Smack Library'yi seçtim ve temelleri öğrenmek için harika dili bir sürü küçük betikle kullandım.

Daha sonra OpenFire XMPP Sunucusu için bir eklenti geliştirdim. Sitelerinde bazı öğreticiler ve bir forum da var. Hem şaplak hem de açık ateş API'sinin öğrenilmesinin kolay olduğunu düşünüyorum.

Java ile ilgilenmiyorsanız: Kitap SkeekXMPP Python kitaplığına atıfta bulunur ve onu bazı örnekler (echo bot, ...) oluşturmak için kullanır.


İnce. Kitaba bir göz atmanızı öneririm. API sınıfları çoğunlukla xmpp kavramlarından / stanzalarından sonra adlandırıldığından, temel terminolojiyi öğrendikten sonra iyi bir başlangıç ​​noktasına sahip olacaksınız.
towe75

1
ayrıca, jack moffit'in JavaScript ile Profesyonel XMPP Programlama ve jQuery kitabı mükemmel, yukarıda bahsedilenlerden (O'Reilly) daha iyi. professionalxmpp.com

XMPP The Definivie Kılavuzu'nu okurken tonlarca yazım hatası görmeye hazır olun (çoğunlukla örnek kodda)
kas-kad

XMPP The Definitive Guide harika ve ayrıntılı, belki biraz modası geçmiş, ancak kendime iyi bir başlangıç ​​yaptı.
Jerry

17

Diğerlerinin de söylediği gibi, teknik özellikler iyi bir giriş niteliğindedir. Doğaları gereği teknik oldukları ve kesin oldukları doğru - ancak bunlar gerçekten herhangi bir protokol için gördüğüm en iyi özelliklerden bazıları, özellikle de en son RFC'ler ( 6120 ve 6121 ) orijinalleri.

Örneğin, bir kıtanın tanımını bilmek istediğinizden bahsediyorsunuz, 6120 bölüm 8'de (örneklerle) açıklanmıştır .

Spesifikasyonların nasıl daha net hale getirilebileceğine dair herhangi bir geri bildiriminiz varsa, bunu, spesifikasyonların sonraki taslakları için tüm geri bildirimlerin dikkate alındığı XMPP posta listesinde söyleyin .

Spesifikasyonlar gerçekten sizin için çok fazlaysa (bazı insanların benden daha fazla resim sevmesini takdir ediyorum), kitabı düşünün (ister kağıt ister dijital formda olsun) - hem temel spesifikasyonlara hem de en çoğuna kolay bir giriş olarak tasarlanmıştır. ortak uzantılar ve bunların geliştirilmesine ve uygulanmasına yardımcı olan kişiler tarafından yazılmıştır.


1
Tanrı aşkına, tek başına RFC 6120 200 sayfadan uzun. Ve basit tutmaları gerektiğini düşündüm ..........
Pacerier

1
Basitlik, otomatik olarak kısa bir spesifikasyon anlamına gelmez. Ben kendim için XMPP'yi oldukça basit buluyorum. Özellikle XMPP'nin modülerliği, yani XMPP Core, XMPP IM ve XEP'ler arasındaki ayrım, protokolü benim için çekici kılıyor.
Akış

1
Diğerlerinin de belirttiği gibi, XMPP hakkında bilgi edinirken RFC'ler en iyi arkadaşlardır. Birkaç yıl önce XMPP'yi kendim öğreniyordum ve bilgi parçalarını başlangıçtaki hedefli öğreticiler olarak derledim. XMPP ve Kadro ve Varlık konularına samimi bir giriş iyi bir başlangıç ​​olmalıdır.
musimbate

8

RFC'ler (Wikipedia sayfasında listelenmiştir) bu konuya oldukça iyi bir giriş olmalıdır.

Örneğin: RFC3920: Genişletilebilir Mesajlaşma ve Durum Protokolü (XMPP): Çekirdek


2
Doğrusu ham protokol dışında bir şey bulacağını, bu kesin ziyade dostu olarak yazılmıştır ... ama yine de temellerini kapsar bilerek vardır olduğunu yararlıdır.
Bay Boy

Yani, protokolün temellerine inmeyen XMPP için bir programcı öğreticisi mi arıyorsunuz? Bir süre önce "XMPP Python API" (Google AP-Engine) ile deneyler yaptım: code.google.com/appengine/docs/python/xmpp/overview.html Belki de bu XMPP dünyasına bir giriş olabilir :)
FloE

Bir bakıma ... ama şimdiye kadar çalıştığım her teknolojide referans olarak resmi spesifikasyonlar var, ancak temelleri daha hızlı öğrenmeye yönelik eğitimleri okuyun. DirectX veya Spring veya CSS veya herhangi bir şey gibi.
Bay Boy

Anlıyorum. İstediğiniz temel terminoloji RFC'lerde ve xmpp.com'da (ve belki de yalnızca orada ...) tanımlanmış ve açıklanmıştır. Daha pratik bir giriş için, web üzerinde Java, Perl, Ruby, Python, ... dillerinde farklı API'ler ile kendi Jabber istemcinizi oluşturmak için düzinelerce örnek ve öğretici vardır (önceki yorumdaki bağlantıya bakın).
FloE

@FloE, Alıntı yaptığınız RFC güncel değil. RFC'nin yeterli olmadığını okumanın yanı sıra, XMPP için okunması gereken tonlarca birbiriyle ilişkili RFC var.
Pacerier

2

Bu eski bir soru olabilir, ancak XMPP'yi öğrenmek için kullandığım süreci devam ettirmek istedim.

Birkaç yıl önce, birkaç arkadaşım ve ben XMPP'den nasıl yararlanılacağını öğreniyorduk ve daha büyük parçaya nasıl sığacağını anlamak oldukça sıkıcı bir işti. XMPP'nin wikipedia sayfasını okuyarak başlamanızı şiddetle tavsiye ederim:

http://en.wikipedia.org/wiki/XMPP

Kaç kişinin XMPP ile ilgili en temel soruları cevaplayamadığına şaşıracaksınız.

Ayrıca bu makaleyi okumanızı şiddetle tavsiye ederim:

http://www.infoworld.com/article/2682116/application-development/xmpp-rises-to-face-simple-standard.html

Size XMPP'nin arkasındaki motivasyon hakkında bir fikir verecektir, geçmişi ve eskiden onunla aynı olan protokolleri.

Oradan, XMPP ile ilgilenebileceğiniz herhangi bir özelliği daha derinlemesine anlamak için wikipedia sayfasının kaynaklarını okumak en iyisi olacaktır.


1

Xmpp asmack kitaplığını şuradan kullanın:

http://beem-project.com/projects/beem/files indir asmack-android-7-beem-jingle.jar

ve belgeleri

http://www.igniterealtime.org/downloads/index.jsp

Umarım bana yardım ettiği gibi başkalarına yardımcı olur


Neden orijinal ASmack sayfası yerine Beem kullanmalısınız?
Pacerier

1
@Pacerier En son kontrol ettiğimde asmack stabil değildi ve düzenli olarak güncellenmiyordu, bu yüzden bunun yerine düzenli olarak güncellenen asmack'in beem sürümünü kullandım ve daha kararlı görünüyordu.
Sheraz Ahmad Khilji

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.