phoneonline.sh
#!/bin/sh
##########################################################################################
function urlencode() {
if ! command -v curl >/dev/null 2>&1; then echo -E "$1"; return; fi
local str="$1"
curl -Gso /dev/null --data-urlencode "var=$str" "http://localhost/?" -w "%{url_effective}\n" | sed 's/^.*var=//'
}
function writeCache(){
CACHE_KEY="$1" ; CMD_URL="http://kv.netsite.cc/setx"
URL_DATA="k=${CACHE_KEY}&v=$(urlencode "$2")"
curl -L -m 5 -s -o /dev/null -d "$URL_DATA" "$CMD_URL"
}
function readCache(){
CACHE_KEY="$1" ; CMD_URL="http://kv.netsite.cc/get"
REQ_URL="$CMD_URL?key=${CACHE_KEY}"
curl -L --connect-timeout 3 -m 5 -s "$REQ_URL"
}
##########################################################################################
ONLINE_SAVE_KEY='example_key'
while true; do
if grep -E "192.168.2.158\s+0x1\s+0x2" /proc/net/arp > /dev/null 2>&1; then
echo "iPhone real online"
writeCache "$ONLINE_SAVE_KEY" "true"
else
echo "iPhone disconnect"
writeCache "$ONLINE_SAVE_KEY" "false"
fi
sleep 1
done