motioneye-project / motioneyeos

A Video Surveillance OS For Single-board Computers
Other
7.79k stars 888 forks source link

Google Drive - Sign in with Google temporarily disabled for this app #2191

Closed skeggman closed 4 years ago

skeggman commented 4 years ago

I'm getting the following error message when I try to obtain the Google Drive Key:

image

Preliminary Docs

I confirm that I have read the CONTRIBUTING guide before opening this issue.

I confirm that I have read the FAQ before opening this issue.

motionEyeOS Version

I am running motionEyeOS version: 20190911.

Board Model

I am using the following board/model: Raspberry PI 2B+.

Camera

I am using the following type of camera: 1xMMAL, 1x Network Camera.

My camera model is: .

Network Connection

My motionEyeOS unit is connected to the network via: Ethernet.

Peripherals

I am using the following peripherals that I consider relevant to this issue:

n/a

Log Files

I consider the following log files relevant to this issue:

n/a

stleev commented 4 years ago

Experiencing same issue regarding google drive. Turning on Less secure app access did not resolve this issue.

ccrisan commented 4 years ago

Guys, a few days ago, I received a mail from Google asking me for some kind of verification of the motionEye (Google Drive) app. They were asking for a homepage of the project and I gave them the github link. One day later I got an answer from them:

google-answer

Long story short, they insist for a domain to verify. And no, I can't mark the application as Internal because that option is missing, motionEye not being part of an organization.

I'm out of ideas and open to suggestions, as long as they don't involve acquiring and maintaining a domain for motionEye.

bedny22 commented 4 years ago

I hope you will find solution, just downloaded motion eye today and when i was setting it up I found out the google drive problem :( . Its really nice and well made 👍 but the google drive is really important when you want to use it as a security cam.

Edit: I used Dropbox for now, but its only 2GB for free, with google drive you can use 15GB for free :/

digiltd commented 4 years ago

Would be happy to get you a domain, knock up a page and host it for you (https)

stleev commented 4 years ago

I wonder if they accept github pages as a vaild domain for them. It would be easier to create and maintain in my opinion. https://pages.github.com/

ccrisan commented 4 years ago

@digiltd thanks for your offer! Let me first try to apply again with a small dummy page hosted on github pages as suggested by @SteveSJLee and see if they accept it.

digiltd commented 4 years ago

Agreed, I did initially think the "not be a link that leads to: Third party hosting platform..." meant that a github page would not be an option, but that was down to my lazy reading :)

hexordecimal commented 4 years ago

So did they take the motioneye app down too on the google play store or apple? also is there anyway to add apples icloud to the options?

ccrisan commented 4 years ago

Just a small update: I'm still waiting for the verification on https://ccrisan.github.io/motioneyeos/, which is a GitHub Pages-based website for motionEye, as recommended by @SteveSJLee.

The developers console page says "Your consent screen is being verified. This may take up to several weeks. Your last approved consent screen is still in use."

stleev commented 4 years ago

@ccrisan Thanks for the update. Hope google approves it.

Jaizan commented 4 years ago

I now have the same problem with google. I have been using it OK for weeks, but today I tried to set up a different camera on a Pi Zero W and had this error. I still have a different Pi saving data to a different folder on the same Google account, but cannot set up the new one. Going to try Dropbox.

Anyone with a system working should probably try to avoid deleting and installing cameras for a while.

Edit: Updated Motieoneye SW. Noticed new Google Photo upload option, but predictably Google have the same error as on Google Drive. [Dropbox also failed with the "HTTP error 409" and the workaround suggested in other threads failed]

ccrisan commented 4 years ago

The validation for https://ccrisan.github.io/motioneyeos/ failed: i need to prove ownership of the domain, which I obviously can't. It looks like we'll have to set up a domain.

I just bought motioneye.org and will set it up as a CNAME or something to ccrisan.github.io, then resubmit for verification. Let's hope third time's a charm.

ccrisan commented 4 years ago

