Automate Badminton Court Lighting
Budget: ₹1,500 – ₹12,500 INR
Sportomic already handles every booking for my two indoor badminton courts over WhatsApp and collects payment through UPI. Each court’s LED flood-lights is wired to an individual Sonoff Basic (Wi-Fi) smart switch. What I need is a small service that listens to Sportomic and flips the correct Sonoff automatically, so my staff never has to touch a light switch again.
Scope
• Accept either the REST API or the webhook payload Sportomic provides—whichever is simpler to implement and maintain.
• Map every incoming booking event to its court:
– Booking confirmed ➜ turn the relevant court’s lights ON.
– Session ends ➜ turn them OFF, unless the user extends; in that case keep them on until the new end time.
– Booking cancelled at any point ➜ switch OFF immediately.
• Court 1 and Court 2 must operate independently; one court staying dark or lit must never affect the other.
• Provide basic logging so I can verify triggers were received and switches toggled.
Acceptance criteria
1. End-to-end demo showing a Sportomic test booking turning Court 1’s lights on within a few seconds and off at session close.
2. Same test repeated for Court 2 and for a cancellation scenario.
3. Clear deployment steps (Docker image, Python script, Node.js service—your choice) that I can run on a local Raspberry Pi or a small VPS.
4. Credentials for Sportomic and eWeLink/Sonoff stored in an .env or secrets file, not hard-coded.
If this sounds straightforward to you and you’ve worked with webhooks, ESP8266/SONOFF, Home Assistant, Tasmota, or similar IoT workflows, you’ll finish quickly. Let me know which stack you prefer and how soon you can ship a test build.
Scope
• Accept either the REST API or the webhook payload Sportomic provides—whichever is simpler to implement and maintain.
• Map every incoming booking event to its court:
– Booking confirmed ➜ turn the relevant court’s lights ON.
– Session ends ➜ turn them OFF, unless the user extends; in that case keep them on until the new end time.
– Booking cancelled at any point ➜ switch OFF immediately.
• Court 1 and Court 2 must operate independently; one court staying dark or lit must never affect the other.
• Provide basic logging so I can verify triggers were received and switches toggled.
Acceptance criteria
1. End-to-end demo showing a Sportomic test booking turning Court 1’s lights on within a few seconds and off at session close.
2. Same test repeated for Court 2 and for a cancellation scenario.
3. Clear deployment steps (Docker image, Python script, Node.js service—your choice) that I can run on a local Raspberry Pi or a small VPS.
4. Credentials for Sportomic and eWeLink/Sonoff stored in an .env or secrets file, not hard-coded.
If this sounds straightforward to you and you’ve worked with webhooks, ESP8266/SONOFF, Home Assistant, Tasmota, or similar IoT workflows, you’ll finish quickly. Let me know which stack you prefer and how soon you can ship a test build.