7 ms·
Show HN: Schedule iMessage Texts from .txt Files
Annoyingly, iPhones don't have a great way to schedule messages. This around 100 lines of python to schedule iMessage texts from .txt files on your computer.
If this is useful to you, please give it a try and let me know what you think. Thanks.
- baxtr 3y agoThanks for sharing. What do you use it for mostly?
- reidjs 3y agoI just built it this morning! I was planning to use it to send myself reminders.
- alchemist1e9 3y agoThis could be insanely useful for me. Thank you! It means I could have a private monitoring approach that send myself a message on events I want notifications on? I didn’t even know iMessage allowed sending a self message.
- daed 3y agoTelegram bots API works well for this FYI, unless there’s a reason you need it in Messages.app
- asciii 3y agoVery useful, thanks for sharing!
- nlawalker 3y agoThe use of “computer” throughout got me excited. Requires a Mac, yes?
- anonymouse008 3y agoYep, is AppleScript Still don’t know how they get around auto send, iMessage required user input last time I tried this [Edit] Shortcuts still require user interaction, apparently mac does not, that's interesting
- ersamsa 3y ago[flagged]
- aaronbrethorst 3y agoI’m surprised you went to the trouble of creating an account on here just to post warmed over, 30 year old “Crapple” insults.
- FirmwareBurner 3y agoWhere did you read a crapple insult in his comment?
- ddtaylor 3y agoComment is removed but my guess is that he's talking about the general very old flame war style stuff like "M$" and "Microshill" and "Crapple" etc. The "us vs them" mentality of computing.
- FirmwareBurner 3y agoNo, I read it as son as it got posted, before it was removed and there was nothing about "crapple" in it or anything objectively ofensive or that broke HN rules. The removed comment was basically along the lines of "when people say the word computer, they generally don't think of Apple" referring in this context to the fact that the app written by OP said it requires a "computer", giving the impression it's cross platform on all computers specifically, PCs which are still the majority marketshare in the computer space, yet it only works on macs, therefore it should be more specific about that restriction, which OP later corrected in the readme. That's why I asked, since it seemed like he brought up a fair point that got unnecessarily attacked by someone going off topic and attacking him with false accusations about some imaginary crapple joke, plus a mob flagging it for no reason, which made me disappointed to see on this community. Sometimes I feel like posts that are even remotely critical about Apple or Macs Apple on HN, get flagged and generally attacked in replies with hateful comments. I keep hoping people would be more objective and moderate here and less defensive about a favorite brand.
- Solvency 3y agoOut of curiosity couldn't one recreate Twilio just by running an extended version of this from a Macbook? You could read all inbound messages from the Messages app and reply as well. You could even hook it up to a local LLM and run a small support agent. Is there ANY reason a small business owner couldn't do this and avoid paying SaaS fees?
- reidjs 3y agoIt only works for iMessage texts, unfortunately.
- Solvency 3y agoBut the Messages application can send texts to non-iPhone numbers...
- reidjs 3y agoI tried sending to a non iMessage number, it failed to send, but there may be a way.
- FredPret 3y agoMight work in areas with huge iMessage market share like North America - I know probably two people with the "green texts"
- dimask 3y agoIt can also work for SMSs with some changes in the applescript. We made a very similar tool that use to send automated SMSs to experiment participants 2 times per day. The setup is similar and there is a bash script that is called using cron twice per day and calls a matlab script (similar to the python script here) that calls an applescript. This is the applescript that, in practice, sends iMessage to those with iphone and SMS to those without https://github.com/earlychildcog/automate_sms_to_participants/blob/main/sendsms.scpt https://github.com/earlychildcog/automate_sms_to_participant...
- anonymouse008 3y ago
- xyst 3y agoIf you don’t have an Apple computer but have an iOS device, you can also do something similar with the “Shortcuts.app” + “Calendar.app”. I have a daily shortcut that runs at X time. Shortcut checks a calendar for events, if today contains one or more events. It will parse the text from these events (comma separated fully qualified phone numbers or iMessage accounts), and send the message contained in the body of the event. Added bonus here is that I can also send group messages. If I need to have the message sent on repeat, then I put the cal event on repeat. I could possibly even have templated messages (ie, insert month and year into message), but I haven’t deep dived into that rabbit hole. Downside here though is that you need an iOS device to always be on.
- third_rate_econ 3y ago[flagged]
- dambi0 3y agoI believe you can run shortcuts on an Apple computer too.
- xyst 3y agoyes, you can. But I haven’t tried it myself. Although if the script has some dependency on iOS or macOS specific function (ie, existence of “Apple script”). Then the shortcut might not be portable between macOS <-> iOS
- thedays 3y agoThis sounds like a good solution. Can you provide an example or two of how you format the events in your calendar to allow them to be sent at a scheduled time by the Shortcuts app?
- xyst 3y agoI’ll publish something soon about it. It was inspired by another post/tweet. But I set that up long ago and do not have the article saved.
- mrweasel 3y ago[flagged]
- joshmanders 3y agoProbably because they felt more comfortable working in Python than more AppleScript than what was needed.
- ddtaylor 3y agoIf given the choice between writing AppleScript or Python I'm picking Python. Maybe Python can generate my AppleScript is really as close as I want to be to AppleScript.
- jitl 3y agoYou can write AppleScript with JavaScript syntax these days, it’s not as Python as Python but it’s substantially less AppleScript than AppleScript.
- alwillis 3y agoNot me—give me AppleScript. I get that it’s fashionable to rag on AppleScript. But for this particular use case—a scriptable app on macOS—AppleScript is the way to go.
- ddtaylor 3y agoThat's actually my point. I don't want to reach for or keep in my brain a programming language (or frankly deep API) that can only ever matter to Apple products while I don't get paid to write the code by Apple. I will gladly take Python instead and use it. A language used by millions to do almost anything with a vast amount of the code being written being shared not just the language and modules. I do not have the time or interest to play with Apples little locked down language to keep their walled garden looking pretty.
- deleted 3y ago[deleted]
- anonymouse008 3y agoHere's an Apple Script moving through iMessage to SMS if required. Make sure to add helpers to update the recipients contact to default to SMS, otherwise you're just cluttering your Messages history with failed messages. -------- tell application "Messages" set phoneNumber to "+15555555555" set messageToSend to "This is a test!" try set iMessageService to (1st account whose service type = iMessage) set iMessageBuddy to participant phoneNumber of iMessageService if exists iMessageBuddy then set theMessage to send messageToSend to iMessageBuddy delay 2 -- Wait for a short time to allow the message status to update if status of theMessage is not "delivered" then error "iMessage not delivered" else log ("sent as iMessage to: " & phoneNumber) end if else error "Not an iMessage user" end if on error try set SMSService to (1st account whose service type = SMS) set SMSBuddy to participant phoneNumber of SMSService send messageToSend to SMSBuddy log ("sent as SMS to: " & phoneNumber) on error log ("ERROR: COULD NOT SEND TO: " & phoneNumber) end try end try end tell
- reidjs 3y agoAwesome!!!! Thank you
- deleted 3y ago[deleted]
- dsalzman 3y agoI’ve built something similar with ios shortcuts. One shortcut that uses prompts and data jar to schedule and store messages. It also creates a cal event as a reminder to myself. It supports group texts. Then I have three automations that run in the morning, noon, and afternoon that check for scheduled messages and send them. Works well. Happy to share if interest.
- anonymous344 3y agowhat's the purpose for this?
- jitl 3y agoSometimes I’m up at 4am and want to send a message to someone at a reasonable hour when they’re not going to be in Do-not-Disturb mode, seems like a good enough way to accomplish. I use Slack “schedule tomorrow for 9am” pretty frequently for the same use case.
- dsalzman 3y agoI use it more as a reminder system. Someone tells me to checkin next week or in a couple days and I can just schedule the text right then so I dont forget.
- anonymous344 3y agowhy not just use calendar in your phone&cloud?
- latexr 3y agoI like reviewing my scheduled messages before sending (maybe the person has said something in the meantime), so the solution I came up with is a shortcut which first asks for text input, then a contact, then the time. All in the best possible interface in context, no need to worry about special syntax or formatting. The message text is URL encoded, the phone number is auto-retrieved from the contact, then an sms: URL is generated and added to my reminders app. When the time comes, I simply click the link and it auto-populates in Messages, ready to send or tweak.
- pavel_lishin 3y agoThis is cool. I like code like this that bandaids over someone's problems. I think all of us have things like this laying around, and it's always cool to be reminded of that fact.
- jpalawaga 3y agoI love scheduled send. I find it amazing iphones still do not have that extremely basic functionality.
- seoulbigchris 3y agoI remember when all the basic non-smart phones, like the few Samsung flip phones I had when I first moved to Seoul has this very basic ability. This feature was been dropped in the transition to smart phones for some reason.
- Krasnol 3y agoSignal has this feature build in, btw. I use it mostly with my SO as a reminder we send to each other at certain times.
- digiconfucius 3y agoThis is awesome! I think a certain friend of mine would really like it lol.
- jbaber 3y agoI'm honestly shocked that with all the ways iphone users are supposed to live in a better world than me, they lack this simple, obvious useful ability that the lowliest SMS/MMS user has.
- cookie_monsta 3y agoI have honestly never felt the need for this and had to click on a menu that I am ashamed to say I never thought of clicking on but yes, there it is. Scheduled send for SMS. You can even edit the time/ content right there in the UI. Thanks!
- smt88 3y agoI loathe being forced to use Apple products because there are so many of these simple missing features.
- sentientslug 3y agoI’m not sure how you are in any way forced to use Apple products
- smt88 3y agoMy family and friends primarily use iMessage group threads as social media. There's also a lot of location sharing via Apple. It's difficult to get most people to switch to something else and impossible to get old people to do it.
- jbaber 3y agoIn America iMessage has extremely strong network effects. I read about an Android user who carried around an iPhone specifically to avoid having a green bubble with dating prospects.