<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Introduction on tdl</title>
    <link>https://6e2a28aa.tdl-docs.pages.dev/</link>
    <description>Recent content in Introduction on tdl</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language><atom:link href="https://6e2a28aa.tdl-docs.pages.dev/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Global Config</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/guide/global-config/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/guide/global-config/</guid>
      <description>Global Config # Global config is some CLI flags that can be set in every command.
Set Global Config EVERYTIME!
Global config does not mean that the configuration will be persisted or only need to be set once in global settings, they will only take effect in the current command. You need to set them in each command.
-n/--ns # Each namespace represents a Telegram account. Default: default.
If you want to add another account, just add -n YOUR_ACCOUNT_NAME option to every command:</description>
    </item>
    
    <item>
      <title>Installation</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/getting-started/installation/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/getting-started/installation/</guid>
      <description>Installation # One-Line Scripts # Windows tdl will be installed to $Env:SystemDrive\tdl(will be added to PATH), and script also can be used to upgrade tdl .
Install latest version # iwr -useb https://docs.iyear.me/tdl/install.ps1 | iex
Install with ghproxy.com # $Script=iwr -useb https://docs.iyear.me/tdl/install.ps1;
$Block=[ScriptBlock]::Create($Script); Invoke-Command -ScriptBlock $Block -ArgumentList &amp;#34;&amp;#34;, &amp;#34;$True&amp;#34;
Install specific version # $Env:TDLVersion = &amp;#34;VERSION&amp;#34;
$Script=iwr -useb https://docs.iyear.me/tdl/install.ps1;
$Block=[ScriptBlock]::Create($Script); Invoke-Command -ScriptBlock $Block -ArgumentList &amp;#34;$Env:TDLVersion&amp;#34;
macOS &amp;amp; Linux tdl will be installed to /usr/local/bin/tdl, and script also can be used to upgrade tdl.</description>
    </item>
    
    <item>
      <title>List Chats</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/guide/tools/list-chats/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/guide/tools/list-chats/</guid>
      <description>List Chats # List all chats # tdl chat ls
JSON Output # tdl chat ls -o json
Filter # Please refer to Filter Guide for basic knowledge about filter.
List all available filter fields:
tdl chat ls -f -
List channels that VisibleName contains &amp;ldquo;Telegram&amp;rdquo;:
tdl chat ls -f &amp;#34;Type contains &amp;#39;channel&amp;#39; &amp;amp;&amp;amp; VisibleName contains &amp;#39;Telegram&amp;#39;&amp;#34;
List groups that have topics:
tdl chat ls -f &amp;#34;len(Topics)&amp;gt;0&amp;#34;</description>
    </item>
    
    <item>
      <title>Env</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/more/env/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/more/env/</guid>
      <description>Env # The values of all environment variables have a lower priority than flags. Avoid typing the same flag values repeatedly every time by setting environment variables.
NAME FLAG TDL_NS -n/--ns TDL_PROXY --proxy TDL_STORAGE --storage TDL_DEBUG --debug TDL_SIZE -s/--size TDL_THREADS -t/--threads TDL_LIMIT -l/--limit TDL_POOL --pool TDL_NTP --ntp TDL_RECONNECT_TIMEOUT --reconnect-timeout TDL_DISABLE_PROGRESS_PS --disable-progress-ps TDL_TEMPLATE dl --template TDL_STORAGE format in env is different from that in flags: {&amp;quot;type&amp;quot;: &amp;quot;bolt&amp;quot;, &amp;quot;path&amp;quot;: &amp;quot;/path/to/data-dir&amp;quot;} (JSON object).</description>
    </item>
    
    <item>
      <title>Export Members</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/guide/tools/export-members/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/guide/tools/export-members/</guid>
      <description>Export Members # Export chat members/subscribers, admins, bots, etc.
