Despliegue del paquete de componentes en un servicio

Puede alojar el paquete de componentes personalizados desde un contenedor incorporado de Digital Assistant, Oracle Cloud Infrastructure Functions, Mobile Hub o un servidor Node.js externo.

Para los servicios de componentes incrustados, despliegue el paquete al crear el servicio. Para Oracle Cloud Infrastructure Functions, el servidor Node.js externo y los servicios de Mobile Hub, primero debe desplegar el paquete en el servicio, como se describe a continuación, antes de agregarlo a una aptitud como servicio de componente.

Despliegue en un servidor Node.js

Para alojar un paquete de componentes personalizados en un servidor Node.js externo, utilice la CLI bots-node-sdk pack --service express para copiar las carpetas del paquete de componentes y realizar los cambios específicos en Express. A continuación, instale el paquete de componentes e inícielo en el servidor.

  1. Desde la carpeta de nivel superior del paquete de componentes personalizados (la que contiene el archivo main.js), escriba este comando en una ventana de terminal:

    bots-node-sdk pack --service express

    El comando actúa de esta forma:

    • Copia los archivos y subcarpetas en service-express-<versión del paquete>.
    • Agrega un envoltorio de servicio index.js.
    • Crea un archivo api.js, que es un envoltorio de Express para main.js.
    • Modifica el archivo package.json para establecer el archivo principal en index.js y agregar las dependencias.

    En este paso, se muestra el comando básico de la CLI. Para obtener más información, consulte https://github.com/oracle/bots-node-sdk/blob/master/bin/CLI.md.

  2. Ejecute estos comandos:

    npm install
    
    npm start

Despliegue en Oracle Cloud Infrastructure Functions

Puede desplegar los componentes personalizados en Oracle Cloud Infrastructure Functions.

Actualmente, Oracle Digital Assistant no puede acceder a los manejadores de eventos de entidades en paquetes que despliegue en Oracle Cloud Infrastructure Functions.

Estos son los pasos generales:

  1. Obtención de nombres y permisos de artefactos para el despliegue de Oracle Cloud Infrastructure Functions

  2. Configuración de su cuenta de usuario para Oracle Functions

  3. Configuración de la máquina local para Oracle Functions

  4. Modificación del paquete de componentes personalizados para Oracle Functions

  5. Despliegue de componentes personalizados en Oracle Cloud Infrastructure Functions

Obtención de nombres y permisos de artefactos para el despliegue de Oracle Cloud Infrastructure Functions

Para poder desplegar componentes personalizados en Oracle Cloud Infrastructure Functions, debe obtener los nombres de los artefactos que se utilizan para el despliegue y debe verificar que tiene permiso para utilizarlos.

Para configurar la instancia para el despliegue de Oracle Cloud Infrastructure Functions, el administrador del arrendamiento ha realizado los pasos de Configuración y políticas para Oracle Functions. Como parte del proceso, han creado los siguientes artefactos. Pida al administrador sus nombres, que necesitará cuando realice los pasos de Configuración de la cuenta de usuario para Oracle Functions:

  • Los nombres de la región y del compartimento que se utilizarán para sus funciones.

  • El nombre del compartimento de la red virtual (VCN) de la aplicación de la función. Normalmente, es el mismo compartimento que el utilizado para las funciones.

  • El nombre de la VCN que se va a utilizar para la aplicación de la función.

Además, solicite al administrador que verifique que pertenece a un grupo que tenga los permisos necesarios para los desarrolladores de funciones, que incluye el acceso a esos artefactos.

Configuración de su cuenta de usuario para Oracle Functions

Para poder desplegar paquetes de componentes personalizados en Oracle Cloud Infrastructure Functions, debe realizar estos pasos en la consola de Oracle Cloud Infrastructure:

Nota

