The new Messages beta app (based on iChat) is stuck with one incoming message.
Can I somehow reset the badge?
The correct answer to this issue isn't to message all your contacts.
First close the
Then simply open up Activity Monitor and quit the Dock process to restart it.
Here's how it looks:
Your badge count should be reset after that.
PS: You can access Activity Monitor from Spotlight (⌘ Space) by simply typing its name and pressing Enter.
Edit: update thanks to @JjP and @Toland H
Before you kill Dock you need to close Messages to make it work. I had this issue on Mountain Lion (Mac OS X 10.8.2). When Messages was open and I killed Dock it didn't help. But when I closed Messages and then killed Dock, the badge was gone and after opening Messages the unread messages appeared so I could read them.
Try to restart the dock. In the Terminal located at
killall -KILL Dock
Click and hold on the Messages icon in your dock. A context menu appears with unread messages. Navigate to the previously unlisted and unread message that way. Then "read" it.
Sometimes you may miss reading a message from a friend. And sometimes Messages may not pull up the previous conversations as it should (it is still in testing and I hope those bugs are worked out for the final product).
I would suggest sending a test message to all the previous contacts you've IM'ed. It'll pull up the respective conversation thread and hopefully kick off the unread message from your notification badge.
Go to Terminal and write:
osascript -e 'quit app "Messages"' osascript -e 'quit app "Dock"' open -a Messages
I'm not certain how the badge works, but I suspect the bug isn't on your computer, it's on apple's iMessage server somewhere in the cloud.
To fix it, you would have to have access to their servers, which you don't have.
Basically, the solution is to stop using beta software if you are worried about glitches like this one.