

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Impostazione degli attributi calcolati in Amazon Connect Customer Profiles
<a name="customerprofiles-calculated-attributes"></a>

Gli *attributi calcolati* sono valori derivati da altri attributi utilizzando delle formule. Puoi utilizzarle per identificare i comportamenti aggregati degli utenti.

Puoi creare attributi calcolati per definire la tua logica aziendale e trasformare i dati del profilo dei clienti in punti dati utilizzabili. Ciò consente di personalizzare esperienze automatizzate come le risposte vocali interattive.

Utilizzando gli attributi calcolati, puoi identificare gli attributi chiave del comportamento passato del cliente. Esempio: 
+ L’ultimo sito web consultato o l’ultimo agente con cui hai parlato
+ Modelli di comportamento, come il canale preferito e la frequenza di contatto
+ Valore per il cliente, ad esempio nuovo cliente e dimensione media del ticket

Puoi utilizzare l’API degli attributi calcolati per creare un nuovo attributo utilizzando operazioni di aggregazione comuni come media, conteggio, minimo, massimo e somma.

Gli attributi calcolati trasformano automaticamente i dati grezzi in tempo reale in punti dati e metriche utilizzabili. Gli amministratori dei contact center sono in grado di definire e configurare i calcoli sulla base dei dati grezzi disponibili nei profili dei clienti. Questi attributi calcolati semplificano la creazione di esperienze automatizzate come Interactive Voice Response (IVR) o chatbot. È possibile creare esperienze personalizzate e aiutare gli agenti a comprendere più rapidamente il contesto dei clienti.