Necesitará saber el nombre de los compartimentos y de la red virtual (VCN) que se van a utilizar y tendrá que pertenecer a un grupo que permita el desarrollo de funciones, como se describe en Obtención de nombres y permisos de artefactos para el despliegue de Oracle Cloud Infrastructure Functions.
  1. Conéctese a la consola y, en la barra superior, seleccione la región en la que está el compartimento de desarrollo de funciones.

  2. Realizará el despliegue en Oracle Cloud Infrastructure Functions a través de Oracle Cloud Infrastructure Registry. Si aún no tiene un repositorio de registro que pueda utilizar, haga lo siguiente para crear uno.

    1. Haga clic en Icono del menú de navegación en la parte superior izquierda para abrir el menú de navegación, haga clic en Servicios para desarrolladores, haga clic en Container Registry y, a continuación, en la sección Ámbito de lista, seleccione el compartimento que se ha configurado para el desarrollo de funciones.

    2. Haga clic en Crear repositorio.

    3. Asigne un nombre al repositorio y, a continuación, haga clic en Crear repositorio.

  3. Si no tiene una aplicación de funciones para sus paquetes de componentes personalizados, deberá crear una. En la página Servicios para desarrolladores, haga clic en Funciones y, a continuación, en Crear aplicación. Proporcione un nombre, seleccione una VCN, seleccione al menos una subred y haga clic en Crear.

    Si no ve ninguna VCN que elegir, es posible que no esté en la región correcta.

    Hay límites en el número de aplicaciones y funciones. Para conocer los límites por defecto, consulte Límites de funciones en la documentación de Oracle Cloud Infrastructure .

  4. En la página Aplicaciones, haga clic en la aplicación que utilice para el despliegue de funciones, haga clic en Introducción en la sección Recursos y, a continuación, haga clic en Configuración local.

    Como se muestra en la siguiente captura de pantalla, la página muestra varios comandos que necesitará utilizar para configurar su computadora local y para desplegar su paquete de componentes personalizados. Copie y guarde los comandos para los pasos del 3 al 7.

    Los utilizará después de haber instalado el software necesario en la máquina local y estar listo para desplegar los componentes personalizados. También puede marcar esta página para poder volver a ella cuando necesite utilizar los comandos.

    No ejecute estos comandos ahora. Solo tiene que copiarlos.


    A continuación se muestra la descripción de fn-local-setup-commands.png
    Descripción de la ilustración fn-local-setup-commands.png

  5. En el comando copiado que tiene un aspecto similar al siguiente, cambie [OCIR-REPO] por el nombre del repositorio de registro.

    fn update context registry phx.ocir.io/devdigital/[OCIR-REPO]
  6. Haga clic en el icono Perfil en la esquina superior derecha y, a continuación, haga clic en Configuración de usuario para ir a la página Detalles del usuario.

  7. En el siguiente paso, creará un archivo PEM que deberá almacenar en una carpeta .oci de la máquina local. Si la carpeta de inicio de la máquina local no tiene este directorio, cree uno desde una ventana de terminal.

    • Linux y Mac:

      cd ~
      mkdir .oci
    • Windows:

      cd C:\Users\<your-user-name>
      mkdir .oci
  8. Necesita un archivo PEM público y privado para un acceso seguro. Si aún no ha configurado uno para su cuenta de usuario, en Detalles del usuario en la consola, haga clic en Claves de API en la sección Recursos y, a continuación, haga clic en Agregar clave de API.

    Guarde el archivo de clave privada (el archivo PEM) en el directorio .oci de su carpeta raíz.

  9. Anote la huella asociada a la clave de API. Cuando tenga varias claves de API, debe saber qué huella utilizar para cada archivo PEM privado.
  10. Si aún no ha configurado un archivo config para la huella en la máquina local, realice estos pasos desde la sección Claves de API:

    1. Haga clic en Más información. en la fila de la huella de la clave de API y, a continuación, haga clic en Ver archivo de configuración.

    2. Copie el contenido de Vista previa de archivo de configuración.

    3. En la carpeta .oci de la máquina local (la misma carpeta en la que ha guardado el archivo de claves privadas), cree un archivo denominado config y pegue el contenido copiado en el archivo.

  11. En el archivo config, cambie la propiedad key_file para que apunte a la ubicación del archivo PEM privado. Por ejemplo: key_file=/home/joe/.oci/my-private.pem

  12. Si no tiene un token de autenticación, haga clic en Tokens de autenticación en el menú Recursos y, a continuación, haga clic en Generar token. Copie el token de autenticación inmediatamente en una ubicación segura desde donde pueda recuperarlo más tarde, ya que no verá el token de autenticación de nuevo en la consola. Utilice el token de autenticación como contraseña al conectarse para transferir el paquete de componentes personalizados al registro de Oracle Infrastructure para su despliegue.

