======================================================================= $Id: manual.txt 3335 2008-02-08 11:19:25Z munk $ vim: set comments=fb\:o,fb\:#,fb\:-,fb\:*,fb\:A.,fb\:Q. et tw=72 sw=4: ======================================================================= /********************************************************************** Torrentflux-b4rt Reference Manual **********************************************************************/ Contents: ========= Introduction User operations Working with metadata files (.torrent, .wget, .nzb files) Uploading metadata (.torrent, .wget, .nzb) files Uploading individual metadata files from your filesystem Uploading multiple torrent files from your filesystem Uploading metadata files from a URL Downloading metadata files Searching for torrent files Working in the search results page Performing a search RSS feed torrents Controlling transfers Controlling individual transfers Starting individual transfers in advanced mode Starting individual transfers in quick mode Stopping individual transfers Controlling multiple transfers using the multi-ops feature Overview Using multi-ops Available multi-op operations Controlling multiple transfers using the bulk-ops feature Overview Using bulk-ops Transfer settings window Overview Opening the transfer settings window Viewing general transfer statistics Viewing a transfer's hosts Viewing a transfer's scrape information Viewing 'at a glance' pie charts of a transfers statistics Viewing a transfer's log file Viewing a transfer's metadata details Viewing the files included in a transfer Changing settings for a transfer Starting, stopping and restarting a transfer Server statistics Transfer status lights General frontend 'Good looking' statistics Viewing detailed server statistics Drivespace and 'who' statistics Process statistics Network connection statistics Transfer statistics Opening the server monitor Viewing an RSS feed of the transfer list Viewing activity history Changing the frontend look and feel Reordering the transfer list Turning AJAX updates on and off Turning page refresh on and off Showing/hiding seeding torrents Profile management General Changing password/theme/language Changing what to display in the frontend Deleting torrentflux-b4rt auto login cookies Resetting user profile to default External cookie management Overview How to obtain cookie information Adding cookies Editing cookies Deleting cookies Transfer profile management Overview Adding transfer profiles Editing transfer profiles Deleting transfer profiles Directory / file manager Overview Opening the directory manager Deleting files and directories Renaming files and directories Moving files and directories out of the transfer directory Making torrents Downloading files and directories Streaming movie files using VLC Viewing NFO files Extracting archive files (zip/rar files) Checking the integrity of files using .sfv files Troubleshooting Flushing the template cache Running a maintenance operation Administration operations Superadmin Overview Controlling bulk transfer operations Working with processes Viewing detailed process listings Force stopping processes Performing maintenance tasks Basic transfer maintenance Killing processes Cleaning transfer file leftovers and client resources Repairing problematic installations Resetting transfer totals, transfer stats and personal settings Locking access to the frontend Backups Creating a backup Viewing a backup of transfer data Viewing log files Overview Miscellaneous actions Viewing a list of installed files and their checksums Checking software requirements Checking for updates, news and version info for your torrentflux-b4rt installation Checking your version against the latest version available Viewing news about releases Viewing the changelog for your release Listing and verifying checksums of installed files Configuration General statistics and information listed on the admin page Server options (server) Torrentflux-b4rt path configuration Binary path configuration Operating system specific configuration Transfer client options (transfer) Overview BitTorrent specific settings Fluazu specific settings and operation Overview Starting and stopping fluazu Configuring azureus settings via fluazu Viewing information about fluazu - logs, processes, version Configuring fluazu Wget specific settings Nzbperl specific settings Common settings Transfer control settings (control) Overview Configuration Web application frontend options (webapp) Overview Configuration Web application index page display options (index) Overview Configuration Directory / File Management options (dir) Overview Configuration Configuring stats.php output options (stats) Overview Configuration Fluxd control and configuration (fluxd) Controlling fluxd (start/stop/restart) Setting the database mode to use Setting the log level to use Transfer statistics configuration (xfer) Enabling the display of transfer stats Updating transfer stats in real time Allowing all users to view all other users stats (Re)setting the transfer stats Setting the first day of the week Setting the month day on which a month starts Search engine configuration (search) Checking for search engine updates Filtering out unwanted categories from search results Website link list management (links) Adding, editing, moving and deleting link items RSS Feed list configuration (RSS) Adding, editing and deleting RSS feeds Activity / Audit / Event viewer (activity) Filtering items listed in the activity panel Appendices Guide to automatically fetching and uploading RSS torrents to torrentflux-b4rt using fluxd Overview Configuring the Rssad fluxd module to download torrents Configuring the Watch fluxd module to inject torrents into torrentflux-b4rt Starting fluxd Example Rssad filter patterns Using fluxcli.php on the command-line Running fluxcli.php from a cron job to auto fetch RSS feed items Obtaining statistics using stats.php Overview Specifying the type of output to display Specifying the format of the stats.php output Configuring stats.php /********************************************************************** Introduction **********************************************************************/ This is the manual for the transfer control client torrentflux-b4rt. The manual is split into the following sections: o User operations - covers day to day basic use of torrentflux-b4rt o Administration operations - covers configuration of torrentflux-b4rt and other operations that require administration rights in torrentflux-b4rt o Advanced operations - covers advanced concepts such as fluxd operation (fetching rss torrents automatically, watching folders and uploading new torrents automatically) and running the fluxcli.php script from the commandline or cron jobs. For an overview of the capabilities of torrentflux-b4rt and requirements, installation guide, features and author list, please see the README, INSTALL and FEATURES files located in the distribution root folder. User operations Working with metadata files (.torrent, .wget, .nzb files) This section uses the term 'metadata files' to refer collectively to .torrent, .wget and .nzb files. Uploading metadata (.torrent, .wget, .nzb) files Uploading individual metadata files from your filesystem To upload a metadata file from your filesystem: 1. Click on the 'Browse...' button next to the text field labelled 'Select a Metafile for upload (.torrent, .wget, .nzb):'. 2. Browse to the location containing the meta file you want to upload, select the file and click 'OK'. 3. Click the 'Go' button next to the 'upload metafile' text field. 4. (Optional) To upload and start the transfer at the same time, select 'Upload+Start' from the drop-down list next to the filename text field. Uploading multiple torrent files from your filesystem To upload more than one torrent file at a time, there are two options: Javascript multi upload method: 1. Enter the filename of the first torrent in the filename field. 2. Click the 'More...' link underneath the filename text field. A new filename text field will appear for you to enter a new file to upload. You can repeat the above until you have the filenames of all files you wish to upload. When you're done, click 'Go' to upload all the files at once. Multiple Upload page method: 1. Click on the 'Multiple Upload' link underneath the 'Select filename for upload' text field. You will be directed to a new page with a number of empty filename text fields where you can enter the names of the files you wish to upload. When all files are selected, click 'Go' to upload. In both methods above, you can have the files upload and start immediately by selecting the correct option from the drop down list - 'Upload+Start'. Uploading metadata files from a URL Metadata files (.torrent, .nzb and .wget files) can be uploaded directly from a remote URL (http/ftp) to torrentflux-b4rt. This saves having to download the file first and then upload it separately. To upload a metadata file from a remote URL (ie http://example.com/torrentfile.torrent): 1. Enter the URL in the text field labelled 'URL for the Torrent File:'. 2. Click the 'Go' button next to the text field. 3. (Optional) To upload and then start the transfer, select 'Get File+Start' from the dropdown list next to the URL field. The same operation can be completed for .wget files and .nzb files if enabled by the administrator. Downloading metadata files Metadata files that have already been uploaded to torrentflux-b4rt can be downloaded by clicking on the green down arrow to the left of the transfer list item. You will be prompted to save the metadata file to disk or open it with a suitable application if your browser is configured to handle the metadata file type. Example: -------- This feature is useful for when you want to confirm the integrity of a torrent file that doesn't appear to be transferring correctly. Just download the file by clicking the download button and then open the torrent file in a standalone torrent client. This way you can see whether the torrent is working as it should in a different torrent client and verify whether there is a problem with the client you're using in torrentflux-b4rt. Searching for torrent files Performing a search To search for a torrent file: 1. Enter the keywords you wish to search for in the text field labelled 'Torrent Search:'. 2. Select the torrent search engine you wish to use from the dropdown list next to the text box. 3. Click the 'Search' button. A search will then be made for the keywords you entered on the search engine you specified and the results will be listed. Click on the name of the torrent in the results list to download the torrent file directly to torrentflux-b4rt. Working in the search results page The search results page lists all the torrents that matched the keywords you searched for, including the following information: o Torrent name - password protected downloads are marked with a bold 'P' - torrents which require you to register first before downloading them are marked with a bold 'R' o Category o Size o Seeds o Peers Clicking on the torrent name will download the torrent to torrentflux-b4rt. Clicking on a category name will fetch a list of all torrents in that category from where torrents can be downloaded by clicking on them. Seedless transfers can be hidden from the search result list by clicking on the 'Hide Seedless' link. RSS feed torrents The RSS torrents page can be browsed by clicking on the link 'RSS Torrents' in the middle of the window above the transfer list/drivespace bar. An RSS feed item can be downloaded by clicking on it's name in the RSS feed list page. If you don't see any feed items on the RSS torrents page, contact your administrator to get the RSS feeds added. Note, the RSS torrents page does not download torrents automatically using RSS! For this functionality you must use the Fluxd daemon's Rssad module. See TODO:rssad_link for information on configuring this. IMPORTANT: ---------- If you are unable to download the RSS feed item when you click on it, make sure that the item you're trying to download is actually a torrent file and not just a link to the page that contains the file. The RSS feed your administrator adds MUST be a 'direct download' feed. This is a feed of torrent URLs which can be downloaded directly (instead of having to visit a 'details' page first and then download the torrent from that page). Controlling transfers Controlling individual transfers Starting individual transfers in advanced mode Click the icon with a single white arrow on a green background - located next to the transfer list item on the far left of the listing - to open the advanced start window. The transfer settings window will open on the 'Control' page. On this page you can modify a number of settings before starting the transfer. Once any modifications to the settings are made, click 'Run Transfer' to start the transfer running. To close the settings window after starting the torrent, check the checkbox named 'Close Window'. To NOT run a hash check before starting a torrent, check the checkbox named 'Don't check hashes'. This is useful for when you have a very large torrent that you know has been downloaded fully already and you don't want to spend a long time having the torrent client rechecking the integrity of the download before continuing on to seed the torrent. Note: Skip Hash Check is not supported for "fresh" transfers. (which have not written any data to the disk yet) For full information on changing a transfer's settings see the section on TODO_link:changing_transfer settings Note: ----- The start advanced icon is only visible if the torrent has not already started or is not in the process of stopping. To verify this, look at the status column in the transfer listing which will tell you whether the transfer is starting, started, connecting, seeding, leeching, stopping, stopped or new. Starting individual transfers in quick mode Click the icon with a double white arrow on a green background - located next to the transfer list item on the far left of the listing - to start a transfer in 'quick' mode. Starting a transfer in quick mode allows you to skip the advanced settings window. When a Transfer is resumed, the last used client and settings of this transfer are used to start it and if it is new one the default client and settings configured by the administrator will be used to start the transfer. (unless the settings are changed on the settings- page of a transfer prior to starting it) See the section on TODO_link:transfer_client_options Stopping individual transfers Click the icon with a white square on a red background - located next to the transfer list item on the far left of the listing - to stop a running transfer. Controlling multiple transfers using the multi-ops feature Overview The multi-ops feature of torrentflux-b4rt allows you to perform the same operation on more than one transfer at a time. Using multi-ops 1. Select the transfers from the transfer list that you want to perform the multi-op on by checking their checkboxes to the far right of the transfer list. Note - to toggle the selection of ALL transfers, check the checkbox at the bottom of the transfer list to the far right next to the multi-ops dropdown list. Unchecking this checkbox will deselect all transfers. This can be useful if you have a large list of transfers and you want to perform a multi-op on only 90% of the transfers. 2. Select the type of multi-op you want to perform on the selected transfers from the drop down list located under the transfer list to the far right. 3. Click the 'Go' button to perform the chosen multi-op on the selected transfers. WARNING: -------- You will NOT be prompted for confirmation to perform the multi-op so be sure that you really want to carry out the action before using the multi-op feature! Available multi-op operations The operations that can be performed using multi-ops are listed below: o starting and stopping more than one transfer o deleting transfer metafiles - ONLY the metafiles are deleted, any transfer data downloaded will NOT be deleted with this option. Choose this option if you have yet to move the transfer data out of the torrentflux-b4rt data directory. o deleting transfer metafiles and data - delete both the transfer metafile - ie .torrent file etc - AND the transfer data. Be careful when using this option, only use it when you have no more use for the data that has been downloaded. o resetting transfer totals - reset any information stored about how much data has been transferred for this transfer - cumulative upload/download totals. Only use this option if you don't need to know about how much data has been transferred in total for a transfer. o wiping transfers - deletes any transferred data and resets the totals for the transfer. Be careful when using this option, only use it when you want any transferred data removed. Controlling multiple transfers using the bulk-ops feature Overview A number of actions can be performed on all the transfer is the transfer list at the same time. This is quicker than performing the action on each transfer individually or even by using the multi-ops feature. The operations that can be performed in bulk are: o Start all transfers o Resume all transfers o Stop all transfers 'Start all transfers' will start every single transfer in the transfer list regardless of whether they have previously been started or not. 'Resume all transfers' will only start those transfers in the transfer list that have already previously been started and are currently in the 'stopped' state. 'Stop all transfers' stops all currently running transfers in the transfer list. The bulk-ops start/resume are safe to use on a transfer list where some transfers are already running - only those transfers that aren't currently running will be started or resumed. A transfer won't accidentally be started twice! See also: TODO_LINK: Controlling bulk transfer operations Using bulk-ops To use the bulk-ops feature, click on the 'Start/Stop/Resume All Transfers' icon at the bottom of the transfer list next to the multi-ops dropdown list. The icons are a white arrow on a green background, a double white arrow on a green background and a white square on a red background respectively for start, resume and stop. Transfer settings window Overview The transfer settings window allows fine grained control over your transfers and access to detailed statistics and logs. The options available in the settings window will differ according to the type of transfer and the status of the transfer - if the transfer is currently running or not. The transfer settings window is primarily used to modify the settings of a currently running transfer 'on the fly' and to view statistics and logging info for the transfer. The transfer settings window is also used to modify the settings of a client / transfer when starting a transfer in 'advanced mode'. See TODO_link:'Starting individual transfers in advanced mode' Opening the transfer settings window The transfer settings window can be opened by using any of the following methods: o Starting a torrent in 'advanced mode' TODO_link:'Starting individual transfers in advanced o Clicking on a transfer in the transfer list. The transfer can be in any status - started or stopped - to use this method. o Clicking on the 'Transfer Settings' icon to the far right of the transfer item in the transfer list. A number of different 'views' or pages are available in the transfer settings window, these are covered below. Viewing general transfer statistics The 'Stats' page of the transfer settings window allows you to view the following information about your transfer: o Estimated Time - time until transfer download is complete. o Percent Done - percentage of data already downloaded. o User - the torrentflux-b4rt owner of this transfer o Download Speed - current download speed, updates every 5 seconds by default. o Upload Speed - current upload speed, updates every 5 seconds by default. o Down - total downloaded during the current session. o Up - total uploaded during the current session. o Down-Total - total downloaded during all sessions for this transfer; the cumulative download total. o Up-Total - total uploaded during all sessions for this transfer; the cumulative upload total. o Seeds - current number of seeds available for this transfer, updates every 5 seconds by default. o Peers - current number of peers available for this transfer, updates every 5 seconds by default. o Port - current local port being used for this transfer o Connections - current number of active connections for this transfer. o Sharing - current share ratio for this transfer, 100% equals same amount uploaded as downloaded. o Seed Until - the share ratio at which seeding should stop. Otherwise known as 'sharekill' ratio - ie 'stop sharing when this ratio is reached' Viewing a transfer's hosts The 'Hosts' page of the transfer settings window allows you to view a list of the hosts currently connected with respect to this transfer. A host in this list may not necessarily be actively transferring data to/from us. A host can be connected and just in the process of negotiating the transfer of data. Viewing a transfer's scrape information The 'Scrape' page of the transfer settings window allows you to view the number of seeds vs leechers for the current transfer in the form of a pie chart. Viewing 'at a glance' pie charts of a transfers statistics The 'Images' page of the transfer settings window allows you to view at a glance the total uploaded vs downloaded and the number of peers vs seeders. Viewing a transfer's log file The 'Log' page of the transfer settings window allows you to view the detailed logging information for the current transfer. The transfer log is the first place to look when troubleshooting a problematic transfer. In it you will find all the information output from the transfer client and errors relating to a problem are often displayed there. Viewing a transfer's metadata details The 'Details' page of the transfer settings window allows you to view detailed meta information about the current transfer - the transfer filename, hashing info, details of what files/directories are included in the transfer, transfer size and the announce url for torrents. Viewing the files included in a transfer The 'Files' page of the transfer settings window allows you to see what files are included in a transfer once complete. Changing settings for a transfer The 'Settings' page of the transfer settings window allows you to modify the settings related to the current transfer. If a transfer has already started, any changes made to the settings can be sent to the transfer's client 'on the fly' by checking the checkbox labelled 'Send Changes to Client' (set by default if a transfer is already running). There is no need to stop the transfer before making changes to a transfer's settings. The settings available for a transfer will differ depending on the client chosen to perform the transfer. Not all settings are available for all choices of clients. Starting, stopping and restarting a transfer The 'Control' page of the transfer settings window allows you to start, stop or restart a transfer. The available options available will differ depending on the current status of the transfer. When the transfer is currently stopped, the control page resembles the 'Settings' page in that all the settings are available for modification prior to starting the transfer. When the transfer is currently running, the control page is limited to the stopping or restarting of a transfer. Server statistics Transfer status lights The transfer status light for a transfer is displayed to the far left of the transfer list. The colour of the transfer status light determines the current status of the transfer. The colours of the transfer status light are as follows: o Black - transfer is not running. o Red - transfer is running but no seeds are currently available for the transfer. If this status persists you should check: * the transfer log for any errors (see TODO_link:Viewing transfer log files) * the torrent's tracker is online * your firewall is configured to allow connections to/from the client * the torrent actually has any seeds available at all It is also worth testing that the torrent works correctly in another torrent client if the red light status continues, although be sure that the client you test in does not use Distributed Hash Tables (DHT or 'trackerless') because this maybe affect the results of the comparison test. o Yellow - transfer is running but there are less than two seeds available. This can indicate that a torrent is not well seeded and if this status continues you may need to find a better seeded torrent or use a DHT/trackerless enabled client. o Green - transfer is running with at least two seeds. General frontend 'Good looking' statistics The 'Good looking' statistics are displayed to the top right of the torrentflux-b4rt frontend and include the following statistics: o Download Speed- total download speed for all running transfers o Upload Speed - total upload speed for all running transfers o Total Speed - total upload + download speed for all running transfers o Connections - total network connections for all running transfers o Drive Space - total hard disk drive space currently in use for the filesystem where torrentflux-b4rt downloads transfers to o Server Load - current server load averages of the server. A sustained load average of over 2 in each of the three readings can be indicative of excessive server load depending on the server role. Clicking on any of the links in the 'Good looking' statistics section will open up the 'Server statistics' page. Viewing detailed server statistics Overview The server statistics page provides detailed information on server status, including drivespace, logged-in users, process, network and transfer usage. The server statistics page can be opened using the following methods: - Clicking on any of the links in the 'Good looking statistics' section of the frontend. - Clicking on the 'Server Stats' link above the drivespace bar towards the middle of the frontend. Drivespace and 'who' statistics This is the default view for the server statistics page labelled 'all' in the drop down list labelled 'Type' at the top of the server stats page. This view provides information about: o Current drivespace used on the filesystem where torrentflux-b4rt downloads transfers to. The output is taken from the Unix command 'df'. o Currently logged in users on the server - ie 'real' shell users on the server that torrentflux-b4rt is installed on. The output is taken from the Unix command 'w' or 'who'. Process statistics This view can be set by selecting 'ps' from the 'Type' dropdown list on the server stats page. The view displays information about any currently running processes for each of the transfer clients supported by torrentflux-b4rt. Network connection statistics This view can be set by selecting 'netstat' from the 'Type' dropdown list on the server stats page. The view displays information about any network connections currently connected for any of the supported torrentflux-b4rt transfer clients. Transfer statistics This view can be set by selecting 'xfer' from the 'Type' dropdown list on the server stats page. The view displays transfer statistics - ie amount of bandwidth used - in a table. Statistics are given for bandwidth used for each user in total, over the last month, over the last week and for the current day. A detailed breakdown of 'per user' or 'total' transfer statistics can be viewed by clicking on the links in the initial transfer stats page. On this detailed page you can view statistics for any single day within the last 30 days. Opening the server monitor The server monitor can be opened by clicking on the 'green light on a white background' image above the drivespace bar towards the middle of the frontend. The following information is displayed in the server monitor: o Download Speed o Upload Speed o Total Speed o Connections o Drive Space o Server Load o Transfers running o Transfers queued The server monitor is updated every 5 seconds by default - update interval can be changed in the (TODO_link: Setting the server monitor update interval) webapps admin section. Viewing an RSS feed of the transfer list An RSS feed of the transfer list can be displayed by clicking on the RSS icon (icon with orange background and white arcs). The RSS feed can be subscribed to in your feed reader, allowing another method for monitoring the status of your transfers. Viewing activity history The activity history can be viewed by regular users by clicking on the 'History' link in the top right navigation menu. The activity history page displays information about all activities performed by the user in the last 30 days. The history page is a good place to look when troubleshooting problematic transfers. Changing the frontend look and feel Reordering the transfer list The transfer items in the transfer list are reordered by clicking on the various transfer list column headers at the top of the transfer list. For example, to change the display of transfer list items so the oldest items are displayed towards the top of the list, click on the first transfer list column header (above the transfer status lights) marked with a '#'. The transfer list reordering options are as follows - clicking the mentioned column header will toggle the sorting: o Order by date transfer added to torrentflux-b4rt - click column header labelled '#' o Order by transfer file name alphabetically - click column header labelled 'Transfer File' o Order by transfer owner - click column header labelled 'User' o Order by transfer size - click column header labelled 'Size' o Order by total downloaded - click column header labelled 'T. Down' o Order by total uploaded - click column header labelled 'T. Up' o Order by transfer status - click column header labelled 'Status' o Order by percentage completed - click column header labelled 'Progress' o Order by download bandwidth - click column header labelled 'Down' o Order by upload bandwidth - click column header labelled 'Up' o Order by number of seeders - click column header labelled 'Seeders' o Order by number of peers - click column header labelled 'Peers' o Order by estimated time left til completion - click column header labelled 'Estimated Time' o Order by type of transfer client - click column header labelled 'C' - client types are denoted as follows: B: tornado T: transmission M: mainline A: azureus W: wget N: nzbperl Note: ----- The 'Enable sortable' feature must be enabled in the 'index' settings page in the admin section to allow reordering of transfers. The columns available in your transfer list may differ depending on how the administrator has configured the display of transfer lists. See the section on TODO_LINK 'Setting the default transfer list columns to display'. The transfer list columns can also be configured on a per user basis by modifying the user profile settings if the administrator has allowed profile management. See the section on TODO_LINK 'Changing what to display in the frontend'. Also see the administration section on TODO_LINK 'Allowing users to use transfer profiles' for info on enabling or disabling individual user profile management. Turning AJAX updates on and off The transfer list can be updated automatically using AJAX (Asynchronous Javascript and XML). To turn on AJAX updates, click on the link 'Turn ON AJAX-Update' under the transfer list. The update text will change to: 'Next AJAX-Update in xx seconds' where xx is the countdown in seconds until the next AJAX update (default 5 seconds). The timer will count down until it reaches zero, at which point the transfer list will be refreshed. To turn off AJAX updates, click on the link 'Next AJAX-Update in xx seconds' again. The AJAX update interval can be configured either globally by the administrator ('index' section of the admin pages) or individually on a per-user basis in the user's profile. Turning page refresh on and off The main torrentflux-b4rt index page containing the transfer list can be updated automatically using the HTML meta refresh method. To turn on page refresh, click on the link 'Turn ON Page Refresh' under the transfer list. The refresh text will change to: 'Next Page Refresh in xx Seconds' where xx is the countdown in seconds until the next refresh (default 60 seconds). The timer will count down until it reaches zero, at which point the page will be refreshed. To turn off automatic page refreshes, click on the link 'Next Page Refresh in .. Seconds' again. The refresh interval can be configured either globally by the administrator ('index' section of the admin pages) or individually on a per-user basis in the user's profile. Note: ----- Using the page refresh method, the whole page is reloaded - not just the transfer list. This option is now largely deprecated in favour of the AJAX update method, which only updates the transfer list instead of the whole page and so uses up less bandwidth. Showing/hiding seeding torrents Clicking on the 'Hide Seeding Torrents' link under the transfer list will hide all currently seeding torrents. This is useful when you have a lot of transfers in the transfer list that are in the 'Seeding' state that you don't want to keep an eye on continually. This feature can be configured either globally in the 'index' section of the admin pages or on a per user basis in the user's profile. Profile management Overview The user profile page is available by clicking on the 'Profile' link in the navigation menu at the top right of the frontend. A number of options and settings can be changed on a per user basis, including general user settings (password, default theme, language), what is displayed in the frontend, what cookies to use for cookie enabled sites and the option to create different transfer profiles for different transfer situations. General Changing password/theme/language The following items can be changed directly on the 'Profile' page: o User name o Password o Default Theme o Language o Whether to hide offline users on the frontend Changing what to display in the frontend A large number of frontend display settings can be changed on a per user basis. These options are available under the 'Personal Settings' heading on the 'Profile' page. The frontend display options which can be configured are as follows: TODO: put links to admin help for each of the following o Page Refresh - Enable/disable page refresh o Page Refresh Interval - Number of seconds between page refreshes o AJAX Update - Enable/disable AJAX updates o Page title AJAX Update - Enable/disable update of page title in AJAX updates o User list AJAX Update - Enable/disable update of the user list in AJAX Updates o Transfer List AJAX Update - Enable/disable update of the transfer list in AJAX updates o Silent AJAX Update - Do not display "Update in Progress..." during AJAX updates o AJAX Update Interval - Number of seconds between AJAX updates (default: 5) o Width - Width in pixels of the index page (default: 900) o Display Links - Display list of links on the index page o Display Users - Display users on the index page o Enable Good Looking Statistics - Enable/disable "Good looking statistics" o Good Looking Statistics Settings - Select Fields shown in "Good looking statistics" Available stats to display in good looking stats panel: * Download Speed * Upload Speed * Total Speed * Connections * Drive Space * Server Load o Display Bandwidth Bars - Display bandwidth usage bars o Bandwidth Bars Style - Select style of bandwidth bars o Big Bold Drivespace Warning - Enable/disable drivespace warning when disk space low o Show Seeding Torrents - Display seeding torrents on index page o Estimated Time To Seed - Display the estimated time until transfers reach seeding cutoff ratio o Transfer List Sorting - Enable/disable reordering of transfer list by clicking on column headings o Default Transfer List Sort Order - Select default sort order of transfers in transfer list o Transfer List Display - Select the information to display in the transfer list Information columns available for display in transfer list: * Owner * Size * Total Down * Total Up * Status * Progress * Down-Speed * Up-Speed * Seeds * Peers * Estimated Time * Client o Default Page In Transfer Settings Window - Select the default page to display in the transfer settings window o Server Stats - Enable/disable display of server stats on index page o Network Connections - Enable/disable display of total network connections o Show Server Load - Enable/disable display of server load averages (1/5/15 min averages) o Drivespace Bar Style - Select style of drivespace bar o Transfer Stats Window Update Method - Select method to use to update transfer stats window o Transfer Stats Window Update Interval - Number of seconds between transfer stats updates o Transfer Hosts - Enable/disable display of connected hosts in transfer hosts window o Server Monitor Update Interval - Number of seconds between server monitor updates for server monitor update Deleting torrentflux-b4rt auto login cookies To delete the auto-login cookie used to authenticate the current user automatically, click on the link 'Delete "Auto-Login" Cookie'. When you restart the browser and browse to the torrentflux-b4rt frontend, you will be prompted to reenter your username and password to login. To find out about admin options for configuring authentication in torrentflux-b4rt see TODO_LINK: 'Setting the authentication type to use'. Resetting user profile to default Clicking the link 'Reset Personal Settings' will reset all customised personal settings to the defaults. External cookie management Overview Torrentflux-b4rt can be configured to use HTTP cookies when performing any operation that involves a HTTP request with a website that requires cookies. This is mainly used for downloading torrent files from a private tracker that requires you to use cookies for authentication. The following sections describe how to use external cookies with torrentflux-b4rt. How to obtain cookie information FireFox * Tools => Options * Cookies => View Cookies * Locate the site you want to get cookie information from. * Copy the cookie values for the variables that the site uses. Common cookie variables used in torrent sites are UID and PASS, although these will differ from site to site. See your torrent site FAQ or Forum for more info. Internet Explorer * Tools => Internet Options * General => Settings => View Files * Locate cookie file for site (eg: Cookie:user@www.host.com/) * Open the file in a text editor * Grab the values below UID and PASS The file will look something like this: ------ userZone -660 www.host.com/ 1600 2148152320 29840330 125611120 29766905 * uid 123456 <---------------------------- www.host.com/ 1536 3567643008 32111902 4197448416 29766904 * pass 0j9i8h7g6f5e4d3c2b1a <-------------- www.host.com/ 1536 3567643008 32111902 4197448416 29766904 * -------- Adding cookies Enter the domain of the website you want to use cookies for in the text field labelled 'Host:'. Enter the cookie string you want to use in the text field labelled 'Data:'. Example: -------- If the cookie variables you want to send are: o uid with a value set to '99' o pass with a value set to 'foobar' then the cookie string would look like: o uid=99;pass=foobar; Once the Host/Data fields are completed, click 'Add' to add the cookie. The cookie will now be used whenever you perform an action that involves an HTTP request with the domain. Editing cookies Click on the 'Edit' icon next to the cookie you want to edit. On the resulting page, modify the cookie as needed and click 'Update' when finished. Deleting cookies Click on the 'Delete ' icon next to the cookie you want to delete. This will remove the cookie from the current user's profile. Transfer profile management Overview The transfer profile management section is found on the user's 'Profile' page. Click the link 'Transfer Profiles Management' to open the transfer profiles management window. A transfer profile is a pre-defined set of transfer options which are saved under a transfer profile name. The transfer profile(s) can then be used at a later date when you start a new transfer, saving you the effort of having to manually go through each of the settings for that transfer tweaking them to suit the type of transfer you're performing. Example: -------- You use a private torrent tracker that requires you keep at least a ratio of 1.05. Rather than manually go through the settings each time you start a torrent for that private tracker, instead you can create a transfer profile with the following settings: o 'Percentage When Seeding should Stop:' = '105' o 'Max upload rate' = 0 - no restriction on upload speed Now each time you start a new transfer that uses the private tracker, just select the profile from the transfer settings window - the sharekill ratio will automatically be set to 105 and there will be no restriction on how fast you upload to leeching peers meaning you should meet your ratio of 1.05 faster. Adding transfer profiles To add a transfer profile, complete the form on the transfer profiles management page and click the 'Add' button. If you wish the profile to be available to all other users, check the 'Public Profile' checkbox. Editing transfer profiles To edit a transfer profile, click the 'Edit ' icon next to the profile. This will load the profile's settings and allow you to modify them. When you are happy with the changes, click the 'Update' button to save the profile. Deleting transfer profiles To delete a transfer profile, click on the red button with a cross on it next to the profile. Directory / file manager Overview The directory manager allows you to work with the files and directories within the torrentflux-b4rt download directory. Regular users are limited to working with the files in their own download folder - administrators can access any files in any directory within the master download folder. A number of different operations can be performed on files within the directory manager, including: o Deleting files and directories o Renaming files and directories o Moving files and directories out of the transfer directory o Making torrents o Downloading files and directories o Downloading files and directories as tar or zip archives o Streaming media files using VLC o Viewing NFO files o Extracting archive files (zip/rar files) o Checking the integrity of files using .sfv files Permission to perform these operations can be controlled globally by the administrator in the administration settings pages. TODO_LINK: Directory / File Management options (dir) Opening the directory manager The directory manager can be opened with the following actions from the torrentflux-b4rt frontend: o Clicking the 'Directory' link in the navigation menu at the top right of the screen o Clicking the 'Directory List' link in the middle of the screen o Clicking on the folder icon to the left of a transfer in the transfer list Once the directory manager is opened, directories can be browsed by clicking on folders. To go 'up' a directory, click on the link '[Back Parent Directory]'. The available actions that can be performed on a file are listed to the right of the directory manager. These actions will differ depending on the type of file. All files within a directory can be selected at the same time by checking the checkbox at the bottom right of the directory manager. Checking the checkbox again will deselect all files. Deleting files and directories Individual files can be deleted by clicking on the icon with a white cross on a red background next to the file. Multiple files can be deleted at the same time by first selecting all the files you wish to delete and then clicking on the cross icon at the bottom right of the directory manager next to the 'select all' checkbox. You will be prompted for confirmation to delete the file(s) after clicking the cross icon. Renaming files and directories Files and directories can be renamed by clicking on the 'Rename File/Folder' icon to the right of the file. A window will open asking you to specify the name you wish to rename the file/folder to. Complete this form and click 'Ok' to rename the file/folder. Note: ----- Using this option, files and folder can only be renamed within the bounds of the master download directory. To move files and folders *out* of the download directory, the 'Move File/Folder' action must be used. TODO_LINK: Moving files and directories out of the transfer directory Moving files and directories out of the transfer directory Files and directories can be moved out of the master transfer directory by clicking on the 'Move File/Folder' icon. A window will open asking you to specify the destination directory in a drop down list or text box. Note: ----- The destination folders for move actions must be configured by the administrator. Any destination folders configured by the admin will be listed in the 'Move' window dropdown box. For more info on setting a list of directories to move files/folders into, see: TODO_LINK: Setting a list of allowed folders to move transferred files into Making torrents A torrent file can be created for a file or directory by clicking on the 'Make Torrent' icon. A window will be displayed prompting for the necessary details for the torrent: o Client - the client you want to use to create the torrent file. o Torrent name - the filename you wish to give the torrent file o Announcement URL - the URL of the tracker which will be hosting the torrent file. Check your tracker's website for info on what to use for this option. o Announce List - a list of alternative trackers to use for this torrent. This option allows you to provide redundancy in the event that one tracker is unavailable. o Piece size - the size of chunks you wish your torrent to be distributed in. o Comments - any comments about the content of the torrent. o Private Torrent - whether or not this torrent is private. If private, the DHT / trackerless option will be disabled. o DHT Support - whether to support Distributed Hash Tables for so-called 'trackerless' support. Using this option will allow clients with DHT support to seek out peers using DHT instead of depending only on static tracker servers. Torrent file creation will commence when the 'Create' button is clicked. If the 'Notify me of completion' checkbox is checked, the create torrent window will display details of the torrent created once complete. When the torrent file is created, it will be displayed in the torrentflux-b4rt frontend ready for starting as with any other torrent. Downloading files and directories Files can be downloaded in a web browser by clicking on the 'Download' icon to the right of the file in the directory manager. Complete directories can be downloaded as a tar archive by clicking on the 'Download as tar' icon to the right of the directory in the directory manager. This action will first create a tar archive of the complete directory listing and then send this to the web browser for download. Note: ----- Downloading directories as tar archives can take a considerable amount of time if the directory structure is very large. Streaming media files using VLC Audio and Movie files can be streamed in real time from the server by clicking on the 'Stream Multimedia (vlc)' icon to the right of the file. This action will open a window with a form for you to specify the details for the streaming action. TODO: description of streaming with vlc. Viewing NFO files NFO files refer to a standard information file that contains pertinent information for a distribution or download, so-called because the file ends in .nfo. These nfo files can be viewed by clicking on the 'View nfo file' icon to the right of the file listing in the directory manager. The following file extensions are considered to be 'nfo' files by torrentflux-b4rt: .nfo, .txt, .log Extracting archive files (zip/rar files) Torrentflux-b4rt supports the extraction of zip and rar archive files. To extract an archive file, click on the 'Unzip/Unrar' icon to the right of the file listing. A window will open prompting you for a password for the archive - enter the password here if applicable. If there is no password as far as you know, leave the password field empty. Click 'OK' to extract the archive. Note: ----- The extraction process may take a long time to complete if the archive is very large. You may close the 'Uncompress file' window once it has started, the uncompression process should continue in the background on the webserver. Checking the integrity of files using .sfv files SFV or 'simple file verification' files are often used by file distributors to check on the integrity of transferred files. The sfv signatures on a transferred archive can be tested by clicking on the 'Check sfv' icon to the left of the directory containing the sfv file. Troubleshooting Flushing the template cache Occasionally problems may occur with the templating system which make pages display incorrectly. A first attempt at fixing this kind of problem is to flush the template cache. If you are unable to click on the icon, try browsing to the following URL: http://example.com/superadmin.php?m=35 replacing 'example.com' with the URL of your torrentflux-b4rt installation. Alternatively delete the files direct which are located inside your main-path-directory: /path/to/maindir/.templateCache Running a maintenance operation Occasionally problems occur whereby the integrity of the files that are used to keep track of transfers can become corrupted. This problem can lead to a situation where torrentflux-b4rt reports that a transfer is running when it isn't - or similar problems to this. A first attempt at solving this kind of problem is to perform a maintenance run from the front end which will check the status of the transfer's control files and fix any problems if possible. To make a maintenance run, click on the 'Maintenance' icon located at the bottom of the transfer list near to the bulk operations links. The icon is a red and white life ring symbol. For more thorough maintenance tasks see the section on superadmin maintenance tasks TODO_LINK: Performing maintenance tasks Administration operations Superadmin Overview The superadmin pages are accessible only by the superadmin account holder - the administration account that is created the first time that torrentflux-b4rt is created. The superadmin pages are accessed by clicking on the 'Superadmin' link on the administration pages - a new window will open with the superadmin pages in it. The superadmin pages allow you detailed control over the following tasks and areas: o Transfers - bulk start/stop/resume transfers o Processes - view detailed process info; force stop transfer processes o Maintenance - clean up and maintenance o Backup - create backups; download saved backups o Log - view logs o Misc - test for PHP and Perl requirements; view list of installed files o About - version checking, updates, news, changelog; check installed file integrity Be careful when using the superadmin features as many of them apply to all torrentflux-b4rt users and not just individual users. Controlling bulk transfer operations The superadmin transfer bulk-ops page allows you to operate on multiple transfers at one time. The actions are identical to the bulk-ops feature available in the frontend. The transfer bulk-ops available in the superadmin pages are: o Stop All Transfers - this option will stop all currently running transfers o Start All Transfers - this option will start all transfers that are currently not running o Resume All Transfers - this option will start *only* those transfers that have already been previously started See also: TODO_LINK: User operations - Controlling multiple transfers using the bulk-ops feature Working with processes Viewing detailed process listings To view a detailed list of currently running processes, click on the 'All' link on the 'Processes' tab in the superadmin pages. A detailed list of all currently running processes associated with torrentflux-b4rt will be displayed. The output is divided into sections, one for each client associated with torrentflux-b4rt. Force stopping processes Problematic transfers can be forced to stop by using the 'Transfers' link on the 'Processes' tab in the superadmin pages. The 'Transfers' page displays a list of all currently running transfers, listing the user the transfer belongs to and the transfer file name. The transfers in this list can be force stopped by clicking on the red icon in the right hand column next to the transfer. This force stop method sends a SIGKILL signal to the process associated with the transfer if it is refusing to shutdown graceful in time. Performing maintenance tasks Basic transfer maintenance The 'Main' page of the 'Maintenance' tab in the superadmin pages allows you to run maintenance tasks on your torrentflux-b4rt installation. The available options are: o Standard Maintenance Run This option is the same as available on the index page of the frontend and is automatically called on every login. The standard maintenance run performs the following actions: - Checks for stale fluxd PID and socket files and removes them if found. - Check for any transfers that are marked as running but actually aren't running and update their status to show them as not running. - Update the database so the information stored there is in line with the transfer files in the filesystem. o Extended Maintenance Run This option is exactly the same as the standard maintenance run, except that any transfers that are marked as running but aren't actually running are restarted. Killing processes The 'Kill' link on the 'Maintenance' tab of the superadmin pages allows you to kill all processes for a given type - PHP, Python, Perl, Transmission, Wget, VLC. This option will send a KILL signal to all processes matching the type you choose. NOTE: ----- Be VERY careful when using this option and only use it as a last resort or if you really know what you are doing. The kill signal sent will kill ALL processes of the type you specify - for example if you choose to kill all PHP processes, every PHP process running on the server as the webserver user will be killed, not just those related to torrentflux-b4rt! If you choose to use this option to kill processes, it is advisable to check what processes are running first by issuing the following command as root: ps aux | grep php for example in the case of 'php'. This will give you an idea of what PHP processes are currently running and you can be sure then that you are only going to kill the processes you need to. Cleaning transfer file leftovers and client resources The 'Clean' linked page on the 'Maintenance' tab of the superadmin pages allows you to clean leftover transfer pid files, client cache files and torrentflux-b4rt's template cache files. The actions available are: o PID File Clean Deletes stale PID files from transfers. Any transfers that are currently not running should not have a PID file associated with it. These stale PID files are deleted using this option. o BitTornado Clean Deletes the BitTornado cache. BitTornado uses a cache whilst transferring data. This option deletes the BitTornado cache. o Transmission Clean Deletes the Transmission cache. Transmission uses a cache whilst transferring data. This option deletes the Transmission cache. o BitTorrent Mainline Clean Deletes the BitTorrent Mainline cache. BitTorrent Mainline uses a cache whilst transferring data. This option deletes the BitTorrent Mainline cache. o Template Cache Clean Deletes the Torrentflux-b4rt template cache. Torrentflux-b4rt can be configured to use a template cache to speed up display of pages. This option deletes the template cache. See also: TODO_LINK webapp admin config - Enabling template caching Repairing problematic installations The 'Repair' linked page on the 'Maintenance' tab of the superadmin pages allows you to perform a thorough repair of the torrentflux-b4rt installation. This option is the same as the basic 'maintenance' run - TODO_LINK: superadmin maint etc except that this option resets the stat files of any transfers and deletes all transfer pids as if they had just been newly injected. No transfers are restarted using this repair option. Generally this option should only be taken as a last resort if transfer's refuse to start at all. Resetting transfer totals, transfer stats and personal settings The 'Reset' linked page on the 'Maintenance' tab of the superadmin pages allows you to reset the transfer totals, transfer statistics and personal settings. The options available are: o Reset Transfer Totals Resets the transfer totals - total uploaded/downloaded - for each transfer in the transfer list. Do not use this option if you are trying to keep track of your ratio on trackers using the transfer totals in the frontend! o Reset Xfer Stats Resets the transfer statistics. All transfer statistics on record are reset using this option - how much has been downloaded per user over the last day/month/year etc. o Reset Personal Settings Resets the personal settings of all users. All user's personal settings are reset to the default values. Be careful using this option as all user's profiles are affected. Locking access to the frontend The 'Lock' linked page on the 'Maintenance' tab of the superadmin pages allows you to lock all access to the torrentflux-b4rt frontend for non-admin users. When attempting to browse the frontend, users will only see a message informing them the frontend is locked. Backups Creating a backup The 'Create Backup' linked page on the 'Backup' tab of the superadmin pages allows you to create a backup of all files associated with Torrentflux-b4rt. There are two options for where to store the backed up data - decide which is most appropriate for you: o Backup on Server - this option will store the backup archive on the server inside a folder named '.backup' under the main path configured in the 'server' tab on the admin pages. Archives stored on the server can later be viewed in torrentflux-b4rt using the 'Backups currently on server' tab on the 'Backup' page of the superadmin section. o Backup on Client - this option will send the backup archive to you in your web browser so you can save the backup locally. Once you have decided where to save the backup to, you can then choose what kind of compression to use with the archive. There are three compression options to choose from: o gzip - this is the default compression setting. The archives will be compressed using gzip, creating smaller archives. This option is faster than bzip2 but slower than 'none'. o bzip2 - the archives will be compressed using bzip2, creating the smallest possible archives. This option is the slowest compression option. o none - uses no compression when archiving. The archives will be archived using tar only, the resulting archive size will be the same as the space taken up by the files being archived. This is the fastest compression option. Select the compression option you want from the dropdown list and finally click on the 'Backup' button for the location you chose to save to. The data that is backed up is as follows: o Document root directory structure - all files underneath the webserver document root folder where you installed Torrentflux-b4rt. These files consist of the torrentflux-b4rt web application itself. o The Transfers folder directory structure - all files in the .transfers folder located in the path configured in the admin pages 'server' tab. The .transfer folder contains all control files for the transfers in torrentflux-b4rt - pid, stat and log files. o The fluxd folder directory structure - all files in the .fluxd folder located in the path configured in the admin pages 'server' tab. The .fluxd folder contains control files for the fluxd daemon - pid, socket and log files. o The MRTG folder directory structure - all files in the .mrtg folder located in the path configured in the admin pages 'server' tab. The .mrtg folder contains control files for the MRTG traffic graphing addon component. o The Torrentflux-b4rt database - the database used to store information used in the day to day running of torrentflux-b4rt. An archive is made for each of the options listed above and the resulting archives are then archived again into a single archive. In the case of the filesystem backups, a backup is only made if the relevant directory actually exists - so for example if no '.mrtg' folder exists, no mrtg backup will be made. Viewing a backup of transfer data Any backups that are created on the server can be viewed by clicking on the 'Backups currently on server' link on the 'Backup' tab of the superadmin pages. Any backups created by torrentflux-b4rt on the server are listed on the page, including information about what version the backup is from, the date the backup was created, what compression was used and the size of the archive. An archive can be downloaded or deleted by clicking on the respective icon to the right of the backup item in the list. Viewing log files Overview The 'Log' tab on the superadmin pages allows you to view the log files for various components of torrentflux-b4rt: o fluxd - STDOUT logfiles for the torrentflux-b4rt fluxd daemon. The fluxd logfile contains day to day logging information which should be the first place to look when attempting to troubleshoot fluxd problems, together with the fluxd error log. o fluxd-error - STDERR logfiles for the torrentflux-b4rt fluxd daemon. The fluxd error logfile contains any errors encountered in the day to day running of fluxd. Essential viewing when troubleshooting fluxd. o fluazu - logfiles for the fluazu interface to Azureus. o BitTorrent Mainline - centralised logfile for the BitTorrent Mainline client. o Transfers - logfiles for transfers in the current transfer list. Clicking the 'transfers' logfile link will take you to a page containing a list of links to the logfiles of all current transfers in the transfer list. Miscellaneous actions Viewing a list of installed files and their checksums The 'Lists' linked page on the 'Misc' tab of the superadmin pages allows you to view a list of all the torrentflux-b4rt files installed and their checksums. The file list feature displays a list of each file under the current document root for the installation and the version of each file if found. The checksum feature displays a list of each file under the current document root for the installation and the checksum for each of those files. The checksum for a file is unique and when the file contents change in any way, the checksum will also change. Checksums can therefore be used to determine if the contents of a file have been changed at some point by comparing the current checksum to the checksum of the original file. Listing and verifying checksums of installed files The 'Checksum Validation' linked page on the 'Misc' tab of the superadmin pages allows you to check the integrity of the files installed in your installation of torrentflux-b4rt against a list stored on the torrentflux-b4rt website. This allows you to verify whether any of your files have changed since you installed them, alerting you to any differences. The script will analyse the files you have installed and provide a detailed report about all unchanged/changed/missing/new files. Checking software requirements The 'Check Requirements' linked page on the 'Misc' tab of the superadmin pages allows you to run tests to check if your server's software meets the requirements for running Torrentflux-b4rt successfully. The tests are as follows: o Check PHP Web Requirements Check your PHP web installation meets the requirements for web based activities in torrentflux-b4rt. This test will check that the currently installed PHP web component has all the correct extensions built in to run torrentflux-b4rt correctly. o Check PHP CLI Binary Requirements Check your PHP commandline binary installation meets the requirements for commandline based activities in torrentflux-b4rt. o Check Perl Requirements Check your Perl installation meets the requirements for perl based activities in torrentflux-b4rt. This option will check all perl modules required for the correct operation of torrentflux-b4rt are installed. Checking for updates, news and version info for your torrentflux-b4rt installation Checking your version against the latest version available The 'Version' linked page on the 'About' tab of the superadmin pages will display the current version of your torrentflux-b4rt installation along with information about the current latest version available from the torrentflux-b4rt downloads pages. This option allows you to see easily whether a new version of torrentflux-b4rt is available for download. Note: ----- When using the SVN version of torrentflux-b4rt, details of the latest version are not displayed since it is presumed you are using the bleeding edge version of the software. Viewing news about releases The 'News' linked page on the 'About' tab of the superadmin pages displays a list of links to the news page for each release of torrentflux-b4rt. The list of news pages is obtained from the torrentflux-b4rt website and so is always up to date. Viewing the changelog for your release The 'Changelog' linked page on the 'About' tab of the superadmin pages displays a list of links to the changelogs for each release of torrentflux-b4rt. This list of changelogs is obtained from the torrentflux-b4rt website. Configuration General statistics and information listed on the admin page The default admin page displays statistics about your torrentflux-b4rt installation, information about your database and other miscellaneous details about your OS and PHP installation. The information displayed is as follows: o Torrentflux-b4rt Stats: * Transfers - current number of transfers in the transfer lists for all users * Users - number of users registered to use torrentflux-b4rt * Hits - number of accesses of torrentflux-b4rt pages * Logs - number of log entries in the database * Links - number of links in the link manager database * RSS - number of RSS torrent feeds available in the frontend * Messages - number of private messages stored in the database * Cookies - number of cookies stored in the database for all users * Transfer Profiles - number of transfer profiles stored for all users * Search-Engines - number of search engines available for use * Themes - number of frontend themes available for use * Languages - number of languages supported * Docroot Disk Usage - current disk space usage for the torrentflux-b4rt installation on the webserver * Version - current active version of this torrentflux-b4rt installation The following superadmin pages can also be opened from the tf-b4rt stats column if logged in as a superadmin: * Transfer Bulk Ops * Processes * Maintenance * Backup * Log * Misc * About See the manual section on TODO_LINK: Superadmin Operations for more info on these items. o Database Details * Type - the type of database currently being used * Host - the fully qualified domain name of the database host * Name - the name of the database being used with this installation * Username - the username used to access the database * Persistent Connection - whether or not persistent connections are used to connect to the database o Other Stats * OS - the type of operating system this installation is installed on * PHP-Version - the version of PHP used by the web component on this webserver * sessions - whether or not session support is built into PHP (required) * pcre - whether or not Perl Compatible Regular Expression support is built into PHP (required) * sockets - whether or not socket support is built into PHP (required for fluxd) * safe_mode - whether PHP is running in safe mode or not (must be off) * allow_url_fopen - whether PHP allows the fopen function to operate with remote URLs (must be on) * register_globals - whether variables are registered globally in PHP (must be off) * imagetypes - the image types supported by GD; GD support must be built into PHP and at least one of GIF, JPEG or PNG image types must be supported for image-display (pies, captcha). The following software requirement checks can also be run from the 'Other Stats' column if logged in as a superadmin: * Check PHP-Web * Check PHP-CLI * Check Perl See the manual section on TODO_LINK: 'Superadmin Operations - Checking software requirements' for more info on these items. Server options (server) Torrentflux-b4rt path configuration The following paths must be configured for torrentflux-b4rt to operate correctly: o Transfer Parent Path The main torrentflux-b4rt parent path (). This directory is used to store all files used in the day to day operation of torrentflux-b4rt. The folder must be writable by the webserver user and ideally owned by the webserver user. Files and folders stored/used by the parent path include: * Storage for downloaded transfers: Content downloaded by torrentflux-b4rt will be downloaded into / if the use of home directories is enabled. If home directories are not enabled, downloaded content will be saved instead into the path specified by the 'Incoming' path instead. See TODO_LINK: Admin/Server section on 'Home Directories' * Transfer control files Files used internally by torrentflux-b4rt to control the download of individual transfers are stored in the /.transfers folder. These files include: o .stat files - a stat file is created when a transfer is injected into torrentflux-b4rt. The stat file is updated when a transfer is running with information such as how much data has been transferred, what percentage of the transfer has completed, how many seeds/peers the transfer has and other items of information. The stat file is then read by the torrentflux-b4rt internals to display the status of the transfer in the frontend. o .pid files - a pid file (process id file) is created when a transfer is started. The file contains the process id number of the transfer's process. The pid file is used as an indication of whether or not a transfer is running and to forcefully stop the transfer in the event that it becomes uncontrollable for some reason. o .log files - a log file is created for each transfer when the transfer is started. The logfile contains information specific to that transfer as it runs over time. o .cmd files - a cmd file is created when torrentflux-b4rt has to send a command to a running transfer. The transfer's client polls the .transfer folder regularly for new cmd files and if it finds one, it will read the command from the cmd file and act upon it. The lifetime of a cmd file should be very short since the file is deleted as soon as the command is executed. * Client cache files Cache files used by BitTorrent Mainline, Transmission and BitTornado are stored in the .bittorrent, .BitTornado and .transmission folders under . * Fluxd control files Files used for the control of fluxd are contained in the /.fluxd directory. Files include: o fluxd-error.log - any error output from fluxd o fluxd.log - standard output from fluxd o fluxd.pid - process id of currently running fluxd service o fluxd.sock - socket file used to communicate with fluxd Additional directories may be created under the .fluxd directory for use by the fluxd modules, particularly the Qmgr and Rssad modules. * Fluazu control files Files used for the control of the fluazu component of torrentflux-b4rt. * Torrentflux-b4rt template cache files If template caching is used to display the frontend HTML, template cache files are stored in the /.templateCache folder. * RSS cache files If RSS feeds are added via the RSS admin page, a cache of the feeds is stored in /.rsscache. This speeds up display of RSS feed contents in the frontend and takes the strain off the remote server where the RSS feed is fetched from. o Document Root Path The Document Root path of the installation. The folder must be readable by the webserver user. This is the directory where you installed torrentflux-b4rt on the webserver and it should be detected/reported automatically by torrentflux-b4rt. Binary path configuration Torrentflux-b4rt integrates with many third party applications to make performing operations on transferred files seamless from the frontend. For this integration to work, the associated applications must of course be installed correctly first. For the best results you should use the distribution management system for your particular operating system to install the applications - apt, rpm, etc on linux, the ports systems on BSD. Once the applications required are installed, the paths to the binaries must be set correctly on the server admin page for the integration of that application to work correctly. There are various methods to find the location of the binary on the server: o Use 'which': The 'which' command can be executed in a shell to display the full path to an application if it exists: shell> which unrar /usr/local/bin/unrar o Using 'locate': The 'locate' utility allows you to search quickly for files on your server containing a string you specify: shell> locate unrar /usr/local/bin/unrar /usr/local/share/doc/unrar /usr/local/share/doc/unrar/license.txt -snip- Note: you must have a locate database built to be able to use the locate command. See the manpage for locate on your system - 'man locate'. o Using your package management system: Most package management systems include a utility that can describe what files are installed by a package. For example on FreeBSD, the 'pkg_info' utility can be used with the -L switch to describe what files are installed by a package: shell> pkg_info -L unrar-3.70.b7,4 Information for unrar-3.70.b7,4: Files: /usr/local/bin/unrar /usr/local/share/doc/unrar/license.txt /usr/local/share/doc/unrar/readme.txt The following binary paths are configured on the server admin page: o transmissioncli Transmission is a torrent client which can be used as an alternative to bittorrent or bittornado. Release-Tarballs include a cli- version of transmissioncli written to be used with torrentflux-b4rt. This version has only some additions specific to tfb-operation and is using an unmodified "libtransmission". (exact version of libtransmission can be found in the file transmission.revision or in help- page of transmissioncli) The modified transmission source can be found in the 'clients/transmission' folder - once extracted, build and install it to your desired location. It must be built and installed on the system on which you are running it before it can be used. o wget Wget transfers can be controlled using torrentflux-b4rt. o uudeview uudeview is required for the operation of the nzbperl component of torrentflux-b4rt. o php This is the commandline (cli) PHP binary, not to be confused with the PHP web installation! You must have a working cli php binary for many features of torrentflux-b4rt to work correctly. Note that the php cgi binary WILL NOT work as a replacement to the php cli binary. On most OS's, the package management system will allow you to install a php cli binary as well as a web based php component (mod_php/php cgi binary). See your package management package database for info. o python Python is used by the BitTorrent and BitTornado torrent clients and is requisite for the most basic operation of torrentflux-b4rt as a torrent controller. There are various additional python related dependencies required for BitTorrent to work fully, see the README file in the torrentflux-b4rt distribution root directory for more info. o perl Perl is used by various features in torrentflux-b4rt. There are various perl related dependencies required for these features to work fully, see the README file in the torrentflux-b4rt distribution root directory for more info. o grep Basic userland binary that is included in most modern Unix type OS's. o awk Basic userland binary that is included in most modern Unix type OS's. o du Basic userland binary that is included in most modern Unix type OS's. o unzip Unzip is used in the directory manager frontend in torrentflux-b4rt for extracting zip archives on the server. Unzip can be found in most package management systems on Unix type systems. o cksfv cksfv is used in the directory manager frontend in torrentflux-b4rt for checking the integrity of transferred content against an included .sfv file. Cksfv can be found in most package management systems on Unix type systems. o vlc VLC can be used to stream avi content directly from the torrentflux-b4rt server where the content is located. VLC can be found in most package management systems on Unix type systems. o unrar Unrar is used in the directory manager frontend in torrentflux-b4rt for extracting zip archives on the server. Unrar can be found in most package management systems on Unix type systems. Operating system specific configuration There are a small number of applications that are specific to different operating systems - applications that only exist on one type of OS. The OS specifics, by OS, are as follows: o Linux: * loadavg Used to determine server load average for display in torrentflux-b4rt frontend stats. * netstat Used to determine network connection stats for display in torrentflux-b4rt frontend. netstat is a native app on Linux and the path should be detected automatically. o BSD: * sockstat Used to determine network connection stats for display in torrentflux-b4rt frontend. sockstat is a native app on BSD and the path should be detected automatically. The reason for the requirement of sockstat on BSD instead of netstat is that the functionality of BSD's netstat does not work identically to that of Linux's netstat. Sockstat instead returns the information required by torrentflux-b4rt correctly. Transfer client options (transfer) Overview The transfer admin page allows you to configure options for various transfer clients in torrentflux-b4rt. Since there are various clients supported in torrentflux-b4rt, the transfer admin section is split into subsections for each 'type' of client - bittorrent, azureus (a special case of bittorrent in torrentflux-b4rt), wget, nzbperl and other settings common to all transfers. In the admin section, a legend or key is used to refer to each type of client. The legend is as follows: B = BitTornado T = Transmission M = Bittorrent Mainline A = Azureus The client type that a setting applies to on the transfer admin page is indicated in brackets, so for example if a certain setting applies only to BitTorrent Mainline and BitTornado, the setting will have the following after it: (B + M) where B represents BitTornado and M represents Mainline. Keep this in mind when configuring settings on the transfer admin page. BitTorrent specific settings The BitTorrent specific settings are as follows: o Default BitTorrent Client Set the client to use by default to start torrent transfers. This option determines which bittorrent client should be used by default when torrents are started. o Torrent Metainfo Client Set the client to use to decode torrent meta data. This option determines which metainfo client is used to display information encoded within a .torrent file. This information is displayed primarily in 'details' tab of the transfer settings window for a torrent specific transfer. o Extra Commandline Options (B+T+M) This option allows you to specify any additional commandline options for the BitTornado/Mainline or Transmission clients that aren't covered elsewhere in the torrentflux-b4rt transfer admin settings page. o Max Upload Rate (B+T+M+A) Set the default value for the max upload rate per transfer (0 for no limit). This option allows you to set a global default for the maximum upload rate in kB/sec. Note: ----- This limit applies only to individual transfers, so if you set a maximum upload rate here of 10 and you have 5 torrents running in torrentflux-b4rt, potentially your total maximum upload rate will be 50 kB/sec. o Max Download Rate (B+T+M+A) Set the default value for the max download rate per transfer (0 for no limit). This option allows you to set a global default for the maximum download rate in kB/sec. Note: ----- As with the upload rate - this limit applies only to individual transfers, so if you set a maximum download rate of 10 and you have 5 torrents running in torrentflux-b4rt, potentially your total maximum download rate will be 50 kB/sec. o Max Upload Connections (B+M) Set the default value for the max number of upload connections per transfer (0 for no limit). This option determines how many concurrent upload connections a single torrent process will initiate. This option can be useful if you have a large number of torrents running and need to restrict the number of open sockets you use. o Max Connections (B+M) Set the maximum number of concurrent connections allowed. This option determines the total concurrent connections for both upload and download. Again, this is useful if you need to restrict the total number of network connections to/from your machine due to resource limitations. o Port Range (B+T+M) Set the default values for the for port range (min - max). Note: ----- One port is required per torrent; ensure the port range is large enough for the maximum number of torrents you will be running. The port range you set here should be allowed by any firewall you use, either on the server itself or at the network perimeter (ie on your modem router). As mentioned, be sure to make the port range large enough for your needs. One port is required for each transfer that you run, so if you run 10 torrents be sure to set the port range minimum and maximum at least 10 ports apart. When choosing Azureus as transfer-client the port-setting has no affect. Azureus uses a single port set in the used Azureus-Server. o Rerequest Interval (B+M) Set the default value for the rerequest interval to the tracker (default 1800 seconds). This setting allows you to control how frequently the torrent client will contact the torrent tracker with updates about how much data has been transferred and other information related to the transfer. Be careful when changing this value as it puts extra load onto the remote server running the tracker. o Default Torrent Completion Activity (B+T+M+A) Select whether or not a torrent should keep seeding when download is complete (please seed your torrents). This setting allows you to control what happens when a torrent has finished downloading all the data you requested. Setting it to 'die when done' will have the torrent stop after it's completed; 'keep seeding' will carry on seeding until you reach the percentage ratio you specify for the torrent to stop (see below). Please bear in mind it is generally considered polite to continue seeding until you at least meet a 100% / 1:1 ratio for a torrent - ie when you have uploaded as much as you have downloaded. o Default Percentage When Seeding Should Stop (B+T+M+A) Set the default share percentage at which torrents will die if 'Keep Seeding' is selected as completion activity above ('0' will seed forever). This setting is only applicable when 'Keep Seeding' is specified as the default action to take when a torrent is completed. The option determines at what percentage sharing ratio a transfer should stop. For example if you set this to 200 (percent), then the torrent will continue seeding after it completes until you have uploaded twice as much as you downloaded. This option is very useful for private trackers who require that you maintain a certain minimum sharing ratio. If for example the default minimum share ratio to maintain 'power user' level on a particular tracker is 1.05 you can ensure that this ratio is kept up by using the 'default percentage when seeding should stop' option and set it to 105 (percent). o Enable Cumulative Sharekill (B+T+M+A) Recalculate the sharekill value passed to clients on restart based on the total amount uploaded - ie including previous sessions transfer totals. This option allows you to keep track of your sharing ratio over a number of transfer sessions for a given transfer. For example, you start a torrent and it reaches a 50% sharing ratio and then you stop it. Without 'enable cumulative sharekill', if you restart the torrent the ratio will drop back down to 0% again and you will have lost track of how much you have seeded the torrent over the two sessions. Instead, if cumulative sharekill is enabled, when restarted the torrent will display 50% - ie the amounts transferred in the last session are remembered. o Enable File Priority (B) Allow users to select which files from a torrent to download. This option allows your users to be able to pick out individual files from a torrent and have only those files download. This can be very useful for example when you have a torrent for a complete season of a show but you only want to grab the first 2 episodes. By using file prioritization you can do just that, grab only the individual files you want. o Superseeder (B) Set superseeder setting on torrent start by default. This option determines if the superseeder setting is on by default for all torrents that are started. Superseeding is an optimisation concept that allows pieces of a torrent to be uploaded quickly and efficiently using as little bandwidth as possible *when initially seeding a torrent*. For general seeding - ie when you are not the initial seeder - superseeding definitely should not be used. See: http://www.bittornado.com/docs/superseed.txt for more info. o Skip HashCheck (B+M) Skip hash checking by default when starting torrents. This option allows you to skip hash checking when torrents are started up. Generally a client will run a hash check on downloaded data to verify the integrity of it whenever the torrent is restarted. However by using this option you can disable this checking. This option can be useful when you are seeding many large torrents whose content you are certain has not changed and you need to restart them all for some reason (after a server reboot for example) but don't want to go through the time consuming process of having hash checking performed on each and every torrent. Disabling hash checking will speed up the restart process here and get the torrents all seeding quickly. *However*, generally you should NOT disable hash checking. Fluazu specific settings and operation Overview The fluazu settings page is accessed by clicking on the 'Edit Fluazu Settings' link on the 'transfer' admin page. On the edit fluazu settings page you can start and stop fluazu, view log, process and version info and configure fluazu settings. Settings can also be changed for the fluazu daemon on the fly whilst it is running. Starting and stopping fluazu To start the fluazu daemon, click the 'Start Fluazu' button. The daemon will be started in the background on the server and the status of the 'Edit Fluazu Settings' page will change to 'Fluazu Started'. A number of configuration options for Azureus will also be displayed to allow you to change these via fluazu. To stop the fluazu daemon, click the 'Stop Fluazu' button. The daemon will be stopped in the background on the server and the status of the page will change to 'Fluazu Off'. Configuring azureus settings via fluazu After fluazu has been started, a number of azureus options can be changed dynamically from the 'Edit Fluazu Settings' page. Making changes to these options will send a command to the backend azureus server to make the change. The Azureus settings that can be changed via the 'Edit Fluazu Setting' page are as follows: o Max Active Torrents Maximum torrents to run at the same time. o Max Active Torrents When Only Seeding Maximum torrents to run at the same time when there are only seeding torrents running - ie when not leeching anything. o Max Connections Global Maximum number of connections for all torrents running. o Max Connections Per Torrent Maximum number of connections for each individual torrent. o Max Download Speed KBs Maximum download speed for all torrents. o Max Downloads Maximum number of downloads to run consecutively. o Max Upload Speed KBs Maximum upload speed for all torrents. o Max Upload Speed When Only Seeding KBs Maximum upload speed to allow when only seeding - ie when not leeching o Max Uploads Maximum number of uploads to run consecutively o Max Uploads Seeding Maximum number of uploads to allow when seeding. Viewing information about fluazu - logs, processes, version To view the fluazu log entries, click on the 'logs' link. A new page will open with the current fluazu logfile in it. To view the process listing information for the fluazu daemon, click on the 'ps' link. A new page will open containing the process listing info if available. To view the version information for the currently installed fluazu daemon, click the 'version' link. A new page will open containing the version details. Configuring fluazu The following options are configured on the 'Edit Fluazu Settings' page: o Host Host of Azureus-server (currently only localhost is supported). o Port Port of Azureus-server (XML/HTTP, default: 6884). o Secure Use secure connection to azureus. o Username Username to use when connecting to Azureus-server. o Password Password to use when connecting to Azureus-server. Wget specific settings The wget specific settings are as follows: o Enable Wget Set who can use wget. By default torrentflux-b4rt is set to allow all users to use the wget functionality. If you wish to restrict access to wget, you can do so here. o Limit Download Rate Set the default value for the max download rate per transfer (0 for no limit). o Limit Number of Retries Set the max number of retries to attempt (0 for no limit). When accessing a URL resource using wget and the URL is unavailable for some reason, this option specifies how many times wget should continue to retry getting the resource. o Enable Passive FTP Enable/disable "passive" transfer mode for FTP. In passive ftp transfer mode, the transfer client determines the port it uses to communicate with the remote server. In active mode, the server determines the ports used to communicate. Changing the transfer mode can help with communication problems because of restrictive firewalls - the subject is beyond the scope of this document. Nzbperl specific settings The requirements for using nzbperl can be checked by clicking on the 'nzbperl Requirements Check' link. The requirements checker script for nzbperl will run in a new window and list all the elements required to run nzbperl and whether your current server installation meets those requirements. The nzbperl specific settings are as follows: o Enable Nzbperl Set who can use nzbperl. By default access to the nzbperl functionality is disabled. If you wish to change access rights to nzbperl, you can do so here. o Use Subdirectories Download nzbperl content into separate subdirectories. By default nzbperl will download all content into the master nzb directory. If you wish to have content downloaded into individual subdirectories for each transfer, you can do that here. o Bad File Action Set the action to perform on finding a bad entry in the nzb. By default nzbperl will drop any bad files downloaded and attempt to re-transfer them. This option can be changed here. o Download Rate Set the default value for the max download rate per transfer (0 for no limit). o Server Set the NNTP server nzbperl should connect to. o Username Set the username to use when connecting to your NNTP server. o Password Set the password to use when connecting to your NNTP server. o Connections The number of simultaneous connections to the NNTP server nzbperl will create. Note: You can only run conn/server_max nzb downloads at once. o Threads Use threading. Note: Enable only if your Perl installation supports threads. o Extra Commandline Options Any extra commandline options you wish to pass to the nzbperl process can be set here. Refer to the nzbperl documentation for more information on this TODO_LINK:nzbperl website Common settings The common settings available for configuration are: o Enable 0000 Umask (B+T+M+W+N) Enable/disable setting umask to 0000 when starting a client. Note: Resulting permissions of created files will be 777 - readable, writable and executable by everyone. Umasking refers to the default file permissions that should be given to a newly created file. This option will set the umask to 0000 which will give all files created by all transfer processes a default permission so the files are readable/writable by everyone. See the manpage for 'sh' for more info on umask. o Use Nice (B+T+M+W+N) Set the nice level to use for transfer processes. Note: The highest nice level - 19 - gives processes the lowest possible priority over other processes on the server. The nice utility is a feature of Unix type OSs that allows you to adjust the priority of a process. The higher a process's 'nice' value is the less priority it has with respect to access to OS system resources - memory paging, CPU access, etc. By setting a high nice value you are being 'nice' to the other processes on a server. This option is useful in the case you have a multi-purpose server and you don't want torrentflux-b4rt created processes to take all the resources up - setting a high nice value here will effectively give other processes on the webserver higher priority. Transfer control settings (control) Overview The 'control settings' tab ('control') on the admin pages allows you to specify settings related to the control of transfers in torrentflux-b4rt. Configuration The settings available on the 'control' tab are as follows: o Customize Transfer Settings Define who can customize transfer settings. This option allows you to determine who can modify the transfer settings when starting a transfer - ie max upload/download rate, max connections, completion activity, port configuration, etc. Access to the transfer settings customization functionality can be configured as follows: * Only Admins - only admins can modify transfer settings. * All Users - all users can modify transfer settings. * Disabled - customization of transfer settings is disabled. o Transfer Profiles Define who can use transfer profiles. Transfer profiles allow users to configure different profiles for different transfer requirements. TODO_LINK: see user operation section - Transfer profile management Access to the transfer profile functionality can be configured as follows: * All Users - all users can create and use the transfer profile functionality. * Only Predefined - only predefined transfer profiles can be used. Create transfer profiles as admin first. * Only Admins - only admins can create and use transfer profiles. * Disabled - transfer profile functionality is disabled. o Enable Client Chooser When enabled, allow users to choose which transfer client to use. o Enable Save Path Chooser When enabled, displays a directory tree to allow users to downloaded transfers to any existing folder under their home directory. With this option enabled, each recursive subdirectory within the user's configured home directory will be displayed in a directory tree list, up to 'max depth' levels deep. The user can then choose one of those directories as the location to save newly transferred content to. o Save Path Chooser Max Depth Set the maximum depth of subfolders to display in the save path chooser directory tree (set to '0' to display all subfolders). If 'enable save path chooser' is enabled, the list of directories displayed in the save path chooser will drill down by default as far as necessary to display all recursive folders. If you have a large number of complex folder structures within the user's home directories, you can change the depth to which the 'save path chooser' drills down by changing this option. Web application frontend options (webapp) Overview The 'WebApp Settings' (webapp) tab on the admin pages allows you to configure settings related to the torrentflux-b4rt frontend. Configuration The configuration options for the webapps tab are as follows: o Select Authentication Type Select which authentication method torrentflux-b4rt uses for user login. This option allows you to decide how users will authenticate to login to the torrentflux-b4rt frontend. There are five different options to choose from: * Form Auth Standard form based authentication. This is the default authentication method. Users will have to complete and submit a login form with their username and password at the start of each new browser session to be able to login to the frontend. * Form Auth + Cookie Standard form based authentication using an 'autologin' cookie (expires after 30 days). This method is similar to the default 'Form Auth', except that the user will have the option to check a checkbox to allow them to stay logged in across browser sessions - 'Remember Me' functionality. This method uses a client side cookie to store the autologin information. Information is stored using a hashing algorithm so that details are not directly readable in plain text. * Form Auth + Image Standard form based authentication using image based captcha validation (user must enter the characters displayed in a dynamically created image to validate). This option enables the use of Captchas as an added form of protection against automated brute force attacks. Using captchas, the user is required to type in the characters displayed in a dynamically generated image before being allowed to login. This is required the first time the user browses to the torrentflux-b4rt frontend in any given browser session. * Basic Auth Use HTTP Basic Authentication scheme (browser will handle user/password input). This option uses the standard HTTP basic authentication method to log users in. The torrentflux-b4rt login page sends a 'HTTP/1.0 401 Unauthorized' HTTP header to the browser/user agent which should prompt the browser to display a username/password dialogue box for the user to enter their credentials in. When this dialogue box is submitted, the credentials are then compared to the credentials stored in the torrentflux-b4rt database. If the credentials match, the user is logged in. * Basic Auth + Passthrough Pass the credentials of a user authenticated externally via basic auth to the webapp. This method can be used when authentication is to be performed against another user database other than the default torrentflux-b4rt db - for example using the apache webserver's built in authentication modules or some third party authentication module. Using this method, the webserver is responsible for performing the authentication initially. If the credentials are accepted by the webserver, they are then passed on to the torrentflux-b4rt login mechanism where the credentials are again checked, this time against the torrentflux-b4rt database. If this check is successful, the user is logged in. Note: ----- To logout from torrentflux-b4rt whilst using the 'Basic Auth + Passthrough' method, the user must end the current browser session - ie terminate all instances of the current web browser session. This has the effect of logging the user out - when the user starts a new browser session and browses to the torrentflux-b4rt frontend, they will be required to login again. TODO_LINK: Link to some basic auth guide, apache site or apache week? o Basic Authentication Realm Specify the realm name to use if Basic Authentication method is used. This option sets which realm to use when using basic authentication methods. A realm defines a particular area of a website that the basic authentication scheme protects or applies to. The realm name configured here will be displayed in the basic auth dialogue box displayed when a user logs in. o Default Page Title Specify the default page title. This is the default page title displayed in the HTML title tags for the torrentflux-b4rt index page. Web browsers will typically display the text contained in the HTML title tags for a web page in the title bar of the browser window. o Enable Personal Settings Allow users to change their personal settings. This option allows users to modify their personal settings via the 'Profile' page. TODO_LINK: user ops, Changing what to display in the frontend o Display Torrentflux-B4rt Site Link When enabled, will display a small link to the Torrentflux-b4rt website at the bottom of all pages. o Drivespace Bar Style Select the styling of the drivespace bar in the frontend. There are two different styles of drivespace to choose from - tf and xfer. The 'tf' style bar displays a drivespace bar on the index page where the length of the bar indicates how much disk space has been used on the hard disk mount point where the .transfers folder is located. The amount of free space in MB/Gb and as a percentage of the total is also displayed in text next to the drivespace bar. The 'xfer' style bar displays a drivespace bar where the length of the bar indicates how much disk space is left available (instead of how much is actually used in the case of the 'tf' style bar). o Transfer Statistics Update Method Choose the method used to update the transfer statistics window. The 'Stats' page for a transfer - displayed by clicking on the transfer in the transfer list and then clicking the 'Stats' tab - is automatically updated to display stats in near real time. The method used to update the stats can be set using this option. There are two options - AJAX or HTML Meta Refresh. AJAX is the default update method. Tip: ---- AJAX updates uses less bandwidth since only the relevant data in the stats page is transferred. Alternatively, the HTML Meta Refresh update method will transfer the complete stats webpage from the webserver using a little more bandwidth than AJAX. o Transfer Statistics Update Interval Specify the interval in seconds between updates in the transfer statistics window. o Resolve Hostnames In Transfer Window Hosts Tab Whether to resolve transfer peer hostnames to IP addresses in the Hosts tab of the transfer window - selecting Hostnames will add load to the server. By default, torrentflux-b4rt does not resolve IP addresses (ie 1.2.3.4) into fully qualified domain names (ie example.com). This option enables the resolution of IP addresses to domain names. Note: ----- This option increases the load on the server, both in terms of CPU processing and network resources and should be used with caution especially on servers with a large number of transfers running at the same time. o Server Monitor Update Interval Specify the interval in seconds between updates in the Server Monitor window. The server monitor displays statistics relating to the webserver running torrentflux-b4rt. This option defines how often the server monitor window is updated. For more information on the server monitor, see: TODO_LINK: user ops, Opening the server monitor o Hide Referer When Following Links When enabled, referer information will not be forwarded to websites visited by clicking on links within torrentflux-b4rt. This option is enabled by default and stops the browser sending the URL of the page from which the user came from - the 'referer' URL. o Default Theme Select the default theme. Note: This theme will also be used for the login screen when a form based authentication method is used. Note: ----- This option will set the default theme for all new users. Current user's theme settings will not be modified. o Default Language Select the default language. Note: ----- This option will set the default language for all new users. Current user's language settings will not be modified. o Days To Keep Logged Audit Actions Number of days that audit actions will be held in the database. By default, audit actions are stored in the database for 30 days. After this time the entries are pruned from the database. For more information on viewing Audit Actions, see: TODO_LINK: user ops, Viewing activity history admin ops, Activity / Audit / Event viewer (activity) o Minutes To Keep User Online Status Number of minutes after ending a browser session that user status changes to offline. Torrentflux-b4rt displays a list of all users currently 'online' at any one time in the 'users' panel in the frontend. This option sets how long in minutes after a user ends a browser session to mark the user as being 'offline'. The default is 3 minutes. o Minutes To Cache RSS Feeds Number of minutes to cache RSS XML feeds on the server. Torrentflux-b4rt caches RSS feeds for users to browse via the 'RSS Torrents' link on the index page to save on network traffic and processing. This option allows you to configure how long to wait before requesting new copies of the RSS feeds to 'refresh' the cache. The default is to cache RSS feeds for 20 minutes. Warning: -------- Setting the cache to a very low value so the RSS feeds are refreshed more often can lead to a ban on your IP address if the server where the RSS feed is requested from sees you as 'hammering'. You should consult the tracker website's rules before setting the cache timeout to a very low value. o Enable Template Cache Enable caching of HTML template files. Torrentflux-b4rt can cache the HTML template files displayed for users by setting this option. This can significantly improve the speed at which pages are displayed in the browser. Template caching is disabled by default. Note: ----- This option should be used with caution - if 'stale' pages or other glitches are observed when using template caching, the cache can be flushed: TODO_LINK:user ops, Flushing the template cache o Debug Level Set the debug level - higher values increase the debugging output in the logs. The verbosity of logging messages emitted by torrentflux-b4rt can be increased by setting this value higher - 0 is lowest, 2 is highest. This option is especially useful when troubleshooting the operation of torrentflux-b4rt and should be set to the highest value before requesting support. The default debugging level is '0'. o Show SQL Debug Statements SQL Errors will always be displayed but when this feature is enabled the SQL Statement that caused the error will be displayed as well. Web application index page display options (index) Overview The 'Index Settings' (index) tab on the admin pages allows you to configure settings related to the display of the torrentflux-b4rt index page in the frontend. Configuration The configuration options for the index tab are as follows: o Page Refresh Enable/disable page updates using HTML meta refresh. The index page will be refreshed using an HTML meta refresh tag when this option is enabled. Tip: ---- AJAX updates uses less bandwidth since only the relevant data in the stats page is transferred. Alternatively, the HTML Meta Refresh update method will transfer the complete stats webpage from the webserver using a little more bandwidth than AJAX. o Page Refresh Interval Interval in seconds between page refreshes. o AJAX Update Enable/disable page updates using AJAX. o Page Title AJAX Update Enable/disable update of page titles using AJAX. Tip: ---- This option is useful because torrentflux-b4rt displays various statistics in the page title, which in turn are displayed in the task bar on Windows. This makes it easy to see at a glance how transfers and the server is performing. o Users AJAX Update Enable/disable update of user list using AJAX. The user list displays which torrentflux-b4rt users are currently online. This option updates the user list dynamically using AJAX. o Transfer List AJAX Update Enable/disable update of transfer list using AJAX. The transfer list can be updated using AJAX with this option. o Silent AJAX Update Do not display any processing request messages when AJAX updates are in progress. Countdown to update timer will also not be displayed. Usually torrentflux-b4rt will display a 'Processing...' messages when an update is in effect to indicate to the user that they should not click on anything since the system is busy. This option will disable the processing messages. o AJAX Update Interval Interval in seconds between AJAX updates. o Width Width of the index page in pixels. Note: ----- If a large number of transfer list columns are selected for display, the width of the transfer list may exceed the default page width selected here. As a result, the index page width may be larger than the width selected here if you have a large number of transfer list columns on display. o Multi Uploads Enable/disable display of links for uploading of multiple files at once. This option will display links underneath the transfer file upload form to allow users to upload multiple files at a time. o Multi Upload Page Rows Number of rows of file upload fields to display on the multi uploads page. o Torrent Search Enable/disable torrent searches from the home page via third party torrent sites. o Default Torrent Search Engine Default search engine to use for torrent searches. o Display Links List Enable/disable display of admin configured list of links on the index page. The link list is configured on the 'links' admin page - see here for more info: TODO_LINK: Admin ops, Website link list management (links) o Display Users List Enable/disable display of torrentflux-b4rt users and their online status. When enabled, a list of all torrentflux-b4rt users is displayed showing their current online status. The period of time after which users are considered 'offline' is configured on the 'webapp' admin page, see here for more info: TODO_LINK: admin ops, webapp section, Minutes To Keep User Online Status o Good Looking Statistics Enable/disable display of good looking statistics - up/download speeds, connections, drivespace and server load statistics. This option enables the display of various statistics on the index page. o Good Looking Statistics Display Settings Select the items to display in the "Good Looking Statistics" panel. * Download Speed - total download speed being used by torrentflux-b4rt. * Upload Speed - total upload speed being used by torrentflux-b4rt. * Total Speed - total speed (up and down) being used by torrentflux-b4rt. * Connections - total number of transfers running. * Drive Space - total drive space remaining on the mount point where the transfers folder is located. * Server Load - the load averages for the server. Uses results from 'loadavg' on linux or 'uptime' on BSD. o Bandwidth Bars Enable/disable display of current bandwidth usage bars. When enabled, bars will be displayed to indicate the current upload and download bandwidth being utilised. The longer the bar, the more bandwidth in use. o Bandwidth Bars Style Select the style of bandwidth bar to use. There are two bar styles to choose from - tf and xfer. The tf style has a constant color, whereas the xfer style turns redder the higher the bandwidth utilization is. o Upstream Bandwidth Maximum available upstream bandwidth in kilobits per second (kbit/s) through your ISP - 1 Megabit per second (1Mbit/s) is roughly equal to 1000kbit/s. This figure is used to determine the percentage utilization of bandwidth in the bandwidth bars. You should enter the maximum available upstream bandwidth for the network connection of the server - usually this will be the max bandwidth you get from your ISP. Tip: ---- A rough guide to bandwidth figures: 1000 = roughly 1Mbit/s 512 = 512kbit/s o Downstream Bandwidth Maximum available downstream bandwidth in kilobits per second (kbit/s) through your ISP - 1 Megabit per second (1Mbit/s) is roughly equal to 1000kbit/s. This figure is used to determine the percentage utilization of bandwidth in the bandwidth bars. You should enter the maximum available downstream bandwidth for the network connection of the server - usually this will be the max bandwidth you get from your ISP. o Big Bold Drivespace Warning Enable/disable display of "Big Bold Drivespace" warning when disk space gets below 2% of total. o Only Admin Can See Other User's Transfers Enable/disable visibility of other user's transfers in regular user's transfer lists - when enabled, only admins will be able to see other user's transfers in their transfer list. o Transfer File Download Enable/disable links in the transfer list to allow users to download transfer files from the server. This option will add a link to the left of each transfer in the transfer list so that the transfer file (ie .torrent file) can be downloaded. When the link is clicked, the transfer file will be sent to the user as an attachment - ie the browser will prompt the user to save the file locally (or open it in an associated application if MIME types are configured correctly). o Display Seeding Torrents Enable/disable display of torrents in the seeding state - if enabled, when a torrent has finished leeching and moves on to seed, the torrent will be hidden from the transfer list. Hidden torrents can be viewed in the transfer list by clicking the 'Show Seeding Torrents' link under the transfer list. o Display Estimated Time To Seed Enable/disable display of estimated time until a transfer is completed in the transfer list. o Transfer List Can Be Sorted Enable/disable sorting of the transfer list - when enabled, users will be able to change the order in which the transfer list is displayed based on date added, file name, size, totals up/down, transfer status, etc. Tip: ---- To change the sort order of the transfer list, click on the column headers at the top of the transfer list. Each click on the column header will toggle sorting in ascending/descending order for that column type. For example, clicking on the 'Transfer File' column header will sort the transfer list by transfer file name alphabetically ascending (A-Z); clicking again on the 'Transfer File' column header will sort the transfer list by transfer file name alphabetically descending (Z-A). o Default Sort Order Select the default property by which the items in the transfer list should be sorted by. This is the column by which all transfers in the transfer list will be sorted by - for example, to have the transfer list automatically sorted by transfer file name alphabetically, select 'Name - Ascending'. o Transfer List Display Settings Select the types of columns to display for each transfer in the transfer list. * Owner * Size * Total Down * Total Up * Status * Progress * Down-Speed * Up-Speed * Seeds * Peers * Estimated Time * Client This option allows you to see a whole host of information directly in the transfer list without having to click on a transfer to pop up the transfer window. Note: ----- The more transfer columns you display in the transfer list, the wider the index page will grow. Take this into account especially when using a screen with lower resolutions. o Default Transfer Window Select the default page to display in the transfer window - the window which is displayed when a transfer in the transfer list is clicked on. This option allows you to choose which tab of the popup transfer window will be displayed when you click on a transfer in the transfer list. o Multi Operations Enable/disable display of the dropdown list of operations to perform on multiple transfer list items - when enabled, a list of operations (start/stop/delete/wipe/reset) will be available in a drop down list for users to perform on more than one transfer at a time. This option allows you to specify whether you want users to be able to use the multi ops feature. Multi ops allow users to select a number of transfers from the transfer list and then apply an action to all of those selected transfers only - start, stop, delete, etc. o Bulk Operations Enable/disable display of bulk operation links - when enabled, links will be displayed on the index page to allow users to control (start/stop/resume) all transfer in the transfer list at once. This option allows you to specify whether the bulk ops links will be displayed on the index page. Bulk ops allow users to perform an action on every single transfer in the transfer list at once - for example to restart all torrents in one go. o Display Server Statistics Enable/disable display of various server statistics (transfer/queue/server stats) at the bottom of the index page. o Display Network Connections Enable/disable display of total network connections on the index page. o Display Server Load Enable/disable display of 1/5/15 minute average server load on the index page. Directory / File Management options (dir) Overview The 'Dir Settings' (dir) tab on the admin pages allows you to configure settings related to the torrentflux-b4rt file and directory manager - referred to as 'dir manager' from now on. See also: TODO_LINK: user ops, dir manager section Configuration The configuration options for the dir tab are as follows: o Public Read Enable/disable public read permission for all files/folders in torrentflux-b4rt - when enabled, all files and folders within torrentflux-b4rt will be readable by all torrentflux-b4rt users. This option makes all files transferred using torrentflux-b4rt visible to all torrentflux-b4rt users - admin and normal users alike. Note: ----- This does *not* make the files automatically visible to all Unix users on the webserver where torrentflux-b4rt is installed. Tip: ---- To make downloaded files accessible to Unix users other than the webserver user - for example so a 'regular' Unix user can download the transferred files via FTP: 1. When the transfer is complete, use the 'chmod' torrentflux-b4rt functionality to change the mode of the transferred files to '777' - ie readable by everyone . 2. In the LINK_TODO:[admin.dir.move dir tab of the admin pages], add the target directory owned by the Unix user who will be downloading files via FTP as a valid move path. This will allow files to be moved from torrentflux-b4rt into the target directory. 3. Move the files out of the torrentflux-b4rt transfer directory into the target directory owned by the Unix user who will be downloading the files via FTP. Ensure the webserver user has permissions to write files to the target directory. The files should now be available for the Unix user to download via FTP. Note: ----- Any problems encountered whilst using this method will almost always come down to Unix file permissions - make sure the webserver can write to the Unix user's target directory and in turn make sure the file permissions of the moved files are sufficient for the Unix user to access them once they're moved. o Public Write Enable/disable public write permission for all files/folders in torrentflux-b4rt - when enabled, all files and folders within torrentflux-b4rt will be writable by all torrentflux-b4rt users. By default, files and folders in torrentflux-b4rt are only writable by the torrentflux-b4rt user that created them. This option overrides this so that any torrentflux-b4rt user can write to any other torrentflux-b4rt user's files/folders. Note: ----- This feature only applies to torrentflux-b4rt users - Unix users on the system will not be automatically given write permissions to torrentflux-b4rt files by enabling the 'Public Write' option in torrentflux-b4rt. Warning: -------- Enabling the 'Public Write' option is a security risk to other torrentflux-b4rt users - only enable it on a server where all torrentflux-b4rt users are 'trusted'. Of course the definition of 'trusted' will vary from one system to another. o Chmod Enable/disable the use of the chmod functionality for regular torrentflux-b4rt users - when enabled, users will be able to change the permissions on files and folders in torrentflux-b4rt to read/write/execute for everyone (777). This option will enable users to click a link in the dir manager to set the file permissions on the associated file to '777' - read/write/executable for *all Unix users*. Warning: -------- Enabling the 'Chmod' option is a system wide security risk - any Unix user on the server hosting torrentflux-b4rt will have read, write and execute permissions on files and directories chmod'ed. Sensitive files should not be chmod'ed 777 and if you do not trust your users to use the chmod functionality correctly you should not enable it. o Full Directory Listings Enable/disable complete directory listings - when enabled, full directory listings will be used including size and last modified time similar to Unix 'ls -al' output. o Make Torrent Enable/disable make torrent functionality for users - when enabled, users will be allowed to create torrent files from the contents in the directory manager. When enabled, an 'make torrent' icon will be available next to files in the dir manager so users will be able to create torrents from files and directories in the dir manager. o Default Make Torrent Client Choose the default client to use to create torrent files with. The options available are: BitTornado (tornado) or BitTorrent Mainline (mainline). o File Downloads Enable/disable file downloading from the directory manager - when enabled, users will be able to download files directly from the torrentflux-b4rt file manager. When enabled, a download icon will be displayed next to files and directories in the dir manager to allow users to download the files as a zip or tar archive - depending on the setting for 'Download Archive Type'. o Download Archive Type Choose the type of archive to use when performing file downloads - files downloaded will be archived using this archive type prior to sending. The available archive types are: zip or tar Note: ----- Ensure your operating system supports the archive type you select here. Compression is *not* used on downloaded archives. o Text/NFO Viewer Enable/disable access to the built in NFO viewer - when enabled, users will be able to view nfo/txt/log file types directly within torrentflux-b4rt. When this option is enabled, files ending in .nfo, .txt or .log will have a 'View NFO' icon next to them in the dir manager to allow users to view the (presumably text) contents directly in torrentflux-b4rt. o Unrar Enable/disable access to unrar functionality - when enabled, users will be able to use unrar to unpack rar archives directly within torrentflux-b4rt. When enabled, an 'unrar' icon will be displayed next to rar archives in the dir manager to allow users to decompress the archives directly from torrentflux-b4rt. Warning: -------- Using the unrar functionality can add excessive load on the server hosting torrentflux-b4rt. The feature should *not* be enabled on servers where resource usage is a problem or can become a problem quickly. o SFV File Checking Enable/disable access to sfv file checking functionality - when enabled, if an sfv file is present users will be able to verify the integrity of the files covered by the sfv file directly within torrentflux-b4rt. When enabled, a 'Check SFV' icon will be displayed next to any SFV files in the dir manager. Users will be able to click the link to verify the integrity of the files to which the sfv file is associated with. Info: ----- Simple File Verification (sfv) is a system whereby a cyclic redundancy check is performed on each file within a set of files and/or directories. The checksum for each file/dir is then added to the 'sfv' file. The sfv file is then transferred along with the files it is associated with so that when transfer is complete, the integrity of the files can be verified by running an sfv checker against them. In this way any corruption to the files that have occurred during transfer can be detected and any bad files retransmitted. o VLC Streaming Enable/disable access to VLC file streaming functionality - when enabled, users will be able to stream media directly from the webserver using VLC. o VLC Port Specify the port to use for VLC streaming. o File And Folder Renaming Enable/disable access for users to rename files and folders. When enabled, an 'Rename' icon is displayed next to all files and directories in the dir manager to allow users to rename files. Note: ----- This option allows users to rename files *only within the torrentflux-b4rt dir manager*. To move files away from the torrentflux-b4rt dir manager directory structure, enable the 'File And Folder Moving' option below. o File And Folder Moving Enable/disable access for users to move files and folders out of the torrentflux-b4rt directory hierarchy - when enabled, users will be allowed to move files and folders out of the torrentflux-b4rt directory hierarchy into a choice of folders elsewhere on the server. When enabled, an 'Move' icon is displayed next to all files and directories in the dir manager to allow users to move files out of the torrentflux-b4rt directory hierarchy elsewhere on the host server. This option is ideal for allowing access to files and folders for normal Unix users on the server hosting torrentflux-b4rt who don't have permission to access the torrentflux-b4rt directory hierarchy. Once transfers are complete, files can be moved away from the torrentflux-b4rt directory where they can then be accessed via FTP, Samba or any other suitable remote access protocol. o Valid File And Folder Moving Paths Specify the paths to which users are allowed to move files and folders outside of the torrentflux-b4rt directory hierarchy. List all of the folders *outside of the torrentflux-b4rt directory structure* that you want torrentflux-b4rt users to be allowed to move files and folders to. This option is redundant without enabling the 'File And Folder Moving' functionality above. Note: ----- Paths must be absolute - ie '/path/to/somefolder' instead of just 'somefolder'. Any newly created directories will not be deleted after removing a transfer from the transfer list. Ensure that the target directories have sufficient permissions for the webserver user to create files there. o Restricted Files And Folders Specify a list of patterns which, when found in a file or folder name, will not be allowed access to by users. This option is useful if you have any files that you don't want users to be able to see within the dir manager. Note: ----- Access to dot files/folders - files/folders starting with a dot - are always restricted. Configuring stats.php output options (stats) Overview The stats.php script displays statistics for various aspects of torrentflux-b4rt in a number of different output formats. For more information on using stats.php, see [TODO_LINK:'appendix, Obtaining statistics using stats.php']. The operation of the stats.php script can be configured to your requirements - these configuration options are detailed in this section. Configuration The configuration options for the 'stats' tab on the admin pages - for configuration of the stats.php script - are as follows: o Publicly Visible Stats Enable/disable publicly visible statistics - if enabled, superadmin level stats (server load, all transfer details, etc) are visible to the public without needing to authenticate. This option allows the stats.php script to be requested in a web browser and the output sent without requiring any user authentication - username/password credentials are not required to access stats output. Warning: -------- With this option enabled, full server statistics will be displayed to anyone who requests them. As a result this should be considered a security risk - only enable this option if you understand and accept that this will reveal server loads, details of transfers, usernames and their online status and so on. See the [TODO_LINK:'stats.php usage'] for more info of all information revealed. o Show Usage When Called Without Arguments Enable/disable the option to display usage/help when the stats.php script is called without any arguments in the URL. This option displays the standard usage/help output when called without any arguments. When this option is disabled, the default action to perform when stats.php is called without arguments will be to display *all* statistics - ie as if the stats.php script was called with the argument 't=all'. o Use Compression Enable/disable the use of compression by default when sending statistics - using compression uses less bandwidth but takes up more CPU time on the server By default compression is not used to send stats out from stats.php, although compression can be used by manually specifying the argument 'c=1' in the request URL to stats.php. This option specifies that stats.php will use compression by default - setting 'c=1' is not required in this case. Note: ----- The compression level used is specified in the 'Compression Level' option below. Using compression will add some additional load to the hosting server in terms of CPU resource usage. In most cases this additional load will be negligible - the benefits of reducing bandwidth consumption by using compression should be weighed up against the cost of additional server load introduced. o Compression Level Specify the level of compression to use when transferring data. Level 0 = no compression (data is sent out 'as is'), level 9 = maximum compression (data is compressed as small as possible before sending but takes up some minor extra CPU time to compress). This option determines the level of compression to use *when the stats.php script is called with the argument 'c=1' or compression is enabled on the stats admin page*. Compression levels run from 0 (lowest) to 9 (highest) - ie 0 will use no compression and 9 will use the maximum compression possible. The compression is applied using PHP's inbuilt '[TODO_LINK:@http://php.net/gzdeflate gzdeflate]' function. o Delimiting Character To Use In TXT Mode Specify the character to use for delimiting/separating fields when the format type is 'txt' - this character will be used to split one item in the output from the next. By default the ';' character is used to separate fields in the output, ie: 0.00;0.00;0.00;1;12.37 GB; 1.25, 1.03, 0.56;1;0;0;0;87 where ';' marks the end of one field and the start of another. The field separator can be changed using this option. o Send Header Fields In TXT Mode Enable/disable sending of header fields at the top of text mode output - when enabled, each of the statistics column headers will be sent out at the top of the output. By default when using txt output format mode (f=txt), the output will be sent raw without any column headers to indicate what each field of output relates to, ie: 0.00;0.00;0.00;1;12.37 GB; 1.25, 1.03, 0.56;1;0;0;0;87 With this option enabled, stats.php will also send out column headers by default whenever txt format is used, ie: Speed Down;Speed Up;Speed Total;Connections;Free Space;Load;Running;Queued;Speed Down (Percent);Speed Up (Percent);Drive Space (Percent) 0.00;0.00;0.00;1;12.37 GB; 1.25, 1.03, 0.56;1;0;0;0;87 This makes it easier to see what values represent what type of statistical information. Note: ----- Only used in txt mode. o Default Statistic Type To Send Specify the default type of statistic to send out. The default statistic type sent out is 'all'. This option allows you to change this to send out a different type of statistic by default. The options to choose from are: all, xfer, users, transfers. For more info on what is included in the output for each type of statistic, see [TODO_LINK:'the appendix section on using stats.php]. o Default Output Format Specify the default output format to use when sending statistics - rss/txt/custom xml. By default the format used when sending stats.php info out is xml. This option allows you to change the default format to use. The option to choose from are: rss, txt, xml. For more info on each type of output format, see [TODO_LINK:'the appendix section on using stats.php]. o Send As Attachment Enable/disable sending of statistics as an HTTP attachment - browser client will prompt to save the attachment as a file. By default, stats.php will display output directly in the user agent as long as the agent is configured to do so correctly. This option allows you to specify that the stats.php output will be sent to the user agent as an HTTP attachment - in most cases the user agent will then prompt the user to download the file and save it locally before viewing it. Fluxd control and configuration (fluxd) Controlling fluxd (start/stop/restart) Setting the database mode to use Setting the log level to use Transfer statistics configuration (xfer) Enabling the display of transfer stats Updating transfer stats in real time Allowing all users to view all other users stats (Re)setting the transfer stats Setting the first day of the week Setting the month day on which a month starts Search engine configuration (search) Checking for search engine updates Filtering out unwanted categories from search results Website link list management (links) Adding, editing, moving and deleting link items RSS Feed list configuration (RSS) Adding, editing and deleting RSS feeds Activity / Audit / Event viewer (activity) Filtering items listed in the activity panel Appendices Guide to automatically fetching and uploading RSS torrents to torrentflux-b4rt using fluxd Overview This guide describes the steps required to configure the fluxd daemon to automatically check RSS torrent feeds for torrents matching one or more specified patterns. When a matching torrent is found it is automatically downloaded to a directory. In turn, the fluxd daemon is configured to watch this auto download directory for new torrents. When a new torrent is found in the watch directory, the torrent is automatically injected into torrentflux-b4rt and optionally started automatically. The guide will describe the steps required to: TODO_LINK: add links to each of the sections below: * Configure the fluxd Rssad module to check RSS feeds for new torrents matching a filter and download them to a watch directory. * Configure the fluxd Watch module to check the watch directory for new torrents and automatically inject them into torrentflux-b4rt. * Configure the fluxd core and finally start fluxd. Important: ---------- The RSS feeds *MUST* be 'direct download' feeds - each item in the RSS feed must contain a direct link to the torrent file itself and not just a link to a description page for the torrent. Error messages about 'URL does not appear to contain a valid torrent file' or similar are often because the RSS feed is not a direct download feed. Configuring the Rssad fluxd module to download torrents Rssad configuration is split into three parts - filter creation, job creation and finally setting up the Rssad module to load with fluxd. These steps are covered below: * Filter creation A filter is a list of patterns that Rssad uses in a job to find and download new torrents within RSS feeds. As an example, you may have a filter called 'OS' which contains a number of patterns to match your favourite operating systems within RSS feed(s). When any of the patterns in the filter are matched, Rssad will download the torrents automatically. One filter can be applied to any number of RSS feeds, making it easy to search for the same patterns on a number of different trackers. Tip: ---- Rssad filters are applied using the PHP function preg_match() and are treated almost the same as Perl Compatible Regular Expressions (PCRE), so advanced regular expression metacharacter search patterns can be used. Note: ----- Filter patterns are case insensitive, so the pattern 'foobar' will match 'foobar', 'FOOBAR' and 'FoOBaR'. TODO_LINK:See the example filter section below for practical examples. To create a new filter: * On the 'fluxd' tab of the admin pages, click the link labelled 'Configure Rssad Filters And Jobs' in the Rssad section. * In the 'Name:' textbox on the 'Configure Rssad Filters and Jobs' page, enter the name you want to refer to the filter by. The filter name is used to identify one type of filter from another and should be easily identifiable for you. For example, you might have a filter called 'Films' which contains all the patterns of upcoming films you want to keep a watch out for. * Click 'Add Filter' - you will be taken to a page where you can add the patterns you want to search for. * On the 'Add Filter' screen, enter the first pattern you want to search for in the 'Add Filter-Entry' textbox and click 'add' to add the pattern to the 'Filter-Entries' list. Repeat this step for each pattern you want this filter to search for. * When all the patterns have been added to the filter entries list, click the 'Add Filter' button to save the filter. The filter will now be added to the list of filters available for use in Rssad jobs. * Job creation With the filter added, you can now move on to use it in an Rssad job. An Rssad job is composed of three components: * A filter - comprising of one or more patterns to search for (see above). * An RSS feed URL to apply the filter to. * A directory in which to download any torrent files to if a match is made for the pattern against the RSS feed. To create a new Rssad job: * On the 'fluxd' tab of the admin pages, click the link labelled 'Configure Rssad Filters And Jobs' in the Rssad section. * Click on the 'Add Job' button on the 'Configure Rssad Filters And Jobs' to open up the Rssad job configuration page. * On the 'Add Job' screen, enter or select the following: * In the 'Savedir' textbox, enter in the directory you want any found torrents to be saved to. The directory path should be absolute - ie '/path/to/savefolder' and not just 'savefolder'. * Check the 'Check/Create dir' checkbox if you want the 'Savedir' directory to be created automatically if it doesn't already exist. * In the 'URL' textbox, enter in the URL of the direct download torrent RSS feed you want to search in. Important: ---------- Remember, the RSS feed must be a direct download feed - ie the links in the feed are links to the torrent files themselves and not just to a description of the torrents. Verify this is the case before continuing to save headaches later! * Finally, select the filter you want to apply to the RSS feed from the 'Filter' dropdown select field. This filter will be used to search for the patterns you defined in the feed URL. * Finally, click the 'Add Job' button to add the job to the list of jobs that Rssad will run. * Configuring the Rssad module to load up in Fluxd Now the Rssad job has been added to Fluxd, all that remains is to configure Fluxd to load the Rssad module when it starts up and tell it how often to run the job. * On the 'fluxd' admin page in the Rssad section, set 'Rssad Enabled:' to 'True'. This will make Fluxd load up Rssad when it starts. * Change the 'Rssad Polling Interval:' to the time in seconds you want to wait between Rssad job runs. Important: ---------- Be careful when setting this value as some trackers may ban you if you request their RSS feeds too frequently. If in doubt, ask the administrators of the tracker how often you can check their feeds for new items. Fluxd is now configured to run the Rssad job. Note: ----- If fluxd is already running, you may need to stop and restart it for the changes to take effect. With the steps above, Fluxd is now ready to search your feed URL for the filter patterns you specified. If it finds any matching torrents in the feed, they will be downloaded and saved to the directory you set up in the job specification. If you are happy to just manually check the save directory for new torrents and inject them into torrentflux-b4rt manually, you can skip the next section on configuring the Watch module. However, if you want to use the Watch module to keep an eye on the save directory and automatically inject any new torrents it finds there - carry on reading! Configuring the Watch fluxd module to inject torrents into torrentflux-b4rt The Watch fluxd module can check a specified directory at regular intervals and if any new transfer files are found in that directory it will automatically inject the transfer into torrentflux-b4rt and optionally automatically start it. This is ideal when used in combination with the Rssad module; Rssad can automatically download any torrents found in an RSS feed into a directory that is being watched by the Watch module and in turn the Watch module can auto inject and optionally start the torrent for you. Watch configuration is split into two parts - watch job creation and configuring the Watch module to load up with fluxd: * Configure Watch Jobs To configure a watch job: * On the 'fluxd' tab of the admin pages, click the link labelled 'Configure Watch Jobs' in the 'Watch' module section. * On the 'Configure Watch Jobs' screen, click the 'Add Job' button. * On the 'Add Job' screen, enter or select the following items: * Watchdir - this is the directory that you want the Watch module to keep an eye on for new transfer files. The directory path should be absolute - ie '/path/to/savefolder' and not just 'savefolder'. * Check the 'Check/Create dir' checkbox if you want the 'Watchdir' directory to be created automatically if it doesn't already exist. * User - select the user you want to be owner of any transfer files injected by this job. * Transfer Profile - select the transfer profile that will apply to any transfers injected by this job. TODO_LINK: See the section on transfer profiles in the user ops section for more info. * Finally, click on the 'Add Job' button to save the job. * Configuring the Watch module to load with Fluxd Watch is now configured to watch the directory you specified for new transfer files and automatically inject them as the user you specified and with the transfer profile you set. All that remains is to have the Watch module load up with fluxd below: * On the 'fluxd' admin page under the 'Watch' section, set 'Watch Enabled:' to 'True'. This will make Fluxd load up Watch when it starts. * Change the 'Watch Polling Interval:' to the time in seconds you want to wait between Watch job runs - ie if you set this to '120' then Fluxd/Watch will check every 2 minutes for new transfer files and if it finds any, auto inject them into torrentflux-b4rt. Fluxd is now configured to run the Watch job. Note: ----- If fluxd is already running, you may need to stop and restart it for the changes to take effect. With the steps above, Fluxd is now ready to watch the directory you specified for new transfer files and auto inject them. Watch is ideally used in conjunction with Rssad to search for torrents, download them and drop them into a directory that the Watch module is watching - from where Watch can then auto inject the torrent. However Watch can be used on it's own to monitor directories for new transfer files - for example you might always download your torrent files into a certain directory and then have Watch auto inject them. Starting fluxd Finally after the Fluxd modules have been configured and loaded above, you can now actually start up the Fluxd daemon. The daemon will autoload all the modules you configured and the jobs will run at their scheduled intervals. To start Fluxd: * On the 'fluxd' admin page, modify any 'core' options as required: * Database Mode - by default this is set to PHP + fluxcli.php but 'Perl + DBI/DBD' can be used alternatively. Note: ----- Running in perl mode is MUCH faster than PHP. However, you may need to install additional perl modules to run in Perl mode - check the 'check requirements' tab on the superadmin pages to see if your installation meets the requirements (TODO_LINK). * Loglevel - this only needs changing if you experience problems and need to debug or troubleshoot fluxd operation. The default loglevel is '0' (which doesn't mean 'no output', just 'normal' level of output!). Higher levels of loglevel increase the verbosity of fluxd output. * Finally, click on the 'Start fluxd' button to start the daemon in the background. The status light should change to green with the message 'fluxd Running' along with the process id of the fluxd process. Example Rssad filter patterns This section contains a few examples of Rssad filters - regular expressions - and examples of what each filter will match. Notes are provided for each example. * Pattern: ^foobar.*' Matches: foobar foOBAr foobarblimp foobar... * Pattern: foobar.*s07.* Matches: foobarblimpS07E01 foobarblimpS07E99 foobarblimpS07Complete Note: Useful for matching anything from season 07 of the 'foobar' show. * Pattern: foobar.*s0[1-3].* Matches: foobarS01E01 foobarS02E01 foobarS03E01 Note: Useful for matching anything from seasons 01 through 03 of the 'foobar' show. * Pattern: foobar.*s01e0[1-9].* Matches: foobarS01E01 foobarS01E02 foobarS01E09 Note: Useful for matching anything from season 01, episodes 01 through 09. * Pattern: (?!toast)foobar.* Does *NOT* match: foobartoast toastfoobar foobarblimptoast Note: Useful for matching something that does not contain a certain string. The patterns above will only match if the string does not contain 'toast' in it. Using fluxcli.php on the command-line Running fluxcli.php from a cron job to auto fetch RSS feed items Obtaining statistics using stats.php Overview Torrentflux-b4rt can output a variety of detailed statistical information using TODO_LINK:[ link to stats.php script, but only for the distribution html manual NOT for the tfb main website version of manual - is this possible with quickbook? 'the stats.php script']. The stats can be displayed in various formats suitable for different usage purposes - plain text for viewing/usage on the commandline or in a web browser, RSS for reading in an RSS feed reader for regular updates on the torrentflux-b4rt installation or even customized XML formats for specialised/custom use. To view detailed usage instructions, call the stats.php script with the single argument 'usage': http://example.com/stats.php?usage Specifying the type of output to display The type of output displayed by the stats.php script is determined by the 't' argument used in the query string of the request URL. For example, to display statistics relating to the server you would browse to the following page: http://example.com/torrentflux-b4rt/stats.php?t=server The valid options for the 't' argument are: o all Displays all types of statistics listed below - server, xfer, users, transfers. http://example.com/stats.php?t=all o server Displays current statistics about the torrentflux-b4rt server, including: * speedDown The total download bandwidth being utilised. * speedUp The total upload bandwidth being utilised. * speedTotal The total bandwidth being utilised (upload and download combined). * cons The total number of network connections. * freeSpace The available disk space left in MB/Gb. * loadavg The server load average. * running The number of transfers current in the 'running' state. * queued The number of transfers current in the 'queued' state. * speedDownPercent Download speed as a percentage of maximum available download bandwidth. * speedUpPercent Upload speed as a percentage of maximum available upload bandwidth. * driveSpacePercent Available drive space remaining as a percentage of total drive space. http://example.com/stats.php?t=server o xfer Displays data transfer statistics, including: * xferGlobalTotal The global transfer total (all users). * xferGlobalMonth The current month's global transfer total. * xferGlobalWeek The current week's global transfer total. * xferGlobalDay The current day's global transfer total. * xferUserTotal The current user's transfer total. * xferUserMonth The current user's transfer total for the current month. * xferUserWeek The current user's transfer total for the current week. * xferUserDay The current user's transfer total for the current day. http://example.com/stats.php?t=xfer o users Displays the current online status for each torrentflux-b4rt user. http://example.com/stats.php?t=users o transfers Displays statistics for all transfers currently being handled by torrentflux-b4rt. The statistics displayed for each transfer include: * running Whether the transfer is running or not. * speedDown The current download speed of the transfer. * speedUp The current upload speed of the transfer. * percentDone The percentage of the transfer currently completed. * sharing The share ratio for the current transfer as a percentage. * eta The estimated time until the transfer is complete. * seeds The number of seeds currently connected. * peers The number of peers currently connected. * downCurrent The current download bandwidth being utilised for the transfer. * upCurrent The current upload bandwidth being utilised for the transfer. The following statistics are also displayed for the 'transfers' argument: * downTotal The current total download bandwidth being utilised. * upTotal The current total upload bandwidth being utilised. * cons The current total number of network connections. http://example.com/stats.php?t=transfers o transfer Displays statistics for a single transfer specified using the 'i' argument. http://example.com/stats.php?t=transfer&i=foobar.torrent Specifying the format of the stats.php output The type of format to use when displaying output from the stats.php script is determined by the 'f' argument used in the query string of the request URL. For example, to display statistics relating to the server in RSS format, you would browse to the following page: http://example.com/torrentflux-b4rt/stats.php?t=server&f=rss The valid options for the 'f' argument are: o xml Displays output in XML format. o rss Displays output in RSS 0.91 format. Suitable for receiving regular updates in an RSS feed reader. o txt Displays output in plain text format. Suitable for parsing with custom command line scripts. Sending column headers in text mode stats.php output The 'h' argument to the stats.php specifies that header columns should be sent out with the output from the stats.php script (only in text format). For example, the plain text output generated with the request URL: http://example.com/torrentflux-b4rt/stats.php?t=server&f=txt might look like this: 0.00;0.00;0.00;1;12.37 GB; 1.25, 1.03, 0.56;1;0;0;0;87 which is just the raw server statistics. Instead if we add on the argument 'h=1' to indicate we want column headers displayed as well - so the request URL looks like this: http://example.com/torrentflux-b4rt/stats.php?t=server&f=txt&h=1 then the output displayed will look like this: Speed Down;Speed Up;Speed Total;Connections;Free Space;Load;Running;Queued;Speed Down (Percent);Speed Up (Percent);Drive Space (Percent) 0.00;0.00;0.00;1;12.37 GB; 1.25, 1.03, 0.56;1;0;0;0;87 This makes it easier to tell what each field/value of the output represents. Tip: ---- The field separator - ';' in the example above - can be changed on [TODO_LINK:admin.stats 'the Admin Ops, Configuring stats.php page']. The stats.php script can also be configured to send out header columns by default - again on [TODO_LINK:admin.stats 'the Admin Ops, Configuring stats.php page']. Sending stats.php output as HTTP file attachments The 'a' argument to the stats.php request URL allows you to specify that you want the output to be sent as an HTTP attachment. This has the effect in most web browsers of prompting the user for a location to download the file to or open the file up in an associated application if MIME types are configured correctly. To have output sent as an attachment, use 'a=1' as an argument to the stats.php request URL - for example: http://example.com/torrentflux-b4rt/stats.php?t=server&a=1 This request URL would send out the server statistics as an HTTP attachment, prompting the user to save the file to disk or open it in an external application. Sending compressed stats.php output The 'c' argument to the stats.php request URL allows you to specify that the output from stats.php should be compressed when sending. Most modern web browsers automatically 'deflate' the compressed content on receipt so it's human readable. Compression saves bandwidth at the cost of adding some small additional CPU resource cost on the server. To have output compressed when sending, use 'c=1' as an argument to the stats.php request URL - for example: http://example.com/torrentflux-b4rt/stats.php?t=server&c=1 This request URL would compress the server statistics output before sending it out. Tip: ---- The level of compression to use can be configured on the [TODO_LINK:admin.stats 'the Admin Ops, Configuring stats.php page']. Configuring stats.php A number of options can be configured to control the way the stats.php script operates. Refer to the [TODO_LINK:admin.stats 'Admin Ops, configuring stats.php section of the manual.]