Google calendar v3 Push notifications "missing" - google-api

We are using Google Calendar v3 Push Notifications for around 250 users.
We are looking to increase this number to 1000 soon.
We have noticed that generally the notifications are working however we are not fully convinced on the reliability.
Because of this we have a "24 hour" poll of each users calendar in the event that there has not been a notification received.
Now if all is working - there should be no calendar changes that we have not been "notified" of.
However... this is not the case - we have 1 or 2 users a day where a notification has not been received...
Has anybody else observed this?? There is no way to know if a notification has not been sent from Google???
I would like to do away with polling but this is not reliable enough yet.
Ideally Google would provide a queryable list of changed calendars rather than using notifications which if missed/fail for some reason are gone for good.
Any thoughts/experiences would be appreciated on this,
Paul C

Related

How to be aware of the creation of a new event in a google calendar? [duplicate]

I am developing a SPA webapp through which I add events to my users google calendar They have given permission for. However this is my first time using Google calendar API, and was unclear about how to retrieve my users existing events , or if they add new events or delete them. IS there an option to set a webhook within google calendar thus when the user makes any changes to the calendar I can receive the change. My current approach was to make multiple get requests but that seems very inefficient. How can I keep my app calendar in sync with all user created events.
You can set up a push notification to be alerted any time anything changes on one of your calendars. I looked into it before a little, if memory serves it doesn't alert you to a lot of particularly useful information (I don't believe it tells you exactly what changed and how). Check out the docs here: https://developers.google.com/google-apps/calendar/v3/push
What I ended up doing was setting up a cronjob and getting all of my calendars' events using the synctoken, which returns only the events that have changed since the last time I polled the API for events. https://developers.google.com/google-apps/calendar/v3/sync
If you are using the SyncToken in your request for data, all you get back is the events that have changed. There is an eventID in the Google records that you can use to connect the change to your event data.

Google Admin SDK : Reports API Activities : Watch > Sends a tones of same notification

I have created a Gsuite channel as per this reference https://developers.google.com/admin-sdk/reports/v1/reference/activities/watch and its working fine. I can receive the webhooks for all the admin activities.
The problem is sometimes event such as "ADD_GROUP_MEMBER" or "REMOVE_GROUP_MEMBER" getting 10 to 12 times for the same user email and group email. I am also sending the response 200 for each webhooks but still, Gsuite keeps sending me the same events.
You can check on the attached events. I have received one webhook at 19:17:24 with some group member change. After 54 seconds I have again received the same event with all the same data. This happens almost 12 times. It only happens sometimes but when it happens it just hangs my server. Any idea of how can I prevent this?
Any help would be appreciated Thanks!!
Posting this just for documentation purposes.
This behaviour has been reported in Issue Tracker (I guess the author of this question reported it). Anyone who is experiencing this can keep track of the issue by clicking the star on the top left of the referenced page.
Reference:
Google Admin SDK : Reports API Activities : Watch > Sends a tones of same notification

Google Calendar event Created/Updated/Deleted Webhook?

I am developing a SPA webapp through which I add events to my users google calendar They have given permission for. However this is my first time using Google calendar API, and was unclear about how to retrieve my users existing events , or if they add new events or delete them. IS there an option to set a webhook within google calendar thus when the user makes any changes to the calendar I can receive the change. My current approach was to make multiple get requests but that seems very inefficient. How can I keep my app calendar in sync with all user created events.
You can set up a push notification to be alerted any time anything changes on one of your calendars. I looked into it before a little, if memory serves it doesn't alert you to a lot of particularly useful information (I don't believe it tells you exactly what changed and how). Check out the docs here: https://developers.google.com/google-apps/calendar/v3/push
What I ended up doing was setting up a cronjob and getting all of my calendars' events using the synctoken, which returns only the events that have changed since the last time I polled the API for events. https://developers.google.com/google-apps/calendar/v3/sync
If you are using the SyncToken in your request for data, all you get back is the events that have changed. There is an eventID in the Google records that you can use to connect the change to your event data.

EWS : how to get notification when meeting starts/end in exchange 2010

I have to do some operation when meeting starts and end. But i not able to find anyway to get the notification from EWS when meeting starts and end.
I tried push subscribe and subscribe for folder ID "calendar" and then do GetItem to fetch the meeting information. But the problem with this approach is i have to store all meeting item with timing and have my logic(timer) to find when meeting is started and finished.
I realize this is an old post, but I happened across it and thought someone might still find an answer useful.
EWS notifications will not be of use in this case - the notifications that you can subscribe to only alert you to new mail, deleted, modified, moved, copied, and created items. There's nothing built in regarding notifications for start times of meetings.
So what I'd suggest is that you use the EWS FindItem operation with a CalendarView element to get all calendar items that occur for the next N hours, to determine what appointments are happening that day, and then create your own logic/timer to perform your operation at the appropriate time. Hope that helps.

In-App Billing subscription issues

With the release of the new subscription option from In-App Billing API we started a proof of concept of the service and we found a few issues. Has anyone else tried it and would have some answers for us? Here's the issues we have been facing so far:
1 – While testing the unsubscribe functionality, the Google Play interface displays a white page with an “Item not found” message and a retry button. Is it due to the fact the app is not yet published? If yes, how can we test this flow without publishing it first?
2 – Inter device synchronization. When making a subscription on one device, other devices tied to the same account did not receive a OnPurchaseStateChange event. Is it again due to the fact the app is not published? Or are subscriptions tied to a particular device and not to an account?
3 – On our Google merchant page, when we cancel a purchase, the device does not receive a notification telling the subscription has been cancelled. Is this a bug? As a workaround we are manually checking the current time and comparing with the expiration date to force a restore transactions call. At this point, we are able to see the subscription is no longer valid. Do you think this is an acceptable solution?
4 – When a subscription is made, two transactions show up on the Google Merchant page: a FAILED transaction with a value of $0 and a valid one with the value we charged. Is this the expected behavior? What’s the purpose of the $0 FAILED transaction?
If anyone has faced similar issues we would like to know. Maybe these could be bugs on Google's end or maybe we did not understand 100% how it is supposed to work.
Thanks in advance.
1.I had the same issue and after I published (and later unpublished) my app I could see the app page in the market,so you can publish and than unpublish.
2.I didn't check it with subscriptions ,but for managed item i didn't get purchaseStateChange on two different devices as expected.
3.I do get subscription expired after canceling one,but only after a while.
I didn't understood how you can get the expiration date ?
you only can get it with access to play developer api.
the restore transactions will give you same purchaseStateChange as you got when purchase the item.
*in the developer guide it is recommanded to use restore transactions only in first app use.
4.I have same issue,and i heard at least about 10 people with same 0$ charge.

Resources