JMAP β€” ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Ρ‰Π΅ Π·Π°ΠΌΠ΅Π½ΠΈ IMAP ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π½Π° Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΈ писма

Π’ Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ Π½Π° мСсСца Π² Hacker News Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ сС обсъТдашС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΡŠΡ‚ JMAP, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½ ΠΏΠΎΠ΄ Ρ€ΡŠΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΠΎΡ‚ΠΎ Π½Π° IETF. Π Π΅ΡˆΠΈΡ…ΠΌΠ΅ Π΄Π° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π·Π° Ρ‚ΠΎΠ²Π°, Π·Π°Ρ‰ΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΠΈ ΠΊΠ°ΠΊ Π΅ устроСн.

JMAP β€” ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Ρ‰Π΅ Π·Π°ΠΌΠ΅Π½ΠΈ IMAP ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π½Π° Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΈ писма
/ PxHere / PD

Π‘ ΠΊΠ°ΠΊΠ²ΠΎ Π½Π΅ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈ IMAP

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» IMAP Π±Π΅ прСдставСн ΠΏΡ€Π΅Π· 1986 Π³ΠΎΠ΄ΠΈΠ½Π°. Много ΠΎΡ‚ Π½Π΅Ρ‰Π°Ρ‚Π°, описани Π² стандарта, днСс Π²Π΅Ρ‡Π΅ Π½Π΅ са Π°ΠΊΡ‚ΡƒΠ°Π»Π½ΠΈ. НапримСр, ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΡŠΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° Π²Ρ€ΡŠΡ‰Π° броя Π½Π° Ρ€Π΅Π΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° ΠΈΠΌΠ΅ΠΉΠ»ΠΈΡ‚Π΅ ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΈ суми MD5 β€” Ρ‚Π°Π·ΠΈ функционалност Π² ΡΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ‚Π΅ ΠΈΠΌΠ΅ΠΉΠ» ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°.

Π”Ρ€ΡƒΠ³ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π΅ ΡΠ²ΡŠΡ€Π·Π°Π½ с ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊ. Π’ случая с IMAP, ΠΈΠΌΠ΅ΠΉΠ»ΠΈΡ‚Π΅ сС ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚ Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π° ΠΈ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π½ΠΎ сС синхронизират с Π»ΠΎΠΊΠ°Π»Π½ΠΈΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ. Ако ΠΏΠΎ някаква ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° ΠΊΠΎΠΏΠΈΠ΅Ρ‚ΠΎ Π½Π° устройството Π½Π° потрСбитСля "сС ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈ", сС Π½Π°Π»Π°Π³Π° Π΄Π° сС синхронизира ΠΎΡ‚Π½ΠΎΠ²ΠΎ всичката ΠΏΠΎΡ‰Π°. Π’ ΡΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ свят, ΠΊΠΎΠ³Π°Ρ‚ΠΎ към ΡΡŠΡ€Π²ΡŠΡ€Π° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ хиляди ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ устройства, Ρ‚ΠΎΠ·ΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊ ΠΈ изчислитСлни рСсурси.

ВрудноститС Π²ΡŠΠ·Π½ΠΈΠΊΠ²Π°Ρ‚ Π½Π΅ само със самия ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», Π½ΠΎ ΠΈ с ΠΈΠΌΠ΅ΠΉΠ» ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ работят с Π½Π΅Π³ΠΎ. ΠžΡ‚ ΡΡŠΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° IMAP Ρ‚ΠΎΠΉ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ Π΅ ΠΏΠΎΠ΄Π»Π°Π³Π°Π½ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ€Π΅Π²ΠΈΠ·ΠΈΠΈ β€” Π°ΠΊΡ‚ΡƒΠ°Π»Π½Π°Ρ‚Π° вСрсия днСс Π΅ IMAP4. ΠŸΡ€ΠΈ Ρ‚ΠΎΠ²Π° Π·Π° Π½Π΅Π³ΠΎ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚ мноТСство ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»Π½ΠΈ Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ β€” Π² ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½ΠΈ дСвСтдСсСт RFC с допълнСния. Π•Π΄Π½ΠΎ ΠΎΡ‚ Π½Π°ΠΉ-Π½ΠΎΠ²ΠΈΡ‚Π΅ Π΅ RFC8514, прСдставСно ΠΏΡ€Π΅Π· 2019 Π³ΠΎΠ΄ΠΈΠ½Π°.

Много ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Ρ‚ собствСни ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡ‚ΠΎ трябва Π΄Π° опростят Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° с IMAP ΠΈΠ»ΠΈ Π²ΡŠΠΎΠ±Ρ‰Π΅ Π΄Π° Π³ΠΎ замСстят: Gmail, Outlook, Nylas. Π’ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° Ρ‚ΠΎΠ²Π°, ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈΡ‚Π΅ ΠΈΠΌΠ΅ΠΉΠ» ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ само част ΠΎΡ‚ Π½Π°Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π’Π°ΠΊΠΎΠ²Π° Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ сСгмСнтация Π½Π° ΠΏΠ°Π·Π°Ρ€Π°.

