Skip to content
This repository has been archived by the owner on Oct 11, 2022. It is now read-only.

Extension pulled from Chrome Web Store #86

Closed
tjorim opened this issue Sep 23, 2018 · 45 comments
Closed

Extension pulled from Chrome Web Store #86

tjorim opened this issue Sep 23, 2018 · 45 comments

Comments

@tjorim
Copy link

tjorim commented Sep 23, 2018

Seems like this extension got pulled from the Chrome Web Store.
https://chrome.google.com/webstore/detail/bmoemkaigjgcgjjnpmdgkifndiidkeji
Gives a 404 error, searching for it doesn't work either.

@Jepes
Copy link

Jepes commented Oct 4, 2018

Hi,
Any idea how to install it again ?

@AnderssonPeter
Copy link

Is it dead? i sure hope not!

@noah978
Copy link

noah978 commented Oct 8, 2018

As a more temporary fix, do you know how to access the timestamps in netflix's viewing activity?

@Mosney
Copy link

Mosney commented Oct 16, 2018

So anyone know how to install now? Any crx file could be download?

@rafaelgomesxyz
Copy link
Collaborator

rafaelgomesxyz commented Oct 18, 2018

@noah978

  1. Visit the source code of https://www.netflix.com/Activate (view-source:https://www.netflix.com/Activate)
  2. Search for "BUILD_IDENTIFIER":"[Value1]" and write down [Value1]
  3. Search for "authUrl":"[Value2]" and write down [Value2]
  4. Visit https://www.netflix.com/api/shakti/[Value1]/viewingactivity?authURL=[Value2]&pg=[Page], replacing [Value1] and [Value2] with the values you got from steps 2 and 3, and replacing [Page] with the page you want (starts at 0)

The dates are stored as an integer number, so to make it easier to get them, open the browser console (F12 or Ctrl + Shift + I) and paste this code:

json = JSON.parse(document.body.textContent.replace(/^.*?({)|(}).*?$/, `$1`));
for (const item of json.viewedItems) {
  console.log(`${item.seriesTitle}, ${item.seasonDescriptor}, ${item.episodeTitle}, ${new Date(item.date).toLocaleString()}`);
}

I'm currently porting the extension to Firefox and I hope to distribute it soon, in case anyone is interested in that.

@noah978
Copy link

noah978 commented Oct 18, 2018

Thanks! That’s incredibly helpful, look forward to seeing the Firefox extension. 👍

@rafaelgomesxyz
Copy link
Collaborator

rafaelgomesxyz commented Oct 19, 2018

I've distributed the extension on Firefox: https://addons.mozilla.org/en-US/firefox/addon/traktflix/

For Chrome users, you can use the extension by downloading app.zip from here. You just have to extract the files from the .zip file to a folder and load the folder through "Load unpacked" in the developer mode of Chrome's extensions page.

@andyosier
Copy link

I believe Chrome users can also use this version without any issues. You just have to extract the files from the .zip file to a folder and load the folder through "Load unpacked" in the developer mode of Chrome's extensions page.

That worked perfectly. Using it in Chrome right now.

@rafaelgomesxyz
Copy link
Collaborator

@andyosier The link was outdated, did you get v2.0.3? I've updated the link just now. The only annoying thing about using it on Chrome like this is that every time you open the browser you will get a message saying that using extensions in developer mode is dangerous and you will have to dismiss that message every single time. Unfortunately I can't pay Google's developer fee to distribute it in their store.

@andyosier
Copy link

andyosier commented Nov 1, 2018 via email

@vc4u
Copy link

vc4u commented Nov 3, 2018

Firefox addon worked like a charm. very helpful. Though, if I can ask one feature request, for if scrobble is enabled, it auto fullscreen the playing video. If at all it is possible :-)

@tegon
Copy link
Owner

tegon commented Nov 5, 2018 via email

@BuSHari
Copy link

BuSHari commented Nov 12, 2018

Feel better @tegon , maybe you can merge with @gsrafael01 fork?

@tegon
Copy link
Owner

tegon commented Nov 20, 2018

Sure, I'm not sure what changed exactly though.
@gsrafael01 What did you need to change in order to make it work with Firefox?

@rafaelgomesxyz
Copy link
Collaborator

rafaelgomesxyz commented Nov 20, 2018

@tegon To make it work with Firefox, very little. Firefox uses WebExtensions since v57, which has an API that is very similar to Chrome's. I only had to add a fallback method for declarativeContent, which is not yet available on Firefox, and remove launchWebAuthFlow, because Chrome's launchWebAuthFlow requires a chromiumapp.org page, and I don't have one. So the authentication process now takes place in a new tab.

