

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à.

# Riferimento tecnico
<a name="managedintegrations-sdk-device-appendix"></a>

**Topics**
+ [Riferimento: piattaforme supportate](#managedintegrations-sdk-device-appendixA)
+ [Riferimento: requisiti tecnici](#managedintegrations-sdk-device-appendixB)
+ [Riferimento: API comune](#managedintegrations-sdk-device-appendixC)

## Riferimento: piattaforme supportate
<a name="managedintegrations-sdk-device-appendixA"></a>

La tabella seguente mostra le piattaforme supportate per l'SDK.


**Piattaforme supportate**  

| Platform (Piattaforma) | Architecture | Sistema operativo | 
| --- | --- | --- | 
| Linux x86\_64 | x86\_64 | Linux | 
| Ambarella | Armv8 (AArch64) | Linux | 
| Un nome Bad | Armv8-M 32 bit | FreeRTOS | 
| ESP32S3 | Xtensa LX7 a 32 bit | FreeRTOS | 

## Riferimento: requisiti tecnici
<a name="managedintegrations-sdk-device-appendixB"></a>

La tabella seguente mostra i requisiti tecnici per l'SDK, incluso lo spazio RAM. Lo stesso SDK del dispositivo finale richiede da 5 a 10 MB di spazio ROM quando si utilizza la stessa configurazione.


**Spazio RAM**  

| SDK e componenti | Requisiti di spazio (byte utilizzati) | 
| --- | --- | 
| SDK del dispositivo finale stesso | 180 KB | 
| Coda di comandi predefinita di MQTT Agent | 480 byte (può essere configurato) | 
| Coda in entrata predefinita dell'agente MQTT | 320 byte (può essere configurato) | 

## Riferimento: API comune
<a name="managedintegrations-sdk-device-appendixC"></a>

Questa sezione contiene un elenco di operazioni API non specifiche di un cluster.

```
/* return code for data model related API */
enum iotmiDev_DMStatus
{
  /* The operation succeeded */
  iotmiDev_DMStatusOk = 0,
  /* The operation failed without additional information */
  iotmiDev_DMStatusFail = 1,
  /* The operation has not been implemented yet. */
  iotmiDev_DMStatusNotImplement = 2,
  /* The operation is to create a resource, but the resource already exists. */
  iotmiDev_DMStatusExist = 3, 
}

/* The opaque type to represent a instance of device agent. */
struct iotmiDev_Agent;

/* The opaque type to represent an endpoint. */
struct iotmiDev_Endpoint;

/* A device agent should be created before calling other API */
struct iotmiDev_Agent* iotmiDev_create_agent();

/* Destroy the agent and free all occupied resources */
void iotmiDev_destroy_agent(struct iotmiDev_Agent *agent);

/* Add an endpoint, which starts with empty capabilities */
struct iotmiDev_Endpoint* iotmiDev_addEndpoint(struct iotmiDev_Agent *handle, uint16 id, const char *name);

/* Test all clusters registered within an endpoint.
   Note: this API might exist only for early drop. */
void iotmiDev_testEndpoint(struct iotmiDev_Endpoint *endpoint);
```