telegram-crawler/data/web/tsf.telegram.org/manuals.html
2022-11-02 08:54:43 +00:00

227 lines
11 KiB
HTML

<!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="//telegram.org/css/font-roboto.css?1" rel="stylesheet" type="text/css">
<link href="//telegram.org/css/bootstrap.min.css?3" rel="stylesheet">
<link href="//telegram.org/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 &#39;fuck you!&#39;</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&#39;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&#39;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="//telegram.org/js/jquery.min.js?1"></script>
<script src="//telegram.org/js/bootstrap.min.js"></script>
<script src="//telegram.org/js/main-aj.js?65"></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":793,"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>