В документации API, на которую вы ссылаетесь, предлагается указать в качестве первого параметра объект MessageOptions . Согласно документации API для этого объекта, вы должны составить объект, который содержит одну из опций для определения полезной нагрузки. Если у вас есть узел Buffer, вы должны составить объект следующим образом:
topic.publishMessage({data: otherBuffer}, callback);
Этот метод является асинхронным и возвращает обещание, указывающее, когда сообщение отправлено.
Помните также, что вам необходимо вернуть обещание из вашей функции, которое разрешается только после завершения всей асинхронной работы c. Возвращение нуля, как вы сейчас, не будет работать. Вы должны использовать обещание, возвращаемое publishMessage (), чтобы сообщить облачным функциям, что ваша работа завершена и ее можно очистить.
return topic.publishMessage(...);
Я предлагаю также рассмотреть возможность использования этого обещания вместо функции обратного вызова, чтобы продолжить с дополнительной работой (например, вашей регистрации). Обучение эффективному обращению с обещаниями абсолютно необходимо для написания эффективных JavaScript в среде облачных функций.