Telethon session לטלגרם הוא מפתח, לא אפליקציה
Telethon session של טלגרם הוא מפתח הרשאה (בדרך כלל קובץ SQLite עם סיומת .session או מחרוזת StringSession), לא חלון של אפליקציית טלגרם. הוא מאפשר לקליינט ה-Python שלכם לדבר MTProto כמשתמש. אם אתם לוחצים פעמיים על הקובץ ומצפים לרשימת צ'אטים, הזמנתם את הפורמט הלא נכון. אם אתם צריכים ש-get_me() יחזיר אובייקט משתמש, זה המוצר.
המדריך הזה מיועד למפתחים ולמפעילים שכבר מריצים Telethon (או שיריצו), רוצים מסירת Session מהמלאי שלנו, וצריכים בדיקת חיות ברורה ומסלול החלפה. הקטלוג הוא חשבונות טלגרם. למונחים הרחבים יותר של מוכן מול טרי מול ותיק, קראו את חשבונות טלגרם מוכנים.
נקודות מפתח
- Telethon session הוא קובץ מפתח הרשאה או StringSession, לא חלון של אפליקציית Desktop.
- בחרו Session (Telethon) בעמוד חשבונות טלגרם; אותו מלאי, מסירה שונה.
- בדיקת חיות: התחברו עם ה-
api_id/api_hashשלכם, ואז קראו ל-get_me().- החליפו 2FA אחרי שהבדיקה עברה; התייחסו לכל עותק נוסף של המפתח כחור.
- מפתחות מתים (
AuthKeyUnregistered, טלפון שגוי) הם מסלול החלפה, לא עבודת עריכה ב-SQLite.
מה בדיוק זה Telethon session?
Telethon session הוא מפתח ההרשאה שקליינט ה-Python שלכם משתמש בו כדי לדבר MTProto כמשתמש. Telethon יוצר אותו כשאתם בונים משהו כמו TelegramClient('anon') ומסיימים התחברות. מאותו רגע, הקובץ הוא ההתחברות.
בתוך קובץ סשן טלגרם טיפוסי עם סיומת .session יש חלקים משעממים אבל קריטיים: לאיזה דאטה סנטר לחייג, מפתח ההרשאה שמצפין את התעבורה כך שטלגרם מתייחס לתהליך כאל אותו משתמש, ומטמון של ישויות שהקליינט ראה. המטמון יכול להפוך את הקובץ לגדול יותר מ"מפתח קטנטן" בלי להפוך אותו לייצוא צ'אטים קריא. אל תפתחו SQLite בחיפוש אחרי הודעות. בדיקת החיות היא התחברות.
StringSession הוא אותו מפתח מקודד כטקסט. נוח במכונות שזורקות את מערכת הקבצים שלהן. קל יותר להדליף. כל מי שיש לו את המחרוזת יכול להתחבר כאותו משתמש. שמרו מחרוזות במאגר סודות, לא בריפו. התחברות חיה אחת יכולה להפוך לשני מפתחות כשמייצאים; ספרו את העותקים.
טוקן של בוט הוא אובייקט שלישי: סוד HTTP ל-Bot API. הוא לא סשן של משתמש. אם הבדיקה שלכם צריכה משתמש שלוחץ Start, אתם צריכים סשן משתמש. אם הבדיקה צריכה שהבוט יענה, אתם צריכים את הטוקן.
איך קונים מסירת Session / Telethon ב-TgFather?
ב-TgFather בוחרים מסירת Session (Telethon) באותו קטלוג חשבונות שלנו כמו TData. פתחו את חשבונות טלגרם, בחרו Session, ואז מדינה וטווח ותק. המסירה מיידית כשהארנק מחויב. ההורדות נמצאות מאחורי קישורים חתומים שפגים.
אתם קונים פורמט מסירה, לא זן אחר של חשבון טלגרם. בחרו Session כי הקוד שלכם הוא Telethon. בחרו TData אם אדם יושב ב-Telegram Desktop. בחרו קוד כניסה חי אם אתם רוצים להקליד בקליינט שבשליטתכם. פורמט שגוי ש"נשמע רציני" הוא עדיין שגוי לכיסא שלכם.
אם get_me() נכשל על סשן שנמסר, זה מקרה להחלפה, לא ויכוח על מבנה ה-SQLite. הריצו בדיקה משלכם לפני שאתם בונים משימות פרודקשן על המפתח.
כדאי לבחור Session לפני שבוחרים מדינה?
כן: רשמו קודם את פורמט המסירה, ואז בחרו מדינה וטווח ותק. פתחו את חשבונות טלגרם, בחרו Session (Telethon), בחרו מדינה וטווח ותק, ושריינו משבצת שתוכלו לבדוק באותו יום.
מה בדיקת החיות שכדאי להריץ?
הריצו התחברות אמיתית ועוד get_me() עם ה-api_id וה-api_hash שלכם לפני שאתם סומכים על הקובץ. אל תסמכו על קובץ כי הסיומת היא .session. אל תסמכו על מחרוזת כי היא ארוכה.
אתם רוצים:
- התחברות מוצלחת.
- אובייקט משתמש שחוזר.
- מזהה משתמש וטלפון שתואמים לחשבון שחשבתם שקניתם.
שם משתמש לתצוגה יכול להשתנות. המזהה לא. אי-התאמה בכינוי היא שאלה לתמיכה. אי-התאמה בטלפון היא אדם אחר.
מצבי כישלון:
- לא מצליח להתחבר: לא סשן חי.
- מתחבר, ואז דורש סיסמת ענן שלא קיבלתם: חסר המנעול השני.
AuthKeyUnregistered: המפתח בקובץ כבר לא רשום. מזכרת. בקשו החלפה; אל תערכו SQLite ידנית.
get_me() מוכיח שהמפתח עדיין יכול לדבר. הוא לא מוכיח "אורח חיים ותיק". אחרי שהבדיקה עברה, הגדירו או החליפו אימות דו-שלבי. סיסמת ענן נועלת התחברויות חדשות; היא לא שואבת קבצי סשן שכבר יצאו. אם הגיעה סיסמת ענן עם הסשן, החליפו אותה. אל תשתמשו שוב בסיסמה מהטלגרם האישי שלכם.
Telethon session מול StringSession מול tdata טלגרם מול טוקן בוט
קבצי סשן של Telethon ו-StringSession הם מפתחות משתמש; TData הוא Desktop; טוקן בוט הוא Bot API. התאימו את הפורמט לכיסא לפני שאתם משלמים.
Telethon .session |
StringSession | TData | טוקן בוט | |
|---|---|---|---|---|
| מה זה | קובץ SQLite עם מפתח הרשאה + מטמון | אותו מפתח כטקסט | תיקיית העבודה של Telegram Desktop | סוד HTTP לבוט |
| מה פותח אותו | Telethon | Telethon | Telegram Desktop | Bot API / כל קליינט HTTP |
| נראה כמו אפליקציה? | לא | לא | כן, בדסקטופ | לא |
| בדיקת חיות | התחברות + get_me() |
התחברות + get_me() |
ההגדרות מציגות את המספר | getMe ב-Bot API |
| התייחסו אליו כ | סיסמה | סיסמה שקל להדביק | סיסמה בתוך תיקייה | סיסמה |
Telethon ו-Pyrogram שניהם מדברים MTProto ושניהם כותבים "סשנים". הקבצים לא ניתנים להחלפה. אל תזינו .session של Telethon לקליינט Pyrogram. אל תדביקו מחרוזת Pyrogram לתוך StringSession. אם הפרויקט שלכם הוא Pyrogram, קנו או צרו סשן Pyrogram. מודעות שאומרות רק "סשן" בלי לציין את הספרייה מבזבזות לכם את אחר הצהריים.
איך לאחסן ולהשתמש במפתח בבטחה?
אחסנו את קובץ הסשן או המחרוזת כמו סיסמה: בלי הדבקות, בלי קומיטים ובלי עותקים אגביים. כל מי שיש לו את המפתח מחובר כאותו משתמש מכל מקום שבו הוא מריץ את הקליינט.
כללים מעשיים:
- אל תדביקו אותו בקבוצה "רק כדי לבדוק".
- אל תעשו לו קומיט.
- שתי מכונות עם שני עותקים הן שני מפתחות.
- אם תבטלו את השורה הלא נכונה ברשימת המכשירים של טלגרם, ה-
get_me()הבא ייכשל עםAuthKeyUnregistered. - אחרי ה-
get_me()המוצלח הראשון, תפסיקו לחטט. שימו את הקובץ במקום שהתהליך יכול לקרוא. התייחסו לכל עותק נוסף כחור.
צורות לגיטימיות: סביבת בדיקות שצריכה משתמש אמיתי שמדבר עם בוט, סקריפט תמיכה שמושך צ'אט שאדם ביקש, תיבת staging ל-Mini App. קבלה לא קונה פטור משליחת הודעות המוניות לא מבוקשות.
צריכים עמדת Desktop לאדם במקום זה? השוו פורמטים בחשבונות טלגרם מוכנים. צריכים כינוי של בוט ולא מפתח משתמש? ראו בוטים ותיקים בטלגרם.
איפה קונים, ומה ההחלפה מכסה?
קונים מסירת Session בחשבונות של TgFather; ההחלפה מכסה מפתחות מתים, לא טעויות באחסון סודות. התחילו בחשבונות טלגרם: בחרו Session (Telethon), מדינה וטווח ותק. שלמו מהארנק. הורידו מהקישור החתום. הריצו get_me(). החליפו את סיסמת הענן. תבנו רק אחרי שהמפתח הוכיח שהוא חי.
מפתח מת (AuthKeyUnregistered, טלפון שגוי, 2FA חסר שהובטח לכם) הוא מסלול החלפה על המלאי שלנו, לא טיעון ש"ככה זה עם סשנים". שמרו את ה-api_id / api_hash שלכם ואת אחסון הסודות שלכם. הקטלוג מוסר את הפורמט; התהליך שלכם אחראי להיגיינה אחרי המסירה.
סשן טלגרם הוא אותו מפתח הרשאה. Telethon היא ספריית ה-Python ששואלת את טלגרם את השאלה. אם חיפשתם מסירת telethon session, עדיין קניתם קובץ (או מחרוזת), לא חלון אפליקציה.
כשאתם מוכנים: קנו חשבונות טלגרם עם מסירת Session.
שאלות נפוצות
אפשר להמיר .session של Telethon למחרוזת סשן של Pyrogram?
אין מסלול נתמך שממיר קובץ סשן של Telethon למחרוזת סשן של Pyrogram. אם הקוד שלכם הוא Pyrogram, קחו סשן Pyrogram במקום.
אם אני מבטל סשנים אחרים בהגדרות, ה-.session שלי מת?
הוא מת רק אם אתם מבטלים את שורת הסשן המדויקת הזאת בהגדרות. רשימת המכשירים היא רשימה של מפתחות; לחצו על הלא נכון וה-get_me() הבא ייכשל.
מה פירוש AuthKeyUnregistered?
AuthKeyUnregistered פירושו שמפתח ההרשאה בקובץ שלכם כבר לא רשום. החליפו אותו; אל תערכו את ה-SQLite ידנית.
הקובץ שוקל בערך 40KB. קיבלתי דאמפ של צ'אטים?
כנראה שלא: Telethon שומר ישויות במטמון, אז קובץ גדול יותר הוא עדיין מטא-דאטה של הספרייה. זה לא ארכיון צ'אטים שאפשר לדפדף בו ידנית.
אפשר להחזיק את אותו סשן על שני שרתים?
אפשר להעתיק את הקובץ, אבל אז שני התהליכים חולקים מפתח אחד. עדיף שתי התחברויות מכוונות אם אתם צריכים שני מקומות שלא אמורים לדרוך זה על זה.
Session הוא מלאי שונה מ-TData ב-TgFather?
לא: Session ו-TData הם אותם חשבונות בפורמטי מסירה שונים. בחרו Session בקופה בשביל Telethon; בחרו TData בשביל Desktop.