Telegram सर्वर भविष्य की रिकमेंडेशन फ़ीड के लिए विषयों की एक सूची देता है — ये नौ हैं: AI, Crypto, Biotech, Games, Sport, Health, Psychology, Politics और Inspiration। मुख्य (production) और टेस्ट सर्वर पर प्रतिक्रिया समान है। फ़िलहाल, उपयोगकर्ताओं के लिए फ़ीड उपलब्ध नहीं है: 16 अक्टूबर को Telegram ने iOS क्लाइंट के कोड में इसे खुद ही निष्क्रिय कर दिया था, और कंपाइलेशन फ़्लैग का उपयोग करके फ़ीड के मेथड्स को बिल्ड से हटा दिया था।

नौ विषय

यह सूची feed.getInterestCategories मेथड के जवाब में आती है। मुख्य सर्वर पर इसे 25 अक्टूबर को 08:04 UTC पर रिकॉर्ड किया गया था, टेस्ट सर्वर पर उसी मिनट, और प्रतिक्रियाएँ समान हैं:

क्रम संख्याआइकनविषय
1🤖AI
2💎Crypto
3🧬Biotech
4🕹Games
5⚽️Sport
6❤️Health
7🧠Psychology
8🏛Politics
9✨Inspiration

16 अक्टूबर को, API लेयर 232 की स्कीम को पुनर्स्थापित करके, सर्वर से यही सूची प्राप्त की गई थी — जिसका अर्थ है कि सर्वर महीने के मध्य से ही विषयों के अनुरोध का जवाब दे रहा था।

प्रत्येक विषय का एक नंबर, आइकन और नाम होता है। स्कीम में, विषय के लिए एक और फ़ील्ड प्रदान किया गया है — एक कस्टम इमोजी का लिंक, ताकि सामान्य आइकनों को बाद में एनिमेटेड आइकनों से बदला जा सके।

फ़ीड कैसे काम करता है

पूरी कार्यप्रणाली Telegram के iOS के ओपन सोर्स कोड से पता चलती है: 22 अक्टूबर को, फ़ीड इंजन के कमिट्स, जो 13-16 अक्टूबर को लिखे गए थे, सार्वजनिक रिपॉजिटरी में शामिल किए गए थे।

  • News टैब। यह चैट और सेटिंग्स के बीच स्थित होता है और दो सेक्शन में बँटा होता है: "For you" — रिकमेंडेशन, और "Added" — उन चैनलों की पोस्ट जिन्हें आपने खुद फ़ीड में जोड़ा है।
  • रुचियों का चयन। "What are you interested in?" स्क्रीन feed.setInterestCategories मेथड का उपयोग करके सर्वर पर चयनित विषयों के नंबर भेजती है — यह क्लाइंट की API स्कीम में वर्णित है। सर्वर इस चयन ब्लॉक को सीधे फ़ीड में, पोस्ट के बीच भी डाल सकता है।
  • पोस्ट का मूल्यांकन। पोस्ट को "Interesting" या "Not Interested" के रूप में स्वाइप किया जा सकता है। छिपाने के बाद, क्लाइंट कारण पूछता है: इस चैनल की पोस्ट न दिखाएँ, समान पोस्ट न दिखाएँ, या चैनल को News से हटा दें।
  • फ़ीड के लिए चैनल। चैनल में शामिल होने के लिए एक अलग फ़्लैग जोड़ा गया है — चैनल को विशेष रूप से News में जोड़ा जा सकता है, क्लाइंट "added to News tab" संकेत के साथ इसकी सूचना देता है।

फ़ीड में पोस्ट एक-एक करके या एल्बम के रूप में आती हैं। अपठित पोस्ट की संख्या सर्वर द्वारा भेजी जाती है, फ़ीड के ऊपर "New posts" का एक बैनर पॉप अप होता है, और मेनू में "Mark All as Read" का विकल्प होता है।

फ़ीड अभी क्यों नहीं है

16 अक्टूबर को, iOS-क्लाइंट डेवलपर्स ने रिकॉर्ड किया कि फ़ीड सर्वर साइड पर "पार्क" किया गया है, और API लेयर 232 पर फ़ीड मेथड्स के बिना एक रिलीज़ तैयार की, और News टैब को छिपा दिया। इसे TELEGRAM_NEWS_FEED_API बिल्ड फ़्लैग द्वारा छिपाया जाता है, जो रिलीज़ में सेट नहीं है। सर्वर की news_feed_enabled कुंजी केवल फ़ीड को निष्क्रिय करती है, और इसके बिना इसे सक्रिय माना जाता है; मुख्य और टेस्ट सर्वर की कॉन्फ़िग्स में यह कुंजी नहीं है। Telegram Desktop और TDLib की स्कीम्स में भी फ़ीड मेथड्स नहीं हैं।

सर्वर, विषयों के अनुरोध के जवाब के अनुसार, फ़ीड के लिए पहले से ही तैयारी कर रहा है: विषयों की सूची दोनों सर्वर द्वारा दी जाती है। क्या यह स्वयं रिकमेंडेशन फ़ीड के अनुरोध का जवाब देता है, यह अभी तक स्पष्ट नहीं है।

15 अक्टूबर से क्या बदला

अक्टूबर के मध्य में, रुचियों के चयन की स्क्रीन और "For you" टैब केवल Telegram के macOS बीटा में पाए गए थे — एक संकलित प्रोग्राम में, स्रोत कोड के बिना, और तब न तो विषयों की सूची ज्ञात थी और न ही मेथड्स के सिग्नेचर। अब विषय, मेथड्स और क्लाइंट द्वारा पाठक को दिए जाने वाले मूल्यांकन सभी ज्ञात हैं।