Configuración de la máquina local para Oracle Functions

Necesitará instalar cURL, la interfaz de línea de comandos (CLI) de OCI, Fn y Docker en la máquina local para permitir el despliegue en Oracle Cloud Infrastructure Functions. Si su máquina se ejecuta en Windows, debe utilizar una de las siguientes opciones para utilizar Fn:

  • Instale Fn y Docker en Linux en una instancia de Oracle VM VirtualBox siguiendo los pasos de este tema.

  • Instale Docker y Fn en Windows y, a continuación, instale el subsistema Linux para Windows, como se describe en How-to: Run Fn client on Windows and connect to a remote Fn serve.

  • Despliegue sus componentes personalizados desde Cloud Shell. Consulte Cloud Shell en la documentación de Oracle Cloud Infrastructure.

Para configurar la máquina local:

  1. (Solo Windows en máquina virtual) Si desea utilizar un invitado de Linux en Oracle VM VirtualBox para desplegar el paquete de componentes personalizados en Oracle Cloud Infrastructure Functions, siga estos pasos:

    1. Instale VirtualBox desde https://www.virtualbox.org/.

    2. Descargue un archivo ISO de Linux. Por ejemplo, para obtener el archivo ISO para Ubuntu-Mate, vaya a https://ubuntu-mate.org/download/ y haga clic en PC/Macs de 64 bits.

    3. En VirtualBox, cree una máquina virtual a partir del archivo ISO. Puede encontrar instrucciones para crear una máquina virtual Ubuntu-Mate en https://itsfoss.com/install-linux-in-virtualbox/. Este será su invitado de Linux.

    4. Inicie el invitado de Linux.

    5. Desde una ventana de terminal, ejecute este comando:

      sudo apt-get update

      De esta forma, se actualizan las listas de paquetes para los paquetes nuevos y los paquetes que necesitan actualización.

      Consejo:

      Para abrir una ventana de terminal en Ubuntu, pulse Ctrl-Alt-T.
    6. Para poder hacer cosas como copiar y pegar en una ventana de terminal, necesitará las adiciones del invitado. Descargue http://download.virtualbox.org/virtualbox/<release>/VBoxGuestAdditions_<release>.iso e instale y configure las adiciones con las instrucciones de https://itsfoss.com/virtualbox-guest-additions-ubuntu/

      Asegúrese de configurar Dispositivos > Arrastrar y soltar en bidireccional.

    7. Introduzca este comando en una ventana de terminal para instalar node.js y npm en el invitado.

      sudo apt install npm
    8. Arrastre la carpeta .oci en el directorio de inicio de la máquina local a la carpeta de inicio del invitado de Linux.

      Como es un archivo oculto, debe pulsar Ctrl-H o seleccionar Ver > Mostrar archivos ocultos en la carpeta de inicio para verlo.

    9. En la carpeta .oci del invitado de Linux, abra el archivo config y cambie key_file para que apunte a la ubicación del archivo en el invitado de Linux. Por ejemplo: key_file=/home/joe/.oci/my-private.pem

    10. Lleve a cabo los demás pasos de este tema desde el invitado de Linux.

  2. (Solo Mac) Si aún no lo ha hecho, instale Homebrew para permitirle instalar cURL, OCI CLI y Fn. Consulte https://docs.brew.sh/Installation. Como alternativa, puede usar los comandos de MacPorts equivalentes.
  3. Si su acceso a Internet es a través de una VPN, puede que necesite configurar proxies. Por ejemplo:

    export http-proxy = http://<external_ip>:80
    export https-proxy = http://<external_ip>:80
    export no_proxy = localhost,127.0.0.1,<list>
    export noproxy = localhost,127.0.0.1,<list>
    export no_proxy = localhost,127.0.0.1,<list>
    # Example for apt
    nano /etc/apt/apt.conf
    Acquire::http::Proxy "http://<external_ip>:80";
    Acquire::https::Proxy "http://<external_ip>:80";
  4. Ejecute el comando adecuado para actualizar los paquetes.

    • Linux:

      sudo apt update && sudo apt upgrade
    • Mac:

      brew update && brew upgrade
  5. (Solo Linux) Utilizará cURL para instalar OCI y Fn. Introduzca este comando en una ventana de terminal. La última sentencia se usa para verificar que se haya instalado correctamente.

    sudo apt install curl
    curl --version
  6. Fn utiliza la CLI de OCI para desplegar los componentes personalizados en Oracle Cloud Infrastructure Functions. Ejecute el comando adecuado para instalar la CLI y acepte todos los valores por defecto.

    • Linux:

      bash -c "$(curl -L https://raw.githubusercontent.com/oracle/oci-cli/master/scripts/install/install.sh)"
    • Mac:

      brew update && brew install oci-cli
    • Windows (si se utiliza el subsistema Linux en Windows): siga los pasos de Windows en Inicio rápido de la documentación de Oracle Cloud Infrastructure.
  7. En Configuración de su cuenta de usuario para Oracle Functions, ha creado un archivo config. Ahora debe configurar la CLI para utilizar ese archivo. Abra una nueva ventana de terminal, ejecute este comando, proporcione la ubicación del archivo config y, a continuación, introduzca n para las demás preguntas (el archivo config ya tiene los valores necesarios).

    oci setup config

    Por ejemplo:

    $ oci setup config
        This command provides a walkthrough of creating a valid CLI config file.
        ...
    
    Enter a location for your config [/home/joe/.oci/config]:
    Config file: /home/joe/.oci/config already exists. Do you want add a profile here? (If no, you will be prompted to overwrite the file) [Y/n]: n
    File: /home/joe/.oci/config already exists. Do you want to overwrite (Removes existing profiles!!!)? [y/N]: n
  8. Necesita Docker 17.10.0-ce o posterior para transferir el paquete de componentes personalizados al registro.

    Consulte https://docs.docker.com/engine/install/linux-postinstall/ si no desea agregar previamente al comando docker sudo.

  9. Si utiliza una VPN, siga las instrucciones de https://docs.docker.com/network/proxy/

    Si utiliza el subsistema Linux en Windows, puede definir los proxies desde la página Recursos de Configuración de Docker Desktop.

  10. Asegúrese de que Docker está en ejecución. No puede iniciar Fn, que instalará a continuación, si Docker no se está ejecutando.

  11. Utilizará Fn, que es una plataforma de funciones sin servidor ligera basada en Docker, para configurar el contexto y desplegar el paquete. Si aún no lo ha instalado, siga las instrucciones para instalar Fn, iniciar el servidor Fn y probar la instalación en https://fnproject.io/tutorials/install/.

    No es necesario configurar el contexto ni definir el registro en este momento. Lo hará cuando realice los pasos de Deploy the Custom Components to Oracle Cloud Infrastructure Functions.

