Telegram for macOS के बीटा 13.1.0.283429 में, जो 1 नवंबर को जारी हुआ था, एक्टिव डिवाइसों की सूची में सेशन कार्ड दिखाता है कि क्या अकाउंट में आधिकारिक Telegram ऐप से लॉग इन किया गया था: ऐप के नाम के बगल में एक चेकमार्क (टिक मार्क) होता है जिस पर «This session is from the official Telegram app» लिखा होता है। वहीं पर पहले लॉग इन और आखिरी गतिविधि की सटीक तारीख और समय भी दिखाई देने लगे हैं, वर्जन और सिस्टम के लिए अलग-अलग लाइनें हैं और एक बटन है जो मैप पर लॉग इन की जगह दिखाता है। यह बदलाव एक बाहरी डेवलपर के पुल रिक्वेस्ट से आया है, जिसे 31 अक्टूबर को मर्ज किया गया था। यह उन सभी के लिए प्रासंगिक है जो यह जांचते हैं कि उनके अकाउंट में और कौन लॉग इन है: 20 अक्टूबर के स्टेबल वर्जन 13.1.0 (283357) में नया कार्ड अभी तक नहीं है।

सेशन कार्ड में क्या बदलाव हुए हैं

सेशन कार्ड सेटिंग्स में "गोपनीयता और सुरक्षा" (Privacy & Security) सेक्शन में Active Sessions की सूची में किसी सेशन पर क्लिक करने से खुलता है। पहले इसमें डिवाइस मॉडल, ऐप की लाइन (जहां नाम और वर्जन कॉमा से अलग किए गए थे), IP एड्रेस, जगह और सीक्रेट चैट व कॉल के टॉगल स्विच होते थे। कार्ड में सिस्टम वर्जन बिल्कुल नहीं था। अब लाइनों को दो ग्रुप में बांटा गया है।

ग्रुपलाइनक्या दिखाता है
DeviceApplicationऐप का नाम और एक चेकमार्क, यदि सेशन आधिकारिक क्लाइंट से है
DeviceVersionऐप का वर्जन, जैसे 13.1.0 (283402) BETA
DeviceOSसिस्टम, जैसे macOS 27.2
ConnectionIP Address और Locationएड्रेस और देश (क्षेत्र के साथ), बटन मैप पर जगह खोलता है
ConnectionFirst Signed Atवह तारीख और समय जब सेशन अकाउंट में लॉग इन हुआ था, सेकंड तक की सटीकता के साथ
ConnectionLast Activeसेशन की आखिरी गतिविधि की तारीख और समय

कार्ड खुद चौड़ा हो गया है — 340 पॉइंट्स की बजाय 440 पॉइंट्स — क्योंकि ऐप की लंबी लाइन पहले वर्जन को किनारे से बाहर धकेल देती थी। चेकमार्क थीम के एक्सेंट कलर में रंगा हुआ है, न कि किसी अपने खास रंग में। «First Signed At» और «Last Active» के लेबल अभी कोड में अंग्रेजी में //TODOLANG के साथ एम्बेड किए गए हैं: अन्य भाषाओं में अनुवाद अलग से जोड़ा जाएगा।

मैप पर जगह निर्देशांकों से नहीं, बल्कि टेक्स्ट से खोजी जाती है। सर्वर देश और क्षेत्र देता है जिसे उसने IP एड्रेस से निर्धारित किया है, ऐप इस स्ट्रिंग को macOS के जियोकोडर (CLGeocoder, Apple की सेवा) को भेजता है और मिली हुई जगह का प्रीव्यू खोलता है। यदि नहीं मिलती है, तो «Couldn't find this location. Please try again.» प्रदर्शित होता है। इससे सटीकता नहीं बढ़ती है: कार्ड के नीचे अभी भी लिखा है कि जगह का अनुमान IP एड्रेस पर आधारित है और गलत हो सकता है।

चेकमार्क कहाँ से आता है

चेकमार्क क्लाइंट द्वारा बनाया जाता है, और सर्वर निर्णय लेता है। authorization ऑब्जेक्ट में, जिससे API हर सेशन का वर्णन करता है, एक official_app फ्लैग होता है — "सेशन आधिकारिक ऐप से है"। वहीं पर date_created, date_active, ip, country, region, ऐप और सिस्टम का वर्जन भी होता है — वह सब कुछ जो अब कार्ड में प्रदर्शित होता है। API ये फ़ील्ड पहले भी देता था; बदलाव के लेखक लिखते हैं कि क्लाइंट उनमें से केवल एक छोटा सा हिस्सा उपयोग करते हैं।

