עדכון אחרון:
בנוי על JMAP — פרוטוקול המייל המודרני
IMAP מ-1986. הטלפון שלכם לא. Reeva רץ באופן מקורי על JMAP, התקן הפתוח שסוף סוף גורר את המייל להווה — סנכרון מצטבר מהיר, push אמיתי, JSON מעל HTTPS. וכן, אנחנו עדיין מדברים IMAP ו-SMTP לכל קליינט ישן שיש לכם.
מה זה JMAP?
JMAP (JSON Meta Application Protocol) הוא תקן פתוח של IETF למייל, יומנים ואנשי קשר. הוא תוכנן ב-Fastmail ותוקנן ב- RFC 8620 (הפרוטוקול המרכזי) וב- RFC 8621 (החלקים הספציפיים למייל).
בעוד שIMAP הוא פרוטוקול עם מצב, מבוסס שורות, שמתחזה שהתיבה שלכם היא מערכת קבצים משנות ה-80, JMAP הוא JSON API חסר מצב מעל HTTPS שמתייחס למייל ככ-API שהוא באמת. אתם שואלים "מה השתנה מאז מצב X?" ומקבלים diff. מבקשים "תן לי את 50 ההודעות הראשונות שמתאימות לפילטר הזה, רק עם המאפיינים האלה" — ומקבלים בדיוק את זה בבקשה אחת.
זה לא הרחבה של Reeva או טריק של ספק. JMAP הוא מפרט פתוח עם כמה מימושי שרת עצמאיים ( Stalwart , Cyrus, וזה של Fastmail עצמה) וספריות קליינט בכל שפה משמעותית. בחרו ספק JMAP אחר מחר והנתונים שלכם מהגרים בקריאת API אחת.
למה JMAP מנצח
שישה יתרונות קונקרטיים על IMAP — לכם, לסוללה שלכם, ולרשת ביניכם לבין המייל שלכם.
סנכרון מהיר יותר
JMAP מביא את מה שהשתנה מאז הסנכרון האחרון בנסיעה הלוך-חזור אחת — בלי polling לכל תיקייה, בלי FETCH 1:*. פתיחת Reeva בטלפון אחרי שבוע = בקשה אחת, לא מאות.
Push אמיתי, בלי polling
PushSubscription מקורי מספק מייל חדש לקליינטים ברגע שהוא מגיע. הסוללה שלכם מפסיקה לשלם על הזכות לבדוק תיבה ריקה כל 60 שניות.
פעולות מאוגדות
הזיזו 200 הודעות, סמנו אותן כנקראו, החילו תווית — קריאת HTTP אחת. IMAP צריך מאות פקודות לאותה משימה, וכל אחת חוסמת את הבאה.
פרוטוקול מהעשור הזה
JSON מעל HTTPS, מוכן ל-OAuth, ניתן לחקירה כמו API. IMAP יצא ב-1986 וזה מורגש — כל פיצ׳ר מודרני הוא טלאי שמוברג מעליו.
חיפוש בשרת שבאמת עובד
חפשו לפי נושא, שולח, גוף, שם קובץ מצורף, טווח תאריכים — משולבים ומעומדים בשרת. נגמר עם הורדת תיבות לגרפ מקומי.
אותה הצפנה, פחות דליפה
JMAP רץ מעל TLS 1.3 עם אותן ערבויות הצפנה כמו IMAP. המטא-נתונים של הפרוטוקול קטנים יותר, אז משקיפים רואים פחות על דפוסי השימוש שלכם.
הראיות
אותה משימה, שני פרוטוקולים. תסתכלו על מספר הסיבובים.
IMAP — "מה חדש?"
a1 LOGIN user pass
a2 LIST "" "*"
a3 SELECT INBOX
a4 UID FETCH 1:* (FLAGS)
a5 SELECT Sent
a6 UID FETCH 1:* (FLAGS)
a7 SELECT Archive
a8 UID FETCH 1:* (FLAGS)
... one SELECT + FETCH per folder ... בקשה אחת לכל תיקייה. המצב חי בשני הצדדים. לפטופ שחוזר משינה עם 20 תיקיות = יותר מ-40 סיבובים לפני שתראו הודעה חדשה אחת.
JMAP — אותה שאלה
POST /jmap HTTPS
{
"using": ["urn:ietf:params:jmap:mail"],
"methodCalls": [[
"Email/changes",
{ "accountId": "u1", "sinceState": "42" },
"0"
]]
} קריאת HTTPS אחת. השרת עונה עם הסט המדויק של מזהי הודעות שהשתנו מאז הסנכרון האחרון, בכל התיקיות, ב-JSON שאפשר לפרסר בשלוש שורות.
השתמשו מכל קליינט
JMAP מקורי איפה שאפשר, IMAP / SMTP בכל היתר. תביאו את מה שאתם כבר משתמשים — שום דבר לא כובל אתכם.
אפליקציות Reeva
ווב, דסקטופ, נייד
Thunderbird
תוסף JMAP (או IMAP)
Apple Mail
fallback ל-IMAP
K-9 Mail
fallback ל-IMAP
FairEmail
IMAP/JMAP דרך תוסף
Stalwart CLI
ניהול שרת
אנחנו עדיין מדברים IMAP, SMTP, CardDAV ו-CalDAV
להתפאר עם JMAP זה לא תירוץ לכבול אתכם. כל תיבת Reeva נגישה גם דרך IMAP4rev1 למייל נכנס, SMTP-AUTH לשליחה, CardDAV לאנשי קשר ו-CalDAV ליומנים. השתמשו ב-Apple Mail, Outlook, Thunderbird, mutt — כל דבר. הנתונים שלכם, בחירת הקליינט שלכם.
מייל מהעשור הזה. חינם לנסות.
מייל מוצפן על JMAP, יומן, אנשי קשר, כספת סיסמאות וענן — חשבון אחד, בלי מעקב.