Vai al contenuto

Heartbeat della licenza e verifica offline

Entrambe le impostazioni appartengono alle politiche di licenza ma rispondono a domande diverse: quanto spesso contattare il server online e per quanto tempo l'utilizzo può continuare senza raggiungerlo.

Intervallo di heartbeat: quanto spesso convalidare

Impostare l'intervallo di heartbeat (secondi) su 600, SDK invia un heartbeat all'incirca ogni 10 minuti durante la corsa. Ogni successo recupera le regole più recenti e aggiorna la cache delle licenze locali.

Inserisci 600–86400 secondi. Entra 0 disabilita gli heartbeat programmati. La tua applicazione può comunque essere verificata o aggiornata manualmente. La pianificazione aggiunge un ritardo casuale dello 0–10%; l'intervallo non scende mai sotto i 600 secondi.

Per una licenza associata a un dispositivo con una cache valida, l'avvio ripristina l'accesso e si aggiorna online in background, anche con il timer disabilitato. Le licenze solo online e mobili attendono la conferma del server.

Indennità offline: quanto tempo rimanere senza il server

La modalità offline ha tre scelte. Non modifica l'intervallo del heartbeat.

Consentire una durata specificata
Per un'indennità di 24 ore, la cache firmata dura al massimo 24 ore dall'ultimo controllo online andato a buon fine. L'app può funzionare anche in caso di disconnessione o interruzione temporanea del server entro tale periodo. Successivamente, la convalida online deve avere esito positivo.
Fallback offline non consentito
L'avvio deve raggiungere correttamente il server; le cache del disco non possono ignorare una richiesta non riuscita. Una firma di breve durata ottenuta durante la corsa dura al massimo max(10, 心跳间隔) secondi; l'app deve continuare a convalidare e controllare le autorizzazioni delle funzionalità.
Consenti l'accesso offline permanente
Una firma locale esistente può essere utilizzata a lungo termine, anche durante i guasti della rete. Una licenza di 30 giorni scade comunque dopo 30 giorni; l'uso offline permanente non rende perpetua una licenza a tempo.

Il API utilizza offline_mode rappresenta rispettivamente queste tre scelte limited, none, permanent. Con un'indennità offline fissa,offline_seconds è 1–31536000 secondi; utilizzare 0 per le altre due modalità.

Come si comportano queste combinazioni?

Impostazioni heartbeat/offlineComportamento reale
10 minuti/24 oreConvalida ogni 10 minuti online. Offline, continua per un massimo di 24 ore dopo l'ultimo controllo riuscito
10 minuti/offline permanenteProva comunque un heartbeat ogni 10 minuti, aggiorna le regole in caso di successo e utilizza una firma valida quando non è raggiungibile.
0 / offline permanenteCon una cache valida, l'avvio non necessita di richieste pianificate. La convalida o l'aggiornamento esplicito contatta comunque il server
0/24 oreNessun heartbeat pianificato, ma la cache scade comunque. L'app deve pianificare la convalida; la disabilitazione degli heartbeat non estende la disponibilità offline.

Mantieni la disponibilità offline più lunga dell'intervallo di heartbeat. Con heartbeat orari ma solo 1 minuto offline, la firma scade prima del heartbeat successivo; l'app deve essere convalidata separatamente.

Le modifiche alle policy aggiornano le licenze esistenti?

Sì. Salvando la policy, il server sincronizza atomicamente limiti di dispositivi o posti, funzioni, quote, modello, manutenzione e versioni con tutte le licenze collegate non revocate. Non serve più applicarla una licenza alla volta.

La sincronizzazione conserva tipo di durata, giorni validi, prima attivazione, scadenza, cliente, utilizzo ed estensione di manutenzione di ogni licenza. Il tipo della policy vale solo per le nuove licenze e non rende permanente una licenza esistente di 30 giorni.

Se durante il passaggio tra licenza legata al dispositivo e floating restano dispositivi o sessioni attivi, oppure il nuovo limite è inferiore all’uso corrente, il salvataggio restituisce ACTIVE_DEVICES_CONFLICT, e né la policy né le licenze collegate vengono aggiornate parzialmente. Rilascia i dispositivi in conflitto e salva di nuovo.

Dopo il salvataggio, le licenze collegate vecchie e nuove adottano le regole alla successiva attivazione, convalida o heartbeat riuscito. L’SDK sostituisce la cache con la nuova firma. Un nuovo tentativo con lo stesso Idempotency-Key restituisce ancora il risultato originale.

Un dispositivo offline continua a utilizzare le regole firmate esistenti. La sola riconnessione non aggiorna la cache; una richiesta deve avere successo. La tua app può aggiornarsi attivamente quando viene ripristinata la connettività.

Applica policy conserva uno scopo.

Per spostare le licenze selezionate su un’altra policy, selezionale nella pagina Licenze e usa Applica policy per l’anteprima. Per modificare la policy corrente, basta salvare per sincronizzare automaticamente.

Aggiornamento online esplicito

Questi metodi provano sempre il server, anche con l'utilizzo offline permanente e gli heartbeat disabilitati. Il successo aggiorna la firma. L'errore di rete segnala un errore di aggiornamento ma mantiene una cache altrimenti valida. La revoca o il rilascio esplicito lo cancella.

LinguaCome chiamare
Goclient.RefreshOnline(ctx)
Javaclient.refreshOnline()
Cln_refresh_online(client)
C++client.RefreshOnline()
C#await client.RefreshOnline()
Pythonclient.refresh_online()
JavaScriptawait client.refreshOnline()

Un aggiornamento riuscito conta come una richiesta di attivazione API. Se una modifica ai criteri abilita gli heartbeat precedentemente disabilitati, chiama StartHeartbeat della tua lingua per avviare la pianificazione. I dispositivi offline non possono ricevere revoche o rilasciare aggiornamenti.