facebooktwittertwitterRSS csatorna

Weblapkészítést, keresőoptimalizálást vállalok. Bővebben...

TP-Link TL-WR1043ND QSS gombjának beállítása Openwrt alatt

Speeedfire, 2010-05-16 23:31:04

Wifi ki- és bekapcsolása a gomb megnyomására:

nano /etc/hotplug.d/button/qss

if [ "$BUTTON" = "BTN_1" ] ; then
if [ "$ACTION" = "pressed" ] ; then
WIFI_RADIOSTATUS=`uci -q get wireless.@wifi-device[0].disabled`
if [ $WIFI_RADIOSTATUS == '1' ]; then
echo 1 > /sys/class/leds/tl-wr1043nd\:green\:qss/brightness && \
uci set wireless.@wifi-device[0].disabled=0 && \
logger "Wi-Fi radio is on."
else
echo 0 > /sys/class/leds/tl-wr1043nd\:green\:qss/brightness && \
uci set wireless.@wifi-device[0].disabled=1 && \
logger "Wi-Fi radio is off."
fi
wifi
fi
fi

 

Transmission elindítása, leállítása a gomb nyomására:

nano /etc/hotplug.d/button/qss

if [ "$BUTTON" = "BTN_1" ] ; then
if [ "$ACTION" = "pressed" ] ; then
TORRENT_STATUS=$(ps | grep transmission | grep -v grep)
if [ "$TORRENT_STATUS" == "" ]; then
echo 1 > /sys/class/leds/tl-wr1043nd\:green\:qss/brightness && \
/etc/init.d/transmission start && \
logger "Torrent is running."
else
echo 0 > /sys/class/leds/tl-wr1043nd\:green\:qss/brightness && \
/etc/init.d/transmission stop && \
logger "Torrent is stopping."
fi
fi
fi

 

Összetettebb példa program:

#!/bin/sh

if [ "$BUTTON" = "wps" ] ; then
if [ "$ACTION" = "pressed" ] ; then
STATUS=$(mount | grep sda1 | grep -v grep)
if [ "$STATUS" == "" ]; then
/etc/init.d/fstab start
/etc/init.d/transmission start
/etc/init.d/vsftpd start
/etc/init.d/samba start

echo 1 > /sys/class/leds/tl-wr1043nd\:green\:qss/brightness   

logger "Elindítva minden!" 

else 

/etc/init.d/transmission stop
/etc/init.d/vsftpd stop
/etc/init.d/samba stop

for i in `mount | grep "/dev/sd" | cut -f 1 -d " "`; do
umount $i
logger -t qssbutton $i umounted
done

for PARTITION in `tail +2 /proc/swaps | awk '{ print $1 }'`
do
logger -t qssbutton "swapoff $PARTITION"
swapoff $PARTITION 2>&1
done

logger -t qssbutton "Most mar lehuzhatod a vinyot!!!"
echo 0 > /sys/class/leds/tl-wr1043nd\:green\:qss/brightness
fi
fi
fi

Hogyan deríthetjük ki a gomb nevét?

1. Hozz létre egy filet a /etc/hotplug.d/button/ alatt mondjuk test néven az alábbi tartalommal:


logger "Ez a gomb neve: $BUTTON"
logger "Ez a gombnyomáskor bekövetkezett esemény: $ACTION"

2. Nyomd be a gombot
3. Nézd meg a logot a logread paranccsal (vagy azt a logfile-t a tail -f paranccsal ahova irányítottad a routered logját)
4. Használd egészséggel a változók által adott értékeket
5. Természetesen töröld vagy írd át kedved szerint a test file, mert ez minden gombnyomáskor lefut majd.

 

A mostani verziókban már wps a gomb neve. 

 

Források:

Forrás

Forrás

 

Tóth Szabi

 

Csatolmányok
ÁllományMéret
125-wif500 B
125-transmissio460 B
125-butto92 B

(#1) commanderlee 6 éve
commanderlee
Hsz: 1
(Tag)

Apró hiba van a transmission-os változatban.

Itt:
if [ "$TORRENT_STATUS" == "" ]; then
Csak 1 db '=' jel kell, mert az eredmény nem szám, hanem string.

Amúgy hasznos a post és az egész blog is, csak így tovább!


(#2) pali.kis 6 éve
pali.kis
Hsz: 1
(Tag)

Kedves Toth szabi!

Először is szeretném megköszönni azt a sok jól összeszedett leírást ami az oldaladon található!
Ezek segítségével én is fel tudtam tenni az open-wrt-t a routeremre, beállítottam a transmissiont, és hogy a qss gomb-al ki be tudjam kapcsolni azt.
Viszont az open-wrt oldalán van egy leírás miszerint lehet egy gombhoz rövid és hosszú nyomvatártásos eseményt is rendelni.
Úgy szerettem volna beállítani az én qss gombomat hogy rövid nyomásra a transmissiont hosszú nyomvatartásra a wifit (és a hozzá tartozó ledet) kapcsolja ki és be.
Sajnos elég kezdő vagyok ezekben a dolgokba, és em igazán sikerült összehoznom ezt a módosítást.
Az lenne a kérdésem hogy tudnál-e segíteni nekem ebben?
Köszönettel: Kis Pál

http://wiki.openwrt.org/doc/howto/hardware.button#examples
Ezen a linken található a leírás.


Szólj hozzá:

A hozzászóláshoz belépés/regisztráció szükséges.