Modificación del paquete de componentes personalizados para Oracle Functions

Antes de desplegar un paquete de componentes personalizados en Oracle Cloud Infrastructure Functions, deberá agregar archivos func.js y func.yaml, agregar una dependencia de desarrollador para el FDK de fnproject e instalar el FDK.

Nota

(Solo máquina virtual de Windows) Si utiliza un invitado de Linux, complete estos pasos en su máquina local y, a continuación, use la función de arrastrar y soltar para copiar el paquete de componentes en el invitado de Linux. También puede instalar node.js y Bots Node SDK, como se describe en el Paso 1: instalación del software para crear componentes personalizado, en su invitado de Linux antes de realizar los pasos.
  1. Si ha utilizado el comando bots-node-sdk init para crear el paquete de componentes personalizados, puede que haya creado un archivo denominado Dockerfile en la carpeta superior. Si es así, debe suprimirlo. De lo contrario, el despliegue fallará.

  2. En la carpeta superior del paquete de componentes personalizados (la carpeta que contiene main.js), cree un archivo denominado func.js y, a continuación, agregue el siguiente código. Este es el archivo al que llamará Oracle Cloud Infrastructure Functions.

    /***
     
      This function handles an invocation that sets the "Oracle-Bots-Fn-Path" header to determine which component to invoke or if metadata should be returned.
     
    ***/
     
    const fdk = require('@fnproject/fdk');
    const OracleBotLib = require('@oracle/bots-node-sdk/lib');
    const path = require("path");
     
    const BOTS_FN_PATH_HEADER = "Oracle-Bots-Fn-Path";
    const METADATA_PATH = "metadata";
    const COMPONENT_PREFIX = "components/";
     
    let shell;
    let componentsRegistry;
     
    const getComponentsRegistry = function (packagePath) {
        let registry = require(packagePath);
        if (registry.components) {
            return OracleBotLib.ComponentRegistry.create(registry.components, path.join(process.cwd(), packagePath));
        }
        return null;
    }
     
    componentsRegistry = getComponentsRegistry('.');
    if (componentsRegistry && componentsRegistry.getComponents().size > 0) {
        shell = OracleBotLib.ComponentShell({logger: console}, componentsRegistry);
        if (!shell) {
            throw new Error("Failed to initialize Bots Node SDK");
        }
    } else {
        throw new Error("Unable to process component registry because no components were found in package: " + packagePath);
    }
     
    const _handle = function (input, ctx) {
        let botsFnPath = ctx.getHeader(BOTS_FN_PATH_HEADER);
        if (!botsFnPath) {
            throw new Error("Missing required header " +  BOTS_FN_PATH_HEADER);
        } else if (botsFnPath === METADATA_PATH) {
            return shell.getAllComponentMetadata();
        } else if (botsFnPath.startsWith(COMPONENT_PREFIX)) {
            let componentName = botsFnPath.substring(COMPONENT_PREFIX.length);
            if (!componentName) {
                throw new Error("The component name is missing from the header " + BOTS_FN_PATH_HEADER + ": " + botsFnPath);
            }
            return new Promise((resolve) => {
                let callback = (err, data) => {
                    if (!err) {
                        resolve(data);
                    } else {
                        console.log("Component invocation failed", err.stack);
                        throw err;
                    }
                };
                shell.invokeComponentByName(componentName, input, {logger: () => console}, callback);
                });
        }
    };
     
    fdk.handle(function (input, ctx) {
        try {
            return _handle(input, ctx);
        } catch (err) {
            console.log("Function failed", err.stack);
            throw err;
        }
    });
  3. En la misma carpeta, cree un archivo denominado func.yaml y, a continuación, agregue el siguiente contenido:

    schema_version: 20180708
    name: <custom component package name>
    version: 0.0.1
    runtime: [node11|node14]
    build_image: [fnproject/node:11-dev|fnproject/node:14-dev]
    run_image: [fnproject/node:11|fnproject/node:14]
    entrypoint: node func.js
  4. En la propiedad name, cambie <custom component package name> por el nombre del paquete de componentes personalizados y, a continuación, guarde los cambios. El nombre suele ser el mismo que el que se especifica en el archivo package.json.

    El nombre no debe tener más de 255 caracteres y solo debe contener letras, números, _ y -.

  5. Configure estas propiedades:

    • runtime: idioma y versión del nodo. Especifique node11 o node14.

    • build_image: imagen base de tiempo de compilación que contiene las bibliotecas y herramientas específicas del idioma para crear funciones ejecutables. Especifique fnproject/node:11-dev o fnproject/node:14-dev.

    • run_image: imagen base de tiempo de ejecución que proporciona el entorno de tiempo de ejecución específico del lenguaje en el que se ejecutan las funciones ejecutables. Especifique fnproject/node:11 o fnproject/node:14.

  6. En una ventana de terminal, cambie a la carpeta superior del paquete e introduzca este comando para instalar el FDK y agregarlo como dependencia del paquete en el archivo package.json:

    npm install --save-dev @fnproject/fdk
  7. (Opcional: Linux, Mac y subsistema Linux solo en Windows) Ejecute este comando para instalar dependencias de paquetes:

    npm install

    Tenga en cuenta que si la carpeta node_modules no existe, el comando fn deploy que utilice más tarde llamará a npm install.

  8. (Solo máquina virtual de Windows) Realice estos pasos para copiar el código de componente personalizado en su invitado de Linux para el despliegue:

    1. Arrastre y suelte la carpeta de nivel superior al invitado de Linux.

    2. En una ventana de terminal, cambie a la carpeta de nivel superior (la que contiene main.js) y escriba este comando para agregar permisos de ejecución para la carpeta.

      chmod 755 components
    3. Suprima la carpeta node_modules para asegurarse de que no tiene ningún módulo de nodo dependiente de la plataforma.

    4. (Opcional) Ejecute este comando para reinstalar las dependencias del módulo de nodos.

      npm install

      Tenga en cuenta que si la carpeta node_modules no existe, el comando fn deploy que ejecute más tarde llamará a npm install.

