Si entiendo bien tu problema. su punto de partida fue esta pregunta. Probablemente pueda acceder a A desde B (host no redis). Entonces, en A, puede presionar lo que necesita emitir en A:
LPUSH dataToEmit "{'room':'room-ABCD', 'data':'<escapeddata>'}"
y en su proceso A, realiza un BRPOP en dataToEmit y en la devolución de llamada puede deshacer y emitir lo que desee
Es posible que también pueda enviar 1 llave para 1 habitación. No olvides que puedes usar un número de base de datos específico para estas cosas
Espero que te ayude