Introduzione
In questo documento viene descritto come risolvere i problemi relativi alla mancata sincronizzazione della cassetta postale tra CUC e Google Workspace.
Prerequisiti
Requisiti
Cisco raccomanda la conoscenza dei seguenti argomenti:
- Cisco Unity Connection (CUC)
- Area di lavoro Google
- Protocollo SMTP (Simple Mail Transfer Protocol)
Componenti usati
Il documento può essere consultato per tutte le versioni software o hardware.
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Premesse
Il server di pubblicazione e il server sottoscrittore sono operativi, ma i tentativi di inviare notifiche di posta vocale tramite posta elettronica (funzionalità Posta in arrivo singola o Posta vocale alla posta elettronica) non sono riusciti.
Passare alla pagina Amministrazione CUC > Messaggistica unificata > Servizi di messaggistica unificata > Apri l'account di messaggistica unificata. Anche se le configurazioni sono impostate correttamente, vi sono errori di sincronizzazione.
Messaggistica unificata (da Cisco Unity a Google Mail) non sincronizzata
Risultati convalida messaggistica unificata
Anche questo errore viene visualizzato.
Status: User mailbox is out of sync, press Reset for resync
Unified Messaging Service: Cisco Unity to Google Mail
Service Type: Google Workspace
User Corporate Email Address: userid@domain.com
[Checked] Synchronize Connection and Google Workspace Mailboxes (Single inbox)
Risoluzione dei problemi
Configurazione di Google
Passaggio 1. Passare alla console di Google ed eliminare l'account del servizio già creato.
Passaggio 2. Aggiungere un nuovo account del servizio.
Passaggio 3. Assegnare questi ruoli
- Amministratore chiave account del servizio
- Utente account del servizio
- Amministratore locale/secondario
Passaggio 4. Salvare l'account generato e scaricare il file di chiave (tipo JSON).
Passaggio 5. Copiare l'ID client dell'account del servizio.
Passaggio 6. Nel campo degli ambiti OAuth (Google Admin Console), copiare e incollare questi URL come elenco di ambiti delimitato da virgole:
Passaggio 7. Autorizzazione degli ambiti e salvataggio.
Passaggio 8. Caricamento del nuovo file JSON nella configurazione UMS di Google Workspace e salvataggio.
Se il servizio non è riuscito dopo i controlli eseguiti, raccogliere Connection Google Workspace Notifier.
Impostare le seguenti macro:
- Tracce singole Posta in arrivo
- Tracce verifica messaggi
Impostare le seguenti microtracce:
- SincronizzazioneMbCs: 10-23
- CsEws: Tutto
- NotificaEWN: Tutto
- CsWebDav: 10-14
- Taglia: 0,5,7
- MTA: 10-30
- Cuca Tutto
- CsExMbxLocator: Tutto
- DBEvent: 3,12
Suggerimento: le microtracce e le macro relative ai livelli di debug si applicano a tutti i problemi relativi alla singola cartella Posta in arrivo/messaggistica unificata.
In Connection Google Workspace Notifier, il valore non valido "JWT: Il token deve avere vita breve (60 minuti) e viene visualizzato un messaggio di errore "in un periodo di tempo ragionevole".
14:14:10.894 |3917,,,CuGSuiteSyncSrv,22,GSuiteServiceOpTh-40,com.cisco.unity.gsuite.services.GSuiteActionItems.sendMessage - Try # 1 Google Api send message on gsuite
14:14:11.052 |3917,,,CuGSuiteSyncSrv,23,GSuiteServiceOpTh-40,com.cisco.unity.gsuite.services.GSuiteActionItems.sendMessage - Google Api send message on gsuite failed with message 400 Bad Request
{
"error" : "invalid_grant",
"error_description" : "Invalid JWT: Token must be a short-lived token (60 minutes) and in a reasonable timeframe. Check your iat and exp values and use a clock with skew to account for clock differences between systems."
}
14:14:11.052 |3917,,,CuGSuiteSyncSrv,1,GSuiteServiceOpTh-40,com.cisco.unity.gsuite.serviceability.CuGsuiteSyncPerfCounters.incrementHttpsRqstError - Incrementing Http Request Failed counter by 1
14:14:11.052 |3917,,,CuGSuiteSyncSrv,1,GSuiteServiceOpTh-40,com.cisco.unity.gsuite.serviceability.CuGsuiteSyncPerfCounters.incrementHttpsRqstError - Total Http Request Failed after update: 3543
14:14:11.052 |3917,,,CuGSuiteSyncSrv,24,CxnResetSynchService.createNewMsgOnGSuite - 400 Bad Request
{
"error" : "invalid_grant",
"error_description" : "Invalid JWT: Token must be a short-lived token (60 minutes) and in a reasonable timeframe. Check your iat and exp values and use a clock with skew to account for clock differences between systems."
}
Clock Skew: This suggests that the system clock on the server generating the token may be out of sync with Google's servers. Even a small mismatch (e.g., a few seconds) can cause this issue.
14:14:11.052 |3917,,,CuGSuiteSyncSrv,24,com.cisco.unity.gsuite.services.GSuiteActionItems.sendMessage(GSuiteActionItems.java:1132)
com.cisco.unity.gsuite.GSuiteMessageUtility.createMessageOnGmail(GSuiteMessageUtility.java:615)
com.cisco.unity.gsuite.GSuiteMessageUtility.createNewMessageOnGmail(GSuiteMessageUtility.java:475)
com.cisco.unity.gsuite.reset.CxnResetSynchService.createNewMsgOnGSuite(CxnResetSynchService.java:343)
com.cisco.unity.gsuite.reset.CxnResetSynchService.checkWhereToSync(CxnResetSynchService.java:318)
com.cisco.unity.gsuite.reset.CxnResetSynchService.syncCnxMessage(CxnResetSynchService.java:282)
com.cisco.unity.gsuite.reset.CxnResetSynchService.sync(CxnResetSynchService.java:755)
com.cisco.unity.gsuite.reset.UMASyncWorker.resync(UMASyncWorker.java:220)
com.cisco.unity.gsuite.reset.UMASyncWorker.run(UMASyncWorker.java:109)
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
java.util.concurrent.FutureTask.run(FutureTask.java:266)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)
Soluzione
Il token Web JSON (JWT) utilizzato per l'autenticazione con l'API Google non è valido. Questo è il motivo dell'errore, come è stato rilevato più volte nei log durante l'errore di "concessione non valida". È scaduto o il relativo timestamp (valori iat o exp) non è compreso nell'intervallo accettabile.
Le API di Google richiedono token di breve durata (in genere 1 ora o meno) e la richiesta deve essere effettuata entro l'intervallo di tempo valido del token. Ciò è correlato alla modalità di gestione dei token tra CUC e Google.
Verificare che il valore TTL (Time-To-Live) del token sia inferiore a 60 minuti e che il protocollo NTP (Network Time Protocol) sia sincronizzato tra i server, i computer e Internet.