Në fillim të muajit në Hacker News protokolli JMAP, . Ne vendosëm të flasim për arsyetse përse ai ishte i nevojshëm dhe si funksionon.
/ / PD
ĂfarĂ« nuk i pĂ«lqeu IMAP
Protokolli u prezantua nĂ« vitin 1986. ShumĂ« gjĂ«ra, tĂ« pĂ«rshkruara nĂ« standard, aktualisht nuk janĂ« mĂ« tĂ« rĂ«ndĂ«sishme. PĂ«r shembull, protokolli Ă«shtĂ« nĂ« gjendje tĂ« kthejĂ« numrin e linjave tĂ« emailit dhe kontrollet e shumĂ«sisĂ« â kjo funksionalitet nĂ« klientĂ«t modernĂ« tĂ« postĂ«s pothuajse nuk pĂ«rdoret.
Një problem tjetër është lidhur me konsumimin e trafikut. Në rastin e IMAP, emailët ruhen në server dhe periodikisht sinkronizohen me klientët lokalë. Nëse për ndonjë arsye kopja në pajisjen e përdoruesit "prishet", është e nevojshme të sinkronizohet përsëri e gjithë posta. Në botën moderne, kur mijëra pajisje mobile mund të jenë të lidhura me serverin, një qasje e tillë çon në rritjen e shpenzimeve të trafikut dhe burimeve kompjuterike.
Problemet nuk shfaqen vetĂ«m me protokollin e vet, por edhe me klientĂ«t e postĂ«s qĂ« punojnĂ« me tĂ«. QĂ« nga krijimi, IMAP ka kaluar nĂ«pĂ«r shumĂ« rishikime â versioni aktual deri tani Ă«shtĂ« IMAP4. PĂ«r kĂ«tĂ« version ekzistojnĂ« shumĂ« zgjerime opsionale â nĂ« internet nĂ«ntĂ«dhjetĂ« RFC me shtesa. NjĂ« nga mĂ« tĂ« rinjtĂ« Ă«shtĂ« , e paraqitur nĂ« vitin 2019.
Shumë kompani ofrojnë zgjidhje të veta proprietarë, të cilat duhet të thjeshtojnë punën me IMAP ose ta zëvendësojnë atë krejtësisht: , , . Si rezultat, klientët aktualë të postës mbështesin vetëm disa nga të gjitha karakteristikat e disponueshme. Ky larmi çon në segmentimin e tregut.
«PĂ«r mĂ« tepĂ«r, klienti modern i postĂ«s duhet jo vetĂ«m tĂ« dĂ«rgojĂ« mesazhe, por tĂ« jetĂ« nĂ« gjendje tĂ« punojĂ« me kontaktet dhe tĂ« sinkronizohet me kalendari, â thotĂ« Sergey Belkin, drejtori i zhvillimit tĂ« provajderit IaaS . â Sot pĂ«r kĂ«to qĂ«llime pĂ«rdoren protokolle tĂ« jashtme si , dhe . Ky kyçje komplikon konfigurimin e firewall-eve nĂ« rrjetet korporative dhe hap njĂ« gamĂ« tĂ« re pĂ«r sulmet kibernetike.
Zgjidhja e problemeve të theksuara është JMAP. Ai zhvillohet nga specialistët e FastMail nën drejtimin e Këshillit Inxhinierik të Internetit (IETF). Protokolli punon mbi HTTPS, përdor JSON (për këtë arsye ai është i përshtatshëm jo vetëm për shkëmbimin e mesazheve, por edhe për të zgjidhur një sërë problemesh në cloud) dhe e thjeshton organizimin e punës me postën në sistemet mobile. Përveç përpunimit të email-eve, në JMAP parashikohet gjithashtu mundësia e lidhjes së zgjerimeve për punë me kontakte dhe kalendarin-planifikues.
Veçoritë e protokolit të ri
JMAP është dhe nuk kërkon një lidhje të përhershme me serverin e postës. Kjo veçori e thjeshton punën në rrjetet mobile të paqëndrueshme dhe lejon ruajtjen e karikimit të pajisjeve.
Një email në JMAP paraqitet në formatin e strukturës JSON. Ajo përmban të gjitha informacionet nga mesazhi. (Internet Message Format), që mund të nevojitet nga aplikacionet e postës. Sipas zhvilluesve, ky qasje duhet të thjeshtësojë krijimin e klientëve, pasi zgjidhja e potencialeve të vështirësive (të lidhura me , leximin e kokave dhe kodimin) do të mbahet nga serveri.
Për t'u lidhur me serverin, klienti përdor API. Për këtë, ai formon një kërkesë POST të autentikuar, veçoritë e së cilës janë përshkruar në objektin e sesionit JMAP. Kërkesa ka formatin application/json dhe përbëhet nga një objekt kërkese JSON. Serveri gjithashtu gjeneron një objekt përgjigjeje.
Në (pika 3) autorët japin një shembull të mëposhtëm me kërkesën:
{
"using": [ "urn:ietf:params:jmap:core", "urn:ietf:params:jmap:mail" ],
"methodCalls": [
[ "method1", {
"arg1": "arg1data",
"arg2": "arg2data"
}, "c1" ],
[ "method2", {
"arg1": "arg1data"
}, "c2" ],
[ "method3", {}, "c3" ]
]
}
Më poshtë është një shembull përgjigjeje që do të formojë serveri:
{
"methodResponses": [
[ "method1", {
"arg1": 3,
"arg2": "foo"
}, "c1" ],
[ "method2", {
"isBlah": true
}, "c2" ],
[ "anotherResponseFromMethod2", {
"data": 10,
"yetmoredata": "Hello"
}, "c2"],
[ "error", {
"type":"unknownMethod"
}, "c3" ]
],
"sessionState": "75128aab4b1b"
}
Specifikimin e plotĂ« JMAP me shembuj realizimi mund tĂ« gjendet nĂ« projekt. Aty, autorĂ«t kanĂ« vendosur njĂ« pĂ«rshkrim tĂ« specifikimeve pĂ«r dhe â ato janĂ« orientuar pĂ«r tĂ« punuar me kalendaret dhe listat e kontakteve. Sipas autorĂ«ve, Kontakte dhe Kalendare janĂ« ndarĂ« nĂ« dokumente tĂ« veçanta, nĂ« mĂ«nyrĂ« qĂ« tĂ« mund tĂ« pĂ«rmirĂ«sohen dhe standardizohen nĂ« mĂ«nyrĂ« tĂ« pavarur nga "nĂ« bĂ«rthamĂ«". Kodet burimore pĂ«r JMAP janĂ« nĂ« .

/ / PD
Perspektivat
Megjithëse puna zyrtare mbi standardin ende nuk është përfunduar, ai tashmë po implementohet në mjedise prodhimi. Për shembull, krijuesit e serverit të hapur të postës kanë realizuar versionin e tij JMAP. Zhvilluesit nga FastMail kanë zhvilluar një kornizë serveri për protokollin e ri në Perl, ndërsa autorët e JMAP kanë prezantuar .
Pritet që në të ardhmen të ketë gjithnjë e më shumë projekte të bazuara në JMAP. Për shembull, ka një mundësi të caktuar që zhvilluesit nga Open-Xchange, që krijojnë serverin IMAP për sistemet Linux, do të kalojnë në protokollin e ri. Anëtarët e komunitetit e kërkojnë fuqimisht , që është formuar rreth mjeteve të kompanisë.
Zhvilluesit nga IETF dhe FastMail thonë se gjithnjë e më shumë përdoruesit shohin nevojën për një standard të ri të hapur për shkëmbimin e mesazheve. Autorët e JMAP shpresojnë që në të ardhmen më shumë kompani do të fillojnë ta implementojnë këtë protokoll.
Burimet dhe burimet tona shtesë:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Burimi: habr.com
