Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- ##################################################################
- # A Project of TNET Services, Inc
- #
- # Title: WiFi_Check
- # Author: Kevin Reed (Dweeber)
- # dweeber.dweebs@gmail.com
- # Project: Raspberry Pi Stuff
- #
- # Copyright: Copyright (c) 2012 Kevin Reed <kreed@tnet.com>
- # https://github.com/dweeber/WiFi_Check
- #
- # Purpose:
- #
- # Script checks to see if WiFi has a network IP and if not
- # restart WiFi
- #
- # Uses a lock file which prevents the script from running more
- # than one at a time. If lockfile is old, it removes it
- #
- # Instructions:
- #
- # o Install where you want to run it from like /usr/local/bin
- # o chmod 0755 /usr/local/bin/WiFi_Check
- # o Add to crontab
- #
- # Run Every 5 mins - Seems like ever min is over kill unless
- # this is a very common problem. If once a min change */5 to *
- # once every 2 mins */5 to */2 ...
- #
- # */5 * * * * /usr/local/bin/WiFi_Check
- #
- ##################################################################
- # Settings
- # Where and what you want to call the Lockfile
- lockfile='/var/run/WiFi_Check.pid'
- # Which Interface do you want to check/fix
- wlan='wlan0'
- pingip='192.168.1.1'
- ##################################################################
- echo
- echo "Starting WiFi check for $wlan"
- date
- echo
- # Check to see if there is a lock file
- if [ -e $lockfile ]; then
- # A lockfile exists... Lets check to see if it is still valid
- pid=`cat $lockfile`
- if kill -0 &>1 > /dev/null $pid; then
- # Still Valid... lets let it be...
- #echo "Process still running, Lockfile valid"
- exit 1
- else
- # Old Lockfile, Remove it
- #echo "Old lockfile, Removing Lockfile"
- rm $lockfile
- fi
- fi
- # If we get here, set a lock file using our current PID#
- #echo "Setting Lockfile"
- echo $$ > $lockfile
- # We can perform check
- echo "Performing Network check for $wlan"
- /bin/ping -c 2 -I $wlan $pingip > /dev/null 2> /dev/null
- if [ $? -ge 1 ] ; then
- echo "Network connection down! Attempting reconnection."
- /sbin/ifdown $wlan
- /bin/sleep 5
- /sbin/ifup --force $wlan
- device_name=$HOSTNAME
- echo $device_name
- IP=`hostname -I`
- echo $IP
- contents="$device_name has the IP of $IP"
- url=''
- generate_post_data()
- {
- cat << EOF
- {
- "content": "$contents"
- }
- EOF
- }
- echo $(generate_post_data)
- curl -XPOST -H "Content-type: application/json" -d "$(generate_post_data)" $url
- else
- echo "Network is Okay"
- fi
- echo
- echo "Current Setting:"
- /sbin/ifconfig $wlan | grep "inet addr:"
- echo
- # Check is complete, Remove Lock file and exit
- #echo "process is complete, removing lockfile"
- rm $lockfile
- exit 0
- ##################################################################
- # End of Script
- ##################################################################
- #!/bin/bash
- device_name=$HOSTNAME
- echo $device_name
- IP=`hostname -I`
- echo $IP
- contents="$device_name has the IP of $IP"
- url='https://discordapp.com/api/webhooks/621116566012166144/v5gwVC8S2j5E5UrR_vpHMrv4HgIGM9Pk-saP5gRndkvZW0JyAkIADBACAvSbVdAHz3EB'
- generate_post_data()
- {
- cat <<EOF
- {
- "content": "$contents"
- }
- EOF
- }
- echo $(generate_post_data)
- curl -XPOST -H "Content-type: application/json" -d "$(generate_post_data)" $url
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement