Mesagerie extensibilă și protocol de prezență Sigla protocolului XMPP.
Funcţie | Mesagerie instanta |
---|---|
Acronim | XMPP |
Data crearii | 1999 |
Port | 5222 (client - server) și 5269 (server - server) |
RFC | RFC 6120 - RFC 6121 - RFC 6122 - RFC 3922 - RFC 3923 |
Protocolul de prezență și mesagerie extensibilă (care poate fi tradus ca „protocol de prezență și mesagerie extensibilă”), adesea prescurtat caXMPP, este un set deprotocoale standard deschiseale Internet Engineering Task Force (IETF) pentrumesaje instantaneeși, mai general, un sistem descentralizat arhitectura schimbului de date. XMPP este, de asemenea, un sistem de colaborare și schimb multimedia aproape în timp real, prin extensia saJingle, din carerețeaua de voce peste IP(telefonie prin Internet),videoconferințași schimbul de fișiere sunt exemple de aplicații.
XMPP este alcătuit dintr-un protocol TCP / IP bazat pe o arhitectură client-server care permite schimburi descentralizate de mesaje instantanee sau nu, între clienți, în format Extensible Markup Language (XML). XMPP este în continuă și deschisă dezvoltare în cadrul IETF .
Serverele pot fi private ( intranet ) sau publice, adică legate de alte servere publice prin Internet (ca și în cazul Facebook ). Toate serverele publice creează, ceea ce se numește, rețeaua Jabber (sau rețeaua XMPP).
XMPP este astfel utilizat în întreaga lume de sute de servere publice și private și de milioane de utilizatori. Mulți jucători industriali folosesc XMPP, cum ar fi Apple , Cisco , Gizmo5 , GNOME , Google , IBM , Oracle Corporation etc.
Protocolul XMPP este separat în două părți diferite:
XMPP este conceput mai larg și mai deschis decât simpla mesagerie instantanee proprietară. Este astfel utilizat de companii și administrații în contextul schimburilor de date între aplicații ( ETL , EAI , ESB ) în cadrul sistemelor de informații, dar și în contextul calculării în rețea , al notificărilor de alertă sau al „informațiilor, supravegherii sistemului și rețelei sau cloud computing . În cele din urmă, XMPP este utilizat și în domeniul partajării și colaborării aproape în timp real, cum ar fi tabla interactivă (TBI) sau editarea și dezvoltarea colaborativă, dar și jocurile de pe internet (în special jocurile de cărți). Și platoul).
În 1998, Jeremie Miller a inventat Jabber, un protocol de mesagerie instant bazat pe XML . Opera sa a fost inspirată de ICQ , creat în 1996, primul sistem de acest gen.
În ianuarie 1999, el a anunțat public pe Slashdot „o platformă completă de calcul open source pentru mesageria instantanee cu comunicații transparente către alte sisteme de mesagerie instant (Instant Messaging)”. A fost proiectat protocolul, precum și un server funcțional ( jabberd ) și clienți de testare (WinJab și Gabber).
În august 1999, Jeremie Miller a cerut standardizarea protocolului de către IETF pentru a promova standarde deschise și interoperabilitate. Grupul de lucru IMPP a fost apoi creat și publicat în februarie 2000 RFC 2778 și 2779, dar nu a ajuns la un consens.
Serverul open source jabberd 1.0 a fost lansat în mai 2000 și stabilizează protocolul. În iunie, Jeremie Miller publică un Internet-Draft, dar termenul a trecut. Versiunea 1.2 a jabberd a introdus apelare care previne furtul identităților serverului.
Software Foundation Jabber a fost creată în august 2001 pentru a coordona numărul tot mai mare de open source dezvoltatori și companii care adoptă tehnologii Jabber precum și de a gestiona documentare, crearea și menținerea unor protocoale XML.
În 2002, Internet-Drafts au fost din nou trimise la IETF ca XMPP Core și XMPP IM și a fost creat un XMPP WG.
RFC 3920 XMPP Core și XMPP-IM 3921 și RFC 3922 și 3923 CPIM e2e sunt acceptate în octombrie 2004.
În 2007, JSF a devenit XSF pentru XMPP Standards Foundation și a oferit servicii de autoritate intermediară de certificare TLS / SSL.
Apple a introdus suportul Jabber în software-ul său de mesagerie iChat care afost livrat cu OS X Tiger în mai 2005.
Google din 2005 până în 2013Compania Google a lansat Google Talk în august 2005, un client proprietar XMPP conectat la serverele Google. Acest client furnizează voce (telefonie prin Internet) prin protocolul Jingle , ale cărui specificații sunt publicate împreună cu biblioteca libjingle. JSF se ocupă apoi de standardizarea sa. Câteva luni mai târziu, aceste servere sunt deschise rețelei Jabber. În mai 2013, Google și-a anunțat intenția de a abandona XMPP în favoarea protocolului propriu Google+ Hangouts .
Facebook din 2008 până în 2015În mai 2008, dezvoltatorii Facebook au anunțat suport pentru XMPP pentru aplicația lor de chat . Implementarea va intra în vigoare pe 10 februarie 2010, însă serverul nu este conectat la restul rețelei Jabber. În iulie 2015, Facebook a eliminat suportul pentru XMPP, forțându-l să treacă prin propriul API.
Teste ICQ / AIM și Yahoo!În ianuarie 2008, AOL , apoi furnizor de software de mesagerie instant ICQ și AIM (compatibil și bazat pe protocolul OSCAR ), a creat un server experimental care permite conectarea prin XMPP. Prin urmare, este o bază de peste 50 de milioane de utilizatori care extinde rețeaua Jabber. În februarie 2008, Yahoo! , proprietar al Yahoo! Messenger , de asemenea, anunță interesul pentru XMPP. De atunci, serverele se pot conecta la alte servere XMPP
Skype în 2011În iunie 2011, Skype a anunțat crearea unui conector XMPP pe versiunea Windows a software-ului client în curs de dezvoltare. Cu toate acestea, utilizarea este limitată la text și nu la video / audio. Această integrare părea să urmărească conectarea la Facebook, care folosea XMPP .
WLM în 2011În septembrie 2011, Microsoft a anunțat că Windows Live Messenger (denumit și MSN (de la MicroSoft Network)) va oferi o modalitate de conectare la mesageria instantanee prin protocolul XMPP utilizând sistemul de autentificare OAuth în contextul noului său sistem de operare Windows 8 și în special serviciile online asociate acestuia. Cu toate acestea, integrarea se va face doar la nivel client-server, interzicând persoanelor prezente pe alte domenii XMPP (cum ar fi gmail.com sau jabber.org) să interacționeze cu acestea, specificațiile reținute fiind puține.
Acest anunț a fost rapid urmat de integrarea în clienți alternativi de e-mail care acceptă mai multe protocoale.
Poate fi interesant de observat că Microsoft are acțiuni pe Facebook și a cumpărat Skype în mai 2011
În septembrie 2008, Cisco a anunțat un acord pentru a achiziționa compania Jabber Inc . Nici XSF, fundația non-profit, nici protocolul XMPP nu sunt afectate de această preluare.
XMPP este inima lui Jabber; XMPP este pentru a Jabber ceea ce Hypertext Transfer Protocol (HTTP) este pentru World Wide Web .
Protocolul este menținut de XMPP Standards Foundation (fosta Jabber Software Foundation ) și este standardizat de Internet Engineering Task Force (IETF) sub denumirea de XMPP.
Jeremie Miller a început proiectul în 1998 și prima versiune publică a fost lansată în mai 2000. Principalul rezultat al proiectului este jabberd , un server gratuit care permite software - ului client să se conecteze și să chat. Acest server este utilizat fie pentru a crea o rețea privată Jabber (în spatele unui firewall ), fie pentru a vă alătura altor servere publice federate de pe Internet, pentru a conversa online cu corespondenții săi.
Se pot crea multe aplicații Jabber:
Datorită Jingle , extensie multimedia XMPP, este posibil să se extindă fluxurile oricărui tip de conținut binar: telefonie prin Internet , videoconferințe , etc.
Rețeaua de utilizatori Jabber este descentralizată, ceea ce înseamnă că este alcătuită din mai multe servere, legate între ele. Funcționează similar cu e-mail-ul : mesajele instant sunt transferate de la un utilizator la altul prin intermediul serverului respectiv. O altă similitudine, un utilizator este identificat printr-un nume de utilizator și un nume de server, cele două câmpuri fiind separate printr-un semn „@”. Acest identificator se numește Jabber ID sau mai simplu „adresa Jabber”.
De exemplu, dacă un utilizator [email protected] dorește să comunice cu [email protected] , software-ul client al lui Bob își trimite mai întâi mesajul către serverul său ( jabber.org ). Apoi serverul lui Bob va contacta serverul lui Gilles ( jabber.cz ) prin Internet și îi va transmite mesajul. În cele din urmă, serverul jabber.cz va putea contacta software-ul clientului Gilles, dacă este online și îi va comunica mesajul (în caz contrar, mesajul va fi păstrat în așteptare pe server și livrat atunci când Gilles este online). Evident, toți acești pași se fac instantaneu și transparent pentru utilizator, la fel ca e-mailurile.
|
↔ |
|
← |
|
→ |
|
↔ |
|
O „adresă Jabber” este identificatorul unui utilizator Jabber.
Este alcătuit din două sau trei părți:
Aceste două sau trei câmpuri sunt prezentate ca utilizator @ server / resursă sau mai simplu ca utilizator @ server , cum ar fi o adresă de e-mail.
De exemplu, utilizatorul bob de pe serverul jabber.org care utilizează resursa de lucru va avea următoarea adresă Jabber:
[email protected]/Work sau mai simplu [email protected] , ca adresă de e-mail.
Lista de contacte a unui utilizator Jabber este stocată pe server. Un utilizator își va găsi lista de contacte dacă se conectează la Jabber pe alte stații de lucru sau cu alți clienți.
Prezență și stăriCând un client Jabber se conectează (sau se deconectează) la un server, acesta din urmă anunță automat prezența online (respectiv deconectarea) utilizatorului la toate contactele sale.
De asemenea, este posibil să se facă „invizibili”: utilizatorul apare apoi deconectat în ochii corespondenților săi, în timp ce poate vedea notificările de prezență ale contactelor sale.
Există mai multe stări de prezență: „online”, „offline”, „absent” și așa mai departe.
Resurse și prioritățiResursa este o parte opțională a unei adrese Jabber. Este ultimul câmp al acestuia, separat de celelalte printr-o bară ("/").
O resursă, configurabilă în mod liber de către utilizator în software-ul clientului său, indică în general locația în care se află un utilizator Jabber. De exemplu, valorile Acasă , Muncă , Laptop sau Software sunt comune. Resursa devine utilă atunci când un utilizator se conectează din mai multe locații sau cu mai mulți clienți în același timp. Contactele sale au apoi posibilitatea de a-i trimite un mesaj către una sau alta dintre resursele sale, sau către cea implicită, adică cea cu cea mai mare prioritate . Dacă mai multe resurse conectate în același timp au priorități egale, atunci mesajul este adresat ultimei resurse conectate.
Prioritatea este un număr întreg între -128 și +127. Este opțional și configurabil în majoritatea clienților Jabber. În caz de absență, serverul consideră că prioritatea sa este egală cu 0. Utilizarea sa principală este pentru livrarea mesajelor destinate unei adrese Jabber fără o resursă.
TransportMulte servere Jabber oferă un serviciu de transport (numit și gateway-uri ) care permite utilizatorului să discute cu utilizatorii altor sisteme de mesagerie instantanee.
Utilizatorul se poate înregistra pentru aceste transporturi furnizând informațiile sale specifice rețelei țintă (de exemplu, pentru ICQ , este necesar să furnizați UIN ( User Identification Name ) și parola). Odată ce acest lucru este făcut, utilizatorul poate adăuga contacte folosind această altă rețea așa cum ar face pentru un contact folosind Jabber. În prezent, transporturile sunt disponibile pentru cele mai utilizate protocoale, precum IRC , MSN Messenger , Yahoo! Messenger și ICQ / AOL Instant Messenger (AIM). Există, de asemenea, alte transporturi, cum ar fi serviciile de e-mail.
Prin utilizarea unui transport, utilizatorul este limitat la capacitățile clientului și la transportul utilizat; probabil că nu va avea toate funcțiile clientului oficial al rețelei țintă.
Contactele din alte rețele apar în lista de contacte ca contacte Jabber cu adrese Jabber specifice: identificator @ transport . Deci, de exemplu:
Cu toate acestea, unele companii operează aceste protocoale și servicii proprietare blochează sau au blocat accesul la servere importante Jabber, cum ar fi jabber.org și jabber.com , în rețeaua lor. Prin urmare, acest lucru face imposibilă utilizarea transporturilor în cauză pe aceste servere. Unele companii au modificat protocolul, conform unor Pentru a contracara utilizarea rețelei lor de către clienți alternativi sau de către transporturile Jabber.
Focus grupGrupurile de discuții sau conferințele („MUC” pentru „ Multi User Chat ” sau „ GroupChat ”) creează conversații către mai mult de doi utilizatori, cum ar fi canalele IRC .
Este posibil să se creeze grupuri publice sau private, invita contacte la un grup, grupuri moderate ( „ kick “ și „ ban “ ca pe IRC), log discutii si face camera persistenta.
Transferuri de fișiereJabber permite transferul de fișiere direct între utilizatori sau prin utilizarea unui proxy intermediar, cu posibilitatea de a întrerupe și relua transferul.
JingleJingle permite sesiunea de voce prin rețea IP și videoconferință . Jingle a fost integrat în mai mulți clienți Jabber, cum ar fi Psi , Kopete , Spark și Pidgin din 2008 . A fost folosit de Google Talk până în 2014 înainte de a fi înlocuit de Google Hangout .
Publicație-abonamentUn mecanism de publicare-abonare este în curs de dezvoltare și standardizare, XEP-0060 aceasta implicând capacitatea de a distribui și stoca informații pe serverele Jabber, precum și de a vă abona la aceste fluxuri de știri.
Acest mecanism poate, printre altele, face posibilă configurarea publicațiilor de briefuri și articole, abonamente la aceste fire, prezență extinsă, marcaje partajate, sisteme de licitație și schimb, cataloage online, sisteme de flux de lucru , notificări de evenimente ...
Prezență extinsăUn mecanism de prezență extinsă este în curs de dezvoltare și standardizare , implică abilitatea de a difuza informații dinamice legate de starea utilizatorului, și anume starea lui de spirit, activitatea sa, geolocalizarea lui, ascultarea muzicii sale, profilul său, porecla, navigarea pe web, chat-urile de grup, jocurile, videoclipurile fiind vizualizate și cu siguranță mai multe.
Prezența extinsă se bazează pe simplificarea și specializarea mecanismului de publicare-abonament.
Jingle, datorită designului larg, scalabilității și standardizării sale, oferă un spectru larg de aplicații:
Protocolul XMPP (Jabber) a fost publicat ca o „ schiță ” de către IETF , astfel încât să poată deveni un standard de mesagerie instantanee.
În 2002 , grupul XMPP a fost format și a lucrat la standardizarea protocolului. Deci, pe 4 octombrie 2005, specificațiile protocolului au fost publicate ca RFC-uri . De la acea dată, XMPP Standards Foundation a cedat controlul principalelor sale tehnologii către IETF continuând să dezvolte numeroase extensii ale protocolului (seria XEP).