[HN Gopher] Show HN: I built a "Do not disturb" Device for my ho...
___________________________________________________________________
Show HN: I built a "Do not disturb" Device for my home office
Author : quacky_batak
Score : 66 points
Date : 2026-01-03 15:46 UTC (4 days ago)
(HTM) web link (apoorv.page)
(TXT) w3m dump (apoorv.page)
| Terretta wrote:
| The way most of these devices get status seems check the
| conferencing apps directly:
|
| https://www.amazon.com/stores/Kuando/page/1128C3FD-9BE9-4AA2...
|
| There are some nice neon sign options here as well:
|
| https://www.amazon.com/s?k=busy+light
| pavel_lishin wrote:
| I have an old, broken crosswalk sign that I keep meaning to set
| up as a "meeting indicator" - red hand meaning that I'm in a
| meeting, and the seconds countdown as an indicator of how many
| minutes are left until I'm out of meetings.
|
| But as it turns out, since my spouse & I both work from home,
| separated by an entire floor of a house, there ain't that much
| need for it, so it sits on my shelf.
| dripton wrote:
| I needed something like this for my basement home office. But I
| was lazy, so rather than actually building anything, I just
| bought some color-changing light bulbs ($7 on Amazon including
| remote) and installed them on the basement stairs. If I have a
| do-not-disturb meeting, I make the light red.
| CPLX wrote:
| I had a similar thought, so I bought this:
|
| https://onairwarning.com/pages/products
|
| It completely sucks and doesn't really work. So don't make my
| mistake.
| Liftyee wrote:
| I don't know why they decided to put the "warning!" text box on
| the actual thing - it would look much cleaner if it just said
| "ON AIR" . Inane copyright/trademark reasons?
| nimbius wrote:
| "a lot of times my mother asks me if she can come in the room for
| reasons I won't get into"
|
| You've appeared to engineer your way around an interpersonal
| relationship that you lack the emotional, social intelligence and
| maturity to deal with.
|
| Welcome to the front page of HN i guess. you're well on the way
| to becoming a founder.
| mhurron wrote:
| The only one showing any lack of social intelligence is you.
| The author is choosing not to go into unnecessary personal
| details while giving a short back story as to why they did a
| thing.
|
| I've thought of doing basically something similar so my wife
| knows I'm in a position not to be disturbed. I can, and do,
| tell her when I have a scheduled call, but unscheduled calls do
| just happen. Something like this would let her know I can't be
| disturbed without her coming in, asking and then going 'oh
| shit, sorry.'
|
| In no way is it engineering a way out of dealing with my wife.
| deathanatos wrote:
| ... or there's just a lot of awkwardness for both parties in
| trying to communicate "are you on camera?" without the person
| who is potentially on camera revealing that communication to
| the stream.
|
| The person entering has to make sure they're not on camera --
| if the room's architecture even allows for that -- the person
| answering has to somehow communicate to that person without
| people looking at their video feed noticing. I've gestured
| things to my fiancee while on air, and while they were pretty
| clearly intended for "someone off camera", still managed to
| confuse the meeting participants.
|
| Radio booths and other broadcasts have done this for ages with
| the "On Air" sign, which basically what TFA has made.
| pwg wrote:
| Spoken like someone who does not have a "second person" around
| while they are working from home.
|
| Unless the "other people" (spouses/partners/parents/etc.)
| _also_ work a from home job, they simply do not internalize
| that the work from home individual is "at work" in the same
| manner as if that individual were away in an office. And for
| some of them, no amount of explanation ever sinks in to fully
| internalize the fact that "when I'm working from home, I am not
| available to also solve all the problems you create for
| yourself throughout the day".
|
| Most all of them, however, do actually pay attention to and
| understand the meaning of a "do not disturb" sign on the door.
| rlue wrote:
| Like all the other commenters here, I also devised my own
| solution--but AFAICT, it's the only other solution that's
| automated!
|
| Requirements: * macOS * Zoom * Home
| Assistant * A signal light/sign on a smart switch (like
| [0])
|
| The Procedure:
|
| First, create a script that checks whether you're currently on a
| Zoom call, and then turns your signal light on or off
| accordingly. Remember to chmod +x! #!/bin/sh
| if [ $(lsof -i 4UDP | grep zoom 2>/dev/null | wc -l) -gt 1 ];
| then curl \ -H "Authorization: Bearer
| ${HOME_ASSISTANT_ACCESS_TOKEN}" \ -H "Content-Type:
| application/json" \ -d '{"entity_id": "${ENTITY_ID}"}'
| \
| https://${HOME_ASSISTANT_DOMAIN}/api/services/switch/turn_on
| else curl \ -H "Authorization: Bearer
| ${HOME_ASSISTANT_ACCESS_TOKEN}" \ -H "Content-Type:
| application/json" \ -d '{"entity_id": "${ENTITY_ID}"}'
| \
| https://${HOME_ASSISTANT_DOMAIN}/api/services/switch/turn_off
| fi
|
| Then, create a LaunchAgent that monitors your Zoom Application
| Support directory for filesystem changes at
| ~/Library/LaunchAgents/local.${USER}.on-air.plist:
| <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist
| PUBLIC "-//Apple//DTD PLIST 1.0//EN"
| "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist
| version="1.0"> <dict> <key>Label</key>
| <string>local.${USER}.on-air</string>
| <key>ProgramArguments</key> <array>
| <string>${PATH_TO_SCRIPT}</string> </array>
| <key>WatchPaths</key> <array>
| <string>/Users/${USER}/Library/Application
| Support/zoom.us/data</string> </array> </dict>
| </plist>
|
| Finally, load 'er up: $ launchctl load
| ../Library/LaunchAgents/local.${USER}.on-air.plist
|
| [0]: https://www.amazon.com/dp/B09NJ8ZCHF
| kjkjadksj wrote:
| Would love a way to disable the Do Not Disturb button on my
| macbook without flipping the f keys. Any ideas? Tap it
| accidentally and you miss all calls and texts for the day on your
| iphone...
| dhosek wrote:
| There is (was?) a utility that would flip individual F keys on
| the Mac, although it's been years since I used it and who knows
| if it still works post Apple Silicon transition.
|
| TBH, I kind of miss the touch bar. Once they restored the esc
| key, it was often kind of useful while I tend not to use any of
| the keys in the F row (even those mapped by IntelliJ since the
| whole fn+F key thing is a kind of a pain and I seldom have call
| for the media buttons--actually I just realized I do
| occcasionally use the mute/unmute feature but that's about it).
|
| Of course my preferences are normative and anyone who does
| otherwise is clearly abnormal ;-)
| Terretta wrote:
| The Touch Bar was so useless* it's now selling like hotcakes
| as an accessory:
|
| _"Trigger actions, launch apps, and control your entire
| setup--all from a hyper-customizable deck of vibrant LCD
| keys."_
|
| https://www.elgato.com/us/en/p/stream-deck
|
| * Narrator: Not actually useless. Mine is setup for multi-
| screen chat/video/notes windows placement and app window
| sharing for video conferencing.
| Terretta wrote:
| Wait -- what button is this?
|
| Oh: [moon|F6]
|
| _"If you are smugly thinking to yourself, "I knew that!",
| Then, my question to you is, why didn't you tell ME???"_ --
| https://www.podfeet.com/blog/2023/09/do-not-disturb-key/
|
| It goes on to answer the next question:
|
| _"But that got me to wondering how long the F6 has had a
| dedicated Do Not Disturb function. I did some research and it
| looks like it was introduced when Apple came out with the first
| Apple Silicon MacBook Air in 2020. The previous keyboard
| shortcuts had F4 key dedicated to Launchpad, and if you had a
| backlit keyboard, F5 and F6 were dedicated to up /down keyboard
| brightness keys."_
| JoeBOFH wrote:
| We historically have used Blynclights for this exact thing. Used
| them in office then we all migrated to working from home a lot of
| us brought them with and use them. I have a wireless one that
| sits on a table just outside my office.
| teach wrote:
| > My router assigns dynamic IP addresses, meaning my server
| location kept changing.
|
| I've had a similar problem in the past. It turns out that most
| routers have a way to assign an IP address statically based on
| the MAC address of the requesting device without affecting the
| other DHCP devices on the network.
|
| I do this for my pi-hole, my NAS and my gaming PC.
| bartvk wrote:
| What's bizarre is that my previous TP-Link routers alawys had
| this ability, but when I upgraded two years ago, it was gone.
| galleywest200 wrote:
| My current TP-Link router hides this behind the "Advanced"
| settings toggle.
| hunter2_ wrote:
| The wording can vary quite a bit: I've seen names like static,
| fixed, DHCP reservation, etc. -- I tend to like DHCP
| reservation, because from the client's perspective, "static"
| means _not_ using DHCP, but this does use DHCP (just not the
| pool).
| lostlogin wrote:
| > Dynamic IPs
|
| I thought that step one of geekdom was assigning a few static
| IPs.
|
| Ruining the home network while 'optimising' has happened a few
| too many times.
| tzs wrote:
| Most home routers also have some addresses that are outside the
| range managed by DHCP, or if DHCP is set to manage the entire
| range of LAN address have a setting where you can reduce that
| range. This gives you a third way to manage static assignments.
|
| Let's assume the LAN is 10.0.0/24, so addresses of devices on
| the LAN are 10.0.0.1-10.0.0.254. In the following I'll omit the
| 10.0.0. part of an address, so will just refer to addresses
| 1-254.
|
| Find the range DHCP manages, which should be somewhere in the
| router settings. If it is 1-254 reduce it. Let's say it is
| 1-200 (either by default or after you have reduced it).
|
| Then you can simply go the settings on your server or other
| device that you want to have a static address and configure it
| to use a hard coded address outside that range, such as 201.
|
| A possible downside of that is that on some devices if you want
| to give it a hard coded address you also have to hard code the
| gateway address and the name servers.
|
| Some devices though have an option to use a hard coded address
| but still get the gateway and name servers from DHCP.
|
| In summary, there are three ways to manage address for a given
| device on most home routers.
|
| 1. DHCP assigns the address. It can choose any address in its
| pool. Each time the device needs an IP address, such as after a
| boot or when its lease expires, it could get a different IP
| address.
|
| 2. DHCP assigns the address, but you can tell it to give a
| specific address from the pool to a given device identified by
| the device's MAC address.
|
| 3. Tell the device to use an address outside the router's DHCP
| pool. It's up to you to decide how to assign these address and
| how to make sure no conflicts arise.
|
| For #2 if you want some device to have a fixed IP address but
| you don't actually care what that address is, many routers have
| an easy way to do that. Connect the device under #1, so DHCP
| picks the address.
|
| Then go find the table in the router's web interface that shows
| all currently connected devices and find your device. Many
| routers will have a toggle in there to tell it to switch to #2
| for that device. From then on the device's current address will
| be reserved for it.
|
| That's a little easier than going through their "assign an IP"
| dialog, because that usually makes you enter the MAC address.
| If you go through the connection table details it doesn't have
| to ask you for the MAC address.
| lam0x86 wrote:
| Nice. I built something similar using a Rust-based daemon running
| on my Mac. It listens to the microphone state (not the camera)
| via a Core Audio property listener
| (AudioObjectPropertyListenerProc), rather than log monitoring or
| polling, so it works even when the camera is turned off. When the
| mic status changes, the daemon toggles a light by sending a
| simple message via zigbee2mqtt. I also installed a fire alarm
| plate above my door, powered by a cheap Zigbee socket, similar to
| this one: https://ampac.net/wp-
| content/uploads/2017/05/4210-0131-Warni...
| apparent wrote:
| > One does not simply get the camera status on a MacBook.
|
| What you need is a sensor right near the green dot that detects
| whether it's turned on or not. Could use a full-blown camera, but
| probably a simpler sensor would work too.
|
| Only half-kidding.
| NitpickLawyer wrote:
| > One does not simply get the camera status on a MacBook.
|
| ? OverSight [1] seems to work just fine. It pops up whenever
| something uses the mic or camera (the usage for this tool is to
| "monitor" for unwanted access from rogue apps). Since it's open
| source it should be possible to check how they get the status?
|
| - https://github.com/objective-see/OverSight
| dhosek wrote:
| Skimming the code, I think it also monitors log events.
| shermantanktop wrote:
| That's what I use. Oversight runs scripts on events, which is
| great. However! now you have the problem of rapid events with
| overlapping scripts ending up with inconsistent state. I
| solved that with a lock file, but still get stuck states
| sometimes.
| telesilla wrote:
| Next trick - hook up a Recording sign when your DAW is in
| playback or you are live on the air.
| jcynix wrote:
| A simple, almost analog, solution is some nightlight which can be
| manually turned on or off, e.g.
| https://www.amazon.com/dp/B0FSL3Q7PW
| rnoorda wrote:
| I made a simple ON AIR sign with LEDs inside that I change to
| reflect what I was doing. Red means I am in a meeting or totally
| focused, blue means I'm working, but someone can interrupt me if
| needed. Green means I'm not working, come on in!
|
| The only issue with my setup- I work from home. My wife does not.
| No one is there to care if they can come in or not. It was
| building something fun to solve a problem I never had.
|
| Would do again.
| Uptrenda wrote:
| why does the site keep upvoting trivial projects especially
| derivative projects of what people seem to reinvent every few
| months. No offence to OP. I don't really get the site. Like, you
| have posts where someone runs doom or an OS in a PDF file that
| get 1000 upvotes which I think is valid. Then we get something
| like "I made an echo server" which is like someone copypasted
| code from an asyncio documentation page and put it on Github and
| that will make it to the front page. Again, just feels like it
| doesn't belong on the front page. It's not news worthy or
| interesting in any way.
| patatino wrote:
| My solution is simple: noise canceling headphones, which I only
| have on for meetings. If the wife sees them, she knows
| cuu508 wrote:
| Here's my low tech do-not-disturb device ;-)
|
| https://i.imgur.com/rnwEGIZ.jpeg
| poolnoodle wrote:
| Door locks exist
| ThrowawayTestr wrote:
| Where's the fun in that?
___________________________________________________________________
(page generated 2026-01-07 23:01 UTC)