थर्ड-पार्टी क्लाइंट अपने ऐप आइडेंटिफायर के साथ API से कनेक्ट होते हैं, जो my.telegram.org पर जारी किया जाता है, और इस तरह के लॉग इन को शायद चेकमार्क नहीं मिलेगा, भले ही क्लाइंट ईमानदार हो: सर्वर कैसे तय करता है कि ऐप आधिकारिक है, यह डॉक्यूमेंटेशन में नहीं बताया गया है। चेकमार्क की अनुपस्थिति सेशन पर करीब से नज़र डालने का एक कारण है, न कि हैकिंग का सबूत।

क्या करें

  • सेशन जांचें। Telegram for macOS में — सेटिंग्स, "गोपनीयता और सुरक्षा" (Privacy & Security), Active Sessions। 283429 से शुरू होने वाले बीटा में, आधिकारिक ऐप्स के नाम के बगल में एक चेकमार्क होता है; स्टेबल वर्जन में कार्ड पुराना है, लेकिन उसमें IP एड्रेस और जगह होती है।
  • तारीखें मिलाएं। First Signed At लाइन दिखाती है कि सेशन कब बना था। समय इस Mac के टाइम ज़ोन में दिखाया गया है। यदि उस दिन आपने Telegram में किसी नए डिवाइस पर, वेब वर्जन में, या फिर से इंस्टॉल करने के बाद लॉग इन नहीं किया था, और Last Active हाल का है, तो यह सेशन समाप्त करने का एक कारण है।
  • किसी और का सेशन समाप्त करें। किसी और के सेशन कार्ड के नीचे Terminate Session बटन डिवाइस को अकाउंट से बाहर कर देता है। बिना चेकमार्क वाला, अज्ञात ऐप या देश वाला अज्ञात सेशन पहला उम्मीदवार है। अभी-अभी कनेक्ट किए गए डिवाइस से पुराने सेशन समाप्त नहीं किए जा सकते: ऐप कुछ घंटों तक प्रतीक्षा करने के लिए कहता है।
  • क्लाउड पासवर्ड सेट करें। दो-चरणीय सत्यापन के बिना, नए लॉग इन के लिए केवल एक लॉगिन कोड पर्याप्त होता है; पासवर्ड के साथ, उसकी भी आवश्यकता होती है।

macOS बीटा अपडेट फ़ीड के माध्यम से वितरित किया जाता है। स्टेबल वर्जन 13.1.0 (283357) में नया कार्ड नहीं है।

यह बदलाव बीटा में कैसे आया

पुल रिक्वेस्ट #172 को 28 अक्टूबर को एक बाहरी डेवलपर ने खोला था, इसे macOS टीम के अकाउंट ने 31 अक्टूबर को 20:52 UTC पर मर्ज किया: चार कमिट, 256 लाइनें जोड़ी गईं, 21 हटाई गईं, पांच फाइलें। रिव्यू के दौरान एक त्रुटि मिली: पहले वर्जन में लाइन का नाम «Last Signed At» था, लेकिन यह आखिरी गतिविधि का समय दिखाती थी, न कि लॉग इन का — एक साल पहले लॉग इन किया गया और दो मिनट पहले खोला गया सेशन एक नए लॉग इन जैसा दिखता। लाइन का नाम बदलकर «Last Active» कर दिया गया।

31 अक्टूबर के बिल्ड 283426 में नए कार्ड की लाइनें नहीं हैं। 1 नवंबर के 283429 में बाइनरी में आधिकारिक ऐप के बारे में टूलटिप, जगह खोजने की त्रुटि, और उसी पुल रिक्वेस्ट से SessionDetailRowItem क्लास शामिल हैं। मर्ज होने से बीटा तक पहुंचने में 24 घंटे से भी कम समय लगा। macOS क्लाइंट बाहरी डेवलपर्स के सुधारों को तब से स्वीकार करता है जब से इसके सोर्स कोड को बाहरी पुल रिक्वेस्ट के लिए खोला गया है।

उसी बीटा में और क्या है

बिल्ड 283427, जो 283429 से 40 मिनट पहले जारी हुआ था, फ़ोरम के लिए विषयों का साइडबार लाया। बाइनरी में ForumSidebarController, ForumSidebarView, ForumDisplayMode (विभिन्न दृश्यों के विकल्पों के साथ) और «All Messages» और «Show Chats» लाइनें दिखाई दीं। Telegram for Android का बीटा 13.2.0 (7278) जो 31 अक्टूबर को आया था, ने इसी बात की घोषणा की — फ़ोरम में साइडबार, जिसमें बॉट, चैनल के डायरेक्ट मैसेज और «Saved Messages» शामिल हैं। 1 नवंबर तक macOS क्लाइंट के खुले कोड में अभी तक पैनल नहीं है, और बिल्ड में इसके साथ कोई स्क्रीन दिखाई नहीं देती है: यह कैसा दिखता है, यह अभी केवल क्लास नामों से ही ज्ञात है।