Chat administrator permission is required for some types of members(kicked, banned, etc.). CHAT Examples Available Values: # @iyear (Username) iyear (Username without @) 123456789 (ID) https://t.me/iyear (Public Link) +1 123456789 (Phone) How to Get Chat ID on Telegram Desktop: # Settings → Advanced → Experimental settings → Show Peer IDs in Profile All # Export all users to tdl-users.json
tdl chat users -c CHAT</description>
    </item>
    
    <item>
      <title>Login</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/guide/login/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/guide/login/</guid>
      <description> Login # </description>
    </item>
    
    <item>
      <title>Quick Start</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/getting-started/quick-start/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/getting-started/quick-start/</guid>
      <description>Quick Start # Login # We don&amp;rsquo;t specify the namespace here, so it will use the default namespace. You can specify the namespace with -n flag if you want to use another namespace.
Login with desktop clients # Please ensure that clients are downloaded from official website (NOT from Microsoft Store or App Store) Automatically find the client path:
tdl login
Or if you set a local passcode:
tdl login -p YOUR_PASSCODE</description>
    </item>
    
    <item>
      <title>Data</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/more/data/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/more/data/</guid>
      <description>Data # Your account information will be stored in the ~/.tdl directory.
Log files will be stored in the ~/.tdl/log directory.</description>
    </item>
    
    <item>
      <title>Download</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/guide/download/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/guide/download/</guid>
      <description>Download # From Links: # Get message links from &amp;ldquo;Copy Link&amp;rdquo; button in official clients. Message Link Examples https://t.me/telegram/193 https://t.me/c/1697797156/151 https://t.me/iFreeKnow/45662/55005 https://t.me/c/1492447836/251015/251021 https://t.me/opencfdchannel/4434?comment=360409 https://t.me/myhostloc/1485524?thread=1485523 ... (File a new issue if you find a new link format) tdl dl -u https://t.me/tdl/1 -u https://t.me/tdl/2
From JSON: # There are two ways to export the JSON you need:
tdl This is especially for protected chats and more powerful than the desktop client.</description>
    </item>
    
    <item>
      <title>Export Messages</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/guide/tools/export-messages/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/guide/tools/export-messages/</guid>
      <description>Export Messages # Export media messages from chats, channels, groups, etc. in JSON format.
CHAT Examples Available Values: # @iyear (Username) iyear (Username without @) 123456789 (ID) https://t.me/iyear (Public Link) +1 123456789 (Phone) How to Get Chat ID on Telegram Desktop: # Settings → Advanced → Experimental settings → Show Peer IDs in Profile Empty CHAT means &amp;lsquo;Saved Messages&amp;rsquo; All # Export all messages containing media to tdl-export.json
tdl chat export -c CHAT</description>
    </item>
    
    <item>
      <title>Shell Completion</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/getting-started/shell-completion/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/getting-started/shell-completion/</guid>
      <description>Shell Completion # Run corresponding command to enable shell completion in all sessions:
bash echo &amp;#34;source &amp;lt;(tdl completion bash)&amp;#34; &amp;gt;&amp;gt; ~/.bashrc
zsh echo &amp;#34;source &amp;lt;(tdl completion zsh)&amp;#34; &amp;gt;&amp;gt; ~/.zshrc
fish echo &amp;#34;tdl completion fish | source&amp;#34; &amp;gt;&amp;gt; ~/.config/fish/config.fish
PowerShell Add-Content -Path $PROFILE -Value &amp;#34;tdl completion powershell | Out-String | Invoke-Expression&amp;#34;</description>
    </item>
    
    <item>
      <title>Forward</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/guide/forward/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/guide/forward/</guid>
      <description>Forward # Forward messages with automatic fallback and message routing
One-liner to forward messages from https://t.me/telegram/193 to Saved Messages:
tdl forward --from https://t.me/telegram/193
Custom Source # Message Link Examples https://t.me/telegram/193 https://t.me/c/1697797156/151 https://t.me/iFreeKnow/45662/55005 https://t.me/c/1492447836/251015/251021 https://t.me/opencfdchannel/4434?comment=360409 https://t.me/myhostloc/1485524?thread=1485523 ... (File a new issue if you find a new link format) You can forward messages from links and exported JSON files:
tdl forward \
--from https://t.me/telegram/193 \
--from https://t.me/telegram/195 \
--from tdl-export.json \</description>
    </item>
    
    <item>
      <title>Troubleshooting</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/more/troubleshooting/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/more/troubleshooting/</guid>
      <description>Troubleshooting # Best Practices # How to minimize the risk of blocking?