But I made a lot of changes, you can see the commits here. Among them:

  • Migrated the modules to E6 and implemented many E6 features
  • Migrated development to Webpack, because I'm more familiar with it than Gulp
  • Fixed the tests and migrated them to Mocha + Chai, because this combination allows for some cool testing features that Jasmine does not have
  • Added a PT-BR locale
  • Added an options menu, to allow users to opt-in to Google Analytics and Rollbar instead of making them enabled by default, which is a privacy concern since GDPR
  • Added an option to disable scrobbling in real time, in case the user wants to sync their history when they wish
  • Improved the loading time of the activity history, by loading things asynchronously and implementing a cache
  • Implemented a Google Sheets database for the history sync, so that if a user corrects an item all other users will receive suggestions for the same correction
  • Made it so that the sync checkbox is disabled if the item was not found on Trakt in the history sync, to prevent errors when syncing
  • Improved UI error handling when updating an item in the history sync (it now shows messages to the user to let them know what is going on)
  • Started using Netflix' API instead of scraping the HTML of the page to get information about the item that the user is watching
  • Made it so that requests to the Netflix API are made in English, which should allow the extension to work well for users using non-English Netflix most of the times
  • Improved the detection of episode titles
  • Fixed the detection of collections
  • ...

@ghost
Copy link

ghost commented Nov 24, 2018

screenshot_39

@gsrafael01
I've had this error for the last 5 days. Everytime I open a movie/episode of a series, I get it. This happens on 2 different pc's (both Firefox). Any idea how to solve this?

@rafaelgomesxyz
Copy link
Collaborator

@Skardy Can you turn on Rollbar in the options menu so I get some more info about the error?

@ghost
Copy link

ghost commented Nov 24, 2018

@gsrafael01 I just found out that the extension is not in my list on the top right corner. It is when I go to the Add-ons manager. It's the exact same on my other pc. It was never there to be honest. Any idea?
screenshot_40

@rafaelgomesxyz
Copy link
Collaborator

@Skardy That's the default behavior, the extension only appears in the top right corner of the search bar when you are on a Netflix page (open any Netflix page and you'll see it).

@ghost
Copy link

ghost commented Nov 24, 2018

@gsrafael01 Oh wow, I feel so stupid. It works now, I didn't even notice that.
Thanks for your help and sorry for wasting your time. Awesome app though! Could use some improvement, but cool design!

@rafaelgomesxyz
Copy link
Collaborator

@Skardy If you have any suggestions for improvements, feel free to open an issue, I'd be happy to work on it.

@HakimD
Copy link

HakimD commented Nov 29, 2018

@noah978

  1. Visit the source code of https://www.netflix.com/Activate (view-source:https://www.netflix.com/Activate)
  2. Search for "BUILD_IDENTIFIER":"[Value1]" and write down [Value1]
  3. Search for "authUrl":"[Value2]" and write down [Value2]
  4. Visit https://www.netflix.com/api/shakti/[Value1]/viewingactivity?authURL=[Value2]&pg=[Page], replacing [Value1] and [Value2] with the values you got from steps 2 and 3, and replacing [Page] with the page you want (starts at 0)

The dates are stored as an integer number, so to make it easier to get them, open the browser console (F12 or Ctrl + Shift + I) and paste this code:

json = JSON.parse(document.body.textContent.replace(/^.*?({)|(}).*?$/, `$1`));
for (const item of json.viewedItems) {
  console.log(`${item.seriesTitle}, ${item.seasonDescriptor}, ${item.episodeTitle}, ${new Date(item.date).toLocaleString()}`);
}

I'm currently porting the extension to Firefox and I hope to distribute it soon, in case anyone is interested in that.

Hi @gsrafael01 , @tegon

I just discovered your work, its great! Do you know why sometimes the api returns "undefined, undefined, undefined, 29/11/2018..."

Ty

@rafaelgomesxyz
Copy link
Collaborator

@HakimD Oh sorry, I forgot about movies. This should work:

json = JSON.parse(document.body.textContent.replace(/^.*?({)|(}).*?$/, `$1`));
for (const item of json.viewedItems) {
  if (item.seriesTitle) {
    console.log(`TV SHOW: ${item.seriesTitle}, ${item.seasonDescriptor}, ${item.episodeTitle}, ${new Date(item.date).toLocaleString()}`);
  } else {
    console.log(`MOVIE: ${item.title}, ${new Date(item.date).toLocaleString()}`);
  }
}

But there's no need to do that anymore, if you use the version I distributed for Firefox.

@HakimD
Copy link

HakimD commented Nov 30, 2018

@gsrafael01 It's ok. thanks. Is there any documentation on internet about how to use netflix's api?

@MrMamen
Copy link
Contributor

MrMamen commented Dec 3, 2018

