No, to je trochu oříšek. Možnost zasílat zprávy se řídí pravomocí "Posílat zprávy libovolnému uživateli (moodle/site:sendmessage)" http://docs.moodle.org/20/en/Capabilities/moodle/site:sendmessage
Jenže toto oprávnění se kontroluje v systémovém kontextu celého serveru, nikoliv kurzu. A roli učitel nebo student uživatelé typicky dostávají až na úrovni kurzu. Jediným řešením je tedy:
- Nadefinovat novou roli, např. pojmenovanou "Může posílat zprávy"
- Pro tuto roli nepoužívat žádný archetyp a jediné oprávnění, které svým nositelům dává, nechť je právě posílat zprávy.
- V nastavení role "Registrovaný uživatel" toto oprávnění naopak odebrat (nenastavovat).
- Novou roli přidělit jako globální roli všem členům vašeho učitelského sboru.
Takže když se vám přihlásí váš student, bude mít roli Registrovaný uživatel a pravomoc posílat zprávy nebude mít. Když se přihlásí učitel, bude mít vedle role Registrovaný uživatel (kterou mají všichni) i tu novou roli a zprávy bude moci posílat.
Ještě obecnějším řešením by mohlo být pojmenovat tu roli "Člen pedagogického sboru" a používat ji i pro další účely - např. pro zobrazení určitých bloků na titulní straně právě jen těmto uživatelům.