Benjamin Dopplinger first started this repo as a way to be able to schedule pausing and unpausing his Launtel internet service through a simple Python script.
Lachlan MacPhee (me) became the maintainer of this repo in 2025 as Ben had moved on from using Launtel as his ISP and was busy with other things. I was interested in adding some functionality for changing speed plans and handling multiple services through the one script.
Run this command and then fill in your Launtel username and password in the newly created .env file.
cp .env.example .envCreate a Python venv (virtual environment) and install the requirements from requirements.txt using pip or similar.
Run the Python script with the pause, unpause or plan argument, such as:
python3 change_service_status.py pauseIf you already know the id of the service you want to pause, unpause, or edit the plan for, you can choose that service directly using the service_id flag:
python3 change_service_status.py plan --service_id 123456
2025-10-10 17:05:22.524 INFO logging in
2025-10-10 17:05:23.001 INFO getting services
2025-10-10 17:05:23.543 INFO only one service detected - continuing to plan
2025-10-10 17:05:23.881 INFO 2623: Standby(0/0) - $0.50/day
2025-10-10 17:05:23.881 INFO 2613: nbn100/20(100/20) - $3.30/day
2025-10-10 17:05:23.881 INFO 2608: nbn100/40(100/40) - $3.80/day
2025-10-10 17:05:23.881 INFO 2669: Home Fast(500/50) - $3.50/day
2025-10-10 17:05:23.881 INFO 2615: Home SuperFast(750/50) - $4.00/day
2025-10-10 17:05:23.881 INFO 2617: #FastAF-100(1000/100) - $4.20/day
2025-10-10 17:05:23.882 INFO 2664: nbn250/100(250/100) - $3.80/day
2025-10-10 17:05:23.882 INFO 2666: #CrankIt(2000/100) - $6.00/day
2025-10-10 17:05:23.882 INFO 2629: IoT 1Mbps(1/1) - $1.80/day
2025-10-10 17:05:23.882 INFO 2635: IoT 4Mbps(4/4) - $2.50/day
Enter the psid of the new plan you would like: For non-interactive plan changes, you can specify the plan speed ID (psid) directly:
python3 change_service_status.py plan --service_id 123456 --psid 2669To find available plan IDs and prices, run the script in interactive mode first (without --psid).
You can run a free Linux Compute Engine instance on Google Cloud Platform and use the at command to schedule the execution of the script at a certain time.
For example, to pause your service at 9pm run the following:
echo 'python3 launtel_change_service_status.py pause'|at 9pmOr to schedule an unpause for a future date::
echo 'python3 launtel_change_service_status.py unpause'|at 0:05am 2021-01-01Knowing that NBN's turn around times can be fairly slow when pausing/unpausing a service, Launtel would still have to pay for an extra day if you pause your service at 11:59 pm but it only gets paused on NBN's side after midnight. Hence,if you know you'll be in bed by 9 pm then love your neighbour as yourself and be kind to Launtel by scheduling the pausing of your service for that time in order to give Launtel a chance to still finish the pausing process within the same day so they don't have to pay the extra.