β€žΠžΡΠ²Π΅Π½ Ρ‚ΠΎΠ²Π°, ΡΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡΡ‚ ΠΈΠΌΠ΅ΠΉΠ» ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π½Π΅ трябва просто Π΄Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° прСнос Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ, Π½ΠΎ ΠΈ Π΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ с ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΈ ΠΈ Π΄Π° синхронизира с ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€Π°, β€” ΠΊΠ°Π·Π²Π° Π‘Π΅Ρ€Π³Π΅ΠΉ Π‘Π΅Π»ΠΊΠΈΠ½, Π½Π°Ρ‡Π°Π»Π½ΠΈΠΊ Π½Π° ΠΎΡ‚Π΄Π΅Π»Π° Π·Π° Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Π½Π° IaaS ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π° 1cloud.ru. β€” ДнСс Π·Π° Ρ‚Π΅Π·ΠΈ Ρ†Π΅Π»ΠΈ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ външни ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΈ ΠΊΠ°Ρ‚ΠΎ LDAP, CardDAV ΠΈ CalDAV. Π’ΠΎΠ·ΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ услоТнява ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π½ΠΈ стСни Π² ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΈΡ‚Π΅ ΠΌΡ€Π΅ΠΆΠΈ ΠΈ отваря Π½ΠΎΠ²ΠΈ Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΈ Π·Π° ΠΊΠΈΠ±Π΅Ρ€Π°Ρ‚Π°ΠΊΠΈ.

Π Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π·Π°Π΄Π°Π΄Π΅Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ Π΅ JMAP. Π’ΠΎΠΉ Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½ ΠΎΡ‚ спСциалисти Π½Π° FastMail ΠΏΠΎΠ΄ Ρ€ΡŠΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΠΎΡ‚ΠΎ Π½Π° Π˜Π½ΠΆΠ΅Π½Π΅Ρ€Π½ΠΈΡ ΡΡŠΠ²Π΅Ρ‚ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ (IETF). ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΡŠΡ‚ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° HTTPS, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° JSON (ΠΏΠΎ Ρ‚Π°Π·ΠΈ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Π΅ подходящ Π½Π΅ само Π·Π° ΠΎΠ±ΠΌΠ΅Π½ Π½Π° ΠΈΠΌΠ΅ΠΉΠ»ΠΈ, Π½ΠΎ ΠΈ Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° Ρ€Π΅Π΄ΠΈΡ†Π° Π·Π°Π΄Π°Ρ‡ΠΈ Π² ΠΎΠ±Π»Π°ΠΊΠ°) ΠΈ улСснява ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΡ‰Π°Ρ‚Π° Π² ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈΡ‚Π΅ систСми. ОсвСн ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° Π½Π° ΠΈΠΌΠ΅ΠΉΠ»ΠΈ, JMAP ΠΏΡ€Π΅Π΄Π²ΠΈΠΆΠ΄Π° ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Π½Π° Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° с ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΈ ΠΈ ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

Π₯арактСристики Π½Π° новия ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»

JMAP Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π±Π΅Π· Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ (stateless) ΠΈ Π½Π΅ изисква постоянно ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ с пощСнския ΡΡŠΡ€Π²ΡŠΡ€. Π’Π°Π·ΠΈ характСристика улСснява Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π² нСстабилни ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ ΠΌΡ€Π΅ΠΆΠΈ ΠΈ позволява икономия Π½Π° батСрията Π½Π° устройствата.

Π˜ΠΌΠ΅ΠΉΠ»ΡŠΡ‚ Π² JMAP Π΅ прСдставСн във Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ JSON структура. Вя ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° цялата информация ΠΎΡ‚ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅Ρ‚ΠΎ RFC5322 (Internet Message Format), която ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° Π½Π° пощСнскитС прилоТСния. Π‘ΠΏΠΎΡ€Π΅Π΄ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅, Ρ‚ΠΎΠ·ΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ трябва Π΄Π° улСсни ΡΡŠΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΈ слоТност (ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с MIME, Ρ‡Π΅Ρ‚Π΅Π½Π΅ Π½Π° заглавия ΠΈ ΠΊΠΎΠ΄ΠΈΡ€Π°Π½Π΅) Ρ‰Π΅ отговаря ΡΡŠΡ€Π²ΡŠΡ€ΡŠΡ‚.

