É sim Otto! Eu herdo esse método da classe. Mas acabei descobrindo o problema. Por algum motivo, eu naturalmente não consigo acessar alguns atributos da classe fora de seu próprio escopo. Nunca tinha visto isso antes no python. Acho que me falta algum conhecimento sobre orientação a objetos, e sobre como a declaração e acesso de atributos funciona, já que no python não existem variáveis privadas, apenas representações das mesmas.
Para corrigir o problema eu tive que importar uma função da própria biblioteca channels
, e uma outra função para que pudesse utilizar métodos assíncronos dentro de um outro método que é síncrono.
from asgiref.sync import async_to_sync
from channels.layers import get_channel_layer
E depois, foi só seguir normalmente a documentação, chamando os métodos como descritos nela. Declarando qual o nome do grupo, o tipo, e a mensagem a ser enviada, consegui fazer funcionar.
data = json.loads(body.decode())
channel_layer = get_channel_layer()
async_to_sync(channel_layer.group_send)('chat_my_room', {'type': 'notification', 'message': data})