#!/usr/bin/with-contenv bashio preventconfig=$(bashio::cache.get preventconfig) if $preventconfig; then bashio::log.info "Prevent USE device from config" exit 0 fi autouse=$(bashio::cache.get autouse) if $autouse; then bashio::log.info "AutoShare All enabled, will not use devices from configuration" exit 0 fi if bashio::config.has_value 'usbdevices'; then options=$(bashio::api.supervisor GET "/addons/self/options/config") usbdevices_json=$(echo $options | jq -c '.usbdevices[]') readarray -t usbdevices < <(echo "$usbdevices_json") mapfile -t inuse_devices < <(/usr/bin/vh_list_inuse_devices) for usbdevice in "${usbdevices[@]}"; do use=$(echo $usbdevice | jq '. | if .use then true else false end') device=$(echo $usbdevice | jq '.device | tostring') deviceid=$(echo $device | sed 's/.*(\(.*\)).*/\1/g') #server_serial=$(/usr/bin/vh_server_serial_number ${deviceid%.*}) #device2=$(/usr/bin/vh_usb_product_vendor $deviceid) #deviceid2="${server_serial}.${device2}" #bashio::log.info "GURKA-${inuse_devices[@]}" if [[ ${inuse_devices[@]} =~ .*${deviceid}.* ]]; then if ! $use; then # bashio::log.info "AUTO USE DEVICE,${deviceid} - already in use" # else result=$(/usr/bin/vhclient -t "STOP USING,${deviceid}") bashio::log.info "STOP USING,${deviceid} - ${result}" fi else if $use; then result=$(/usr/bin/vhclient -t "AUTO USE DEVICE,${deviceid}") bashio::log.info "AUTO USE DEVICE,${deviceid} - ${result}" # else # bashio::log.info "STOP USING,${deviceid} - not in use" fi fi #if $use; then #bashio::log.info "AUTO USE DEVICE,${deviceid}" #/usr/bin/vhclient -t "AUTO USE DEVICE,${deviceid}" #bashio::log.info "AutoShare ${deviceid2} on" #/usr/bin/vh_editini AutoShare $deviceid2 1 #else #if [[ "${inuse_devices[@]}" =~ "$device" ]]; then #bashio::log.info "STOP USING,${deviceid}" #/usr/bin/vhclient -t "STOP USING,${deviceid}" #bashio::log.info "AutoShare ${deviceid2} off" #/usr/bin/vh_editini AutoShare $deviceid2 0 #fi #fi done fi