Distribuire il package di componenti in un servizio
È possibile ospitare il pacchetto di componenti personalizzati da un contenitore incorporato Digital Assistant, da Oracle Cloud Infrastructure Functions, da Mobile Hub o da un server Node.js esterno.
Per i servizi componente incorporati, distribuire il package quando si crea il servizio. Per Oracle Cloud Infrastructure Functions, il server Node.js esterno e i servizi Mobile Hub, è necessario distribuire il package nel servizio, come descritto qui, prima di aggiungerlo a una skill come servizio componente.
Distribuisci in un server Node.js
Per ospitare un pacchetto di componenti personalizzati su un server Node.js esterno, utilizzare l'interfaccia CLI bots-node-sdk pack --service express
per copiare le cartelle del pacchetto di componenti e apportare alcune modifiche specifiche a Express, quindi installare il pacchetto di componenti e avviarlo sul server.
-
Dalla cartella di livello superiore del pacchetto del componente personalizzato (quella che contiene il file
main.js
), digitare questo comando in una finestra di terminale:bots-node-sdk pack --service express
Il comando esegue le operazioni riportate di seguito.
- Copia i file e le sottocartelle in
service-express-<package version>
. - Aggiunge un wrapper del servizio
index.js
. - Crea un file
api.js
, ovvero un wrapper Express permain.js
. - Modifica il file
package.json
per impostare il file principale suindex.js
e aggiungere le dipendenze.
Questo passo mostra il comando CLI di base. Per ulteriori informazioni, vedere
https://github.com/oracle/bots-node-sdk/blob/master/bin/CLI.md
. - Copia i file e le sottocartelle in
-
Eseguire i comandi riportati di seguito.
npm install npm start
Distribuisci su Oracle Cloud Infrastructure Functions
Puoi distribuire i tuoi componenti personalizzati in Oracle Cloud Infrastructure Functions.
Al momento, Oracle Digital Assistant non può accedere ai gestori di eventi entità nei pacchetti distribuiti in Oracle Cloud Infrastructure Functions.
Di seguito sono riportati i passi di alto livello.
Ottieni nomi e autorizzazioni degli artifact per la distribuzione di Oracle Cloud Infrastructure Functions
Prima di poter distribuire componenti personalizzati in Oracle Cloud Infrastructure Functions, è necessario ottenere i nomi degli artifact utilizzati per la distribuzione ed è necessario verificare di disporre dell'autorizzazione per utilizzarli.
Per impostare l'istanza per la distribuzione di Oracle Cloud Infrastructure Functions, l'amministratore della tenancy ha completato la procedura descritta in Impostazione e criteri per Oracle Functions. Nell'ambito del processo, hanno creato i seguenti artifact. Chiedere all'amministratore i nomi desiderati quando si completa la procedura descritta in Impostazione dell'account utente per Oracle Functions:
-
I nomi dell'area e del compartimento da utilizzare per le funzioni.
-
Nome del compartimento per la rete virtuale (VCN) dell'applicazione funzione. In genere, si tratta dello stesso compartimento utilizzato per le funzioni.
-
Nome della VCN da utilizzare per l'applicazione della funzione.
Chiedere inoltre all'amministratore di verificare di appartenere a un gruppo che dispone delle autorizzazioni necessarie per gli sviluppatori di funzioni, che include l'accesso a questi artifact.
Imposta l'account utente per Oracle Functions
Prima di poter distribuire pacchetti di componenti personalizzati in Oracle Cloud Infrastructure Functions, è necessario completare questi passi nella console di Oracle Cloud Infrastructure:
Dovrai conoscere il nome dei compartimenti e della rete virtuale (VCN) da utilizzare e dovrai appartenere a un gruppo che consente lo sviluppo di funzioni come descritto nella sezione Ottieni nomi e autorizzazioni degli artifact per la distribuzione di Oracle Cloud Infrastructure Functions.
-
Accedere alla console e, nella barra superiore, selezionare l'area in cui si trova il compartimento di sviluppo delle funzioni.
-
Verrà eseguita la distribuzione in Oracle Cloud Infrastructure Functions tramite Oracle Cloud Infrastructure Registry. Se non si dispone già di un repository del registro che è possibile utilizzare, effettuare le operazioni riportate di seguito per crearne uno.
-
Fare clic su
in alto a sinistra per aprire il menu di navigazione, fare clic su Servizi sviluppatore, fare clic su Container Registry, quindi selezionare il compartimento impostato per lo sviluppo di funzioni nella sezione Ambito lista.
-
Fare clic su Crea repository.
-
Assegnare un nome al repository, quindi fare clic su Crea repository.
-
-
Se non si dispone di un'applicazione di funzioni per i package di componenti personalizzati, sarà necessario crearne una. Nella pagina Servizi per sviluppatori fare clic su Funzioni, quindi su Crea applicazione. Fornire un nome, selezionare una VCN, selezionare almeno una subnet e fare clic su Crea.
Se non vengono visualizzati VCN tra cui scegliere, è possibile che non ci si trovi nell'area corretta.
Ci sono limiti al numero di applicazioni e funzioni. Per i limiti predefiniti, consulta la sezione relativa ai limiti delle funzioni nella documentazione di Oracle Cloud Infrastructure.
-
Nella pagina Applicazioni fare clic sull'applicazione utilizzata per la distribuzione delle funzioni, quindi fare clic su Guida introduttiva nella sezione Risorse e quindi su Impostazione locale.
Come mostrato nella schermata seguente, la pagina visualizza diversi comandi che sarà necessario utilizzare per configurare il computer locale e distribuire il pacchetto di componenti personalizzati. Copiare e salvare i comandi per i passi da 3 a 7.
Tali componenti verranno utilizzati in un secondo momento dopo aver installato il software richiesto sul computer locale e dopo essere stati pronti per la distribuzione dei componenti personalizzati. In alternativa, aggiungere un segnalibro a questa pagina in modo da poterla tornare quando è necessario utilizzare i comandi.
Non eseguire questi comandi ora. Basta copiarli.
-
Nel comando copiato simile al seguente, modificare
[OCIR-REPO]
in base al nome del repository del registro.fn update context registry phx.ocir.io/devdigital/[OCIR-REPO]
-
Fare clic sull'icona Profilo nell'angolo superiore destro, quindi fare clic su Impostazioni utente per andare alla pagina Dettagli utente.
-
Nel passo successivo si creerà un file PEM da memorizzare in una cartella
.oci
sul computer locale. Se la cartella home del computer locale non contiene questa directory, crearne una da una finestra del terminale.-
Linux e Mac:
cd ~ mkdir .oci
-
Finestre:
cd C:\Users\<your-user-name> mkdir .oci
-
-
È necessario un file
PEM
pubblico e privato per un accesso sicuro. Se non è stato ancora impostato un account utente, in Dettagli utente nella console fare clic su Chiavi API nella sezione Risorse, quindi fare clic su Aggiungi chiave API.Salvare il file di chiavi private (file
PEM
) nella directory.oci
della cartella home. - Prendere nota dell'impronta associata alla chiave API. Quando si dispone di più chiavi API, è necessario sapere quale impronta digitale utilizzare per ogni file
PEM
privato. -
Se non è stato ancora impostato un file
config
per l'impronta digitale nel computer locale, effettuare le operazioni riportate di seguito nella sezione Chiavi API.-
Fare clic su
nella riga relativa all'impronta digitale della chiave API, quindi fare clic su Visualizza file di configurazione.
-
Copiare il contenuto di Anteprima file di configurazione.
-
Nella cartella
.oci
del computer locale (la stessa cartella in cui è stato salvato il file di chiavi private), creare un file denominatoconfig
e incollare il contenuto copiato nel file.
-
-
Nel file
config
, modificare la proprietàkey_file
in modo che punti alla posizione del file PEM privato. Ad esempio:key_file=/home/joe/.oci/my-private.pem
-
Se non si dispone di un token di autenticazione, fare clic su Token di autenticazione nel menu Risorse, quindi fare clic su Genera token. Copiare immediatamente il token di autenticazione in una posizione sicura da cui è possibile recuperarlo in seguito perché il token di autenticazione non verrà più visualizzato nella console. Il token di autenticazione viene utilizzato come password quando si esegue il login per eseguire il push del package di componenti personalizzati nel registro dell'infrastruttura Oracle per la distribuzione.
Impostazione del computer locale per Oracle Functions
Dovrai installare cURL, l'interfaccia della riga di comando OCI (CLI), Fn e Docker sul tuo computer locale per abilitare la distribuzione in Oracle Cloud Infrastructure Functions. Se il computer viene eseguito su Windows, è necessario eseguire una delle seguenti opzioni per utilizzare Fn:
-
Installare Fn e Docker su Linux in un Oracle VM VirtualBox seguendo i passi riportati in questo argomento.
-
Installare Docker e Fn in Windows, quindi installare il sottosistema Linux per Windows, come descritto in Come eseguire il client Fn in Windows e connettersi a un server Fn remoto.
- Distribuire i componenti personalizzati da Cloud Shell. Fare riferimento alla sezione Cloud Shell nella documentazione di Oracle Cloud Infrastructure.
Per impostare il computer locale:
-
(Solo Windows on VM) Se si desidera utilizzare un guest Linux in Oracle VM VirtualBox per distribuire il pacchetto di componenti personalizzati in Oracle Cloud Infrastructure Functions, attenersi alla procedura riportata di seguito.
-
Installare VirtualBox da https://www.virtualbox.org/.
-
Scarica un ISO Linux. Ad esempio, per ottenere l'ISO per Ubuntu-Mate, andare a https://ubuntu-mate.org/download/ e fare clic su Pc/Mac a 64 bit.
-
In VirtualBox, creare una macchina virtuale dall'ISO. Per istruzioni sulla creazione di una macchina virtuale Ubunto-Mate, visitare il sito https://itsfoss.com/install-linux-in-virtualbox/. Questo sarà il tuo guest Linux.
-
Avviare il guest Linux.
-
Da una finestra di terminale, eseguire questo comando:
sudo apt-get update
In questo modo vengono aggiornati gli elenchi dei pacchetti relativi ai nuovi pacchetti e pacchetti che devono essere aggiornati.
Suggerimento
Per aprire una finestra del terminale in Ubuntu, premere Ctrl-Alt-T. -
Per essere in grado di eseguire operazioni come copiare e incollare in una finestra del terminale, saranno necessarie le aggiunte degli ospiti. Scaricare http://download.virtualbox.org/virtualbox/<release>/VBoxGuestAdditions_<release>.iso e installare e configurare le aggiunte utilizzando le istruzioni disponibili all'indirizzo https://itsfoss.com/virtualbox-guest-additions-ubuntu/
Assicurarsi di configurare Dispositivi > Trascina selezione su bidirezionale configurato.
-
Immettere questo comando in una finestra del terminale per installare node.js e npm sul guest.
sudo apt install npm
-
Trascinare la cartella
.oci
nella directory home del computer locale nella cartella home del guest Linux.Poiché si tratta di un file nascosto, è necessario premere Ctrl-H o selezionare Visualizza > Mostra file nascosti nella cartella home per visualizzarlo.
-
Dalla cartella
.oci
sul guest Linux, aprire il fileconfig
e modificarekey_file
in modo da puntare alla posizione del file nel guest Linux. Ad esempio:key_file=/home/joe/.oci/my-private.pem
-
Completare i passi rimanenti in questo argomento dal guest Linux.
-
- (Solo per Mac) Se non l'hai ancora fatto, installa Homebrew per abilitare l'installazione di cURL, CLI OCI e Fn. Vedere https://docs.brew.sh/Installation. In alternativa, è possibile utilizzare i comandi MacPorts equivalenti.
-
Se l'accesso a Internet avviene tramite una VPN, potrebbe essere necessario impostare proxy. Ad esempio:
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";
-
Eseguire il comando appropriato per aggiornare i pacchetti.
-
Linux:
sudo apt update && sudo apt upgrade
-
Mac:
brew update && brew upgrade
-
-
(Solo Linux) Verrà utilizzato cURL per installare OCI e Fn. Immettere questa combinazione in una finestra del terminale. L'ultima istruzione consiste nel verificare che sia stata installata correttamente.
sudo apt install curl curl --version
-
Fn utilizza l'interfaccia CLI OCI per distribuire i componenti personalizzati in Oracle Cloud Infrastructure Functions. Eseguire il comando appropriato per installare l'interfaccia CLI e accettare tutte le impostazioni predefinite.
-
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 (se si utilizza il sottosistema Linux su Windows): seguire i passi di Windows in Quickstart nella documentazione di Oracle Cloud Infrastructure.
-
-
In Impostazione dell'account utente per Oracle Functions è stato creato un file
config
. Ora è necessario configurare l'interfaccia CLI in modo che utilizzi tale file. Aprire una nuova finestra del terminale, eseguire questo comando, fornire la posizione del fileconfig
, quindi immetteren
per le domande rimanenti (il fileconfig
dispone già delle impostazioni necessarie).oci setup config
Ad esempio:
$ 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
-
È necessario disporre di Docker 17.10.0-ce o versione successiva per eseguire il push del package di componenti personalizzati nel registro.
-
Per Ubuntu, le istruzioni di installazione sono disponibili all'indirizzo https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository
-
Per Mac, le istruzioni di installazione sono disponibili all'indirizzo https://docs.docker.com/docker-for-mac/install/
Se non si desidera utilizzare il comando
docker
consudo
, vedere https://docs.docker.com/engine/install/linux-postinstall/. -
-
Se si utilizza la VPN, seguire le istruzioni all'indirizzo https://docs.docker.com/network/proxy/
Se si utilizza il sottosistema Linux in Windows, è possibile impostare i proxy dalla pagina Risorse in Impostazioni di Docker Desktop.
-
Assicurarsi che il Docker sia in esecuzione. Non è possibile avviare Fn, che verrà installato in seguito, se Docker non è in esecuzione.
-
Utilizzerai Fn, una piattaforma serverless-functions leggera basata su Docker, per configurare il contesto e distribuire il pacchetto. Se non lo si è già installato, seguire le istruzioni per l'installazione di Fn, avviare il server Fn ed eseguire il test dell'installazione all'indirizzo https://fnproject.io/tutorials/install/
Non è necessario configurare il contesto o impostare il registro in questo momento. Questa operazione verrà eseguita al completamento dei passi descritti nella sezione Distribuisci componenti personalizzati in Oracle Cloud Infrastructure Functions.
Modifica del package di componenti personalizzati per Oracle Functions
Prima di poter distribuire un pacchetto di componenti personalizzati in Oracle Cloud Infrastructure Functions, dovrai aggiungere i file func.js
e func.yaml
, aggiungere una dipendenza sviluppatore per fnproject FDK e installare FDK.
(solo VM Windows) Se si utilizza un guest Linux, completare questi passi sul computer locale e quindi utilizzare il trascinamento della selezione per copiare il pacchetto del componente nel guest Linux. In alternativa, installare node.js e l'SDK del nodo bot, come descritto nel Passo 1: installare il software per la creazione di componenti personalizzati, sul guest Linux prima di eseguire i passi.
-
Se è stato utilizzato il comando
bots-node-sdk init
per creare il package di componenti personalizzati, è possibile che nella cartella superiore sia stato creato un file denominatoDockerfile
. In tal caso, è necessario eliminarlo. In caso contrario, la distribuzione non riuscirà. -
Nella cartella superiore del package di componenti personalizzati (la cartella che contiene
main.js
), creare un file denominatofunc.js
, quindi aggiungere il codice seguente. Questo è il file che verrà richiamato da 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; } });
-
Nella stessa cartella, creare un file denominato
func.yaml
, quindi aggiungere il contenuto seguente: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
-
Nella proprietà
name
, modificare<custom component package name>
in base al nome del package di componenti personalizzati, quindi salvare le modifiche. In genere il nome è lo stesso specificato nel filepackage.json
.Il nome non deve superare i 255 caratteri e deve contenere solo lettere, numeri,
_
e-
. -
Impostare le seguenti proprietà:
-
runtime
: la lingua e la versione del nodo. Specificarenode11
onode14
. -
build_image
: l'immagine di base build-time che contiene le librerie e gli strumenti specifici della lingua per creare funzioni eseguibili. Specificarefnproject/node:11-dev
ofnproject/node:14-dev
. -
run_image
: l'immagine di base runtime che fornisce l'ambiente runtime specifico della lingua in cui eseguire le funzioni eseguibili. Specificarefnproject/node:11
ofnproject/node:14
.
-
-
In una finestra di terminale, passare alla cartella superiore del pacchetto e inserire questo comando per installare il FDK e aggiungerlo come dipendenza del pacchetto nel file
package.json
:npm install --save-dev @fnproject/fdk
-
(Opzionale: sottosistema Linux, Mac e Linux solo in ambiente Windows) Eseguire questo comando per installare le dipendenze dei pacchetti:
npm install
Tenere presente che se la cartella
node_modules
non esiste, il comandofn deploy
eseguito in seguito richiamerà automaticamentenpm install
. -
(Solo VM Windows) Per copiare il codice del componente personalizzato nel guest Linux per la distribuzione, attenersi alla procedura riportata di seguito.
-
Trascinare la cartella di livello superiore nel guest Linux.
-
In una finestra del terminale, passare alla cartella di livello superiore (quella che contiene
main.js
) e digitare questo comando per aggiungere le autorizzazioni di esecuzione per la cartella.chmod 755 components
-
Eliminare la cartella
node_modules
per assicurarsi di non disporre di moduli nodo dipendenti dalla piattaforma. -
(Opzionale) Eseguire questo comando per reinstallare le dipendenze del modulo nodo.
npm install
Tenere presente che se la cartella
node_modules
non esiste, il comandofn deploy
eseguito in seguito richiamerà automaticamentenpm install
.
-
È ora possibile completare i passi descritti nella sezione Distribuire i componenti personalizzati in Oracle Cloud Infrastructure Functions.
Distribuire i componenti personalizzati in Oracle Cloud Infrastructure Functions
Dopo aver creato il file func.js
, aggiunto fnproject alle dipendenze di sviluppo e installato le dipendenze come descritto in Modify the Custom Component Package for Oracle Functions, si è pronti a distribuire un'immagine Docker del package di componenti in Oracle Cloud Infrastructure Functions.
Una volta completata la procedura descritta in Impostazione dell'account utente per Oracle Functions, i comandi sono stati copiati dalla pagina Impostazione locale della pagina Guida introduttiva per i passi da 3 a 7. Questi comandi copiati verranno utilizzati per distribuire i componenti personalizzati.
Se si utilizza Cloud Shell, utilizzare invece i comandi simili mostrati nella sezione Impostazione Cloud Shell.
Per distribuire i componenti personalizzati, effettuare le operazioni riportate di seguito.
-
Assicurarsi che Docker e il server Fn siano in esecuzione.
-
In una finestra di terminale, passare alla directory principale del pacchetto di componenti personalizzati e immettere i comandi copied equivalenti per configurare il contesto.
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
Non è necessario eseguire di nuovo questi comandi finché non è necessario modificare le configurazioni del contesto.
Se viene visualizzato l'errore "Fn: error replace file with tempfile" quando si modifica il contesto, modificare manualmente
~/.fn/config.yaml
e modificare il contesto in tale file. -
Se il file di configurazione contiene più profili, immettere questo comando per puntare al profilo creato in Impostazione dell'account utente per Oracle Functions.
fn update context oracle.profile <profile-name>
-
Per puntare al repository di registro creato in Impostazione dell'account utente per Oracle Functions, immettere il comando copiato equivalente al seguente. Se non lo si è già fatto, modificare
[OCIR-REPO]
in base al nome del repository.fn update context registry <region-key>.ocir.io/<tenancy-namespace>/[OCIR-REPO]
Non è necessario eseguire di nuovo questo comando finché non è necessario modificare la configurazione del repository.
-
Se non hai effettuato l'accesso a Docker nella sessione corrente, esegui il comando copiato equivalente a quello mostrato qui.
Quando viene richiesta una password, immettere il token di autenticazione, ovvero il token ottenuto durante la procedura descritta in Impostazione dell'account utente per Oracle Functions.
docker login -u '<tenancy-namespace>/<user-name>' <region-key>.ocir.io
-
Per distribuire i componenti personalizzati, eseguire il comando seguente:
fn deploy --app <application>
Se viene visualizzato il messaggio seguente, aprire il file
.oci/config
e verificare chefingerprint
mostri l'impronta digitale corretta per il filekey_file
specificato. In caso contrario, andare alle impostazioni utente nella console, fare clic su Chiavi API, visualizzare il file di configurazione per l'impronta digitale corretta, quindi sostituire il contenuto del file di configurazione con il contenuto visualizzato.Fn: Service error:NotAuthenticated. The required information to complete authentication was not provided or was incorrect.. http status code: 401.
I componenti personalizzati sono pronti per essere utilizzati in una competenza come descritto in Aggiungi servizio funzioni Oracle.
Distribuzione su Mobile Hub
Per ospitare un pacchetto di componenti personalizzati in Mobile Hub, utilizzare l'interfaccia CLI bots-node-sdk pack --service mobile-api
per copiare le cartelle del pacchetto di componenti e apportare alcune modifiche specifiche per Mobile Hub, incluso il file RAML. Quindi creare l'API personalizzata dal file RAML e caricare un ZIP del package di componenti nell'API personalizzata.
-
Dalla cartella di livello superiore del pacchetto del componente personalizzato (quella che contiene il file
main.js
), digitare questo comando in una finestra di terminale:bots-node-sdk pack --service mobile-api
Il comando esegue le operazioni riportate di seguito.
- Copia i file e le sottocartelle in
service-mobile-api-<package version>
. - Aggiunge un file
component.service.raml
che contiene gli endpoint e le operazioni necessari. - Crea un file
api.js
, ovvero un wrapper Mobile Hub permain.js
. - Modifica il file
package.json
per impostare il file principale suapi.js
, impostare le dipendenze e aggiungere la configurazione del nodo Mobile Hub.
Questo passo mostra il comando CLI di base. Per ulteriori informazioni, vedere
https://github.com/oracle/bots-node-sdk/blob/master/bin/CLI.md
. - Copia i file e le sottocartelle in
- Rivedere il file
package.json
e verificare che il nome del pacchetto sia conforme ai vincoli Mobile Hub riportati di seguito. Modificare il nome in base alle esigenze per la conformità.- Il nome deve essere composto solo da lettere (A-Za-z), numeri (0-9) e caratteri di sottolineatura (_).
- Il nome deve iniziare con una lettera.
- Il nome deve contenere un massimo di 100 caratteri.
-
Nella pagina API Mobile Hub fare clic su Nuova interfaccia API > API, quindi creare l'interfaccia API personalizzata caricando il file
component.service.raml
. -
Nella scheda Sicurezza disattivare Login richiesto, quindi fare clic su Salva.
-
Comprimere la cartella
service-mobile-api-<package version>
, quindi caricare il file ZIP dalla scheda Implementazione dell'API personalizzata. -
Nella pagina Test richiamare la richiesta
GET
. La risposta deve mostrare i metadati del componente.Suggerimento
Se si ottiene uno stato 500 e l'errore è che non riesce a trovare una definizione di instradamento corrispondente, verificare la sintassi errata di JavaScript nei file, poiché questa è la causa tipica.