Per un elenco delle AWS regioni in cui APIs sono disponibili gli attributi calcolati, consulta[Disponibilità dell’API degli attributi calcolati dei profili cliente per Regione](regions.md#customerprofiles_calculatedattributesregion). 

**Topics**
+ [Nozioni di base sugli attributi calcolati](customerprofiles-calculated-attributes-admin-website.md)
+ [Attributi calcolati APIs](customerprofiles-calculated-attributes-apis.md)
+ [Creazione di una definizione di attributo calcolata personalizzata](customerprofiles-calculated-attributes-creating-definition.md)
+ [Convalida dei valori degli attributi calcolati](customerprofiles-calculated-attributes-validating-values.md)
+ [Attributi calcolati predefiniti](customerprofiles-default-calculated-attributes.md)
+ [Messaggi di errore e risoluzioni](customerprofiles-calculated-attributes-troubleshooting.md)

# Guida introduttiva agli attributi calcolati nei profili Amazon Connect dei clienti
<a name="customerprofiles-calculated-attributes-admin-website"></a>

Utilizza attributi calcolati per definire la logica aziendale e trasformare i dati del profilo cliente in punti dati utilizzabili per personalizzare esperienze automatizzate come le risposte vocali interattive.

Utilizzando gli attributi calcolati, puoi identificare gli attributi chiave relativi al comportamento passato del cliente, ai modelli di comportamento e al valore per il cliente.

Gli argomenti di questa sezione spiegano come creare, visualizzare, modificare ed eliminare gli attributi calcolati.

**Topics**
+ [Creazione di attributi calcolati](calculated-attributes-admin-website-create.md)
+ [Imposta i filtri degli eventi](calculated-attributes-admin-website-event-filters.md)
+ [Visualizzazione di attributi calcolati](calculated-attributes-admin-website-view.md)
+ [Modifica di attributi calcolati](calculated-attributes-admin-website-edit.md)
+ [Eliminazione di attributi calcolati](calculated-attributes-admin-website-delete.md)

# Creazione di attributi calcolati in Amazon Connect
<a name="calculated-attributes-admin-website-create"></a>

1. Prerequisiti: assicurati di disporre delle autorizzazioni necessarie per il profilo di sicurezza. Per ulteriori informazioni, consulta [Come aggiornare le autorizzazioni per gli attributi calcolati in Amazon Connect Customer Profiles](security-profile-customer-profile-calc-attribs.md).

1. Nel sito Web di Amazon Connect amministrazione, accedi a **Profili clienti**, **Attributi calcolati**, scegli **Crea attributo** nella visualizzazione della tabella **degli attributi calcolati**.  
![\[Scheda Profili dei clienti nello spazio di lavoro dell’agente, con il pulsante Associa.\]](http://docs.aws.amazon.com/it_it/connect/latest/adminguide/images/calculated-attributes-admin-website-create-1.png)

1. Per creare un attributo calcolato, assegna un nome descrittivo, aggiungi la descrizione (opzionale) con i dettagli dell’attributo e configura i campi obbligatori:
   + **Calcolo:** definisce come vengono calcolati gli attributi (average/count/sum/minimum/first occurrence/last occurrence/maxoccorrenza).
   + **Attributo:** un punto dati ricavato dai dati dei profili cliente.
**Nota**  
Se state selezionando un attributo da un tipo di oggetto standard (`_asset`,`_case`,`_order`), gli attributi devono essere presenti PascalCase. Ciò significa che la prima lettera di ogni parola nel nome dell’attributo è in maiuscolo, ad esempio `_case.CreatedBy` o `_order.TotalPrice`.  
![\[Scheda Profili dei clienti nello spazio di lavoro dell’agente, con il pulsante Associa.\]](http://docs.aws.amazon.com/it_it/connect/latest/adminguide/images/calculated-attributes-admin-website-create-2.png)

1. Inoltre, puoi aggiungere un altro attributo selezionando l'icona *più*. Puoi scegliere fino a due attributi per calcolarli e combinarli con un operatore. Specifica un operatore come *più* o *meno* per combinare i valori degli attributi.  
![\[Scheda Profili dei clienti nello spazio di lavoro dell’agente, con il pulsante Associa.\]](http://docs.aws.amazon.com/it_it/connect/latest/adminguide/images/calculated-attributes-admin-website-create-3.png)

1. Una volta selezionato il calcolo, puoi facoltativamente configurare il numero di eventi, il periodo di tempo e il timestamp di origine. Per impostazione predefinita, gli attributi calcolati sono configurati per utilizzare eventi illimitati, un periodo di tempo illimitato e un timestamp basato sulla data dell’importazione.

   Un output viene restituito quando durante il periodo di tempo specificato si verifica almeno un evento.
   + **Numero di eventi:** configura il limite o utilizza un numero illimitato (impostazione predefinita)
   + **Periodo di tempo:** imposta un intervallo di tempo specifico o utilizza un numero illimitato (impostazione predefinita)
   + **Timestamp di origine:** scegli tra un campo timestamp specifico o una data di importazione (impostazione predefinita)
**Nota**  
Sebbene non sia previsto alcun limite di eventi, esiste un limite alla dimensione dei dati in base al quale i dati più vecchi verranno sostituiti dai dati più recenti. Il timestamp di origine non può essere modificato dopo la creazione.  
![\[Scheda Profili dei clienti nello spazio di lavoro dell’agente, con il pulsante Associa.\]](http://docs.aws.amazon.com/it_it/connect/latest/adminguide/images/calculated-attributes-admin-website-create-4.png)

1. Facoltativamente, è possibile definire dei criteri per includere solo gli eventi rilevanti nei calcoli. Per ulteriori informazioni, consulta [Imposta i filtri degli eventi](calculated-attributes-admin-website-event-filters.md).

1. Seleziona **Crea** per creare l’attributo calcolato.

1. Dopo aver creato correttamente un attributo calcolato, nella vista tabella viene visualizzato un banner per utilizzare l’attributo calcolato in un segmento o flusso. Sarai anche in grado di visualizzare lo stato degli attributi calcolati in base alla disponibilità.  
![\[Un banner che indica la creazione dell’attributo calcolato.\]](http://docs.aws.amazon.com/it_it/connect/latest/adminguide/images/calculated-attributes-admin-website-create-5.png)

# Imposta i filtri degli eventi
<a name="calculated-attributes-admin-website-event-filters"></a>

I filtri degli eventi consentono di filtrare gli oggetti del profilo da utilizzare nell’attributo calcolato. Ad esempio, un filtro degli eventi può filtrare gli oggetti degli asset standard del cliente in modo che nel calcolo vengano inclusi solo gli asset il cui **Stato sia Installato O Registrato**.

**Nota**  
Non è possibile modificare i filtri degli eventi dopo aver creato una definizione di attributo calcolato.

Quando si crea un attributo calcolato, è possibile creare uno o più filtri di evento. Un agente è costituito dai componenti seguenti:

![\[Componenti del filtro degli eventi.\]](http://docs.aws.amazon.com/it_it/connect/latest/adminguide/images/calculated-attributes-admin-website-event-filters-1.png)

+  **Gruppi di filtri**: gruppo di filtri applicati agli oggetti del profilo. È possibile aggiungere più gruppi di filtri collegati tramite relazioni OR. 
+  **Filtri**: filtra gli oggetti del profilo inclusi nel calcolo dell’attributo calcolato specificando attributi, operatori e valori. Puoi aggiungere tutti i filtri necessari per il caso d’uso. 
+  **Attributo**: l’attributo dell’oggetto in base al quale filtrare. È possibile selezionare gli attributi dagli oggetti archiviati nel dominio Profili dei clienti o utilizzare i nomi dei campi definiti nella definizione del tipo di oggetto. Per ulteriori informazioni sulle mappature dei tipi di oggetto, consulta [Dettagli della definizione di mappatura dei tipi di oggetto in Amazon Connect Customer Profiles](object-type-mapping-definition-details.md).
**Nota**  
 Nel sito web di Amazon Connect amministrazione, il menu a discesa degli attributi mostra il timestamp dell'ultima volta che un oggetto del profilo è stato salvato o aggiornato con l'attributo. 
 Se è presente sia un attributo di un oggetto profilo che un campo di un tipo di oggetto con lo stesso nome, il filtro eventi assegna la priorità al nome del campo del tipo di oggetto nel filtraggio. Ad esempio, se un oggetto profilo ha un attributo denominato **Stato** ed è presente anche un campo per il tipo di oggetto denominato **Stato**, il filtro utilizzerà il campo del tipo di oggetto **Stato** per il filtraggio. 
+  **Operatore**: l’operatore determina la relazione dell’attributo con un valore immesso. Per ulteriori informazioni, vedere [Operatori di filtro](#calculated-attributes-admin-website-event-filter-operators)
+  **Valore**: il valore con cui filtrare gli oggetti. È possibile specificare più valori collegati da relazioni OR. Ad esempio, *lo stato dell’asset è Installato o Registrato*. Nota che i valori fanno distinzione tra maiuscole e minuscole. Ad esempio, *Stato dell’asset Installato* restituisce risultati diversi rispetto a *Stato dell’asset installato*. Per visualizzare gli oggetti del profilo, utilizza l'[ListProfileObjects](https://docs.aws.amazon.com/connect/latest/APIReference/API_connect-customer-profiles_ListProfileObjects.html)API Amazon Connect Customer Profiles.

 Facoltativamente, puoi creare fino a due filtri di eventi e creare una relazione (AND/OR/EXCLUDE) tra di essi. Per ulteriori dettagli sulla relazione, vedere[Relazione tra filtri di eventi](#calculated-attributes-admin-website-relationship-between-event-filters). 

 

## Operatori di filtro
<a name="calculated-attributes-admin-website-event-filter-operators"></a>

Gli operatori determinano la relazione tra l'attributo e il valore immesso. Nella tabella seguente vengono descritti gli operatori disponibili.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/connect/latest/adminguide/calculated-attributes-admin-website-event-filters.html)

**Nota**  
 Gli attributi calcolati nel sito Web di Amazon Connect amministrazione utilizzano il fuso orario UTC e un'ora predefinita di 00:00:00 UTC per tutti i filtri basati sull'ora. Puoi filtrare in base alle date, ma gli orari vengono registrati con lo stesso valore. Se inserisci la data 2024-01-01, la console passa all’ora come 2024-01-01T00:00:00Z. 

**Nota**  
Per impostazione predefinita, i filtri degli eventi vengono valutati quando un oggetto del profilo viene salvato o aggiornato. Ad esempio, se filtri gli oggetti della risorsa standard in cui `PurchaseDate` si trova nell’ultima settimana, il tempo relativo viene calcolato in base *all’ultima settimana dal momento in cui l’oggetto dell’asset viene salvato o aggiornato*. Ciò significa che i risultati del filtraggio possono variare a seconda di quando l’oggetto viene salvato o aggiornato.

## Relazione tra filtri di eventi
<a name="calculated-attributes-admin-website-relationship-between-event-filters"></a>

 Facoltativamente, è possibile aggiungere il secondo filtro di eventi e definire una relazione con il primo filtro di eventi. Quando si crea un attributo calcolato nel sito web di amministrazione di Amazon Connect , è possibile aggiungere un massimo di due filtri di eventi per attributo calcolato. Se aggiungi il secondo filtro di eventi all’attributo calcolato, puoi scegliere tra una di due modalità di collegamento tra i due filtri eventi: 
+  **Relazione AND**: se utilizzi la relazione AND per connettere due filtri di eventi, gli oggetti che soddisfano sia il primo che il secondo filtro di eventi verranno inclusi nel calcolo. 
+  **Relazione OR**: se utilizzi la relazione OR per connettere due filtri di eventi, gli oggetti che soddisfano il primo o il secondo filtro eventi verranno inclusi nel calcolo. 
+  **Relazione EXCLUDE**: se utilizzi la relazione EXCLUDE per connettere due filtri di eventi, gli oggetti che soddisfano il primo filtro eventi ma non soddisfano il secondo filtro eventi, verranno inclusi nel calcolo. 

## Fasi successive
<a name="calculated-attributes-admin-website-event-filter-next-steps"></a>
+  [Utilizzo di un attributo calcolato nel contact center tramite l’editor Flusso](https://docs.aws.amazon.com/connect/latest/adminguide/customer-profiles-block.html#customer-profiles-block-properties-get-calculated-attributes) 
+  [Utilizzo di un attributo calcolato per definire un segmento di clienti](https://docs.aws.amazon.com/connect/latest/adminguide/segmentation-admin-website)
+  [Visualizzazione di attributi calcolati in Amazon Connect](https://docs.aws.amazon.com/connect/latest/adminguide/calculated-attributes-admin-website-view.html) 
+  [Modifica di attributi calcolati in Amazon Connect](https://docs.aws.amazon.com/connect/latest/adminguide/calculated-attributes-admin-website-edit.html) 
+  [Eliminazione di attributi calcolati in Amazon Connect](https://docs.aws.amazon.com/connect/latest/adminguide/calculated-attributes-admin-website-delete.html) 

# Visualizzazione di attributi calcolati in Amazon Connect
<a name="calculated-attributes-admin-website-view"></a>

1. Accedi al sito web di Amazon Connect amministrazione all'indirizzo https://*instance name*.my.connect.aws/. Utilizza un account Amministratore o un account assegnato a un profilo di sicurezza con autorizzazione **Profili dei clienti - Attributi calcolati**. 

1. In Amazon Connect, nel riquadro di navigazione a sinistra, scegli **Profili dei clienti**, **Attributi calcolati**.

1. Nella pagina **Attributi calcolati**, scegli un attributo calcolato dalla colonna **Nome** della tabella. 

   La seguente immagine mostra un esempio di attributi calcolati elencati nella colonna **Nome**.  
![\[Una tabella che elenca gli attributi calcolati.\]](http://docs.aws.amazon.com/it_it/connect/latest/adminguide/images/calculated-attributes-admin-website-view-1.png)

1. Ora potrai visualizzare i dettagli dell’attributo che hai selezionato. L’immagine seguente mostra una pagina di dettagli per un attributo calcolato.  
![\[Vista dettagliata di un attributo calcolato.\]](http://docs.aws.amazon.com/it_it/connect/latest/adminguide/images/calculated-attributes-admin-website-view-2.png)

# Modifica di attributi calcolati in Amazon Connect
<a name="calculated-attributes-admin-website-edit"></a>

1. Per modificare un attributo calcolato, scegli un attributo nella vista tabella selezionando il pulsante di opzione, che abilita il pulsante **Modifica**. Scegli **Modifica**.  
![\[modifica di un attributo calcolato\]](http://docs.aws.amazon.com/it_it/connect/latest/adminguide/images/calculated-attributes-admin-website-edit-1.png)

1. Sarà possibile modificare i campi **Descrizione**, **Numero di eventi** e **Periodo di tempo**. Al termine, scegliere **Save (Salva)**.  
![\[Modifica di un attributo calcolato.\]](http://docs.aws.amazon.com/it_it/connect/latest/adminguide/images/calculated-attributes-admin-website-edit-2.png)

# Eliminazione di attributi calcolati in Amazon Connect
<a name="calculated-attributes-admin-website-delete"></a>

1. Per eliminare un attributo calcolato, scegli un attributo nella tabella selezionando il pulsante di opzione accanto all'attributo che desideri eliminare.

1. Una volta selezionato, scegli **Elimina**.

1. Nel pop-up **Elimina attributo**, verifica i dettagli e inserisci *conferma* per abilitare il pulsante **Elimina**.  
![\[Eliminare un attributo calcolato.\]](http://docs.aws.amazon.com/it_it/connect/latest/adminguide/images/calculated-attributes-admin-website-delete-1.png)

1. Scegli **Elimina**.

# Attributi calcolati dei profili cliente Amazon Connect APIs
<a name="customerprofiles-calculated-attributes-apis"></a>

È possibile utilizzare il seguente attributo calcolato dei profili dei clienti APIs

------
#### [ CreateCalculatedAttributeDefinition ]

**CreateCalculatedAttributeDefinition**

Crea un nuovo attributo calcolato. Ciò richiede un tipo di oggetto esistente nel dominio. È possibile definire gli attributi che si desidera estrarre da un singolo oggetto di origine e le operazioni matematiche da applicare ad essi in forma aggregata, nonché l'intervallo di tempo e il conteggio degli oggetti.

Dopo la creazione, i nuovi dati oggetto importati nei profili dei clienti verranno inclusi nell'attributo calcolato, che può essere recuperato per un profilo utilizzando l'API `GetCalculatedAttributeForProfile`. Per utilizzare anche i dati storici, specifica `UseHistoricalData` come true. I campi `Readiness` e `Status` nella risposta dell’API forniranno informazioni sullo stato dell’inclusione dei dati storici nell’attributo calcolato. 

La definizione di un attributo calcolato lo rende disponibile per tutti i profili all'interno di un dominio. Ogni attributo calcolato può fare riferimento solo a uno ObjectType o al massimo due campi di tale campo ObjectType.

**Richiesta**

```
POST /domains/DomainName/calculated-attributes/CalculatedAttributeName
```

```
{
    "CalculatedAttributeName": "string",
    "DisplayName": "string",
    "Description": "string",
    "AttributeDetails": {
       "Attributes": [
           {
               "Name": "string"
           }
           ...
       ],
       "Expression": "string",
    },
    "Statistic": "AVERAGE" | "COUNT" | "SUM" | "FIRST_OCCURRENCE" | "LAST_OCCURRENCE" | "MINIMUM" | "MAXIMUM" | "MAX_OCCURRENCE",
    "Conditions": {
        "Range": {
             "Value": "number",
             "Units": "string"
        },
        "ObjectCount": "number",
        "Threshold": {
            "Value": "string",
            "Operator": "EQUAL_TO" | "GREATER_THAN" | "LESS_THAN" | "NOT_EQUAL_TO"
        }
     },
     "Tags": {}
}
```

**Risposta**

```
{
    "CalculatedAttributeName": "string",
    "DisplayName": "string",
    "Description": "string",
    "AttributeDetails": {
       "Attributes": [
           {
               "Name": "string"
           }
           ...
       ],
       "Expression": "string",
    },
    "Statistic": "AVERAGE" | "COUNT" | "SUM" | "FIRST_OCCURRENCE" | "LAST_OCCURRENCE" | "MINIMUM" | "MAXIMUM" | "MAX_OCCURRENCE"
    "Conditions": {
        "Range": {
             "Value": "number",
             "Units": "string"
        },
        "ObjectCount": "number",
        "Threshold": {
            "Value": "string",
            "Operator": "EQUAL_TO" | "GREATER_THAN" | "LESS_THAN" | "NOT_EQUAL_TO"
        }
    },
    "CreatedAt": number,
    "LastUpdatedAt": number,
    "Tags": {}
}
```

**Corpo della richiesta**
+ **CalculatedAttributeName**

  Il nome univoco (per dominio) dell'attributo calcolato.
  + Tipo: stringa
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
  + Modello: `^[a-zA-Z0-9_-]+$`
  + Obbligatorio: sì
+ **DisplayName**

  Il nome visualizzato dell'attributo calcolato.
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
  + Modello: `^[a-zA-Z_][a-zA-Z_0-9-\s]*$`
  + Obbligatorio: no
+ **Descrizione**

  La descrizione dell'attributo calcolato.
  + Tipo: stringa
  + Limitazioni di lunghezza: lunghezza minima pari a 1. Lunghezza massima di 1000.
  + Obbligatorio: no
+ **UseHistoricalData**

  Se i dati storici importati prima della creazione dell’Attributo calcolato devono essere inclusi nei calcoli.
  + Tipo: booleano
  + Obbligatorio: no
+ **AttributeDetails**

  Dettagli degli attributi utilizzati nella definizione e delle operazioni matematiche coinvolte tra gli attributi. Vedi i seguenti componenti:
  + **Attributes**

    Un elenco di elementi di attributo specificati nell'espressione matematica.
    + **AttributeItem**

      I dettagli di un singolo elemento di attributo specificato nell'espressione matematica.
      + Name
        + Il nome di un attributo definito in un tipo di oggetto profilo.
        + Tipo: String
  + **Expression**

    Espressione matematica che viene eseguita sugli elementi degli attributi forniti nell'elenco degli attributi. Ogni elemento dell'espressione deve seguire la struttura di\$1 "\$1ObjectTypeName. AttributeName\$1\$1».
    + Esempio: `{ObjA.AttributeA} - {ObjA.AttributeB}`
    + Tipo: stringa
    + Supportiamo solo le seguenti operazioni matematiche: `+ - * /`
    + È impossibile apportare modifiche all'espressione una volta creata una definizione di attributo calcolata
+ **Condizioni**

  Definisce i criteri e la soglia di aggregazione degli attributi calcolati.
  + Tipo: oggetto Condizioni
    + Intervallo
    + ObjectCount
    + Threshold
+ **Range**

  Il periodo di tempo relativo durante il quale i dati vengono inclusi nell'aggregazione.
  + Tipo: oggetto Range
    + Valore: la durata delle unità specificate. `ValueRange` sostituisce Valore.
      + Tipo: Integer
      + Obbligatorio: no
    + ValueRange: Una struttura che consente ai clienti di specificare una finestra temporale relativa in base alla quale includere i dati nell'attributo calcolato. Usa numeri positivi per indicare che l'endpoint appartiene al passato e numeri negativi per indicare che appartiene al futuro. ValueRangesostituisce Value.
      + Tipo: ValueRange
      + Obbligatorio: no
        + Start (Avvio)
          + L’ora di inizio in cui includere oggetti. Usa numeri positivi per indicare che il punto di partenza è passato e numeri negativi per indicare che è futuro.
          + Tipo: numero intero
          + Obbligatorio: sì 
        + End
          + L’orario di fine in cui includere oggetti. Usa numeri positivi per indicare che il punto di partenza è passato e numeri negativi per indicare che è futuro.
          + Tipo: numero intero
          + Obbligatorio: sì 
    + TimestampSource: Un'espressione che specifica il campo dell'oggetto JSON a partire dal quale deve essere analizzata la data. L'espressione deve seguire la struttura di\$1 "\$1. ObjectTypeName <Location of timestamp field in JSON pointer format>\$1\$1». Ad esempio, se il tipo di oggetto è MyType e il codice sorgente è JSON`{"generatedAt": {"timestamp": "1737587945945"}}`, allora TimestampSource dovrebbe esserlo`"{MyType.generatedAt.timestamp}"`.
      + Limitazioni di lunghezza: lunghezza minima di 1. Lunghezza massima di 255.
      + Obbligatorio: no
    + TimestampFormat: Viene specificato il formato del campo timestamp nell'oggetto JSON. Questo valore deve essere uno tra EPOCHMILLI (per timestamp di epoca Unix con precisione di livello) o ISO\$18601 (seguendo il formato ISO\$18601 con un second/millisecond livello di precisione, con un offset opzionale di Z o nel formato HH:MM o second/millisecond HHMM.). Ad esempio, se il tipo di TimestampFormat oggetto è e il codice sorgente è JSON, allora dovrebbe esserlo. MyType `{"generatedAt": {"timestamp": "2001-07-04T12:08:56.235-0700"}},` `"ISO_8601"`
    + Unità: unità di tempo
      + Valori validi: giorni
      + Obbligatorio: sì
  + Obbligatorio: sì
  + Ambito iniziale: massimo 366 giorni
+ **ObjectCount**

  Il numero di oggetti del profilo utilizzati per l'attributo calcolato.
  + Tipo: numero
  + Intervallo: da 1 a 100
  + Obbligatorio: no
+ **Threshold**

  La logica di confronto per generare un attributo true/false calcolato.
  + Tipo: oggetto Threshold
    + Valore
      + Il valore di una soglia
      + ▬Tipo: stringa
      + Obbligatorio: no
    + Operatore
      + L'operatore della soglia
      + Tipo: ENUM
      + Valori validi:
        + GREATER\$1THAN
        + LESS\$1THAN
        + EQUAL\$1TO
        + NON\$1EQUAL\$1TO
  + Obbligatorio: no
+ **Statistic**

  L'operazione di aggregazione da eseguire per l'attributo calcolato.
  + Tipo: ENUM
  + Valori validi:
    + FIRST\$1OCCURRENCE
    + LAST\$1OCCURRENCE
    + COUNT
    + SUM
    + MINIMUM
    + MAXIMUM
    + AVERAGE
    + MAX\$1OCCURRENCE

------
#### [ UpdateCalculatedAttributeDefinition ]

**UpdateCalculatedAttributeDefinition**

Aggiorna una definizione di attributo calcolato. Gli aggiornamenti sono limitati al nome visualizzato, alla descrizione, all'intervallo di tempo, al numero di oggetti e alla soglia. Questa API supporta gli aggiornamenti parziali, quindi è necessario includere solo i parametri che richiedono l'aggiornamento.

**Nota**  
Quando si aggiornano le Condizioni:  
L’aumento dell’intervallo di date di un attributo calcolato non attiverà l’inclusione di dati storici superiori all’intervallo di date corrente.
TimestampSource e TimestampFormat non può essere aggiornato dopo la creazione di una definizione di attributo calcolato.

**Richiesta**

```
PUT /domains/DomainName/calculated-attributes/CalculatedAttributeName
```

```
{
    "DisplayName": "string",
    "Description": "string",
    "Conditions": {
        "Range": {
             "Value": "number",
             "Units": "string"
        },
        "ObjectCount": "number",
        "Threshold": {
            "Value": "string",
            "Operator": "EQUAL_TO" | "GREATER_THAN" | "LESS_THAN" | "NOT_EQUAL_TO"
        }
   }
}
```

**Risposta**

```
{
    "CalculatedAttributeName": "string",
    "DisplayName": "string",
    "Description": "string",
    "AttributeDetails": {
       "Attributes": [
           {
               "Name": "string"
           }
           ...
       ],
       "Expression": "string",
    },
    "Statistic": "AVERAGE" | "COUNT" | "SUM" | "FIRST_OCCURRENCE" | "LAST_OCCURRENCE" | "MINIMUM" | "MAXIMUM" | "MAX_OCCURRENCE"
    "Conditions": {
        "Range": {
             "Value": "number",
             "Units": "string"
        },
        "ObjectCount": "number",
        "Threshold": {
            "Value": "string",
            "Operator": "EQUAL_TO" | "GREATER_THAN" | "LESS_THAN" | "NOT_EQUAL_TO"
        }
    },
    "CreatedAt": number,
    "LastUpdatedAt": number,
    "Tags": {}
}
```

**Corpo della richiesta**
+ **DisplayName**

  Il nome visualizzato dell'attributo calcolato.
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
  + Modello: `^[a-zA-Z_][a-zA-Z_0-9-\s]*$`
  + Obbligatorio: no
+ **Descrizione**

  La descrizione dell'attributo calcolato.
  + Tipo: stringa
  + Limitazioni di lunghezza: lunghezza minima pari a 1. Lunghezza massima di 1000.
  + Obbligatorio: no
+ **Condizioni**

  Definisce i criteri e la soglia di aggregazione degli attributi calcolati.
  + Tipo: oggetto Condizioni
    + Intervallo
    + ObjectCount
    + Threshold
+ **Range**

  Il periodo di tempo relativo durante il quale i dati vengono inclusi nell'aggregazione.
  + Tipo: oggetto Range
    + Valore: la durata delle unità specificate
      + Tipo: Integer
      + Obbligatorio: no
    + ValueRange: Una struttura che consente ai clienti di specificare una finestra temporale relativa in base alla quale includere i dati nell'attributo calcolato. Usa numeri positivi per indicare che l'endpoint appartiene al passato e numeri negativi per indicare che appartiene al futuro. ValueRangesostituisce Value.
      + Tipo: ValueRange
      + Obbligatorio: no
        + Start (Avvio)
          + L’ora di inizio in cui includere oggetti. Usa numeri positivi per indicare che il punto di partenza è passato e numeri negativi per indicare che è futuro.
          + Tipo: numero intero
          + Obbligatorio: sì 
        + End
          + L’orario di fine in cui includere oggetti. Usa numeri positivi per indicare che il punto di partenza è passato e numeri negativi per indicare che è futuro.
          + Tipo: numero intero
          + Obbligatorio: sì 
    + Unità: unità di tempo
      + Valori validi: giorni
      + Obbligatorio: sì
  + Obbligatorio: sì
  + Ambito iniziale: massimo 366 giorni
+ **ObjectCount**

  Il numero di oggetti del profilo utilizzati per l'attributo calcolato.
  + Tipo: numero
  + Intervallo: da 1 a 100
  + Obbligatorio: no
+ **Threshold**

  La logica di confronto per generare un attributo true/false calcolato.
  + Tipo: oggetto Threshold
    + Valore
      + Il valore di una soglia
      + ▬Tipo: stringa
      + Obbligatorio: no
    + Operatore
      + L'operatore della soglia
      + Tipo: ENUM
      + Valori validi:
        + GREATER\$1THAN
        + LESS\$1THAN
        + EQUAL\$1TO
        + NON\$1EQUAL\$1TO
  + Obbligatorio: no

------
#### [ GetCalculatedAttributeDefinition ]

**GetCalculatedAttributeDefinition**

Recupera una definizione di attributo calcolata.

**Richiesta**

```
GET /domains/DomainName/calculated-attributes/CalculatedAttributeName
```

**Corpo della richiesta**

```
The request does not have a request body.
```

**Risposta**

```
{
"CalculatedAttributeName": "string",
    "DisplayName": "string",
    "Description": "string",
    "AttributeDetails": {
"Attributes": [
           {
"Name": "string"
           }
           ...
       ],
       "Expression": "string",
    },
    "Statistic": "AVERAGE" | "COUNT" | "SUM" | "FIRST_OCCURRENCE" | "LAST_OCCURRENCE" | "MINIMUM" | "MAXIMUM" | "MAX_OCCURRENCE"
"Conditions": {
"Range": {
      "Unit": "string",
      "Value": number
      "ValueRange"
        {
            "Start": number 
            "End": number 
        },
      "TimestampFormat": "string", 
      "TimestampSource": "string"
    },
        "ObjectCount": "number",
        "Threshold": {
"Value": "string",
            "Operator": "EQUAL_TO" | "GREATER_THAN" | "LESS_THAN" | "NOT_EQUAL_TO"
        }
    },
    "UseHistoricalData" boolean,
  "Status": "PREPARING" | "IN_PROGRESS" | "COMPLETED" | "FAILED",
  "Readiness": {
        "ProgressPercentage": number, 
        "Message": "string", 
        },
    "CreatedAt": number,
    "LastUpdatedAt": number,
    "Tags": {}
}
```

**Parametri della richiesta URI**
+ **DomainName**

  Il nome univoco del dominio.
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
  + Modello: `^[a-zA-Z0-9_-]+$`
  + Obbligatorio: sì
+ **CalculatedAttributeName**

  Il nome univoco (per dominio) dell'attributo calcolato.
  + Tipo: stringa
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
  + Modello: `^[a-zA-Z0-9_-]+$`
  + Obbligatorio: sì

------
#### [ DeleteCalculatedAttributeDefinition ]

**DeleteCalculatedAttributeDefinition**

Elimina una definizione di attributo calcolato esistente. Tieni presente che è possibile eliminare un attributo calcolato predefinito, tuttavia una volta eliminato non sarai in grado di annullare tale azione e dovrai ricrearlo da solo utilizzando l'API `CreateCalculatedAttributeDefinition` se desideri ripristinarlo.

**Richiesta**

```
DELETE /domains/DomainName/calculated-attributes/CalculatedAttributeName
```

**Corpo della richiesta**

```
The request does not have a request body.
```

**Risposta**

```
The response does not have a response body.
```

**Parametri della richiesta URI**
+ **DomainName**

  Il nome univoco del dominio.
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
  + Modello: `^[a-zA-Z0-9_-]+$`
  + Obbligatorio: sì
+ **CalculatedAttributeName**

  Il nome univoco (per dominio) dell'attributo calcolato.
  + Tipo: stringa
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
  + Modello: `^[a-zA-Z0-9_-]+$`
  + Obbligatorio: sì

------
#### [ ListCalculatedAttributeDefinitions ]

**ListCalculatedAttributeDefinitions**

Recupera tutte le definizioni degli attributi calcolati per un dominio.

**Richiesta**

```
GET /domains/DomainName/calculated-attributes?max-results=MaxResults&next-token=NextToken
```

**Corpo della richiesta**

```
The request does not have a request body.
```

**Risposta**

```
{ 
    "Items": [
        {
            "UseHistoricalData": boolean,
            "ReadinessStatus": PREPARING | IN_PROGRESS | COMPLETED | FAILED,
            "CalculatedAttributeName": "string", 
            "CreatedAt": number, 
            "Description": "string", 
            "DisplayName": "string", 
            "LastUpdatedAt": number, 
            "Tags": { 
                "string" : "string" 
            }
        } 
    ], 
    "NextToken": "string"
}
```

**Parametri della richiesta URI**
+ **DomainName**

  Il nome univoco del dominio.
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
  + Modello: `^[a-zA-Z0-9_-]+$`
  + Obbligatorio: sì
+ **MaxResults**

  Il numero massimo di oggetti restituiti per pagina.
  + Intervallo valido: valore minimo di 1. Valore massimo pari a 100
+ **NextToken**

  Il token di impaginazione della precedente chiamata ListCalculatedAttributeDefinition API.
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 1024 caratteri

------
#### [ GetCalculatedAttributeForProfile ]

**GetCalculatedAttributeForProfile**

Avvia il calcolo e recupera il risultato di un singolo attributo calcolato per un singolo profilo.

**Richiesta**

```
GET /domains/DomainName/profile/ProfileId/calculated-attributes/CalculatedAttributeName
```

**Corpo della richiesta**

```
The request does not have a request body.
```

**Risposta**

```
{
"Name": "string",
    "DisplayName": "string",
    "Value": "string",
    "IsDataPartial": "string",
    "LastObjectTimestamp" : number
}
```

**Parametri della richiesta URI**
+ **DomainName**

  Il nome univoco del dominio.
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
  + Modello: `^[a-zA-Z0-9_-]+$`
  + Obbligatorio: sì
+ **CalculatedAttributeName**

  Il nome univoco (per dominio) dell'attributo calcolato.
  + Tipo: stringa
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
  + Modello: `^[a-zA-Z0-9_-]+$`
  + Obbligatorio: sì

------
#### [ ListCalculatedAttributesForProfile ]

**ListCalculatedAttributesForProfile**

Avvia il calcolo e recupera i risultati di tutti gli attributi calcolati per un singolo profilo.

**Richiesta**

```
GET /domains/DomainName/profile/ProfileId/calculated-attributes?max-results=MaxResults&next-token=NextToken
```

**Corpo della richiesta**

```
The request does not have a request body.
```

**Risposta**

```
{
"Items": [
        {
"CalculatedAttributeName": "string",
            "DisplayName": "string",
            "Value": "string",
            "IsDataPartial" : "string",
            "LastObjectTimestamp" : number
        },
        ...
    ],
    "NextToken": "string"
}
```

**Parametri della richiesta URI**
+ **DomainName**

  Il nome univoco del dominio.
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 64 caratteri.
  + Modello: `^[a-zA-Z0-9_-]+$`
  + Obbligatorio: sì
+ **ProfileId**
  + Modello: `[a-f0-9]{32}`
  + Obbligatorio: sì
+ **MaxResults**

  Il numero massimo di oggetti restituiti per pagina.
  + Intervallo valido: valore minimo di 1. Valore massimo pari a 100
+ **NextToken**

  Il token di impaginazione della precedente chiamata ListCalculatedAttributeDefinition API.
  + Limitazioni di lunghezza: lunghezza minima pari a 1. La lunghezza massima è 1024 caratteri

------

# Creazione di una definizione di attributo calcolata personalizzata per Amazon Connect Customer Profiles
<a name="customerprofiles-calculated-attributes-creating-definition"></a>

Utilizzando l'[CreateCalculatedAttributeDefinition](https://docs.aws.amazon.com/customerprofiles/latest/APIReference/API_CreateCalculatedAttributeDefinition.html)API Customer Profiles, puoi creare a livello di codice il tuo attributo calcolato in base a un tipo di oggetto personalizzato.

In questo argomento mostriamo come creare un attributo calcolato utilizzando un file JSON personalizzato.

## Passaggio 1: Creazione di un file JSON
<a name="step1-calculate-attribute-api"></a>

Crea un file JSON con i seguenti contenuti:

```
{
"DomainName": "your-domain-name", 
   "CalculatedAttributeName": "your-calculated-attribute-name",
   "UseHistoricalData": true,
   "DisplayName": "your-display-name",
   "Description": "your-description",
   "AttributeDetails": {
"Attributes": [
         {
            "Name": "your-attribute-name"
         }
       ],
       "Expression": "{your-object-type.your-attribute-name}"
   },
    "Statistic": "your-statistic",
    "Conditions": {
       "Range": {
        "ValueRange"
        {
            "Start": your-range-start
            "End": your-range-end
        },
        "TimestampSource": "{your-object-type.your-timestamp-source}",          
        "Unit": "days"
        },
        "ObjectCount":  your-object-count,
        "Threshold": {
           "Value": "your-threshold-value",
           "Operator": "your-threshold-operator"
        }
   }  
}
```

Per personalizzare il JSON con valori, seguire le linee guida riportate di seguito:
+ **Attributes**: dovrebbe contenere il nome del campo del tipo di oggetto che desideri utilizzare per l'attributo calcolato. Sono supportati due attributi a cui si fa riferimento in questo elenco.
+ **Expression**: sono supportate espressioni matematiche di base da eseguire tra gli attributi. Se si dispone di un solo attributo, questo campo dovrebbe essere`{ObjectTypeName.AttributeName}`, altrimenti se si considera un'espressione matematica questo campo dovrebbe contenere entrambi gli attributi.
+ **Statistica**: questa è l'operazione eseguita quando si chiama uno dei calcoli APIs che esegue effettivamente l'operazione di aggregazione. La maggior parte di esse è semplice, ma abbiamo aggiunto delle spiegazioni per quelle più complesse. 

  **Statistiche supportate**
  + `FIRST_OCCURRENCE` restituisce l'attributo specificato nell'espressione del primo oggetto importato.
  + `LAST_OCCURRENCE` restituisce l'attributo specificato nell'espressione dell'ultimo oggetto importato.
  + `COUNT` restituisce il conteggio dei dati selezionati.
  + `SUM` restituisce la somma dei dati selezionati.
  + `MINIMUM` restituisce il minimo dei dati selezionati.
  + `MAXIMUM` restituisce il massimo dei dati selezionati.
  + `AVERAGE` restituisce la media dei dati selezionati.
  + `MAX_OCCURRENCE` restituisce il valore più frequente specificato nell'espressione.
+ **Intervallo:**
  + Unità: attualmente supporta solo unità DAYS.
  + ValueRange: Specificate numeri positivi nei campi Inizio o Fine per indicare da quanti giorni precedenti iniziare e numeri negativi per indicare da quanti giorni futuri iniziare. ValueRange
  + TimestampSource: Un'espressione che specifica il campo dell'oggetto JSON a partire dal quale deve essere analizzata la data. L'espressione deve seguire la struttura di\$1 "\$1. ObjectTypeName <Location of timestamp field in JSON pointer format>\$1\$1». Ad esempio, se il tipo di oggetto è MyType e il codice sorgente è JSON`{"generatedAt": {"timestamp": "1737587945945"}}`, allora TimestampSource dovrebbe esserlo`"{MyType.generatedAt.timestamp}"`.
+ **ObjectCount**: Indica su quanti oggetti deve basarsi il calcolo degli attributi calcolati.
+ **Threshold**: se invece del valore esatto dell'attributo calcolato si desidera invece sapere se è, ad esempio, maggiore di un determinato valore, è possibile utilizzare una soglia.

  Il valore di soglia può essere qualsiasi stringa e sono supportati i seguenti operatori di soglia.
  + `GREATER_THAN`
  + `LESS_THAN`
  + `EQUAL_TO`
  + `NOT_EQUAL_TO`
+ UseHistoricalData: Se i dati storici inseriti prima della creazione dell'attributo calcolato devono essere inclusi nei calcoli.

## Fase 2: Chiama l'API CreateCalculatedAttributeDefinition
<a name="step2-calculated-attribute-api"></a>

Dopo aver creato e personalizzato il file JSON con i tuoi valori, chiama l'[CreateCalculatedAttributeDefinition](https://docs.aws.amazon.com/customerprofiles/latest/APIReference/API_CreateCalculatedAttributeDefinition.html)API, come mostrato nell'esempio seguente:

```
aws customer-profiles create-calculated-attribute-definition --cli-input-json file:///custom_calculated_attribute_cli.json --region region_name
```

È possibile inoltre utilizzare i seguenti endpoint:

```
https://profile.your-region.amazonaws.com/domains/your-domain-name/calculated-attributes
```

# Convalida i valori degli attributi calcolati nei profili dei clienti Amazon Connect utilizzando APIs
<a name="customerprofiles-calculated-attributes-validating-values"></a>

Ce ne sono due APIs, `GetCalculatedAttributeForProfile` e`ListCalculatedAttributesForProfile`, che si trovano a livello di profilo.
+ **GetCalculatedAttributeForProfile**- recupera un singolo attributo calcolato per un singolo profilo.
+ **ListCalculatedAttributesForProfile**- recupera un elenco di attributi calcolati per un singolo profilo

Con un ID di profilo valido, dovresti vedere i valori degli attributi calcolati:

**Example response**

```
{   
    "CalculatedAttributeName": "_average_hold_time",
    "DisplayName": "Average hold time",
    "IsDataPartial": "true",
    "Value": "24144"
}
```

**IsDataPartial**- Questo flag indica che l'intervallo di tempo (30 giorni) o il conteggio degli oggetti non sono stati raggiunti e pertanto l'attributo calcolato è ancora in fase di calcolo. Ad esempio, se si desidera una media superiore a 30 giorni, solo dopo che saranno trascorsi 30 giorni il campo `IsDataPartial` verrà impostato su false.

## Recupera un elenco di attributi calcolati
<a name="calculated-attributes-validating-a-list-of-values"></a>

**Usa la AWS CLI**

```
aws customer-profiles list-calculated-attributes-for-profile --region your-region --domain-name your-domain-name --profile-id your-profile-id
```

**Usa la AWS CLI con un file JSON personalizzato**

Crea un file JSON con i seguenti contenuti:

```
{
    "DomainName": "your-domain-name", 
    "ProfileId" "some-profile-id"
}
```

```
aws customer-profiles list-calculated-attributes-for-profile --region your-region --cli-input-json file://list_calculated_attributes_for_profile_cli.json
```

**Endpoint:**

```
https://profile.your-region.amazonaws.com/domains/your-domain-name/profile/your-profile-id/calculated-attributes/
```

## Recupera un singolo attributo calcolato
<a name="calculated-attributes-validating-a-single-value"></a>

**Usa la AWS CLI:**

```
aws customer-profiles get-calculated-attributes-for-profile --region your-region --domain-name your-domain-name --calculated-attribute-name your-calculated-attribute-name --profile-id your-profile-id
```

**Usa la AWS CLI con un file JSON personalizzato:**

Crea un file JSON con i seguenti contenuti:

```
{   
    "DomainName": "your-domain-name", 
    "CalculatedAttributeName": "your-calculated-attribute-name",
    "ProfileId" "your-profile-id"
}
```

```
aws customer-profiles get-calculated-attributes-for-profile --region your-region --cli-input-json file://list_calculated_attributes_for_profile_cli.json
```

**Endpoint:**

```
https://profile.your-region.amazonaws.com/domains/your-domain-name/profile/your-profile-id/calculated-attributes/your-calculated-attribute-name
```

# Attributi calcolati predefiniti in Amazon Connect Customer Profiles
<a name="customerprofiles-default-calculated-attributes"></a>

## Attributi calcolati predefiniti dei CTR
<a name="customerprofiles-default-calculated-attributes-ctr"></a>

Amazon Connect Customer Profiles fornisce gli attributi predefiniti della out-of-the casella in base ai record dei contatti. Gli attributi sono i seguenti:

**Canale più frequente**

```
{
   "CalculatedAttributeName": "_most_frequent_channel",
   "DisplayName": "Most frequent channel",
   "Description": "Returns customer's frequently used communication channel. Channels include voice, chat, task.",
   "CreatedAt": null,
   "LastUpdatedAt": null,
   "Statistic": "MAX_OCCURRENCE",
   "Conditions": {
      "Range": {
         "Value": 30,
         "Unit": "DAYS"
       },
       "ObjectCount": null
   },
   "AttributeDetails": {
      "Attributes": [
         {
            "Name": "channel"
         }
      ],
      "Expression": "{CTR.channel}"
   },
   "Tags": {
   }
}
```

**Ultimo canale**

```
{
   "CalculatedAttributeName": "_last_channel",
   "DisplayName": "Last channel",
   "Description": "Returns customer's last communication channel. Channels include voice, chat, task.",
   "CreatedAt": null,
   "LastUpdatedAt": null,
   "Statistic": "LAST_OCCURRENCE",
   "Conditions": {
      "ObjectCount": null
   },
   "AttributeDetails": {
      "Attributes": [
         {
            "Name": "channel"
         }
       ],
       "Expression": "{CTR.channel}"
   },
   "Tags": {
   }
}
```

**Ultimo identificativo dell’agente**

```
{
   "CalculatedAttributeName": "_last_agent_id",
   "DisplayName": "Last agent identifier",
   "Description": "Returns identifier of the last agent customer connected with.",
   "CreatedAt": null,
   "LastUpdatedAt": null,
   "Statistic": "LAST_OCCURRENCE",
   "Conditions": {
      "ObjectCount": null
   },
   "AttributeDetails": {
      "Attributes": [
         {
            "Name": "agent.id"
         }
      ],
      "Expression": "{CTR.agent.id}"
   },
   "Tags": {
   }
}
```

**Chiamante frequente**

```
{
   "CalculatedAttributeName": "_frequent_caller",
   "DisplayName": "Frequent caller",
   "Description": "Returns true or false based on the number of times a customer has called.",
   "CreatedAt": null,
   "LastUpdatedAt": null,
   "Statistic": "COUNT",
   "Conditions": {
      "Range": {
         "Value": 30,
         "Unit": "DAYS"
      },
      "ObjectCount": null,
      "Threshold": {
         "Value": "5",
         "Operator": "GREATER_THAN"
      }
   },
   "AttributeDetails": {
      "Attributes": [
         {
            "Name": "contactId"
         }
      ],
      "Expression": "{CTR.contactId}"
   },
   "Tags": {
   }
}
```

**Tempo medio di attesa**

```
{
   "CalculatedAttributeName": "_average_hold_time",
   "DisplayName": "Average hold time",
   "Description": "Returns customer's average hold time for voice calls.",
   "CreatedAt": null,
   "LastUpdatedAt": null,
   "Statistic": "AVERAGE",
   "Conditions": {
      "Range": {
         "Value": 30,
         "Unit": "DAYS"
      },
      "ObjectCount": null
   },
   "AttributeDetails": {
      "Attributes": [
         {
            "Name": "agent.customerHoldDurationMillis"
         },
         {
            "Name": "queue.durationMillis"
         }
      ],
      "Expression": "{CTR.agent.customerHoldDurationMillis} + {CTR.queue.durationMillis}"
   },
   "Tags": {
   }
}
```

**Durata media delle chiamate**

```
{
   "CalculatedAttributeName": "_average_call_duration",
   "DisplayName": "Average call duration",
   "Description": "Returns customer's average call duration for voice calls.",
   "CreatedAt": null,
   "LastUpdatedAt": null,
   "Statistic": "AVERAGE",
   "Conditions": {
      "Range": {
         "Value": 30,
         "Unit": "DAYS"
       },
      "ObjectCount": null
   },
   "AttributeDetails": {
      "Attributes": [
         {
            "Name": "disconnectTimestamp"
         },
         {
            "Name": "initiationTimestamp"
         }
      ],
      "Expression": "{CTR.disconnectTimestamp} - {CTR.initiationTimestamp}"
   },
   "Tags": {
   }
}
```

**Tempo massimo di attesa del cliente**

```
{
    "CalculatedAttributeName": "_maximum_hold_time",
    "DisplayName": "Customer's maximum hold time",
    "Description": "Returns customer's maximum hold time for voice calls in the past month.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "agent.customerHoldDurationMillis"
        },
        {
          "Name": "queue.durationMillis"
        }
      ],
      "Expression": "{CTR.agent.customerHoldDurationMillis} + {CTR.queue.durationMillis}"
    },
    "Statistic": "MAXIMUM",
    "Conditions": {
      "Range": {
        "Value": 30,
        "Unit": "DAYS"
      },
      "ObjectCount": null,
      "Threshold": null
    },
    "Launched": false
  }
```

## Attributo calcolato del profilo predefinito
<a name="customerprofiles-default-calculated-attributes-profile"></a>

Amazon Connect Customer Profiles fornisce un attributo out-of-the box predefinito basato su un profilo. Gli attributi sono i seguenti:

**Nuovo cliente**

```
{
   "CalculatedAttributeName": "_new_customer",
   "DisplayName": "New customer",
   "Description": "Returns true or false for new customer profiles created.",
   "CreatedAt": null,
   "LastUpdatedAt": null,
   "Statistic": "TIME_DIFFERENCE_FROM_NOW",
   "Conditions": {
      "ObjectCount": null,
      "Threshold": {
         "Value": "30",
         "Operator": "LESS_THAN"
      }
   },
   "AttributeDetails": {
      "Attributes": [
         {
            "Name": "createdAt"
         }
      ],
      "Expression": "{_profile.createdAt}"
   },
   "Tags": {
   }
}
```

## Attributi calcolati predefiniti degli asset
<a name="customerprofiles-default-calculated-attributes-asset"></a>

Amazon Connect Customer Profiles fornisce gli attributi predefiniti dei out-of-the box basati sugli asset. Gli attributi sono i seguenti:

**Numero di asset**

```
{
    "CalculatedAttributeName": "_assets_count",
    "DisplayName": "Count of assets",
    "Description": "Returns the count of assets for a customer.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "AssetId"
        }
      ],
      "Expression": "{_asset.AssetId}"
    },
    "Statistic": "COUNT",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold":null
    },
    "Launched": false
  }
```

**Data del primo asset acquistato**

```
{
    "CalculatedAttributeName": "_asset_first_occurrence",
    "DisplayName": "First asset purchased date",
    "Description": "Returns purchase date of the customer's first asset.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "PurchaseDate"
        }
      ],
      "Expression": "{_asset.PurchaseDate}"
    },
    "Statistic": "FIRST_OCCURRENCE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Launched": false
  }
```

**Data dell’ultimo asset acquistato**

```
{
    "CalculatedAttributeName": "_asset_last_occurrence",
    "DisplayName": "Last asset purchased date",
    "Description": "Returns purchase date of the customer's last asset.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "PurchaseDate"
        }
      ],
      "Expression": "{_asset.PurchaseDate}"
    },
    "Statistic": "LAST_OCCURRENCE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Launched": false
  }
```

**Prezzo totale dell’asset**

```
{
    "CalculatedAttributeName": "_assets_price_sum",
    "DisplayName": "Total asset price",
    "Description": "Returns customer's total asset price.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "Price"
        }
      ],
      "Expression": "{_asset.Price}"
    },
    "Statistic": "SUM",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Launched": false
  }
```

**Prezzo medio degli asset**

```
{
    "CalculatedAttributeName": "_assets_price_average",
    "DisplayName": "Average asset price",
    "Description": "Returns customer's average asset price.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "Price"
        }
      ],
      "Expression": "{_asset.Price}"
    },
    "Statistic": "AVERAGE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Launched": false
  }
```

**Nome del primo asset**

```
{
    "CalculatedAttributeName": "_assets_name_first_occurrence",
    "DisplayName": "First asset name",
    "Description": "Returns name of the customer's first asset",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "AssetName"
        }
      ],
      "Expression": "{_asset.AssetName}"
    },
    "Statistic": "FIRST_OCCURRENCE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Launched": false
  }
```

**Nome dell’ultimo asset**

```
{
    "CalculatedAttributeName": "_assets_name_last_occurrence",
    "DisplayName": "Last asset name",
    "Description": "Returns name of the customer's last asset.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "AssetName"
        }
      ],
      "Expression": "{_asset.AssetName}"
    },
    "Statistic": "LAST_OCCURRENCE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Launched": false
  }
```

## Attributi calcolati predefiniti dei casi
<a name="customerprofiles-default-calculated-attributes-case"></a>

Amazon Connect Customer Profiles fornisce gli attributi predefiniti dei out-of-the box in base ai casi. Gli attributi sono i seguenti:

**Numero di casi**

```
{
    "CalculatedAttributeName": "_cases_count",
    "DisplayName": "Count of cases",
    "Description": "Returns the count of customer's cases for a customer.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "CaseId"
        }
      ],
      "Expression": "{_case.CaseId}"
    },
    "Statistic": "COUNT",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold":null
    },
    "Launched": false
  }
```

**Data di creazione del primo caso**

```
{
    "CalculatedAttributeName": "_case_first_occurrence",
    "DisplayName": "First case created date",
    "Description": "Returns created date of the customer's first case.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "CreatedDate"
        }
      ],
      "Expression": "{_case.CreatedDate}"
    },
    "Statistic": "FIRST_OCCURRENCE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Launched": false
  }
```

**Data di creazione dell’ultimo caso**

```
{
    "CalculatedAttributeName": "_case_last_occurrence",
    "DisplayName": "Last case created date",
    "Description": "Returns created date of the customer's last case.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "CreatedDate"
        }
      ],
      "Expression": "{_case.CreatedDate}"
    },
    "Statistic": "LAST_OCCURRENCE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Launched": false
  }
```

**Numero di casi aperti**

```
{
    "CalculatedAttributeName": "_cases_open_status_count",
    "DisplayName": "Count of open cases",
    "Description": "Returns the count of customer's open cases.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "CaseId"
        }
      ],
      "Expression": "{_case.CaseId}"
    },
    "Statistic": "COUNT",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold":null
    },
    "Filter": {
      "Include": "ALL",
      "Groups": [
        {
          "Type": "ALL",
          "Dimensions": [
            {
              "Attributes": {
                "Status": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["Open"]
                }
              }
            }
          ]
        }
      ]
    },
    "Launched": false
  }
```

**Numero di casi chiusi**

```
{
    "CalculatedAttributeName": "_cases_closed_status_count",
    "DisplayName": "Count of closed cases",
    "Description": "Returns the count of customer's closed cases.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "CaseId"
        }
      ],
      "Expression": "{_case.CaseId}"
    },
    "Statistic": "COUNT",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold":null
    },
    "Filter": {
      "Include": "ALL",
      "Groups": [
        {
          "Type": "ALL",
          "Dimensions": [
            {
              "Attributes": {
                "Status": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["Closed"]
                }
              }
            }
          ]
        }
      ]
    },
    "Launched": false
  }
```

## Attributi calcolati del record di comunicazione predefinito
<a name="customerprofiles-default-calculated-attributes-communication-record"></a>

Amazon Connect Customer Profiles fornisce gli attributi predefiniti dei out-of-the box in base ai record di comunicazione. Gli attributi sono i seguenti:

**Data di apertura dell’ultima e-mail**

```
{
    "CalculatedAttributeName": "_campaign_email_last_open",
    "DisplayName": "Last email open date",
    "Description": "Returns the last email open date of the customer.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "Events.Open.UpdatedDate"
        }
      ],
      "Expression": "{_communicationRecord.Events.Open.UpdatedDate}"
    },
    "Statistic": "LAST_OCCURRENCE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Filter": {
      "Include": "ALL",
      "Groups": [
        {
          "Type": "ALL",
          "Dimensions": [
            {
              "Attributes": {
                "Attributes.ChannelSubType": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["connect:Email"]
                },
                "Events.Open.EventType": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["Open"]
                }
              }
            }
          ]
        }
      ]
    },
    "Launched": false
  }
```

**Numero di e-mail aperte**

```
{
    "CalculatedAttributeName": "_campaign_email_open_count",
    "DisplayName": "Email open count",
    "Description": "Returns the number of times emails were opened by a customer.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "CommunicationRecordId"
        }
      ],
      "Expression": "{_communicationRecord.CommunicationRecordId}"
    },
    "Statistic": "COUNT",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Filter": {
      "Include": "ALL",
      "Groups": [
        {
          "Type": "ALL",
          "Dimensions": [
            {
              "Attributes": {
                "Attributes.ChannelSubType": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["connect:Email"]
                },
                "Events.Open.EventType": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["Open"]
                }
              }
            }
          ]
        }
      ]
    },
    "Launched": false
  }
```

**Numero di consegne delle e-mail**

```
{
    "CalculatedAttributeName": "_campaign_email_delivery_count",
    "DisplayName": "Email delivery count",
    "Description": "Returns the number of times emails were delivered to a customer.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "CommunicationRecordId"
        }
      ],
      "Expression": "{_communicationRecord.CommunicationRecordId}"
    },
    "Statistic": "COUNT",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Filter": {
      "Include": "ALL",
      "Groups": [
        {
          "Type": "ALL",
          "Dimensions": [
            {
              "Attributes": {
                "Attributes.ChannelSubType": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["connect:Email"]
                },
                "Events.Delivery.EventType": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["Delivery"]
                }
              }
            }
          ]
        }
      ]
    },
    "Launched": false
  }
```

**Numero di SMS consegnati**

```
{
    "CalculatedAttributeName": "_campaign_sms_delivery_count",
    "DisplayName": "SMS delivered count",
    "Description": "Returns the number of times SMS were delivered to a customer.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "CommunicationRecordId"
        }
      ],
      "Expression": "{_communicationRecord.CommunicationRecordId}"
    },
    "Statistic": "COUNT",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Filter": {
      "Include": "ALL",
      "Groups": [
        {
          "Type": "ALL",
          "Dimensions": [
            {
              "Attributes": {
                "Attributes.ChannelSubType": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["connect:SMS"]
                },
                "Events.TEXT_DELIVERED.EventType": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["TEXT_DELIVERED"]
                }
              }
            }
          ]
        }
      ]
    },
    "Launched": false
  }
```

**Data dell’ultimo blocco degli SMS**

```
  {
    "CalculatedAttributeName": "_campaign_sms_last_stop",
    "DisplayName": "Last SMS blocked date",
    "Description": "Returns the last SMS blocked date of the customer.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "Events.TEXT_BLOCKED.UpdatedDate"
        }
      ],
      "Expression": "{_communicationRecord.Events.TEXT_BLOCKED.UpdatedDate}"
    },
    "Statistic": "LAST_OCCURRENCE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Filter": {
      "Include": "ANY",
      "Groups": [
        {
          "Type": "ALL",
          "Dimensions": [
            {
              "Attributes": {
                "Attributes.ChannelSubType": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["connect:SMS"]
                },
                "Events.TEXT_BLOCKED.EventType": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["TEXT_BLOCKED"]
                }
              }
            }
          ]
        }
      ]
    },
    "Launched": false
  }
```

**Data dell’ultimo blocco da parte del gestore SMS**

```
{
    "CalculatedAttributeName": "_campaign_sms_last_stop_carrier",
    "DisplayName": "Last SMS carrier blocked date",
    "Description": "Returns the last SMS carrier blocked date of the customer.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "Events.TEXT_CARRIER_BLOCKED.UpdatedDate"
        }
      ],
      "Expression": "{_communicationRecord.Events.TEXT_CARRIER_BLOCKED.UpdatedDate}"
    },
    "Statistic": "LAST_OCCURRENCE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Filter": {
      "Include": "ANY",
      "Groups": [
        {
          "Type": "ALL",
          "Dimensions": [
            {
              "Attributes": {
                "Attributes.ChannelSubType": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["connect:SMS"]
                },
                "Events.TEXT_CARRIER_BLOCKED.EventType": {
                  "DimensionType": "INCLUSIVE",
                  "Values": ["TEXT_CARRIER_BLOCKED"]
                }
              }
            }
          ]
        }
      ]
    },
    "Launched": false
  }
```

## Attributi calcolati predefiniti degli ordini
<a name="customerprofiles-default-calculated-attributes-order"></a>

Amazon Connect Customer Profiles fornisce gli attributi predefiniti dei out-of-the box in base agli ordini. Gli attributi sono i seguenti:

**Numero di ordini**

```
{
    "CalculatedAttributeName": "_orders_count",
    "DisplayName": "Count of orders",
    "Description": "Returns the count of orders for a customer.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "OrderId"
        }
      ],
      "Expression": "{_order.OrderId}"
    },
    "Statistic": "COUNT",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold":null
    },
    "Launched": false
  }
```

**Data di creazione del primo ordine**

```
{
    "CalculatedAttributeName": "_order_first_occurrence",
    "DisplayName": "First order created date",
    "Description": "Returns created date of the customer's first order.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "CreatedDate"
        }
      ],
      "Expression": "{_order.CreatedDate}"
    },
    "Statistic": "FIRST_OCCURRENCE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Launched": false
  }
```

**Data di creazione dell’ultimo ordine**

```
{
    "CalculatedAttributeName": "_order_last_occurrence",
    "DisplayName": "Last order created date",
    "Description": "Returns created date of the customer's last order.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "CreatedDate"
        }
      ],
      "Expression": "{_order.CreatedDate}"
    },
    "Statistic": "LAST_OCCURRENCE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Launched": false
  }
```

**Prezzo totale di tutti gli ordini**

```
{
    "CalculatedAttributeName": "_orders_total_price_sum",
    "DisplayName": "Total price of all orders",
    "Description": "Returns sum of total price for all customer's orders.",
    "Statistic": "SUM",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "TotalPrice"
        }
      ],
      "Expression": "{_order.TotalPrice}"
    },
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold":null
    },
    "Launched": false
  }
```

**Media degli ordini rispetto al prezzo totale**

```
{
    "CalculatedAttributeName": "_orders_total_price_average",
    "DisplayName": "Orders average of total price",
    "Description": "Returns average of total price for all customer's orders.",
    "AttributeDetails": {
      "Attributes": [
        {
          "Name": "TotalPrice"
        }
      ],
      "Expression": "{_order.TotalPrice}"
    },
    "Statistic": "AVERAGE",
    "Conditions": {
      "Range": null,
      "ObjectCount": null,
      "Threshold": null
    },
    "Launched": false
  }
```

# Messaggi di errore e risoluzioni per attributi calcolati per Amazon Connect Customer Profiles
<a name="customerprofiles-calculated-attributes-troubleshooting"></a>

La tabella seguente mostra i messaggi di errore relativi agli attributi calcolati, la causa e la risoluzione per ogni errore.


| Messaggio di errore | Causa | Risoluzione | 
| --- | --- | --- | 
| Il recupero di un attributo calcolato per un profilo mostra un valore nullo | Ciò è probabilmente dovuto al fatto che l'attributo calcolato non dispone di dati. Dopo la creazione di un attributo calcolato, è necessario importare nuovi dati. | Inserisci nuovi dati o reinserisci vecchi dati tramite integrazioni o e. CreateProfile PutProfileObject APIs | 