Commit Graph

30 Commits

Author SHA1 Message Date
jrd 85a69b2420 factor chime play into separate function 2020-10-29 06:40:51 -07:00
jrd ab961382ba Move audio playback to toplevel, out of sse stream generation 2020-10-29 06:30:20 -07:00
jrd f4d2280680 Factor warp config into separate function 2020-10-29 06:06:48 -07:00
jrd a0e3b256fb protect fragile animation-end callbacks
If a second ring came in, the old callbacks would clear. If this
happened after the first part of the animation (likely), the callback
counter would never hit its target.
2020-10-29 05:11:14 -07:00
jrd 5f60cd2a1b Prompt user for interaction to enable sound when block by browser 2020-10-29 04:59:20 -07:00
jrd ab81bdb708 send ring events even if audio is playing
Multiple clients won't get events if the handler to the first one
starts the audio stream before the other handlers check. Later
handlers always see audio.
2020-10-29 03:33:26 -07:00
jrd b70f92f6f4 leave some extra space above status box 2020-10-29 03:05:08 -07:00
jrd 4bdcbcad20 flash background on ring event 2020-10-29 03:00:48 -07:00
jrd 55ff48e6a3 {dis}connection beeps for sse stream 2020-10-28 22:04:32 -07:00
jrd 1fb5b37949 tabular layout for status box 2020-10-28 21:52:16 -07:00
jrd 59e0643902 Format status box 2020-10-28 21:41:29 -07:00
jrd be65559f87 play indoor chime on ring 2020-10-28 20:21:26 -07:00
jrd 941038eece Outdoor chime filename as global constant 2020-10-28 18:22:47 -07:00
jrd 743d5f231c Check if audio is busy in separate function 2020-10-28 18:05:21 -07:00
jrd e173f58da1 Outdoor doorbell chime 2020-10-28 18:01:54 -07:00
jrd 9e8543610b ignore emacs desktop files 2020-10-28 13:23:11 -07:00
jrd 13f1203a65 Reconnect on error. Show connection status. Use JQuery. 2020-10-22 15:22:30 -07:00
jrd 2050daae13 shorten ping time 2020-10-22 12:24:38 -07:00
jrd 4f59b256f5 simplify client Vec management 2020-10-22 12:23:08 -07:00
jrd 117979704c Use standard pullup instead of pulldown to match debounce circuit 2020-10-19 21:14:45 -07:00
jrd fdac5e4848 Use unreleased version of 'rppal' w/ RPi 4 GPIO Pullup/down support 2020-10-19 21:14:18 -07:00
jrd c752289af1 send explicit pings to client 2020-10-15 11:58:48 -07:00
jrd dfbbe01a24 Log client disconnected on ring sse
This is only detected when ring sse attempts to send on the closed
channel. It is not detected when the client actually
disconnects. Lower layers in the stack do notice the disconnect and
drop the sse stream so pings will stop being sent, but we don't have
any drop handler on the ring substream so we don't notice until we try
to use it.
2020-10-15 11:58:48 -07:00
jrd f39303175c Timestamps in log lines 2020-10-15 11:58:48 -07:00
jrd 71c62dc6a2 Enqueue sse ring directly from interrupt. SmallVec for client list 2020-10-15 11:58:39 -07:00
jrd 069099c7bb button presses -> sse -> web display 2020-10-15 11:57:40 -07:00
jrd 3b86c9fe21 use async interrupt. blank web service. 2020-10-13 13:32:32 -07:00
jrd 6d3d0fee0f Register button presses 2020-10-13 11:44:02 -07:00
jrd 5b52c6a78e cross-build for arm/rpi 2020-10-12 17:42:41 -07:00
jrd b7ec56c394 New project: doorbell 2020-10-12 16:18:24 -07:00