Inhoud

Inleiding

Voorwaarden

Vereisten

Gebruikte componenten

Achtergrondinformatie

Problemen oplossen

Google-configuratie

Oplossing

Inleiding

In dit document wordt beschreven hoe u problemen kunt oplossen wanneer Mailbox Out of Sync is tussen CUC en Google Workspace.

Voorwaarden

Vereisten

Cisco raadt kennis van de volgende onderwerpen aan:

- Cisco Unity Connection (CUC)

- Google Workspace

- Simple Mail Transfer Protocol (SMTP)

Gebruikte componenten

Dit document is niet beperkt tot specifieke software- en hardware-versies.

De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.

Achtergrondinformatie

De Publisher- en Subscriber-servers zijn operationeel, maar de pogingen om voicemail-meldingen (Single Inbox of Voicemail to Email-functie) te verzenden, zijn mislukt.

Navigeer naar de CUC-beheerpagina > Unified Messaging > Unified Messaging Services > Open de Unified Messaging-account. Hoewel de configuraties correct zijn ingesteld, zijn er synchronisatiefouten.

UM (Cisco Unity to Google Mail) niet meer synchroon

Resultaten UM-validatie

Deze fout wordt ook gezien.

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)

Problemen oplossen

Google-configuratie

Stap 1. Navigeer naar de Google Console en verwijder het reeds aangemaakte serviceaccount.

Stap 2. Voeg een nieuwe serviceaccount toe.

Stap 3. Deze rollen toewijzen

- Service Account Key Admin

- Serviceaccountgebruiker

- Pub/Sub-beheerder

Stap 4. Sla de gegenereerde account op en download het sleutelbestand (JSON-type).

Stap 5. Kopieer de klant-ID van de serviceaccount.

Stap 6. In het veld OAuth scopes (Google Admin Console) kopieert en plakt u deze URL's met een kommabegrensde lijst met scopes:

- https://mail.google.com

- https://www.googleapis.com/auth/gmail.labels

- https://www.googleapis.com/auth/gmail.modify

- https://www.googleapis.com/auth/cloud-platform

- https://www.googleapis.com/auth/pubsub

- https://www.googleapis.com/auth/admin.directory.user

- https://www.googleapis.com/auth/admin.directory.customer.readonly

- https://www.googleapis.com/auth/admin.directory.rolemanagement.readonly,

- https://www.googleapis.com/auth/userinfo.email

- https://www.googleapis.com/auth/migrate.deployment.interop

- https://www.googleapis.com/auth/gmail.settings.basic

- https://www.googleapis.com/auth/calendar

- https://www.googleapis.com/auth/drive

Stap 7. De scopes geautoriseerd en opslaan.

Stap 8. Het nieuwe JSON-bestand is geüpload naar de Google Workspace UMS-configuratie en opgeslagen.

Als de service is mislukt nadat de controles zijn uitgevoerd, verzamelt u de Google Connection Workspace Notifier.

Stel deze macrosporen in:

1. Enkele postvaksporen

2. Tracking van berichten

Stel deze microsporen in:

1. CSmbxSync: 10-23

2. CSews: Alle

3. EWSN-melding: Alle

4. CSwebDAV: 10-14

5. CuESD: 0,5,7

6. MTA: 10-30

7. CUCA: Alle

8. CSexMBxLocator: Alle

9. DBEvent: 3,12

Tip: Deze debugniveaus voor microsporen en macrosporen zijn van toepassing op alle problemen met Single Inbox / Unified Messaging.

In de Connection Google Workspace Notifier wordt de ongeldige fout "JWT: Token moet een kortstondig token (60 minuten) en binnen een redelijke termijn zijn" gezien.

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)

Oplossing

De JSON Web Token (JWT) die wordt gebruikt om te verifiëren met de Google API is ongeldig, en dat is de reden van de fout, zoals de fout "ongeldige subsidie" meerdere keren door de logs wordt gezien. Het is verlopen of de tijdstempel (iat- of exp-waarden) ligt buiten het aanvaardbare bereik.

De Google API's vereisen dat tokens van korte duur zijn (meestal 1 uur of minder) en dat het verzoek binnen het geldige tijdsbestek van het token wordt gedaan. Dit heeft te maken met de manier waarop de tokens worden behandeld tussen de CUC en Google.

Zorg ervoor dat de Time-To-Live (TTL) van het token minder dan 60 minuten is en dat het Network Time Protocol (NTP) wordt gesynchroniseerd tussen de servers, computers en internet.