Sofoe was born out of my passionate hatred for the Sophos login portal. I hated having to open it every time I wanted to connect to the internet, I hated that I had to keep that tab open for it to work, I hated how clunky to whole UX felt. Sofoe is my solution to it.
Running this script will keep you logged into the WiFi. If the Uni's WiFi goes down (which it does way too often) it'll attempt to log you back in as soon as it can. You can also temporarily pause this and logout too.
This will work in ALL the buildings on campus, the MH's, LH's and all Academic Blocks with seamless transition from one to the other
- Keeps trying to auto-login
- Internet can stay up even if the script is closed
- Option to pause auto-login and logout
- Shows servers responses in the CLI (Eg:
Login Successful
,Max Devices
...) - Logs events to make troubleshooting easy in
app.log
- Auto-detects URL for the Login Portal
- Doesn't break if you connect to a different network
- Light-Weight and Fast
- Cross-Platform code
- Choice to pick between emulating a desktop or mobile client
Yes. 🗿
It basically does what the WiFi login website does, just more naked and faster. The source code is open for all to see, feel free to go through it if you're still worried!
- Ensure that you have python3 installed.
Run the following command in your terminal to check.
The terminal should return something like:
Python 3.10.0
py --version
- Clone or Download the code of this repository
git clone https://github.com/fullmeteor172/sofoe.git
- Install additional requirements by running the following: (Open the sofoe folder in your terminal and then run this command)
pip install -r requirements.txt
- Set your username and password by opening the
credentials.json
file in the sofoe folder
#👇The file should have something that looks like this
{
"username":"Add it inside the quotes",
"password":""
}
- Run it! 🎊
py sofoe.py
- Optional Step: Set it up to run on boot. (DIY based on your os)
-
Using sofoe and the Uni's WiFi login page (donno why anyone would want to do this) together might lead to unexpected behavior.
-
The 'Desktop' Client mode will ping the server every
x
minutes. If you exit the script while it is inDesktop
mode the internet will run for a bit till the server eventually kicks you off. This shouldn't happen if sofoe is running inMobile
Client mode. -
If the pause menu says the logout options are unavailable, that's because sofoe failed to find the captive portals url. This probably happened because you started sofoe when the Internet was already up. Manually logout to fix this. Or... just let it run, it will eventually fix itself.
Distributed under GNU AGPL v3. See LICENSE.txt
for more information.
By Dhruv Jha