As you can see the broadcast function has 3 types of calls:

broadcast(message) = this is used by the /broadcast command
broadcast(user,message) = this is used by stuff like /afk and /me - these need to respect /ignore status
broadcast(perm,message) = this is used for stuff like ban notifications where players need a perm to see them