Can I email or text myself through Python or bash?
from ericjmorey@programming.dev to python@programming.dev on 09 Jan 2024 01:15
https://programming.dev/post/8319371

cross-posted from: beehaw.org/post/10863052

Noob question incoming, thanks in advance for any help with this!

I have a specific use case in which I want to send an automated email or text to myself once a day (the message is different each time–otherwise I would just set an alarm, lol!). I’m running Pop_OS on an old desktop computer. Where I’m stuck is getting an email to successfully send from the command line. I’m looking for easy-to-follow instructions that would help me do that, and none of the articles or videos I’ve come across thus far have helped.

I’m aware of Twilio and other services that send SMS messages, but I’m looking for something free. Especially since I only need to text one person (myself), and infrequently at that.

Below is my attempt to send an email with the telnet command. Nothing ever came through…

XXXXXXXX@pop-os:~$ telnet localhost smtp
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 pop-os ESMTP Exim 4.95 Ubuntu Sun, 07 Jan 2024 15:12:28 -0500
HELO gmail.com
250 pop-os Hello localhost [::1]
mail from: XXXXXXXX@gmail.com
250 OK
rcpt to: XXXXXXXX@gmail.com
250 Accepted
data
354 Enter message, ending with "." on a line by itself
Subject: Test
Body: Is this working?
.
250 OK id=1rMZW4-0002dj-Uy
quit

#python

threaded - newest

bertmacho@lemm.ee on 09 Jan 2024 02:35 next collapse

Use mailx along with a .mailrc file? Once .mailrc is set up it should just need:

$ echo ‘is this working?’ | mailx -s Test <recipient>

Not sure exactly what .mailrc needs for gmail but there are tons of guides out there.

burrito@sh.itjust.works on 09 Jan 2024 04:42 collapse

Mailx is exactly what I use to send email from servers for cron jobs. Works great.

greaterthanstupid@dmv.social on 09 Jan 2024 02:36 next collapse

yes, i use mutt for this purpose. since most email addresses these days will only accept mail from a validated email server, you can hard code your email creds into mutt to send the email ‘from’ many email providers, including gmail

dbx12@programming.dev on 11 Jan 2024 21:12 collapse

I want to add that Gmail is a bit of a dick when it comes to SMTP.

Midnitte@beehaw.org on 12 Jan 2024 00:22 next collapse

SMS obviously won’t be free, aside from the aforementioned email solution, what about other services such as Discord/Teams/Slack?

Sending a message via any of them is rather trivia - Discord has a webhook API as well as a python wrapper.

Me and the SO have our own server and individual channels for ourselves where I use some webhooks to post stuff from Home Assistant for notifications

xurxia@mander.xyz on 14 Jan 2024 19:05 collapse

Yes, you can. Python has Email package to manage email through STMP protocol. I use it daily in my scripts. Attached link is a tutorial of Real Python:

realpython.com/python-send-email/