You can also prioritise the other channels, or simply sit on DMs if they are not urgent¹, and let it be known that you do this. Many will start using your preferred channel if you explicitly don't make it easy not to.
We do something similar for external requests: if a client sends a direct mail to me, there is absolutely no SLA covering my response times and I deliberately don't jump on the case. You have to be a little dickish to make this work, if you respond quickly to direct contact by mail/phone/other people will not start favouring the proper channels.
[1] also make it clear to people that what is urgent to them may not be as urgent to you!
I totally agree that cultural norms can rework all these issues, but I also imagine if I were building an app and saw people constantly using it in a particular way that caused people to constantly say "Hey, do this in this other place instead," I'd rework the app to fit what I was shooting for.
We do something similar for external requests: if a client sends a direct mail to me, there is absolutely no SLA covering my response times and I deliberately don't jump on the case. You have to be a little dickish to make this work, if you respond quickly to direct contact by mail/phone/other people will not start favouring the proper channels.
[1] also make it clear to people that what is urgent to them may not be as urgent to you!