Login with the official client session. Use the default download and upload options as possible. Do not set too large threads and size. Do not use the same account to login on multiple devices at the same time. Don&amp;rsquo;t download or upload too many files at once. Become a Telegram premium user. 😅 FAQ # Q: Why no response after entering the command?</description>
    </item>
    
    <item>
      <title>Upload</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/guide/upload/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/guide/upload/</guid>
      <description>Upload # Upload Files # Upload specified files and directories to Saved Messages:
tdl up -p /path/to/file -p /path/to/dir
Custom Destination # Upload to custom chat.
CHAT Examples Available Values: # @iyear (Username) iyear (Username without @) 123456789 (ID) https://t.me/iyear (Public Link) +1 123456789 (Phone) How to Get Chat ID on Telegram Desktop: # Settings → Advanced → Experimental settings → Show Peer IDs in Profile Specific Chat # Upload to specific one chat:</description>
    </item>
    
    <item>
      <title>Migration</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/guide/migration/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/guide/migration/</guid>
      <description>Migration # Backup or recover your data
Backup # Backup all namespace data to a file. Default: &amp;lt;date&amp;gt;.backup.tdl.
tdl backup
Or specify the output file:
tdl backup -d /path/to/custom.tdl
Recover # Recover your data from a tdl backup file. Existing namespace data will be overwritten.
tdl recover -f /path/to/custom.backup.tdl
Migrate # Migrate your data to another storage
See Storage Flag for storage option details.
Migrate current storage to file storage: tdl migrate --to type=file,path=/path/to/data.</description>
    </item>
    
    <item>
      <title>Extensions 🆕</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/guide/extensions/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/guide/extensions/</guid>
      <description>Extensions # Extensions are a new feature in tdl. They are still in the experimental stage, and the CLI may change in future versions.
If you encounter any problems or have any suggestions, please open an issue on GitHub.
Overview # tdl extensions are add-on tools that integrate seamlessly with tdl. They provide a way to extend the core feature set of tdl, but without requiring every new feature to be added to the core.</description>
    </item>
    
    <item>
      <title></title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/snippets/chat/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/snippets/chat/</guid>
      <description>CHAT Examples Available Values: # @iyear (Username) iyear (Username without @) 123456789 (ID) https://t.me/iyear (Public Link) +1 123456789 (Phone) How to Get Chat ID on Telegram Desktop: # Settings → Advanced → Experimental settings → Show Peer IDs in Profile </description>
    </item>
    
    <item>
      <title></title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/snippets/link/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/snippets/link/</guid>
      <description>Message Link Examples https://t.me/telegram/193 https://t.me/c/1697797156/151 https://t.me/iFreeKnow/45662/55005 https://t.me/c/1492447836/251015/251021 https://t.me/opencfdchannel/4434?comment=360409 https://t.me/myhostloc/1485524?thread=1485523 ... (File a new issue if you find a new link format) </description>
    </item>
    
    <item>
      <title>Expr Guide</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/reference/expr/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/reference/expr/</guid>
      <description>Expr Guide # Expr is powered by expr, which is a simple, lightweight, yet powerful expression engine.
Expression engine docs: https://expr.medv.io/docs/Language-Definition
It&amp;rsquo;s powerful but may be a little hard to new users. So feel free to file an issue if you have any questions about the expression engine.</description>
    </item>
    
    <item>
      <title>Template Guide</title>
      <link>https://6e2a28aa.tdl-docs.pages.dev/guide/template/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>https://6e2a28aa.tdl-docs.pages.dev/guide/template/</guid>
      <description>Template Guide # This guide is intended to introduce variables and functions that are available in the tdl template.
Template syntax is based on Go&amp;rsquo;s text/template package.
Download # Variables (beta) # Var Desc DialogID Telegram dialog id MessageID Telegram message id MessageDate Telegram message date(timestamp) FileName Telegram file name FileCaption Telegram file caption, aka. text message FileSize Human-readable file size, like 1GB DownloadDate Download date(timestamp) Functions (beta) # Func Desc Usage Example repeat Repeat STRING N times repeat STRING N {{ repeat &amp;quot;test&amp;quot; 3 }} replace Perform replacement on STRING with PAIRS replace STRING PAIRS.</description>
    </item>
    
  </channel>
</rss>