Ya puede realizar los pasos de Despliegue de componentes personalizados en Oracle Cloud Infrastructure Functions.

Despliegue de componentes personalizados en Oracle Cloud Infrastructure Functions

Después de crear el archivo func.js, agregar fnproject a las dependencias de desarrollo e instalar las dependencias como se describe en Modificación del paquete de componentes personalizados para Oracle Functions, estará listo para desplegar una imagen de Docker del paquete de componentes en Oracle Cloud Infrastructure Functions.

Cuando haya realizado los pasos de Configuración de su cuenta de usuario para Oracle Functions, habrá copiado los comandos de la configuración local en la página Introducción para los pasos del 3 al 7. Utilizará estos comandos copiados para desplegar los componentes personalizados.

Si utiliza Cloud Shell, use los comandos similares que se muestran en Configuración de Cloud Shell en su lugar.

Para desplegar los componentes personalizados:

  1. Asegúrese de que Docker y el servidor de Fn se estén ejecutando.

  2. En una ventana de terminal, cambie al directorio superior del paquete de componentes personalizados e introduzca los comandos copiados equivalentes para configurar el contexto.

    fn create context <context> --provider oracle
    fn use context <context>
    fn update context oracle.compartment-id <compartment-ocid>
    fn update context api-url https://functions.<region-identifier>.oci.oraclecloud.com

    No tiene que volver a ejecutar estos comandos hasta que necesite cambiar las configuraciones del contexto.

    Si aparece el error "Fn: error replace file with tempfile" al cambiar el contexto, edite manualmente ~/.fn/config.yaml y cambie el contexto en ese archivo.

  3. Si el archivo de configuración tiene varios perfiles, introduzca este comando para que apunte al perfil creado en Configuración de la cuenta de usuario para Oracle Functions.

    fn update context oracle.profile <profile-name>
  4. Para apuntar al repositorio de registro creado en Configuración de su cuenta de usuario para Oracle Functions, introduzca el comando copiado que es equivalente al siguiente. Si aún no lo ha hecho, cambie [OCIR-REPO] por el nombre de su repositorio.

    fn update context registry <region-key>.ocir.io/<tenancy-namespace>/[OCIR-REPO]

    No tiene que volver a ejecutar este comando hasta que necesite cambiar la configuración del repositorio.

  5. Si no ha iniciado sesión en Docker en la sesión actual, ejecute el comando copiado que es equivalente al que se muestra aquí.

    Cuando se le solicite una contraseña, introduzca su token de autenticación, que es el token que ha obtenido al realizar los pasos de Configuración de su cuenta de usuario para Oracle Functions.

    docker login -u '<tenancy-namespace>/<user-name>' <region-key>.ocir.io
  6. Para desplegar los componentes personalizados, ejecute este comando:

    fn deploy --app <application>

    Si ve el siguiente mensaje, abra el archivo .oci/config y verifique que fingerprint muestra la huella correcta para el key_file especificado. Si no es así, vaya a la configuración de usuario en la consola, haga clic en Claves de API, visualice el archivo de configuración para la huella correcta y, a continuación, sustituya el contenido del archivo de configuración por el contenido mostrado.

    Fn: Service error:NotAuthenticated. The required information to complete
    authentication was not provided or was incorrect.. 
    http status code: 401.

