

Show HN: I built a web-based iMessage interface - camhenlin
https://github.com/CamHenlin/iMessageWebClient

======
bshimmin
"I would really like some pointers or assistance from people with more
experience using private frameworks as I believe it could lead to more
reliable and interesting uses for iMessages in the future."

I think you're either not understanding what private frameworks are for or
what "reliable" means.

~~~
camhenlin
I think you misunderstand how unreliable using AppleScript is :)

To sum up the linked project, the app.js is actually capable of launching a
new chat with an intended recipient through use of private frameworks, so I'm
not completely lost in the sauce

~~~
spike021
I think one of his points is that in some cases private frameworks can be
modified in new updates and the changes can go undocumented. So reliability
will just about always be in question.

------
comex
On a bit of a tangent, I'd love to see a fully reverse engineered iMessage
client - along with Skype, Hangouts, WhatsApp, Snapchat, and all the other
mobile messaging apps du jour. What happened to the old days when you could
get a single open source client, for Linux if you wanted (today, perhaps the
equivalent would be the likes of Firefox OS and Tizen), with reverse
engineered implementations for all major IM protocols?

Okay, that's partly a rhetorical question. I know that iMessage and Skype are
both powered by highly obfuscated code - the latter for more than a decade!
Skype seems it's been decently reverse engineered in the last few years,
though, and there are or were some iMessage clients for Android, although I
think they were using Macs on the backend (maybe some day I will help with
properly reverse engineering it). But never mind those two; I've heard many of
the other messengers are no better protected than the ones of the 90s, yet I
haven't seen any attempts to write unified clients. Why is that?

~~~
notduncansmith
Whip out an HTTP debugging proxy and I'd imagine you could get pretty close to
unpacking Skype's API in less than a day. It uses the Bond protocol, which is
easy enough to deserialize, and some tricks to verify that the message being
sent is really the one that should come after the last one that was sent.

I didn't get as much time as I would've liked to play with it so they may have
more tricks waiting, but it looked simple enough from an hour or so of
tinkering.

------
robbiemitchell
I've always wondered whether something like Buffer could work for iMessage
delayed sends. Seems like this could be a step toward that if you can provide
everyone with their own secure virtualization of iMessage.

~~~
camhenlin
Yes that's definitely what I'm working towards! I think there are countless
uses for iMessages that working on these types of projects will open up in the
future

------
parisidau
Very cool. Particularly nice work making it a web interface (I think I saw the
previous ncurses-style version on here a while back?)

(On a side note, I think we used to hang out in the same IRC channel 10+ years
ago? #spacespider?)

~~~
camhenlin
Yes, we did hang out on IRC! Good times!

