Create Google Calendar event with a public hangout - node.js

I need to create a calendar event with a public Hangouts link attached to it.
I'm currently using the Node.js google client library to create an event on a Google Calendar using a service account in my organisation. The event is being created successfully, and has a Hangouts link attached to it, but the Hangout is only accessible to members of our organisation, everyone else needs to request access to the Hangouts before they can join it.
The problem is, we're creating these events on behalf of our clients (who are not part of our organisation) and we don't want to have to continuously go into the Hangout before our clients join just to let them in. That won't scale well.
How would I go about creating an event on our google calendar that anyone can join without requesting access?

Related

How to send Google Calendar invite and auto add the event on calendar?

Actually, our software sends an ICS file to the customer at the end of an action, representing an event, but we want to make an insertion on the customer Google Calendar. I want to make a Google Calendar invite by email with the ICS file (similar with the meeting invite from Google Meet).
I am trying to discover how the Calendly add automatically an event on my calendar with a email invite and without any extra permission. Furthermore, I was using the Google API to do that, but every request use a OAuth permission, this is unviable to a backend service. I think a ICS file have no power to do that action. So now, I have no clue to do that. What have I supposed to do?

How to make your own push notification service for your website

I am working on a website, where I want to make a feature of notifications, when a user visits my website, they are asked for notifications permission and when they allow it, they will get notifications from my website, and whatever product I want them to get notified by.
Like for example when I visit some websites, they ask me for notifications permissions and when I allow the, I get notified through notifications then. That's all I want for now.
How can I achieve this functionality, I have follow this tutorial, but still confused how the users who allowed the notifications get detected and how all of them are notified then ?
Web Push library for node.js is just a sender.
You should obtain a subscription JSON object from the browser using Notification API and Service Worker API and then send it to your server, where put it in the database of your choise.
When you will need broadcast notifications, you can retrieve subscription and use a web-push library (for php is also available :)
Note that is a right flow looks following as:
1) Retrieve subscription from the browser
2) Send and store it on your web-server
3) Create notification prototype (just object)
4) Broadcast notification prototype ID you have created to the users
5) Service Worker receive one and fetch notification prototype from your server by ID
6) Show notification using browser API in service worker
For more see here links
https://developers.google.com/web/fundamentals/codelabs/push-notifications/
https://developers.google.com/web/ilt/pwa/introduction-to-push-notifications/

Google Calendar live sync with node js app

I want to sync google calendar with my app.
When user add some event in the Google calendar at that time, I want these new event in my node server response
Means live sync with google calendar.
I want something like listener that listen new event.
With Google Calendar API you can watch for changes to Events or CalendarList resources, see this and this. Basically you will need to create an endpoint on your server which will receive events/calendars update notifications. When notification arrives, request a calendars/events synchronization. To make the synchronization efficient, use incremental sync. Check this question also to see the algorithm.
You may check this Quickstart tutorial and node-google-calendar.
You need to create a service account if you don't have one. A public/private key pair is generated for the service account, which is created from the Google API console. Take note of the service account's email address and store the service account's json or P12 private key file in a location accessible to your application. Your application needs them to make authorized API calls. If a user wants to give access to his Google Calendar to your application, he must give specific permission for each of the calendars to the created Service Account using the supplied email address under the Google Calendar settings.

Google Calendar API - set guest can modify to true

I'm using the google calendar api for a calendar web app. My app allows users to create and modify calendar events and it syncs these changes with user's google calendars. I recently noticed that when one user creates an event and invites another user to that event, that invited user can only change the topic of the event for his/her calendar, not for all the other participants. I would like one user's changes to be reflected on the google calendar's of all the other participants. Google Calendar's website provides an option for allowing guests to modify the event:
but I wasn't able to find where I could specify this option in the google calendar api. How can I use the gcal api to set guestsCanModify to true when an event is created?
2021 update:
Just set the guestsCanModify to true in Event object
https://developers.google.com/calendar/api/v3/reference/events
That is probably some Google magic in the Google Calendar website. If you check the documentation for Events.insert There is nothing about granting attendees permissions on the event. It would appear that you can only add a user to a calendar but not limit their permissions in anyway with regard to events.
However I think that is a new feature which makes me think it might be something they will be adding to the API in the future. It would be nice if they did.

Get event/notification when user click phone call at Gmail/Hangout

Is there any way to get notification when user initiates new call in gmail via google talk or hangout? The purpose to track it is to extract extension which user wants to call and initiate call using third-party application instead of google services.
I checked google talk API and hangout API but haven't found any similiar to that.

Resources