Sus componentes personalizados están listos para usarse en una aptitud como se describe en Adición de un servicio de Oracle Functions.

Despliegue en Mobile Hub

Para alojar un paquete de componentes personalizados en Mobile Hub, utilice la CLI bots-node-sdk pack --service mobile-api para copiar las carpetas de paquetes de componentes y realizar algunos cambios específicos de Mobile Hub, incluido el archivo RAML. A continuación, cree la API personalizada a partir del archivo RAML y cargue un ZIP del paquete de componentes en la API personalizada.

  1. Desde la carpeta de nivel superior del paquete de componentes personalizados (la que contiene el archivo main.js), escriba este comando en una ventana de terminal:

    bots-node-sdk pack --service mobile-api

    El comando actúa de esta forma:

    • Copia los archivos y subcarpetas en service-mobile-api-<versión del paquete>.
    • Agrega un archivo component.service.raml, que contiene las operaciones y los puntos finales necesarios.
    • Crea un archivo api.js, que es un envoltorio de Mobile Hub para main.js.
    • Modifica el archivo package.json para definir el archivo principal en api.js, definir las dependencias y agregar la configuración del nodo de Mobile Hub.

    En este paso, se muestra el comando básico de la CLI. Para obtener más información, consulte https://github.com/oracle/bots-node-sdk/blob/master/bin/CLI.md.

  2. Revise el archivo package.json y verifique que el nombre del paquete cumpla las siguientes restricciones de Mobile Hub. Modifique el nombre según sea necesario para que se ajuste.
    • El nombre solo puede contener letras (A-Z, a-z), números (0-9) y caracteres de subrayado (_).
    • El nombre debe empezar por una letra.
    • El nombre debe tener 100 caracteres o menos.
  3. En la página de las API de Mobile Hub, haga clic en Nueva API > API y, a continuación, cree la API personalizada cargando el archivo component.service.raml.

  4. En el separador Seguridad, desactive Conexión necesaria y, a continuación, haga clic en Guardar.

  5. Comprima la carpeta service-mobile-api-<versión del paquete> y, a continuación, cargue el archivo ZIP desde el separador Implantación de la API personalizada.

  6. En la página Prueba, llame a la solicitud GET. La respuesta debe mostrar los metadatos del componente.

    Consejo:

    Si obtiene el estado 500 y el error es que no se puede encontrar una definición de ruta coincidente, compruebe si existen archivos con una sintaxis de JavaScript incorrecta, ya que esta es la causa más habitual.