There’s no “real” way to block a user from sending you an iMessage. All the methods are workarounds that have their own disadvantages. But if you’re being pestered by someone on iMessage and you don’t want to (or can’t) shut down iMessage, you run out of decent options.
I see that a lot of discussions point to turning off iMessage. To me this isn’t a solution at all. It doesn’t come up as a viable solution at all in those cases, when you want to plug just one number?
With Verizon and AT&T, you can block contacts via your account or by calling the reps. but this again isn’t a perfect solution. Sometimes, it takes up to 24 hours or more for Verizon to process your request and block the contacts. AT&T, I heard, charges a fee for managing such things as blocked contacts.
The workaround you’re going to read about is simple. Here’s what you do to block a user from sending you an iMessage on iPhone:
Step 1: Remove the contact (if he/she is already listed under your contacts) from your iPhone. Make sure that if you sync to iCloud or iTunes, you have the contact removed from your cloud/backup too.
Step 2: Now, open Settings -> Notifications on your iPhone
Step 3: Scroll down and tap on Messages
Step 4: Scroll down and where it says ‘Show iMessage Alerts from:’, tap on ‘My Contacts Only’
You’re done. What really happens is, the iMessage app stops sending you notifications for messages that you get from unknown numbers. This is why you had the first step.
Like I said before, this is not really a solution. It’s a workaround and if someone says this is an ugly workaround, I’ll not disagree. But if it’s absolutely important that you need to block someone from sending you an iMessage, this could be the solution you’re looking for.