Recently, I've been putting together some home automation software for myself (to manage security cameras, todo lists, etc.).<p>One thing I'd like to do is send notifications to my phone. There seem to be many possibilities here, none of which are perfect. It would also be nice if the same system could be used to send commands back to the server, and ideally it would be distinct from other things I use frequently so that it stands out more. I'm on Android but happy to hear how iOS folks do this too.<p>Some of the options I've considered:<p>- IFTTT - solid for notifications, can't easily do responses though, and a little too much non-code configuration for my liking<p>- Email - works well but not distinct enough, emails could get drowned out<p>- Text messages - same as email, basically<p>- Discord bot - good, can process replies, though I personally use Discord for other things so it'd also be not very distinct<p>- LINE bot - quite nice - can add a shortcut to the specific chat on Android - and handles replies but apparently has some sending limits and more info on pricing beyond that is hard to find<p>I'm sure other people have done similar setups before where they can write a line of code to send some info to their phone. Would love to hear about other ways of doing this!
Home Assistant is a great way to do it. It has its own automation framework but I’m sure you can easily hook in your own scripts, or write them as your own plugins for HA. You can send push notifications to the mobile apps, it even supports actions on notifications I believe, and then you can obviously send events back to the server with it as well.
Just use email, the problem you cite with it is configurable by simply using another client for these notification emails.<p>You can also use Telegram plus telegram IRC to use IRC bots for notification.
I wrote this module long time ago
<a href="https://github.com/mraza007/terminal-text" rel="nofollow">https://github.com/mraza007/terminal-text</a><p>This might help
I have a second phone number through the Burner app that supports incoming and outgoing webhooks and integrates with Slack, Dropbox, Google, etc.<p>$35/year is a pittance for the flexibility you get with a second number, the extra functionality is an added benefit.
Telegram is fine for a single-user setup or for a small team. If you need better multi-user and multi-channel support, you can use Slack.<p>Both have an easy to use bot API and both support adding action buttons to messages that you can connect to your app's webhooks.<p>Using a messenger, in my experience, feels more convenient than using an email client when dealing with automations. You can view messages by channel, you don't have to deal with GMail assigning random categories to your emails, and the UI is faster.
I started using discord for this. I maintain a private server which just has me and a bot. The bot does everything for me. I'm constantly adding features.
Automate is an android app with many automation features, including notifications (which can open dialogs of various kinds if desired). There is a "cloud send" with an API allowing you to send arbitrary data to your phone. Not affiliated, just a happy user.<p><a href="https://llamalab.com/automate/" rel="nofollow">https://llamalab.com/automate/</a>
Disclaimer, I work for Twilio. You can use sms, voice, or email to get notifications and you can reply back and have those responses programmatically handled. The APIs are pretty decent in my opinion. I wrote a text adventure game over sms for fun when getting familiar with that part of the API. Oh, we also have IOT stuff, I’m just unfamiliar with it.
I’m not sure if it still works with current iOS but I used this to do that a lot several years ago <a href="https://apps.apple.com/us/app/prowl-easy-push-notifications/id320876271" rel="nofollow">https://apps.apple.com/us/app/prowl-easy-push-notifications/...</a>
super compatible even old python:<p><pre><code> #!/usr/bin/python
from email.MIMEText import MIMEText
from subprocess import Popen, PIPE
to_txt='5551231111@mms.att.net'
fr_txt='me@example.com'
m = MIMEText("hello world")
m['To'] = to_txt
m['From'] = fr_txt
p = Popen(["/usr/sbin/sendmail", "-t", "-oi", "-f",fr_txt], stdin=PIPE)
p.communicate(m.as_string())
</code></pre>
when I send a text this way, the text messages get grouped on my phone by the sender me@example.com