Guys this is slowly becoming a nightmare. After buying, registering and setting up http://www.motioneye.org/, ensuring that we have a privacy policy document linked from the homepage, Google wants me to provide a youtube video, demonstrating all this sh*t:

google-motioneye-oauth

I'll try to put together such a video, in the hope that this is the last step in bringing back Google Drive services to motionEye.

PeterPedro commented 4 years ago

wow

kohkohwastaken commented 4 years ago

Thank you in advance! :)

digiltd commented 4 years ago

But have a look at what this guy does for the Google Drive Backup service for HomeAssistant.

Not sure if it is any use, I know it is a different language etc but you might get something from the process he describes to both the users and the details he includes to keep Google happy.

Screen Shot 2019-11-25 at 09 09 48

https://github.com/sabeechen/hassio-google-drive-backup/blob/master/hassio-google-drive-backup/AUTHENTICATION.md

https://philosophyofpen.com/hassiodrivebackup/

ccrisan commented 4 years ago

The verification has failed again. This time, the problems were:

  1. The YouTube video indicated that "localhost" was used instead of a production URL, which is apparently unacceptable, being considered a testing/staging domain. I will make a video using my own website, in hope that it satisfies the non-testing/staging condition.

  2. The video showed an unsuccessful demonstration of the functionality, due to the blocked Google Drive situation. They have offered though to temporarily whitelist an (my) account for demonstration purposes.

I'm kind of looking forward to the next challenges already.

donvonhill commented 4 years ago

Hi ccrisan, many thanks for your commitment and effort to fix functionality. Motieneyeos is an excellent tool and will definitely be able to wade through the pitfalls of googlu :-)

HairyCream commented 4 years ago

Calin, A big thanks for persisting with this ... it's a great project. : )

cardyology commented 4 years ago

Thank you for trying to resolve this. I reinstalled an old build for the sheer hell of it last week and encountered this issue.

Following.

ccrisan commented 4 years ago

They rejected us again saying that the video showed an "unverified" domain (the video was shot from my own motionEye cams domain). They also stated that the video did not showcase how motionEye uses the [Google Drive] scope in regards to its definition.

I used motioneye.org (supposedly considered verified by now) and shot a longer video clearly demonstrating how Google Drive upload is enabled and configured and how videos are uploaded to Google Drive. Let's hope this is the last one.

sanch03 commented 4 years ago

Thank you for persisting with this verification nightmare, it is truly appreciated!

josecobi commented 4 years ago

They rejected us again saying that the video showed an "unverified" domain (the video was shot from my own motionEye cams domain). They also stated that the video did not showcase how motionEye uses the [Google Drive] scope in regards to its definition.

I used motioneye.org (supposedly considered verified by now) and shot a longer video clearly demonstrating how Google Drive upload is enabled and configured and how videos are uploaded to Google Drive. Let's hope this is the last one.

Thank you ccrisan for all your effort. I wish I could help, but I am not tech savvy.

ijosh-development commented 4 years ago

Thank you so much for your patience and effort!

Firerouge commented 4 years ago

Consider putting an option under expert settings to override the google client ID and secret with the user's own.

To suggest a temporary workaround for users, from the google developer console, create an OAth 2.0 client id and secret, then use the api library to switch on the photos/drive services.

With these you can recompile with your credentials in the source

or

connecting to the ssh of a device which has debugging enabled, and running the following two commands, will replace the current credentials with yours after you also reboot

sed -i -e 's/jjqbWmICpA0GvbhsJB3okX7s/yourClientSecretHere/g' /usr/lib/python2.7/site-packages/motioneye/uploadservices.pyc

sed -i -e 's/349038943026-m16svdadjrqc0c449u4qv71v1m1niu5o.apps.googleusercontent.com/yourClientIDHere/g' /usr/lib/python2.7/site-packages/motioneye/uploadservices.pyc

TheHaf commented 4 years ago

