Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ///INIT
- #!/bin/bash
- FAILS=0
- SERVER="pislave.local"
- test=$(cat /sys/class/net/wlan0/carrier)
- if [ $test -eq '1' ]
- then
- while true; do
- ping -c 1 $SERVER >/dev/null 2>&1
- if [ $? -ne 0 ] ; then #if ping exits nonzero...
- echo "Waiting for slave"
- else
- FAILS=0
- echo "RUNNING"
- sudo python ./server.py
- break
- fi
- done
- fi
- if [ $test -eq '0' ]
- then
- echo "RUNNING CONFIG"
- sudo python ./wificonfig.py
- fi
- ///WIFICONFIG PY
- from bluetooth import *
- import subprocess
- import os
- import time
- server_sock=BluetoothSocket( RFCOMM )
- server_sock.bind(("",PORT_ANY))
- server_sock.listen(1)
- port = server_sock.getsockname()[1]
- uuid = "94f39d29-7d6d-437d-973b-fba39e49d4ee"
- advertise_service( server_sock, "SampleServer",
- service_id = uuid,
- service_classes = [ uuid, SERIAL_PORT_CLASS ],
- profiles = [ SERIAL_PORT_PROFILE ],
- # protocols = [ OBEX_UUID ]
- )
- print("Waiting for connection on RFCOMM channel %d" % port)
- while True:
- subprocess.Popen(['./wifireset.sh'])
- client_sock, client_info = server_sock.accept()
- print("Accepted connection from ", client_info)
- try:
- data = client_sock.recv(1024)
- if len(data) == 0: break
- if len(data) > 1:
- ssid = data
- else:
- break
- data = client_sock.recv(1024)
- if len(data) == 0: break
- if len(data) > 1:
- password = data
- else:
- break
- if len(password) > 8:
- process = subprocess.Popen(['./wificonfig.sh', ssid, password])
- time.sleep(10)
- tmp = os.popen("cat /sys/class/net/wlan0/carrier").read()
- print (tmp)
- if tmp[0] == '1':
- break
- except IOError:
- pass
- print("disconnected")
- client_sock.close()
- server_sock.close()
- print("all done")
- ///WIFICONFIG SH
- #! /bin/bash
- wpa_passphrase "$1" "$2" | sudo tee -a /etc/wpa_supplicant/wpa_supplicant.conf > /dev/null
- sudo wpa_cli -i wlan0 reconfigure
- ///WIFIRESET SH
- #! /bin/bash
- sudo cp /etc/wpa_supplicant/wpa_supplicant.backup /etc/wpa_supplicant/wpa_supplicant.conf
- sudo service networking restart
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement