21 Kwietnia 2025 15:36:12
Nawigacja
· Strona Główna
· Forum

· Tomato by Shibby
· FreshTomato


Wątki na forum
Najnowsze dyskusje
· Netia IPv6
· [S] Ubiquity Edgerou...
· Multiroom N z wykorz...
· [MOD] FreshTomato-AR...
· Nowe routery: UX, UC...
· asus rt-ax86u pro z ...
· Zmiana OpenVPN na wi...
· [S]UBIQUITI EdgeRout...
· Zaawansowana konfigu...
· ByPass VPN dla wybra...
· [MOD] FreshTomato-MI...
· Komputer Serwer
· Ciągle rozłączani...
· Wersje Freshtomato d...
· FreshTomato- WAN inn...
· Pojemniki na FreshTo...
· [K] Obudowę Kompute...
· Asus RT-AC3200 overc...
· Asus RT-AX86U PRo re...
· Usuwanie plików z d...
Najpopularniejsze obecnie wątki
· Netia IPv6 [3]
· [S] Ubiquity Edge... [0]
Ankieta
Jaki procesor posiada twój router?

Broadcom MIPSEL
Broadcom MIPSEL
36% [152 głosów]

Broadcom ARM
Broadcom ARM
52% [219 głosów]

Atheros
Atheros
5% [22 głosów]

Marvell
Marvell
1% [4 głosów]

Ralink
Ralink
1% [3 głosów]

Intel/AMD/VIA
Intel/AMD/VIA
1% [5 głosów]

Żaden z powyższych
Żaden z powyższych
4% [15 głosów]

Ogółem głosów: 420
Musisz zalogować się, aby móc zagłosować.
Rozpoczęto: 02/02/2015 09:38
Twoje IP
3.135.198.159
Zobacz wątek
OpenLinksys » :: OPROGRAMOWANIE :: » OpenWrt - firmware
 Drukuj wątek
Podpisanie funkcji "Start/Pauzuj torrenty" w Transmission do przycisku
doman18
Chciałbym do przycisku QSS w moim TP-linku podpisać funkcję startowania/pauzowania torrentów żeby w przypadku bardzo obciążonej sieci wyłączać ściąganie a w przypadku kiedy nie korzystam w ogóle z niej to włączać ściąganie. Mam kilka kompów więc nie chce mi się za każdym razem włazić na webgui żeby to zrobić a często zapominam żeby włączyć ściąganie gdy idę spać.

Przeczytałem TEN tutorial oraz PRZYKŁADOWY SKRYPT a także wiem że w linii poleceń pauzę/start torrentów obsługuje się za pomocą 2 linijek

transmission-remote --torrent all --start
transmission-remote --torrent all --stop


Problem tkwi w tym że nie bardzo mam pomysł jak podpisać te 2 funkcje pod jeden przycisk. Chodzi o to że skrypt musi wykonywać pierwszą linijkę jeżeli odczyta że Transmission jest spauzowany albo drugą jeżeli odczyta że że nie jest całkowicie spauzowany (przynajmniej jeden torrent działa). Nie mogę znaleźć jednak polecenia sprawdzającego status torrentów w programie lub nie umiem takiego polecenia zrobić. Drugą możliwością jest odczytanie statusu przycisku, czy był wcześniej przyciśnięty. Jednak nie widzę w tutorialu sprawdzenia takiego czegoś. Poza tym po restarcie routera, gdy wcześniej wyłączymy ściąganie to skrypt uruchamiając się od nowa może błędnie założyć że torrenty się ściągają. Więc to takie strzelanie w płot, może trafię w żerdź może nie. Najlepiej byłoby gdyby można było ustawić przycisk na 2 statusy - włącz wyłącz ale nie widzę takiej możliwości w skryptach z tutoriala.
Wreszcie trzecią możliwością jest zapisywanie statusu do pliku. Np jeżeli wciskamy przycisk i funkcja odczyta w pliku 0, to znaczy że torrenty się ściągają, więc pauzujemy i zapisujemy do pliku 1. Jeżeli wciśniemy przycisk drugi raz, to funkcja napotka 1 w pliku więc znaczy że torrenty są spauzowane więc należy je uruchomić. Takie coś działało by bez względu czy zrestartujemy router czy nie bo status w pliku przecież nie był by kasowany przy restarcie. Jedyny (w sumie mały) mankament to taki że wtedy już nie mógłbym obsługiwać globalnego startu/pauzy przez webgui bo się nie zgodzi z zapisanym w pliku statusem.

Na razie teoretyzuje bo nie jestem programistą więc będę musiał jeszcze przyjrzeć się przykładowi żeby samą budowę skryptu obczaić. Co o tym myślicie, czy macie lepszy pomysł jak to zrobić, a może gdzieś popełniłem błąd w samych założeniach.
Edytowany przez doman18 dnia 25-03-2011 12:48
 
shibby
rozumiem ze mówimy o tplinku 1043nd

Cytat

#!/bin/ash

#skonfiguruj##
AUTH="-n login:haslo"
GUI_PORT="9091"
##############

QSS=`cat /sys/class/leds/tl-wr1043nd:green:qss/brightness`
TR_WC=`transmission-remote $GUI_PORT $AUTH -l | grep % | wc -l`
TR_STOPED=`transmission-remote $GUI_PORT $AUTH -l | grep % | grep "Stopped" | wc -l`

if [ "$ACTION" = "pressed" ]; then
if [ "$BUTTON" = "BTN_1" ]; then
if [ ! "$TR_WC" == "0" ]; then
if [ "$TR_WC" == "$TR_STOPED" ]; then
transmission-remote $GUI_PORT $AUTH --torrent all --start
echo "1" > /sys/class/leds/tl-wr1043nd:green:qss/brightness
else
transmission-remote $GUI_PORT $AUTH --torrent all --stop
echo "0" > /sys/class/leds/tl-wr1043nd:green:qss/brightness
fi
fi
fi

if [ "$BUTTON" = "BTN_0" ]; then
#akcja dla wcisniecia reset
echo " "
fi
fi


w auth wpisujesz swoj login i haslo do transmission oraz ustawaiosz gui_port jaki tam masz.
calosc zapisujesz jako plik /etc/hotplug.d/button/10-qss

restart i patrzysz czy dziala Wink

torrenty sie sciagaja = dioda qss swieci. nacisniecie przycysku qss gasi diode i stopuje torty. ponowne nacisniecie wlacza diode i startuje torty.
Router: Unifi Cloud Gateway Max
Switch: Unifi USW-Lite-16-PoE
Switch: Unifi USW-Flex-Mini - szt. 2
Wi-Fi: Unifi U6-Lite - szt. 2
Proxmox VE: i5-13400T, 64GB RAM, 2x 512GB NVMe, 3x 2TB SSD
VM #1: Synology SA6400
VM #2: Debian, WWW
VM #3: Home Assistant OS
 
Przejdź do forum
Zaloguj
Wprowadź adres e-mail lub nazwę użytkownika

Hasło



Nie masz jeszcze konta? Zarejestruj się.

Zapomniałeś/aś hasła?
Aktualnie online
· Gości online: 68

· Użytkowników online: 0

· Łącznie użytkowników: 24,126
· Najnowszy użytkownik: goldi111
Czat
Musisz się zalogować, aby opublikować wiadomość.

servee
24-01-2025 18:18
Światłowód + mediakonwenter. Ekranowana skrętka nie jest wymagana, taką sytuację już zastałem. Zamierzam ją wymienić na zwykłą. Da to coś?

shibby
17-01-2025 07:45
a ta skrętka ekranowana o której piszesz to jakiś wkopany przewód do bramy/furtki/kamer
y zewn? Jak tak to jego też przez zabezpieczenie podepnij.

shibby
17-01-2025 07:43
no to pora zabezpieczyć kable LAN zabezpieczeniami przeciwprzepięciow
ymi - tanio nie będzie. Jak przychodzi ci internet? Skrętką czy światłem? Jak skrętką to zacząłbym od tego.

servee
12-01-2025 12:52
Ponownie padły mi wszystkie porty sieciowe w routerze - to już 3-ci w 6 m-cy. Podejrzany to ekranowana, nieuziemiona skrętka - 12mb. Czy jest to możliwe?

dawidt
21-12-2024 01:09
siema Grin

Maniek91PL
06-11-2024 22:37
dzięki !Grin

maxikaaz
29-10-2024 14:27
@Maniek91PL - Administration=> Admin Access, i tam masz "Allow Wireless Access" do zaznaczenia

Maniek91PL
26-10-2024 22:07
siemka! ktoś przypomni co się ustawiało jeśli nie mogę wejść od strony wifi do tomato? od lan działa

overflow2
04-10-2024 17:34
Kupowałem Asusy n10u albo n12d1 ale nie widzę ich, chyba już nie produkują, Chodzi o coś nowego i taniego. Transfery niewielkie.

maxikaaz
04-10-2024 09:38
@overflow2 patrząc po dostępności funkcji w nowych kompilacjach, to chyba nawet WRT54G/GL jeszcze ma OpenVPN, albo jakiś odpowiednik... zależy, na jakie transfery liczysz.

114,508,289 unikalnych wizyt