Turns your Raspberry Pi into a status screen to show your colleagues, family, friends, or whoever might disturb you if you're busy or not.
MIT License
Turns your Raspberry Pi into a status screen to show your colleagues, family, friends, or whoever might disturb you if you're busy or not.
PUT http://192.168.168.168:1880/status
Content-Type: application/json; charset=utf-8
{
"name": "making frontend responsive",
"task": "TICKET-123",
"duration": "PT50M",
}
Set status to "making frontend responsive" with an estimation of 50 minutes
Being busy with state "making frontend responsive" for 23 minutes
No more being busy
This application consists of a backend implemented as a Node RED flow and a frontend implemented with Kotlin JS.
Consequently, you'll need a Node RED installation and a webserver to provide access to the frontend.
When successfully installed, the loading screen shows up.
A few moments later the backend can receive status updates, like this one:
curl -X PUT --location "http://192.168.168.168:1880/status" \
-H "Content-Type: application/json; charset=utf-8" \
-d "{
\"name\": \"finishing soon\",
\"duration\": \"PT2M\"
}"
The following properties are supported:
{
"name": "status name that is displayed in the speech bubble",
"task": "task title used as the headline on the top border",
"duration": "60000",
"email": "[email protected]",
"on": {
"finish": {
"method": "post",
"url": "http://my-talking-robot/say",
"payload": "finished working"
}
}
}
The only required field is name
. All other fields are optional.
The duration
can be specified in
60000
ms = 1min) orPT1M
/ PT60S
= 1min)You can find further examples in http-client.http.
The connectivity options depend on your Pi Hero configuration.
If you start your device with a connected screen, you see the following information that help you finding your device:
Avahi is installed on your Raspberry Pi with all relevant services advertised in your network. You can use any zeroconf / mDNS / Bonjour client to discover your device.
Alternatively you can log in to your router and find out what new devices received a dynamic IP address from it.
The manual installation consists of the following steps:
./gradlew build -x test
npx http-server -c -p 80
npx
command above)address
query parameter in the URL to the one of your Node RED installationBusy Screen can be customized / extended in three ways:
Loading screen on small device
Loading screen on large device
Responsive previews with busy state
Responsive previews with done state
Loading screen with error message
on Raspberry Pi B+ the Plymouth based loading screen only works
after raspi-config
→ Advanced Options → G1 Fake KMS was selected.
get network connection to Raspberry Pi booted with dockerpi
Nintendo owns the copyright to Mario, Samus, the heart container, the coin and the controller. Please comply with the Nintendo guidelines and laws of the applicable jurisdiction.
South Park characters have been designed with the amazing SP-Studio.
Want to contribute? Awesome! The most basic way to show your support is to star the project, or to raise issues. You can also support this project by making a PayPal donation to ensure this journey continues indefinitely!
Thanks again for your support, it is much appreciated! 🙏
MIT. See LICENSE for more details.