In my own build I just changed the feedback event name so they both use "message-new-sms" now, which gives me the behavior I'd expect. I could also change the theme to have "message-missed-sms" have the same behavior as "message-new-sms". I'll try to open a ticket with feedbackd and see what they say about this. In the meantime, I feel like using just "message-new-sms" makes sense.
It looks like chatty just sends the message-new-instant event no matter what.
I've been using vgmms for about a day and I noticed that a notification sound plays if I'm in the app itself, but when I'm not or the phone screen is off, it only turns on the blue LED. This isn't very useful if the phone is in my pocket and I can't see the LED flashing.
I looked around in the code and found this function: https://git.sr.ht/~anteater/vgmms/tree/master/item/src/state.rs#L186. If a message is received but the app is not open, it passes the "MessageMissed" notification to libfeedback, which it seems just flashes the blue light. I tested changing this by setting that event to MessageReceived and when I recompiled and ran, I got the ding I was expecting.
I feel like the better behavior is getting a real ding, just getting a blue light seems not useful. I looked at libfeedback and it looks like I can change the behavior in the theme file, so I'm going to try to do that first. I do know that chatty will make a ding sound when SMS's arrive and I'm not in the app. I'll have to check what it's doing.
I'm building on postmarketOS 21.06 from the alpine packaged rust and I get the following error while compiling vgmms:
Compiling vgmms v0.1.0 (/home/user/src/vgmms) error[E0658]: or-patterns syntax is experimental --> src/chat_log.rs:131:9 | 131 | Some(MessageArea::Whitespace | MessageArea::Time() | MessageArea::Sender | MessageArea::Separator()) => return None, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #54883 https://github.com/rust-lang/rust/issues/54883 for more information
error: aborting due to previous error
For more information about this error, try
rustc --explain E0658. error: could not compile
I went into the chat_log.rs file and split that line into four, like this, which fixed it for me. Some(MessageArea::Whitespace) => return None, Some(MessageArea::Time()) => return None, Some(MessageArea::Sender) => return None,
Some(MessageArea::Separator()) => return None,
Not sure if you want to persist this change in your codebase but just letting you know it's an issue for people without experimental.