byteyilabs / yi-note

YiNote browser extension - online video note taking tool
https://www.yinote.co
GNU General Public License v3.0
356 stars 50 forks source link

Export to One Note functionality is broken #40

Closed zhenwei2972 closed 4 years ago

zhenwei2972 commented 4 years ago

Describe the bug Got an error message when attempting to export to one note

To Reproduce Authenticate with microsoft sign-in attempt to send to one note error occurs

Expected behavior export succeeds

Desktop (please complete the following information):

First time user


Would also like to thank you for making this amazing app!

shuowu commented 4 years ago

@zhenwei2972 Thanks for reporting this issue. I tried the latest version of YiNote from chrome web store, but cannot reproduce the issue. Wondering are you build the extension from the code? If that's the case, you also need to set up your own OAuth2 application on MS Azure to make sure it allows the callback URL.

Also, it would be helpful to provide your current extension version if you installed it from the chrome web store.

zhenwei2972 commented 4 years ago

current installed version is v1.3.0, I am not building extension from code. I am able to reproduce it anytime when trying to send notes to onenote I suspect something wrong with the authentication? Not quite sure how I can re-login to Microsoft, maybe backup, uninstall and re-install? I also deactivated all other extension to try and isolate, still facing the issue. image

shuowu commented 4 years ago

Thanks for the detailed information, I’ll investigate on this issue. Meanwhile, if you are familiar with how to inspect extension’s storage(not browser localstorage), you can try to clear the access token of onenote, then try again. Also, it’s always good to backup your data before you make changes.

zhenwei2972 commented 4 years ago

thank you for the quick reply, let me know how I can help, with any diagnostic tests, I will try to install on my brother's computer too and see if i can reproduce. It is a great extension, will be sharing with all my friends!

shuowu commented 4 years ago

@zhenwei2972 Firstly, send notes to OneNote is going through OAuth2 process and then call remote MS graph services, so I don't think deactivate other extensions can help. Just want to make sure you have an OneNote account first, YiNote only can send notes to the existing OneNote account, but not create an account with MS account.

Then, YiNote is logging error in browser's dev console https://github.com/shuowu/yi-note/blob/master/extension/src/ui/containers/VideoNotesView/SendToServices/index.js#L60 Can you please inspect the page you take notes and check if there are any error messages prefixed with yi-note in your browser's console? Please share the error log if you can find any.

Also, you can try to remove your OneNote accessToken in storage, then try again. You can follow the steps below:

  1. go to chrome://extensions from browser's address bar
  2. find YiNote, then click on inspect views background page
  3. Run chrome.storage.local.set({onenote: {}}) in background page's devTool console to clear oneNote meta data.

Let me know if any of these suggestions can help get more info on the issue. Thanks!

zhenwei2972 commented 4 years ago

I am unable to see any yi-note error logs on the console, even upon re-authenticating then sending to onenote. Upon going to inspect views background page, there are multiple logs though, am attaching them in a screen shot here. chrome.storage.local.set({onenote: {}}) seems to return undefined not quite sure why. image

Thank you for investigating, it is a minor issue no rush actually, I am using the built in notes viewer which works well, just wanted to report the OneNote issue so that you are aware.

I have a seperate more urgent issue which pertains to my use case on coursera, when going to next video via next button in coursera, the YiNote extension will not be able to "hook" properly to the new video and will fail to function, i.e only can put time stamp at 0.00, then unable to submit new notes. A simple refresh F5 fixes this, not really a big issue just letting you know, not sure if u can add in a auto-refresh for the extension when next video is played to fix this issue.

shuowu commented 4 years ago

@zhenwei2972 #42 has been created to track the Coursera issue.

Per the OneNote issue, from the error message, it looks like the extension failed to make proper requests after one access token gets invalid. Maybe missing headers from request to MS api. Not sure why it works on my browser... I’ll do a fix in next release.

Btw, the undefined response is desired, the command just reset OneNote metadata in storage, and the return value of that script is undefined.

zhenwei2972 commented 4 years ago

okay got it, thank you! will look forward to the release!

shuowu commented 4 years ago

v1.4.0 has been published in chrome web store, please update the extension and verify if the issue has been fixed.

zhenwei2972 commented 4 years ago

Hi would like to verify that this has indeed been fixed! thank you!