Π—Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ със ΡΡŠΡ€Π²ΡŠΡ€Π°, ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΡŠΡ‚ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° API. Π—Π° Ρ‚ΠΎΠ²Π° Ρ‚ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠΈΡ€Π° Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ POST заявка, свойствата Π½Π° която са описани Π² сСсийния ΠΎΠ±Π΅ΠΊΡ‚ Π½Π° JMAP. Заявката ΠΈΠΌΠ° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ application/json ΠΈ сС ΡΡŠΡΡ‚ΠΎΠΈ ΠΎΡ‚ Π΅Π΄ΠΈΠ½ JSON ΠΎΠ±Π΅ΠΊΡ‚ Π½Π° заявка. Π‘ΡŠΡ€Π²ΡŠΡ€ΡŠΡ‚ ΡΡŠΡ‰ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° Π΅Π΄ΠΈΠ½ ΠΎΠ±Π΅ΠΊΡ‚ Π½Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€.

Π’ спСцификация (ΠΏΡƒΠ½ΠΊΡ‚ 3) Π°Π²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ Π΄Π°Π²Π°Ρ‚ слСдния ΠΏΡ€ΠΈΠΌΠ΅Ρ€ със заявка:

{
  "using": [ "urn:ietf:params:jmap:core", "urn:ietf:params:jmap:mail" ],
  "methodCalls": [
    [ "method1", {
      "arg1": "arg1data",
      "arg2": "arg2data"
    }, "c1" ],
    [ "method2", {
      "arg1": "arg1data"
    }, "c2" ],
    [ "method3", {}, "c3" ]
  ]
}

По-Π΄ΠΎΠ»Ρƒ Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€, ΠΊΠΎΠΉΡ‚ΠΎ Ρ‰Π΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° ΡΡŠΡ€Π²ΡŠΡ€ΡŠΡ‚:

{
  "methodResponses": [
    [ "method1", {
      "arg1": 3,
      "arg2": "foo"
    }, "c1" ],
    [ "method2", {
      "isBlah": true
    }, "c2" ],
    [ "anotherResponseFromMethod2", {
      "data": 10,
      "yetmoredata": "Hello"
    }, "c2"],
    [ "error", {
      "type":"unknownMethod"
    }, "c3" ]
  ],
  "sessionState": "75128aab4b1b"
}

ΠŸΡŠΠ»Π½Π°Ρ‚Π° спСцификация Π½Π° JMAP с ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΈ Π·Π° рСализация ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π° Π½Π° официалния сайт ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’Π°ΠΌ Π°Π²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ са ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π»ΠΈ описаниС Π½Π° спСцификациитС Π·Π° JMAP Contacts ΠΈ JMAP Calendars β€” Ρ‚Π΅ са насочСни към Ρ€Π°Π±ΠΎΡ‚Π° с ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€ΠΈ ΠΈ ΡΠΏΠΈΡΡŠΡ†ΠΈ с ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΈ. Π‘ΠΏΠΎΡ€Π΅Π΄ ΠΊΠ°Π·Π²Π°Ρ‚ Π°Π²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅, ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΈ ΠΈ ΠšΠ°Π»Π΅Π½Π΄Π°Ρ€ΠΈΡ‚Π΅ са ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½ΠΈ Π² ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈ, Π·Π° Π΄Π° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π΄ΠΎΡ€Π°Π±ΠΎΡ‚Π²Π°Π½ΠΈ ΠΈ стандартизирани нСзависимо ΠΎΡ‚ β€žΡΠ΄Ρ€ΠΎΡ‚ΠΎβ€œ. Π˜Π·Ρ…ΠΎΠ΄Π½ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° JMAP β€” Π² рСпозитория Π½Π° GitHub.

JMAP β€” ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Ρ‰Π΅ Π·Π°ΠΌΠ΅Π½ΠΈ IMAP ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π½Π° Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΈ писма
/ PxHere / PD

ΠŸΠ΅Ρ€ΡΠΏΠ΅ΠΊΡ‚ΠΈΠ²ΠΈ

Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‡Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° ΠΏΠΎ стандарта всС ΠΎΡ‰Π΅ Π½Π΅ Π΅ Π·Π°Π²ΡŠΡ€ΡˆΠ΅Π½Π°, Ρ‚ΠΎΠΉ Π²Π΅Ρ‡Π΅ сС внСдрява Π² производствСни срСди. НапримСр, ΡΡŠΠ·Π΄Π°Ρ‚Π΅Π»ΠΈΡ‚Π΅ Π½Π° открития пощСнски ΡΡŠΡ€Π²ΡŠΡ€ Cyrus IMAP Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ…Π° Π½Π΅Π³ΠΎΠ²Π°Ρ‚Π° JMAP вСрсия. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ ΠΎΡ‚ FastMail пуснаха прСдставиха ΡΡŠΡ€Π²ΡŠΡ€Π΅Π½ Ρ„Ρ€Π΅ΠΉΠΌΡƒΡŠΡ€ΠΊ Π·Π° новия ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π½Π° Perl, Π° Π°Π²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ Π½Π° JMAP прокси-ΡΡŠΡ€Π²ΡŠΡ€.

ΠΎΡ‡Π°ΠΊΠ²Π°Ρ‚, Ρ‡Π΅ Π² Π±ΡŠΠ΄Π΅Ρ‰Π΅ всС ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° JMAP Ρ‰Π΅ Π·Π°ΠΏΠΎΡ‡Π½Π°Ρ‚ Π΄Π° сС появяват. НапримСр, ΠΈΠΌΠ° извСстна вСроятност Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ ΠΎΡ‚ Open-Xchange, ΡΡŠΠ·Π΄Π°Π²Π°Ρ‰ΠΈ IMAP ΡΡŠΡ€Π²ΡŠΡ€ Π·Π° Linux систСми, Π΄Π° ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Ρ‚ към новия ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ». Броят Π½Π° участницитС Π² общността заявява, Ρ‡Π΅ искат Π΄Π° сС ΠΎΡ‚ΠΊΠ°ΠΆΠ°Ρ‚ ΠΎΡ‚ IMAP., Ρ„ΠΎΡ€ΠΌΠΈΡ€Π°Π½Π° ΠΎΠΊΠΎΠ»ΠΎ инструмСнтитС Π½Π° компанията.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ ΠΎΡ‚ IETF ΠΈ FastMail ΠΊΠ°Π·Π²Π°Ρ‚, Ρ‡Π΅ всС ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ Π²ΠΈΠΆΠ΄Π°Ρ‚ нСобходимостта ΠΎΡ‚ Π½ΠΎΠ² ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ стандарт Π·Π° ΠΎΠ±ΠΌΠ΅Π½ Π½Π° ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΡ. АвторитС Π½Π° JMAP сС надяват, Ρ‡Π΅ Π² Π±ΡŠΠ΄Π΅Ρ‰Π΅ всС ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Ρ‰Π΅ внСдрят Ρ‚ΠΎΠ·ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ».

ΠΠ°ΡˆΠΈΡ‚Π΅ Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ рСсурси ΠΈ ΠΈΠ·Ρ‚ΠΎΡ‡Π½ΠΈΡ†ΠΈ:

JMAP β€” ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Ρ‰Π΅ Π·Π°ΠΌΠ΅Π½ΠΈ IMAP ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π½Π° Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΈ писма Как Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅ cookies Π·Π° ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΈΠ΅ с GDPR β€” Π½ΠΎΠ² ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ инструмСнт Ρ‰Π΅ ΠΏΠΎΠΌΠΎΠ³Π½Π΅

JMAP β€” ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Ρ‰Π΅ Π·Π°ΠΌΠ΅Π½ΠΈ IMAP ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π½Π° Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΈ писма Как Π΄Π° спСститС ΠΏΠ°Ρ€ΠΈ Ρ‡Ρ€Π΅Π· ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ интСрфСйс
JMAP β€” ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Ρ‰Π΅ Π·Π°ΠΌΠ΅Π½ΠΈ IMAP ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π½Π° Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΈ писма DevOps Π² облачния сСрвиз Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Π½Π° 1cloud.ru
JMAP β€” ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Ρ‰Π΅ Π·Π°ΠΌΠ΅Π½ΠΈ IMAP ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π½Π° Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΈ писма Π•Π²ΠΎΠ»ΡŽΡ†ΠΈΡ Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° Π½Π° ΠΎΠ±Π»Π°ΠΊΠ° 1cloud

JMAP β€” ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Ρ‰Π΅ Π·Π°ΠΌΠ΅Π½ΠΈ IMAP ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π½Π° Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΈ писма ΠŸΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»Π½ΠΈ Π°Ρ‚Π°ΠΊΠΈ срСщу HTTPS ΠΈ Π½Π°Ρ‡ΠΈΠ½ΠΈ Π·Π° Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ тях
JMAP β€” ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Ρ‰Π΅ Π·Π°ΠΌΠ΅Π½ΠΈ IMAP ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π½Π° Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΈ писма Как Π΄Π° Π·Π°Ρ‰ΠΈΡ‚ΠΈΠΌ ΡΡŠΡ€Π²ΡŠΡ€ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚: ΠΎΠΏΠΈΡ‚ ΠΎΡ‚ 1cloud.ru
JMAP β€” ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Ρ‰Π΅ Π·Π°ΠΌΠ΅Π½ΠΈ IMAP ΠΏΡ€ΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π½Π° Π΅Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΈ писма ΠšΡ€Π°Ρ‚ΠΊΠΎ обяснСниС: ΠΊΠ°ΠΊΠ²ΠΎ Π΅ Continuous Integration

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster