Azione Adobe I/O Runtime ed eventi AEM

Scopri come ricevere eventi AEM utilizzando l'azione Adobe I/O Runtime e rivedere i dettagli dell'evento come payload, intestazioni e metadati.

Adobe I/O Runtime è una piattaforma senza server che consente l’esecuzione del codice in risposta a eventi Adobi I/O. In questo modo è possibile creare applicazioni basate su eventi senza preoccuparsi dell'infrastruttura.

In questo esempio si crea un'azione Azione Adobe I/O Runtime che riceve eventi AEM e registra i dettagli dell'evento.
https://developer.adobe.com/runtime/docs/guides/overview/what_is_runtime/

I passaggi di alto livello sono i seguenti:

  • Crea progetto in Adobe Developer Console
  • Inizializza progetto per sviluppo locale
  • Configurare un progetto in Adobe Developer Console
  • Attivare l’evento AEM e verificare l’esecuzione dell’azione

Prerequisiti

Per completare questa esercitazione, è necessario:

IMPORTANT
L’evento AEM as a Cloud Service è disponibile solo per gli utenti registrati in modalità non definitiva. Per abilitare gli eventi AEM nel tuo ambiente AEM as a Cloud Service, contatta il team AEM-Eventing.

Crea progetto in Adobe Developer Console

Per creare un progetto in Adobe Developer Console, effettua le seguenti operazioni:

  • Passa a Adobe Developer Console e fai clic sul pulsante Console.

  • Nella sezione Guida rapida, fai clic su Crea progetto da modello. Quindi, nella finestra di dialogo Sfoglia modelli, seleziona il modello App Builder.

  • Se necessario, aggiorna il titolo del progetto, il nome dell’app e l’area di lavoro Aggiungi. Quindi fare clic su Salva.

    Crea progetto in Adobe Developer Console

Inizializza progetto per sviluppo locale

Per aggiungere un'azione Adobe I/O Runtime al progetto, è necessario inizializzare il progetto per lo sviluppo locale. Nel terminale aperto del computer locale, individua il punto in cui inizializzare il progetto e segui la procedura riportata di seguito:

  • Inizializza progetto eseguendo

    code language-bash
    aio app init
    
  • Selezionare Organization, Project creati nel passaggio precedente e l'area di lavoro. Nel passaggio What templates do you want to search for?, selezionare l'opzione All Templates.

    Selezione-Progetto-Organizzazione - Inizializza progetto

  • Dall'elenco dei modelli, selezionare l'opzione @adobe/generator-app-excshell.

    Modello di estensibilità - Inizializza progetto

  • Apri il progetto nell’IDE preferito, ad esempio VSCode.

  • Il modello di estendibilità (@adobe/generator-app-excshell) selezionato fornisce un'azione di runtime generica. Il codice si trova nel file src/dx-excshell-1/actions/generic/index.js. Aggiorniamolo per semplificarlo, registra i dettagli dell’evento e restituisce una risposta di successo. Tuttavia, nell’esempio successivo, viene migliorato per elaborare gli Eventi AEM ricevuti.

    code language-javascript
    const fetch = require("node-fetch");
    const { Core } = require("@adobe/aio-sdk");
    const {
    errorResponse,
    getBearerToken,
    stringParameters,
    checkMissingRequestInputs,
    } = require("../utils");
    
    // main function that will be executed by Adobe I/O Runtime
    async function main(params) {
    // create a Logger
    const logger = Core.Logger("main", { level: params.LOG_LEVEL || "info" });
    
    try {
        // 'info' is the default level if not set
        logger.info("Calling the main action");
    
        // log parameters, only if params.LOG_LEVEL === 'debug'
        logger.debug(stringParameters(params));
    
        const response = {
        statusCode: 200,
        body: {
            message: "Received AEM Event, it will be processed in next example",
        },
        };
    
        // log the response status code
        logger.info(`${response.statusCode}: successful request`);
        return response;
    } catch (error) {
        // log any server errors
        logger.error(error);
        // return with 500
        return errorResponse(500, "server error", logger);
    }
    }
    
    exports.main = main;
    
  • Infine, distribuisci l’azione aggiornata in Adobe I/O Runtime eseguendo.

    code language-bash
    aio app deploy
    

Configurare un progetto in Adobe Developer Console

Per ricevere gli eventi AEM ed eseguire l’azione Adobe I/O Runtime creata nel passaggio precedente, configura il progetto in Adobe Developer Console.

  • In Adobe Developer Console, passa al progetto creato nel passaggio precedente e fai clic su per aprirlo. Selezionare l'area di lavoro Stage, dove è stata distribuita l'azione.

  • Fai clic sul pulsante Aggiungi servizio e seleziona l'opzione API. Nella finestra modale Aggiungi API, seleziona Adobe Services > API di gestione I/O e fai clic su Avanti, segui i passaggi di configurazione aggiuntivi e fai clic su Salva API configurata.

    Aggiungi servizio - Configura progetto

  • Fare clic sul pulsante Aggiungi servizio e selezionare l'opzione Evento. Nella finestra di dialogo Aggiungi eventi, seleziona Experience Cloud > AEM Sites, quindi fai clic su Avanti. Segui i passaggi di configurazione aggiuntivi, seleziona l’istanza AEMCS, i tipi di evento e altri dettagli.

  • Infine, nel passaggio Ricezione degli eventi, espandi l'opzione Azione di runtime e seleziona l'azione generica creata nel passaggio precedente. Fai clic su Salva eventi configurati.

    Azione runtime - Configura progetto

  • Rivedi i dettagli di registrazione dell'evento, la scheda Traccia debug e verifica la richiesta e la risposta di Challenge Probe.

    Dettagli registrazione evento

Attivare gli eventi AEM

Per attivare gli eventi AEM dall’ambiente AEM as a Cloud Service registrato nel progetto Adobe Developer Console precedente, effettua le seguenti operazioni:

  • Accedi all'ambiente di authoring AEM as a Cloud Service tramite Cloud Manager.

  • A seconda dei eventi sottoscritti, crea, aggiorna, elimina, pubblica o annulla la pubblicazione di un frammento di contenuto.

Rivedi dettagli evento

Dopo aver completato i passaggi precedenti, dovresti vedere gli Eventi AEM consegnati all’azione generica.

È possibile esaminare i dettagli dell'evento nella scheda Traccia debug dei dettagli Registrazione evento.

Dettagli evento AEM

Passaggi successivi

Nell’esempio successivo, miglioriamo questa azione per elaborare gli eventi AEM, richiamare il servizio di authoring AEM per ottenere i dettagli del contenuto, archiviare i dettagli nell’archiviazione Adobe I/O Runtime e visualizzarli tramite l’applicazione a pagina singola (SPA).

recommendation-more-help
4859a77c-7971-4ac9-8f5c-4260823c6f69