I'm already a (minor) contributor to this repo, I may want to continue contributing. But has @tegon stopped maintaining this? I would gladly switch to @gsrafael01 but not if the end result is two diverging forks. I would like to see one unified traktflix project.

@tegon
Copy link
Owner

tegon commented Dec 3, 2018

@MrMamen you're right. Sorry I haven't given any update here, I'm trying to get this back in Chrome Store.

@gsrafael01 That's great! Seems like you've made a lot of improvements. If you want to, I'll be glad to accept a pull request to merge your changes here and add you as a maintainer so that we can work together on this.

@rafaelgomesxyz
Copy link
Collaborator

rafaelgomesxyz commented Dec 3, 2018

@HakimD Unfortunately not. It's not really a public API. Someone started documenting it here, but it's not a lot. So I've been mostly watching the Network tab of the browser to see how Netflix uses it.

@tegon Sure, made a PR. I can add launchWebAuthFlow back if you want, since you have a chromiumapp.org page.

@HakimD
Copy link

HakimD commented Dec 3, 2018

@gsrafael01 Ok thanks

@ImDini
Copy link

ImDini commented Dec 21, 2018

I keep getting "Activate your device" on netflix when trying to connect the app.zip addon. I am stuck with logging in basically on chrome. I tried opening netflix on other devices for a code to popup but nothing at all.

@rafaelgomesxyz
Copy link
Collaborator

@DiniOG I just tested and got the same thing, but if I close the activate window and open the traktflix popup from the browser toolbar, it shows that I'm logged in. Does it not log you in at all?

@cryptochrome
Copy link

One month later and it's still not available on the Chrome Webstore :-/

@cobrabr
Copy link

cobrabr commented Dec 29, 2018

@gsrafael01, @DiniOG -- that worked for me as well. Also, thanks a bunch for the improvements, @gsrafael01! :)

@FryGuy1981
Copy link

What is the status on the extension in the chrome store? Still working on getting it back?

@lonelyfairie
Copy link

I tried loading the extension in chrome as unpacked but I get an error saying unable to load manifest, is there any way around this?

@rafaelgomesxyz
Copy link
Collaborator

I don't know when @tegon will get the extension back in the Chrome store, and I don't want to overstep that distribution, since my main focus is Firefox, but I've published a temporary unlisted version of it: https://chrome.google.com/webstore/detail/traktflix/ehlckfimahifadnbecobagimllmbdmde I'll delete it as soon as the original extension is back in the store. I tested it very quickly and it seems to be working.

@MrMamen
Copy link
Contributor

MrMamen commented Jan 10, 2019

What is the current status of this repo? @tegon seems to be mostly away. But did @gsrafael01 get maintainer status? I have a few improvements I have been implementing on my traktNRK-fork, which I will be happy to contribute back to this project. But I will not bother doing so if my Pull Requests are ignored.

@thilux
Copy link

thilux commented Jan 20, 2019

Any news on the status of getting trakflix back into Chrome Web Store?

@ImDini
Copy link

ImDini commented Jan 29, 2019

Installing the extension by gsrafael01 works just fine. Just had issues with the manual extension we were having to install. Verified/activated instantly when signing into trakt.

@FryGuy1981
Copy link

The gsrafael01 extension works perfectly for me. Thank you.

@tegon
Copy link
Owner

tegon commented Feb 14, 2019

I'm still having issues with Chrome Store privacy policy's 😞
I've been unable to find time to work on this lately since I'm maintaining other open source projects now. But I'll try to work with @gsrafael01 to see whether we can publish a new version to the store.

I think for now it's better to use the unpublished version above.

@redxtech
Copy link

Just migrated to @gsrafael01's version. Looks like those were some good changes to implement.

What sort of issues are there with the new privacy policy? Is it just some stuff that you have to change in your policy or do you have to fundamentally change parts of the extension to comply?

@rafaelgomesxyz
Copy link
Collaborator

@redxtech Apparently they didn't say the exact reason why the extension was pulled. I believe that it could have been because of the use of Google Analytics and Rollbar without the consent of the user, but tegon said he submitted a version removing those features and it still was rejected. The last version he submitted was my version, which makes Google Analytics and Rollbar completely optional, so we'll see if they reject it this time.

@redxtech
Copy link

Ah ok sounds good. Yeah hopefully that would make it work with their policy. They really should tell you at least generally the part of their ToS/provacy policy that you're violating.

@raulcraveiro
Copy link

The @gsrafael01 Chrome version isn't working here, just the Firefox version. And I tried to upload the unpacked version on Microsoft Edge Chromium and it says that is missing a manifest file.

@raulcraveiro
Copy link

Oh, nevermind, when I changed the permissions on the extension, it worked. ♥

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests