He intentado muchas cosas para implementar esta función, instalando y desinstalando el nodo muchas veces y muchos intentos más, pero todavía me da el mismo error. Lo que estoy tratando de lograr es usar el paquete agora-access-token para generar un token usando la función firebase, el código es:
const functions = require("firebase-functions"); const {RtcTokenBuilder, RtcRole} = require("agora-access-token"); exports.agoraToken = functions.region("asia-south1"). https.onCall((data, context)=> { const appID = "<myAppID>"; const appCertificate = "myAppCertificate"; const uid = data.uid; const channelId = data.channelId; const role = RtcRole.PUBLISHER; const expirationTimeInSeconds = 3600; const currentTimestamp = Math.floor(Date.now() / 1000); const privilegeExpiredTs = currentTimestamp + expirationTimeInSeconds; const token = RtcTokenBuilder.buildTokenWithUid(appID, appCertificate, channelId, uid, role, privilegeExpiredTs); return token; });
Y el error es:
=== Implementando en 'xxxx'...
Implemento funciones Comando en ejecución: npm --prefix "$RESOURCE_DIR" run lint
pelusa eslint.
- funciones: Finalizó la ejecución del script previo a la implementación. i funciones: asegurando que la API requerida cloudfunctions.googleapis.com esté habilitada... i funciones: asegurando que la API requerida cloudbuild.googleapis.com esté habilitada... i funciones: asegurando que la API requerida artefactoregistry.googleapis.com esté habilitada...
- funciones: la API requerida artefactoregistry.googleapis.com está habilitada
- funciones: la API requerida cloudfunctions.googleapis.com está habilitada
- funciones: la API requerida cloudbuild.googleapis.com está habilitada i funciones: preparando el directorio de funciones para cargar... i funciones: funciones empaquetadas (71.53 KB) para cargar
- funciones: carpeta de funciones cargada con éxito i funciones: creación de Node.js 14 función agoraToken (asia-sur1)...
El despliegue de funciones tuvo errores con las siguientes funciones: agoraToken(asia-south1) i funciones: limpieza de archivos de compilación...
Error: hubo un error al implementar funciones
El problema fue que no agregué la dependencia en el archivo package.json. Tuve que agregar la dependencia agora-access-token en package.json en la carpeta de funciones.
Lo que puedo proponer es que use --debug
porque proporciona información que no se encuentra en los registros y también puede solucionar una implementación problemática.
Intente ejecutar la implementación con --debug. Ejemplo: firebase --debug deploy.
Los registros de Cloud Function se pueden ver en el panel de control de Firebase, la IU de Cloud Logging o la herramienta de línea de comandos de Firebase.
Para ver más registros, aquí está el enlace a la documentación.