Google Calendar Not Working

Since a lot has changed at Google since April, I prefer to start a new discussion here.

After setting enableCalendarIntegration: true, in mysite.com-config.js and adding the Google Api Key as in

googleApiApplicationClientID=“DUMMYVALUEDUMMYVALUE-jsdjfchsdkjjhfdsjsdkjd32flfahge71urpgrh.apps.googleusercontent.com

Jitsi crashes. I have to comment out the google ApiApplicationClientID="…" statemement and Jisti loads again.

I have read and read, but from what I have gathered all I have to do is what I have done and I should See the Google Calendar tab at the bottom of the conference room panel, but Jitsi crashes instead.

I restartED Prosody, Jicofo and JVB2 after I made the changes to this file, but it doesn’t matter.

When I test the Api Key using curl, I get the following error:

“error”: {
“code”: 400,
“message”: “API key not valid. Please pass a valid API key.”,
“status”: “INVALID_ARGUMENT”,
“details”: [
{
@type”: “type.googleapis.com/google.rpc.Help”,
“links”: [
{
“description”: “Google developers console”,
“url”: “https://console.developers.google.com
}
]
}
]
}

OK, as far as I can see, Jitsi Calendar is not working.

Here is what I did:

  1. Log into a Google admin account., OK did that
  2. Go to Google cloud platform dashboard. https://console.cloud.google.com/apis/dashboard, Did this
  3. In the Select a Project dropdown, click New Project. Did this
  4. Give the project a name. Called it Politea Jitsi Calendar
  5. Proceed to the Credentials settings of the new project. Did this
  6. In the Credentials tab of the Credentials settings, click Create Credentials and select the type I selected OAuth and this was the result: OAuth Client ID looks something like: 1234567891011-arhbmmqtlabuotn32flfahge71urpgrh.apps.googleusercontent.com, I am not providing the actual ID here.
  7. Proceed with creating a Web application and add the domains (origins) on which the application will be hosted. Local development environments (http://localhost:8000 for example) can be added here. I used https://meet.politea.us/static/oauth.html for this and the Client ID is the same 1234567891011-arhbmmqtlabuotn32flfahge71urpgrh.apps.googleusercontent.com. For authorized JavaScript origin I used https://meet.politea.us because I didn’t know what else to use here.
  8. While still in the Google cloud platform dashboard, click the Library settings for the calendar project.
  9. Search for the Google Calendar API (used for calendar accessing), click its result, and enable it. Did this, it is enabled
  10. Do the same for YouTube Data API v3. Did this it is also enabled.

I added the Client ID in meet.politea.us-config.js and enabled Calendar Integration.

enableCalendarIntegration: true,

googleApiApplicationClientID=“1234567891011-arhbmmqtlabuotn32flfahge71urpgrh.apps.googleusercontent.com

I restarted Prosody, JVB, Jocofo and Jitsi.

And this caused Jitsi to stall or crash.

Can anyone suggest what I did wrong?

I get the following error when test the the Client ID:

Authorization Error
Error 400: redirect_uri_mismatch
The redirect URI in the request, urn:ietf:wg:oauth:2.0:oob, can only be used by a Client ID for native application. It is not allowed for the WEB client type. You can create a Client ID for native application at https://console.developers.google.com/apis/credentials/oauthclient
Learn more

I swapped out urn:ietf:wg:oauth:2.0:oob for https://meet.politea.us/static/oauth.htm on the line: set URL="%ENDPOINT%?client_id=%CLIENT_ID%&response_type=code&scope=%SCOPE%&access_type=offline&redirect_uri=https://meet.politea.us/static/oauth.html", and ran the windows batch file again, and I got:

This app isn’t verified
This app hasn’t been verified by Google yet. Only proceed if you know and trust the developer.

If you’re the developer, submit a verification request to remove this screen. Learn more

But the Google Calendar read only App doesn’t need verification, so not sure what to do here.

I guess I need to submit a verification request, but that can take anywhere from 3 days to 4 weeks.

According to Google, I need to add a Privacy Policy and Terms of Service Agreement somewhere on the Jitsi landing page so that it is easily visible and I need to include certain language in those agreements to satisfy Google. The only way I see to do that is to modify the code. I can add those agreements to the /usr/share/jitsi-meet/static folder, but I will have to create the links on the landing page.

Could someone tell me where I can find the code for the Jitsi landing page? I have looked on /usr/share/jitsi-meet/ but have found nothing that looks like the Jitsi landing page.