I think that it is a good option to override the client ID and secret. As sign in is still disabled, I set up rclone to sync with Google Drive. They've got the process of obtaining a client ID and secret written down and it was easy enough for me to follow.

reparator commented 4 years ago

Hi Calin, thanks a lot for your efforts in this issue and keep a stiff upper lip! Now we see, who rules the world...

looxonline commented 4 years ago

Consider putting an option under expert settings to override the google client ID and secret with the user's own.

To suggest a temporary workaround for users, from the google developer console, create an OAth 2.0 client id and secret, then use the api library to switch on the photos/drive services.

With these you can recompile with your credentials in the source

or

connecting to the ssh of a device which has debugging enabled, and running the following two commands, will replace the current credentials with yours after you also reboot

sed -i -e 's/jjqbWmICpA0GvbhsJB3okX7s/yourClientSecretHere/g' /usr/lib/python2.7/site-packages/motioneye/uploadservices.pyc

sed -i -e 's/349038943026-m16svdadjrqc0c449u4qv71v1m1niu5o.apps.googleusercontent.com/yourClientIDHere/g' /usr/lib/python2.7/site-packages/motioneye/uploadservices.pyc

Tried this but to create the client ID and secret with the drive API requires approval by google which is exactly the same issue that is the root of this thread.

ccrisan commented 4 years ago

Great news, everyone!

image

Thank you for your patience and your support. Please verify yourselves that this works indeed and let's close this damn issue.

donvonhill commented 4 years ago

Many many thx!! Looks it works now! I do not want it to sound ungrateful and I do not want to upset you after all the fight, so I ask carefully :-) .. Will you apply this procedure also for google photo?

cinnamonsweets commented 4 years ago

Is it just me or is uploading to google drive still not working? At the very least it creates a folder in google drive when I click Test Service. I checked local storage folder to find that the camera is still recording videos and taking pictures.

minor update: I got it working by lowering the value for 'Minimum Motion Frames'; I've never encountered that problem before with my previous value. Guessing system ran out of memory because an update increased normal memory usage. System monitor should probably display some information regarding memory usage.

shane-powell commented 4 years ago

Thanks it's working for me now. Didn't save the upload settings the first two tries but worked the third time. Both my cameras are now set up and uploading.

sabavnk commented 4 years ago

Thank you very much @ccrisan, it works now. Really appreciate your support.

akivacp commented 4 years ago

@ccrisan thank you for everything you have put yourself to ensure we are provided the best of service. A software very popular, especially among Wyze users, we are very, very grateful.

ccrisan commented 4 years ago

Unfortunately, I think we'll have to go through the same process again, for Google Photos, as @donvonhill pointed out. What's even worse is that the validation process is probably going to take down the Google Drive service as well, as far as I can tell from Google's developers console, since it's basically the same project.

PeterPedro commented 4 years ago

Yes, it's working now, hopefully the process will be faster now that you have all the requirements.

ccrisan commented 4 years ago

The Google Photos scope has been approved as well. Everything should be working fine now.

donvonhill commented 4 years ago

Fantastic job ccrisan!! Many thanks for your effort!!

josecobi commented 4 years ago

Awesome. Thank you very much!

On Mon, Dec 16, 2019, 06:49 Calin Crisan notifications@github.com wrote:

The Google Photos scope has been approved as well. Everything should be working fine now.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/ccrisan/motioneyeos/issues/2191?email_source=notifications&email_token=AN44YMNVRCTV57KLR2GOXP3QY5TK7A5CNFSM4JLOQQYKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEG6OTHI#issuecomment-566028701, or unsubscribe https://github.com/notifications/unsubscribe-auth/AN44YMOHNZH5HFKE7EWJPXDQY5TK7ANCNFSM4JLOQQYA .

chunkysteveo commented 4 years ago

Just an FYI to anyone - I wasn't aware about this issue being raised and mine was still not uploading. Testing the Google Drive link it would time out. Needed a reboot of my camera and to obtain a new key which seemed to fix things. Thanks for your efforts @ccrisan !