classUnits(Container):# 4 strings: KB/s, MB/s, GB/s, TB/s@propertydefspeed_units(self)->List[str]:returnself.fields["speed-units"]# number of bytes in a KB (1000 for kB; 1024 for KiB)@propertydefspeed_bytes(self)->int:returnself.fields["speed-bytes"]# 4 strings: KB/s, MB/s, GB/s, TB/s@propertydefsize_units(self)->List[str]:returnself.fields["size-units"]# number of bytes in a KB (1000 for kB; 1024 for KiB)@propertydefsize_bytes(self)->int:returnself.fields["size-bytes"]# 4 strings: KB/s, MB/s, GB/s, TB/s@propertydefmemory_units(self)->List[str]:returnself.fields["memory-units"]# number of bytes in a KB (1000 for kB; 1024 for KiB)@propertydefmemory_bytes(self)->int:returnself.fields["memory-bytes"]
[docs]classSession(Container):""" Session is a class holding the session data for a Transmission daemon. Access the session field can be done through attributes. The attributes available are the same as the session arguments in the Transmission RPC specification, but with underscore instead of hyphen. get ``'download-dir'`` with ``session.download_dir``. .. code-block:: python session = Client().get_session() current = session.download_dir https://github.com/transmission/transmission/blob/main/docs/rpc-spec.md#41-session-arguments Warnings -------- setter on session's properties has been removed, please use ``Client().set_session()`` instead """@propertydefalt_speed_down(self)->int:"""max global download speed (KBps)"""returnself.fields["alt-speed-down"]@propertydefalt_speed_enabled(self)->bool:# true means use the alt speedsreturnself.fields["alt-speed-enabled"]@propertydefalt_speed_time_begin(self)->int:"""when to turn on alt speeds (units: minutes after midnight)"""returnself.fields["alt-speed-time-begin"]@propertydefalt_speed_time_day(self)->int:"""what day(s) to turn on alt speeds (look at tr_sched_day)"""returnself.fields["alt-speed-time-day"]@propertydefalt_speed_time_enabled(self)->bool:"""true means the scheduled on/off times are used"""returnself.fields["alt-speed-time-enabled"]@propertydefalt_speed_time_end(self)->int:"""when to turn off alt speeds (units: same)"""returnself.fields["alt-speed-time-end"]@propertydefalt_speed_up(self)->int:"""max global upload speed (KBps)"""returnself.fields["alt-speed-up"]@propertydefblocklist_enabled(self)->bool:"""true means enabled"""returnself.fields["blocklist-enabled"]@propertydefblocklist_size(self)->int:"""int of rules in the blocklist"""returnself.fields["blocklist-size"]@propertydefblocklist_url(self)->str:"""location of the blocklist to use for `blocklist-update`"""returnself.fields["blocklist-url"]@propertydefcache_size_mb(self)->int:"""maximum size of the disk cache (MB)"""returnself.fields["cache-size-mb"]@propertydefconfig_dir(self)->str:"""location of transmission's configuration directory"""returnself.fields["config-dir"]@propertydefdht_enabled(self)->bool:"""true means allow dht in public torrents"""returnself.fields["dht-enabled"]@propertydefdownload_dir(self)->str:"""default path to download torrents"""returnself.fields["download-dir"]@propertydefdownload_dir_free_space(self)->int:"""**DEPRECATED** Use the `free-space` method instead."""returnself.fields["download-dir-free-space"]@propertydefdownload_queue_enabled(self)->bool:"""if true, limit how many torrents can be downloaded at once"""returnself.fields["download-queue-enabled"]@propertydefdownload_queue_size(self)->int:"""max int of torrents to download at once (see download-queue-enabled)"""returnself.fields["download-queue-size"]@propertydefencryption(self)->Literal["required","preferred","tolerated"]:returnself.fields["encryption"]@propertydefidle_seeding_limit_enabled(self)->bool:"""true if the seeding inactivity limit is honored by default"""returnself.fields["idle-seeding-limit-enabled"]@propertydefidle_seeding_limit(self)->int:"""torrents we're seeding will be stopped if they're idle for this long"""returnself.fields["idle-seeding-limit"]@propertydefincomplete_dir_enabled(self)->bool:"""true means keep torrents in incomplete-dir until done"""returnself.fields["incomplete-dir-enabled"]@propertydefincomplete_dir(self)->str:"""path for incomplete torrents, when enabled"""returnself.fields["incomplete-dir"]@propertydeflpd_enabled(self)->bool:"""true means allow Local Peer Discovery in public torrents"""returnself.fields["lpd-enabled"]@propertydefpeer_limit_global(self)->int:"""maximum global int of peers"""returnself.fields["peer-limit-global"]@propertydefpeer_limit_per_torrent(self)->int:"""maximum global int of peers"""returnself.fields["peer-limit-per-torrent"]@propertydefpeer_port_random_on_start(self)->bool:"""true means pick a random peer port on launch"""returnself.fields["peer-port-random-on-start"]@propertydefpeer_port(self)->int:"""port int"""returnself.fields["peer-port"]@propertydefpex_enabled(self)->bool:"""true means allow pex in public torrents"""returnself.fields["pex-enabled"]@propertydefport_forwarding_enabled(self)->bool:"""true means ask upstream router to forward the configured peer port to transmission using UPnP or NAT-PMP"""returnself.fields["port-forwarding-enabled"]@propertydefqueue_stalled_enabled(self)->bool:"""whether or not to consider idle torrents as stalled"""returnself.fields["queue-stalled-enabled"]@propertydefqueue_stalled_minutes(self)->int:"""torrents that are idle for N minutes aren't counted toward seed-queue-size or download-queue-size"""returnself.fields["queue-stalled-minutes"]@propertydefrename_partial_files(self)->bool:"""true means append `.part` to incomplete files"""returnself.fields["rename-partial-files"]@propertydefrpc_version_minimum(self)->int:"""the minimum RPC API version supported"""returnself.fields["rpc-version-minimum"]@propertydefrpc_version(self)->int:"""the current RPC API version"""returnself.fields["rpc-version"]@propertydefscript_torrent_done_enabled(self)->bool:"""whether or not to call the `done` script"""returnself.fields["script-torrent-done-enabled"]@propertydefscript_torrent_done_filename(self)->str:"""filename of the script to run"""returnself.fields["script-torrent-done-filename"]@propertydefseed_queue_enabled(self)->bool:"""if true, limit how many torrents can be uploaded at once"""returnself.fields["seed-queue-enabled"]@propertydefseed_queue_size(self)->int:"""max int of torrents to uploaded at once (see seed-queue-enabled)"""returnself.fields["seed-queue-size"]@propertydefseed_ratio_limit(self)->float:"""the default seed ratio for torrents to use"""returnself.fields["seedRatioLimit"]@propertydefseed_ratio_limited(self)->bool:"""true if seedRatioLimit is honored by default"""returnself.fields["seedRatioLimited"]@propertydefspeed_limit_down_enabled(self)->bool:"""true means enabled"""returnself.fields["speed-limit-down-enabled"]@propertydefspeed_limit_down(self)->int:"""max global download speed (KBps)"""returnself.fields["speed-limit-down"]@propertydefspeed_limit_up_enabled(self)->bool:"""true means enabled"""returnself.fields["speed-limit-up-enabled"]@propertydefspeed_limit_up(self)->int:"""max global upload speed (KBps)"""returnself.fields["speed-limit-up"]@propertydefstart_added_torrents(self)->bool:"""true means added torrents will be started right away"""returnself.fields["start-added-torrents"]@propertydeftrash_original_torrent_files(self)->bool:"""true means the .torrent file of added torrents will be deleted"""returnself.fields["trash-original-torrent-files"]# see below@propertydefunits(self)->Units:returnself.fields["units"]@propertydefutp_enabled(self)->bool:"""true means allow utp"""returnself.fields["utp-enabled"]@propertydefversion(self)->str:"""long version str `$version ($revision)`"""returnself.fields["version"]@propertydefdefault_trackers(self)->Optional[list]:""" list of default trackers to use on public torrents new at rpc-version 17 """trackers=self.get("default-trackers")iftrackers:returntrackers.split("\n")returnNone@propertydefrpc_version_semver(self)->Optional[str]:""" the current RPC API version in a semver-compatible str new at rpc-version 17 """returnself.get("rpc-version-semver")@propertydefscript_torrent_added_enabled(self)->Optional[bool]:""" whether or not to call the `added` script new at rpc-version 17 """returnself.get("script-torrent-added-enabled")@propertydefscript_torrent_added_filename(self)->Optional[str]:""" filename of the script to run new at rpc-version 17 """returnself.get("script-torrent-added-filename")@propertydefscript_torrent_done_seeding_enabled(self)->Optional[bool]:""" whether or not to call the `seeding-done` script new at rpc-version 17 """returnself.get("script-torrent-done-seeding-enabled")@propertydefscript_torrent_done_seeding_filename(self)->Optional[str]:""" filename of the script to run new at rpc-version 17 """returnself.get("script-torrent-done-seeding-filename")