addons (RPC)

Обмен между аддонами, отдельно от events (HTTP). Главный процесс маршрутизирует запросы между включёнными воркерами.

addons.request(targetAddonId, method, params?)

Вызывает обработчик, зарегистрированный в другом аддоне.

const res = await addons.request('other_addon', 'getChannelId', { platform: 'example' });
if (res.success) {
  console.log(res.result);
}

Возвращает { success: true, result? } или { success: false, message? }.

addons.onRequest(method, handler)

Экспонирует метод для других аддонов.

addons.onRequest('getChannelId', async ({ fromAddonId, params }) => {
  console.log('Request from', fromAddonId);
  return { channelId: '12345' };
});

Обработчик получает { fromAddonId, params } и возвращает payload ответа.

addons.offRequest(method)

Удаляет ранее зарегистрированный обработчик.

Зависимости в манифесте

Используйте depends_on: ["other_addon"] в manifest.json, когда вашему аддону нужно, чтобы другой аддон был установлен и включён до активации.