domoticz.hotplug (1056B)
1 #!/bin/sh 2 3 . /lib/functions.sh 4 5 [ "$SUBSYSTEM" = "tty" ] || exit 0 6 7 add() { 8 local cfg="$1" 9 local product serial symlink usbif 10 11 [ -c "/dev/$DEVICENAME" ] || return 12 13 config_get product "$cfg" product 14 config_get serial "$cfg" serial 15 config_get symlink "$cfg" symlink 16 config_get usbif "$cfg" usbif 17 18 [ -z "$product" -a -z "$serial" -a -z "$usbif" ] && return 19 20 . "/sys/$DEVPATH/device/../uevent" 21 SERIAL="$(cat /sys/$DEVPATH/device/../../serial)" 2>/dev/null 22 USBIF="$(echo $DEVPATH | awk -F/ 'BEGIN {i=3}; /ACM/ {i=2}; END {print $(NF-i)}')" 23 24 [ -n "$product" -a "$product" != "$PRODUCT" ] && return 25 [ -n "$serial" -a "$serial" != "$SERIAL" ] && return 26 [ -n "$usbif" -a "$usbif" != "$USBIF" ] && return 27 28 chgrp domoticz "/dev/$DEVICENAME" 29 chmod g+rw "/dev/$DEVICENAME" 30 31 [ -n "$symlink" ] && ln -s "/dev/$DEVICENAME" "/dev/$symlink" 32 } 33 34 remove() { 35 local cfg="$1" 36 local symlink 37 38 config_get symlink "$cfg" symlink 39 40 [ "/dev/$DEVICENAME" = "$(readlink /dev/$symlink)" ] && rm "/dev/$symlink" 41 } 42 43 config_load "domoticz" 44 config_foreach "$ACTION" device