<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Telegram Support Force</title> <meta property="og:title" content="Manuals"> <meta property="og:description" content="These manuals are intended for volunteers of the TSF, but anyone else is free to take a look as well. Telegram Support BIOS…"> <link rel="icon" type="image/svg+xml" href="/img/website_icon.svg?4"> <link rel="apple-touch-icon" sizes="180x180" href="/img/apple-touch-icon.png"> <link rel="icon" type="image/png" sizes="32x32" href="/img/favicon-32x32.png"> <link rel="icon" type="image/png" sizes="16x16" href="/img/favicon-16x16.png"> <link rel="alternate icon" href="/img/favicon.ico" type="image/x-icon" /> <script>document.cookie="stel_dt="+encodeURIComponent((new Date).getTimezoneOffset())+";path=/;max-age=31536000;samesite=None;secure"</script> <link href="https://fonts.googleapis.com/css?family=Roboto:400,500,700" rel="stylesheet" type="text/css"> <link href="/css/bootstrap.min.css?3" rel="stylesheet"> <link href="/css/bootstrap-extra.css?2" rel="stylesheet"> <link href="/css/telegram.css?232" rel="stylesheet"> <link href="/css/tsf.css?7" rel="stylesheet"> <link href="/css/jquery-ui.min.css?1" rel="stylesheet"> <link href="/css/health.css?136" rel="stylesheet"> <link href="/css/tchart.min.css?10" rel="stylesheet"> <link href="/css/billboard.css?17" rel="stylesheet"> </head> <body class="emoji_image no-transition"> <div id="aj_progress" class="progress-bar"></div> <div id="aj_content"><div class="tr-container"> <header> <div class="container"> <div class="header-wrap"> <div id="header-panel" class="header-panel"> <div class="header-auth"> <div class="header-auth-item"><a class="header-search-btn"></a></div><div class="header-auth-item"><a class="header-auth-link login-link" href="/auth">Login</a></div> </div> <div class="header-breadcrumb header-breadcrumb-simple"> <ol id="breadcrumb" class="header-nav breadcrumb"><li><a href="/">Telegram Support Force</a></li></ol> </div> </div> </div> </div> </header> <main class="container"> <nav class="tr-menu"> <div class="tr-menu-section"> <div class="tr-menu-header"> <div class="tr-menu-header-label">Resources</div> </div> <ul class="tr-menu-items"><li> <a class="tr-menu-item" href="/"> <span class="nav-label">Introduction</span> </a> </li><li class="active"> <a class="tr-menu-item" href="/manuals"> <span class="nav-label">Manuals</span> </a> </li></ul> </div> </nav> <section class="content clearfix"> <section class="tr-content"><div id="dev_page_content_wrap" class=" "> <div class="dev_page_bread_crumbs"><ul class="breadcrumb clearfix"><li><a href="/" >Telegram Support Initiative</a></li><i class="icon icon-breadcrumb-divider"></i><li><a href="/manuals" >Manuals</a></li></ul></div> <h1 id="dev_page_title">Manuals</h1> <div id="dev_page_content"><p>These manuals are intended for volunteers of the <a href="/">TSF</a>, but anyone else is free to take a look as well.</p> <h4><a class="anchor-link" href="#telegram-support-bios"><i class="anchor-icon"></i></a><a class="anchor" name="telegram-support-bios"></a><a href="/manuals/bios">Telegram Support BIOS</a></h4> <p>A meta-text and mother of all answers.</p> <h4><a class="anchor-link" href="#answering-questions-tsf-aq"><i class="anchor-icon"></i></a><a class="anchor" name="answering-questions-tsf-aq"></a><a href="/manuals/answering_questions">Answering Questions</a> (TSF-AQ)</h4> <p>Covers important topics ranging from our goals to what you do when the user says 'fuck you!'</p> <h4><a class="anchor-link" href="#handling-bugs-and-troubleshooting-tsf-bt"><i class="anchor-icon"></i></a><a class="anchor" name="handling-bugs-and-troubleshooting-tsf-bt"></a><a href="/manuals/bugs">Handling Bugs and Troubleshooting</a> (TSF-BT)</h4> <p>Covers investigating, reporting and following up bugs, troubleshooting common issues, reporting tips.</p> <h4><a class="anchor-link" href="#bug-hunting-algorithm-tsf-bha"><i class="anchor-icon"></i></a><a class="anchor" name="bug-hunting-algorithm-tsf-bha"></a><a href="/manuals/bug_hunting">Bug Hunting Algorithm</a> (TSF-BHA)</h4> <p>An in-depth guide to investigating issues.</p> <h4><a class="anchor-link" href="#feature-philosophy-tsf-ff"><i class="anchor-icon"></i></a><a class="anchor" name="feature-philosophy-tsf-ff"></a><a href="/manuals/feature_philosophy">Feature Philosophy</a> (TSF-FF)</h4> <p>A general text to help you understand our reasoning when contemplating new features.</p> <h4><a class="anchor-link" href="#leaving-and-coming-back-tsf-off"><i class="anchor-icon"></i></a><a class="anchor" name="leaving-and-coming-back-tsf-off"></a><a href="/manuals/come-and-go">Leaving and Coming Back</a> (TSF-OFF)</h4> <p>When you realise you're no longer with us.</p> <h4><a class="anchor-link" href="#bug-herding-explained-tsf-bhde"><i class="anchor-icon"></i></a><a class="anchor" name="bug-herding-explained-tsf-bhde"></a><a href="/manuals/bug_herding">Bug Herding Explained</a> (TSF-BHDE)</h4> <p>An advanced manual on handling bugs like a pro.</p> <h4><a class="anchor-link" href="#basic-faq-on-end-to-end-encryption-tsf-e2e"><i class="anchor-icon"></i></a><a class="anchor" name="basic-faq-on-end-to-end-encryption-tsf-e2e"></a><a href="/manuals/e2ee-simple">Basic FAQ on End-to-End Encryption</a> (TSF-E2E)</h4> <hr> <h3><a class="anchor-link" href="#public-docs"><i class="anchor-icon"></i></a><a class="anchor" name="public-docs"></a>Public docs</h3> <h5><a class="anchor-link" href="#telegram-support-force-manifesto-tsfm"><i class="anchor-icon"></i></a><a class="anchor" name="telegram-support-force-manifesto-tsfm"></a><a href="/">Telegram Support Force Manifesto</a> (TSFM)</h5> <p>Contains general info on what we do and how to join us.</p> <h5><a class="anchor-link" href="#translating-telegram-ttm"><i class="anchor-icon"></i></a><a class="anchor" name="translating-telegram-ttm"></a><a href="https://translations.telegram.org">Translating Telegram</a> (TTM)</h5> <p>A style guide and manifesto for Telegram translators.</p> </div> </div></section> </section> </main> </div><div class="popup-container login-popup-container hide" id="login-popup-container"> <div class="popup"> <div class="popup-body"> <section> <h2>Log In</h2> <p>Log in here to access your TSF stats. Please enter your <b>phone number</b> in the <a target="_blank" rel="noopener" href="https://telegram.org/faq#login-and-sms">international format</a> and we will send a confirmation message to your account via Telegram.</p> <form id="send-form" class="login-form"> <div class="form-group"> <input type="tel" class="form-control tr-form-control input-lg" id="phone-number" placeholder="+12223334455" autocomplete="off"/> </div> <div class="popup-buttons"> <a class="btn btn-link btn-lg login-cancel-btn">Cancel</a><button type="submit" class="btn btn-link btn-lg">Next</button> </div> </form> <div id="login-form" class="hide"> <div class="form-group"> <span class="form-control tr-form-control input input-lg input-disabled"><strong id="phone-number-field"></strong> (<a class="login-back" href="/auth">Incorrect?</a>)</span> <p class="help-block dots-animated">We've just sent you a message.<br/>Please confirm access via Telegram</p> </div> <div class="popup-buttons"> <a class="btn btn-link btn-lg login-cancel-btn">Cancel</a><a class="btn btn-link btn-lg login-back">Back</a> </div> </div> </section> </div> </div> </div></div> <script src="/js/jquery.min.js?1"></script> <script src="/js/bootstrap.min.js"></script> <script src="/js/main-aj.js?58"></script> <script src="/js/main.js?46"></script> <script src="/js/tsf.js?3"></script> <script src="/js/jquery-ui.min.js?1"></script> <script src="/js/tchart.min.js?18"></script> <script src="/js/billboard.min.js?1"></script> <script src="/js/stats.js?18"></script> <script>ajInit({"version":554,"apiUrl":"\/api?hash=telegram-crawler","unauth":true});</script> <script id="aj_script">Aj.onLoad(function(state) { function requestConfirmation(event) { event && event.preventDefault(); var phone = $('#phone-number').val(); $.ajax({ type: 'POST', url: '/auth/request', data: { phone: phone }, success: function(result) { $('#phone-number-field').text(phone); $('#send-form').addClass('hide'); $('#login-form').removeClass('hide'); checkAuth(result.temp_session); }, error: function(xhr) { showAlert(xhr.responseText || 'Server error'); }, dataType: 'json' }); return false; } function cancelConfirmation(event) { event && event.preventDefault(); $('#phone-number-field').text(''); $('#send-form').removeClass('hide'); $('#login-form').addClass('hide'); $('#phone-number').focus(); clearTimeout(window.authTimeout); return false; } function checkAuth(temp_session) { clearTimeout(window.authTimeout); window.authTimeout = setTimeout(function doCheckAuth() { $.ajax({ type: 'POST', url: '/auth/login', data: { temp_session: temp_session }, success: function(result) { if (result) { location.reload(); } else { checkAuth(temp_session); } }, error: function (xhr) { showAlert(xhr.responseText || 'Server error'); }, dataType: 'json' }); }, 700); } $('#login-popup-container').on('popup:open', function() { $('#phone-number').focus(); }); $('#login-popup-container').on('popup:close', function() { cancelConfirmation(); if (location.pathname == '/auth') { window.history && history.replaceState(null, null, '/'); } }); $('#login-popup-container #send-form').on('submit', requestConfirmation); $('#login-popup-container .login-cancel-btn').on('click', function(e) { e.preventDefault(); closePopup('#login-popup-container'); }); $('#login-popup-container .login-back').on('click', cancelConfirmation); $('.login-link').on('click', function(e) { e.stopImmediatePropagation(); e.preventDefault(); openPopup('#login-popup-container'); }); }); Aj.onUnload(function(state) { $('#login-popup-container').off('popup:open'); $('#login-popup-container').off('popup:close'); $('#login-popup-container #send-form').off('submit'); $('#login-popup-container .login-cancel-btn').off('click'); $('#login-popup-container .login-back').off('click'); $('.login-link').off('click'); }); </script> <script>Aj.pageLoaded();</script> </body> </html>