From cb2c3f2bb0e0fee355f1d0a6dc87eff6e20451dd Mon Sep 17 00:00:00 2001 From: P2P-Next Date: Mon, 9 May 2011 16:36:04 +0300 Subject: [PATCH] transmission support --- ControlScripts/client_script_mappings | 32 ++++++++++++++++--- .../detect_complete_transmission.sh | 3 ++ .../start_transmission_leecher.sh | 4 +-- .../transmission/start_transmission_seeder.sh | 4 +-- ControlScripts/clients/transmission/test.sh | 19 +++++++++++ ControlScripts/globalconfig | 10 +++--- 6 files changed, 59 insertions(+), 13 deletions(-) create mode 100755 ControlScripts/clients/transmission/test.sh diff --git a/ControlScripts/client_script_mappings b/ControlScripts/client_script_mappings index 95edac4..668515f 100644 --- a/ControlScripts/client_script_mappings +++ b/ControlScripts/client_script_mappings @@ -42,10 +42,34 @@ start_client() clients/transmission/start_transmission_seeder.sh & return $! ;; + "transmission_seeder_uTP") + rm -f ~/.config/transmission/settings.json + ln -s $TRANSMISSION_ABS_PATH/../settings_uTP.json ~/.config/transmission/settings.json + clients/transmission/start_transmission_seeder.sh & + return $! + ;; + "transmission_seeder_no-uTP") + rm -f ~/.config/transmission/settings.json + ln -s $TRANSMISSION_ABS_PATH/../settings_no-uTP.json ~/.config/transmission/settings.json + clients/transmission/start_transmission_seeder.sh & + return $! + ;; "transmission_leecher") clients/transmission/start_transmission_leecher.sh & return $! ;; + "transmission_leecher_uTP") + rm -f ~/.config/transmission/settings.json + ln -s $TRANSMISSION_ABS_PATH/../settings_uTP.json ~/.config/transmission/settings.json + clients/transmission/start_transmission_leecher.sh & + return $! + ;; + "transmission_leecher_no-uTP") + rm -f ~/.config/transmission/settings.json + ln -s $TRANSMISSION_ABS_PATH/../settings_no-uTP.json ~/.config/transmission/settings.json + clients/transmission/start_transmission_leecher.sh & + return $! + ;; "tribler_seeder") clients/tribler/start_tribler_seeder.sh & return $! @@ -98,7 +122,7 @@ stop_client() "hrktorrent_seeder" | "hrktorrent_leecher" | "hrktorrent_seeder_limit" | "hrktorrent_leecher_limit") clients/hrk/stop_hrk.sh ;; - "transmission_seeder" | "transmission_leecher") + "transmission_seeder" | "transmission_seeder_uTP" | "transmission_seeder_no-uTP" | "transmission_leecher" | "transmission_leecher_uTP" | "transmission_leecher_no-uTP") clients/transmission/stop_transmission.sh ;; "tribler_seeder") @@ -141,7 +165,7 @@ detect_complete_client() "hrktorrent_seeder" | "hrktorrent_leecher" | "hrktorrent_seeder_limit" | "hrktorrent_leecher_limit") clients/hrk/detect_complete_hrk.sh ${log_file} ;; - "transmission_seeder" | "transmission_leecher") + "transmission_seeder" | "transmission_seeder_uTP" | "transmission_seeder_no-uTP" | "transmission_leecher" | "transmission_leecher_uTP" | "transmission_leecher_no-uTP") clients/transmission/detect_complete_transmission.sh ${log_file} ;; "tribler_seeder") @@ -183,8 +207,8 @@ parse_client_log() DEBUG echo "hello hrktorrent_seeder" clients/hrk/parse_hrk.sh ${log_folder} ${log_file} ;; - "transmission_seeder" | "transmission_leecher") - clients/swift/parse_swift.sh ${log_folder} ${log_file} + "transmission_seeder" | "transmission_seeder_uTP" | "transmission_seeder_no-uTP" | "transmission_leecher" | "transmission_leecher_uTP" | "transmission_leecher_no-uTP") + clients/transmission/parse_transmission.sh ${log_folder} ${log_file} ;; "tribler_seeder") clients/tribler/parse_tribler.sh ${log_folder} ${log_file} diff --git a/ControlScripts/clients/transmission/detect_complete_transmission.sh b/ControlScripts/clients/transmission/detect_complete_transmission.sh index b94d98c..2d9be20 100755 --- a/ControlScripts/clients/transmission/detect_complete_transmission.sh +++ b/ControlScripts/clients/transmission/detect_complete_transmission.sh @@ -27,6 +27,9 @@ while true; do if cat $LOG_FILE | grep 'State changed from "Incomplete" to "Complete"' &> /dev/null; then echo "Torrent transfer finished" exit 0 + elif cat $LOG_FILE | grep 'Seeding' &> /dev/null; then + echo "Torrent transfer finished" + exit 0 fi if cat $LOG_FILE | grep "Segmentation fault" &> /dev/null; then diff --git a/ControlScripts/clients/transmission/start_transmission_leecher.sh b/ControlScripts/clients/transmission/start_transmission_leecher.sh index 205682f..69068fb 100755 --- a/ControlScripts/clients/transmission/start_transmission_leecher.sh +++ b/ControlScripts/clients/transmission/start_transmission_leecher.sh @@ -27,8 +27,8 @@ else source ../ClientWorkingFolders/TmpLogs/node_config fi -rm ~/.config/tramsmission/resume/* -rm ~/.config/tramsmission/torrents/* +rm ~/.config/transmission/resume/* +rm ~/.config/transmission/torrents/* cd $WORKING_FOLDER_REL_PATH/Regular/ diff --git a/ControlScripts/clients/transmission/start_transmission_seeder.sh b/ControlScripts/clients/transmission/start_transmission_seeder.sh index cc7129b..39de395 100755 --- a/ControlScripts/clients/transmission/start_transmission_seeder.sh +++ b/ControlScripts/clients/transmission/start_transmission_seeder.sh @@ -27,8 +27,8 @@ else source ../ClientWorkingFolders/TmpLogs/node_config fi -rm ~/.config/tramsmission/resume/* -rm ~/.config/tramsmission/torrents/* +rm ~/.config/transmission/resume/* +rm ~/.config/transmission/torrents/* cd $WORKING_FOLDER_REL_PATH/TorrentsAndData/ diff --git a/ControlScripts/clients/transmission/test.sh b/ControlScripts/clients/transmission/test.sh new file mode 100755 index 0000000..eba7dc2 --- /dev/null +++ b/ControlScripts/clients/transmission/test.sh @@ -0,0 +1,19 @@ +# Clean and parse the log file +cat $1 | tr '\r' '\n' | grep '^Seeding, uploading' | awk -F '[ \t()]+' ' +BEGIN { + rel_time = 0; +} + +{ + percent = 100; + if($11 == "KiB/s") + upspeed = $10; + else if($11 == "MiB/s") + upspeed = $10 * 1024.0; + else if($11 == "GiB/s") + upspeed = $10 * 1024.0 * 1024.0; + else + upspeed = "?"; + printf "%d %.2f %.2f %.2f\n", rel_time, percent, upspeed, dlspeed; + rel_time++; +}' diff --git a/ControlScripts/globalconfig b/ControlScripts/globalconfig index c281317..1f6e42c 100644 --- a/ControlScripts/globalconfig +++ b/ControlScripts/globalconfig @@ -5,25 +5,25 @@ # # This file is included by the rest of the scripts in the P2P-Testing-Infrastructure -TESTING_INFRASTRUCTURE_ABS_PATH="/home/george/P2P-Next/P2P-Testing-Infrastructure" +TESTING_INFRASTRUCTURE_ABS_PATH="/home/p2p/P2P-Next/P2P-Testing-Infrastructure" # P2P_NEXT_REL_PATH is relative to Utils folder - used by sync_* scripts P2P_NEXT_REL_PATH="../../" # The / at the end is important for rsync to work properly -P2P_NEXT_ABS_PATH="/home/george/P2P-Next/" +P2P_NEXT_ABS_PATH="/home/p2p/P2P-Next/" # TEST_INFRASTRUCTURE_REL_PATH is relative to ControlScripts folder - used by run_scenario.sh TEST_INFRASTRUCTURE_REL_PATH="../../P2P-Testing-Infrastructure" # No / at the end is important for rsync to work properly -TEST_INFRASTRUCTURE_ABS_PATH="/home/george/P2P-Next/P2P-Testing-Infrastructure" +TEST_INFRASTRUCTURE_ABS_PATH="/home/p2p/P2P-Next/P2P-Testing-Infrastructure" # TRIBLER_REL_PATH is relative to ControlScripts folder TRIBLER_REL_PATH="../../TriblerBranches/proxyservice-5.3" -TRIBLER_ABS_PATH="/home/george/P2P-Next/TriblerBranches/proxyservice-5.3" +TRIBLER_ABS_PATH="/home/p2p/P2P-Next/TriblerBranches/proxyservice-5.3" # TRIBLER_UTIL_REL_PATH is relative to Util folder TRIBLER_UTIL_REL_PATH="../../TriblerBranches/proxyservice-5.3" -TRIBLER_UTIL_ABS_PATH="/home/george/P2P-Next/TriblerBranches/proxyservice-5.3" +TRIBLER_UTIL_ABS_PATH="/home/p2p/P2P-Next/TriblerBranches/proxyservice-5.3" # HRK_PATH HRK_ABS_PATH="/home/p2p/p2p-clients/hrktorrent/hrktorrent" -- 2.20.1