Широковещательный канал NodeJS работает только в 1 направлении

#node.js

Вопрос:

У меня есть продвинутый сервер, управляющий несколькими API и потоковой передачей везде, где это возможно.

Существует 2 основных потока, threadHub * UIThread.

Они используют канал вещания для связи.

 var bc = new BroadcastChannel('main', {
   type: 'node',
   webWorkerSupport: true
 })
 

threadHub использует это для получения всех сообщений, которые он отправляет в функцию, которая правильно их обрабатывает.
Он успешно принимает все отправленные сообщения.

 bc.onmessage = (event) => {
    var data = event.data;
    include.threading.getData(data);
};
 

UIThread использует тот же метод, но никогда не получает никаких сообщений, даже от себя.

 bc.onmessage = (event) => {
  var temp = event.data;
  print(`DATA: ${temp}`)// print calls a seperate function where the data is sent to the threadHub which controls STDOUT and logs it. This function does work.
  var buffer = temp.split("|");
  var threadId = buffer[0];
  var dataType = buffer[1];
  var data = buffer[2];
  if (!threadId == "-1") return 1;
  switch (dataType) {
    case "log": {
      debug = debug   data;
      break;
    }
  }
};
 

Все сообщения отправляются с помощью bc.postMessage(`0|${text}`)

Канал вещания определен здесь:

 const {
  Worker, SHARE_ENV, isMainThread, parentPort, workerData, BroadcastChannel
} = require('worker_threads');
 

Итак, мой вопрос в том, почему bc.onmessage он не работает в UIThread, но безупречно работает в threadHub?