I think we need a middle option. If I can mute someone's pings, it prevents them from communicating with me even if they actually want to.
In a game that's rooted in teamwork, I don't think that's a good idea. IMO, it sends the wrong message: "It's OK to refuse to communicate with someone if they're toxic."
The message I think we should be sending is, "If someone is toxic, you don't have to expose yourself to that toxicity, AND you should be the bigger person and continue to play the right way, which includes working with that person."
That being said, the current system isn't in line with my ideals either. That's because ping spamming is toxic behavior, and you still have to deal with it even if you mute somebody.
#Solution:
I think when you mute someone, it should reduce the amount of pings they can send you (to one every 3 seconds, or something like that). If they're pinging constructively, that's plenty. If you're trying to abuse the ping system, it's not enough (especially, because it's pretty easy to build a system that detects if somebody is pinging every 3 seconds non-stop and increase the time they have in between pings).