Messages recently stopped working on my iMac. Suddenly it said that it could not connect. More specifically, I could not use Apple's iMessage service. I could use AIM or Google Talk, but iMessage was the service that I wanted to use.
(Note: When I refer to 'Messages' I mean the actual application on my Mac. When I refer to 'iMessage' I mean the service which Apple provides which lets you send instant messages to Macs and iOS devices.)
I tried a few things that I could think of: I checked to make sure that my proxy wasn't blocking anything that could be relevant; I made sure there was nothing in /etc/hosts that could be interfering; I created a new user account on my iMac. Nothing made any difference.
At the same time, other iCloud services were working just fine, including calendar and contact syncing, so I assumed that it wasn't iCloud related. I could use the same Wi-Fi network to connect to iMessage using my MacBook Air. It seemed like it had to be something connected to my iMac specifically...but what?
I decided to reinstall OS X on my iMac for other reasons not related to this problem, and the first thing I tried was connecting to iMessage. No joy. So if it wasn't related to my Wi-Fi network and it wasn't related to my installation of OS X... what else was left?
The idea that the problem could be hardware-related seemed odd to me, but I had done my best to eliminate all other factors, so the one which remained must be the truth.
It was then that I remembered an odd little detail about my iMac: it has no serial number. No, my iMac didn't "fall off the back of a truck." I bought it directly from Apple, and even bought AppleCare for it, which was a good thing because I had to have the hard drive and the logic board replaced.
Some time after the logic board was replaced, I realized that the serial number was listed as 'Not Available' in the System Information (which used to be called 'System Profiler' in earlier versions of OS X.) I did some checking and found that this was something which was supposed to be done by the guy who installed the new logic board, but he had apparently forgotten to do it. I was also told that there was nothing that I could do to fix it.
It never caused any problems, so I had never worried about it before. In fact, I had been able to use iMessage through the Messages on my iMac until recently. It seemed improbable, but I was out of guesses as to what else might be the cause. I asked on Twitter and got a few suggestions, but none of them panned out. Someone else even said that they had been able to use Messages on a Mac without a serial number, but it had been awhile since they had done it.
With no other options available, I had no other choice but to check with an Apple Authorized Service Provider. Fortunately, since I still have my original box, he was able to find the original serial number. After running some sort of "Apple Authorized Service Provider"-only software on it, my iMac had its old serial number back.
Neither one of us had much hope that this would make a difference, but after rebooting the iMac and logging in, Messages was immediately able to connect to the iMessage service, and it works perfectly.
Don't ask me why.
The facts are these: My iMac was able to use iMessages, and then it wasn't. I tried everything I could over several weeks to fix it, and nothing did. When the serial number was restored, iMessages immediately started working again.
I can think of some possible reasons why this happened, but none of them are anything more than guessing.
- Is this a new 'feature' of the iMessage protocol or the Messages.app that it will only work on Macs with serial numbers?
- If so, is this Apple's way of cracking down on OS X installations on non-Apple hardware?
- Is it possible that iMessage was never supposed to work on Macs without a valid number and they've just started enforcing it now?
All of those seem unlikely to me. After all, why would Apple allow me use the rest of iCloud except for iMessage?
If they were making such a check, I would hope that they would have made it more clear, showing an error message that was more descriptive than "Couldn't connect."
- Is this a bug? Did I hit some sort of an edge-case that Apple had not tested for?
That seems possible. I would not be surprised if Apple made some change on the server side of the iMessage service which triggered this, or Apple fixed an unrelated bug and had this side effect.
In any case, iMessage did not work, and now it does. It seems clear that the fix was getting the serial number restored.
I share this information because while there may not be many Mac users out there who found themselves with Macs without serial numbers, we are out there. Even just mentioning this on Twitter led me to discover someone in the same situation. If you're one of them, getting this fixed will mean finding an Apple Authorized Service Provider or Apple Store who can fix it for you. Be sure to bring whatever paperwork to show ownership, and any repair receipts you might have. (Apple Stores should be able to pull up your service record for repairs done under AppleCare.)