Open tashtash69 opened 1 year ago
Seems like they start using /api/graphql
endpoint. In this case, checking only the URL won't be enough. 🤷🏻♂️ We have to cancel the request whose fb_api_req_friendly_name=PolarisAPIReelSeenMutation
in the formData
of the requestBody
, i.e. if requestBody.formData.fb_api_req_friendly_name === 'PolarisAPIReelSeenMutation'
-> cancel.
cc: @diessica
any updates on this?
@nhymxu Great stuff, Dung! 🤩 And thanks a lot for your work and being so handy at this.
A couple of remarks (as of today):
Because I'm just using stories, so my extension only focus to this
Create PR to this repo is okay for me, not too hard.
I create new one because look like @diessica not active maintain this repo 🤣
so my extension only focus to this
I'd like to create a PR to your repo to support "no-seen" for Messenger and IGD (Instagram Direct) Web as well, but I failed to figure out how the read-receipt works on both over the weekend. I believe they both pretty much have the same new mechanics; it might go along the /ajax/navigation/
request lines, but yeah. Do you have any idea? This guy @ChangJoo-Park seems to have cracked it tho 🍘 😃
https://chrome.google.com/webstore/detail/unseen-for-facebook/fgmiepijfchkhchobiopcemoajoedkkm
so my extension only focus to this
I'd like to create a PR to your repo to support "no-seen" for Messenger and IGD (Instagram Direct) Web as well, but I failed to figure out how the read-receipt works on both over the weekend. I believe they both pretty much have the same new mechanics; it might go along the
/ajax/navigation/
request lines, but yeah. Do you have any idea? This guy @ChangJoo-Park seems to have cracked it tho 🍘 😃 chrome.google.com/webstore/detail/unseen-for-facebook/fgmiepijfchkhchobiopcemoajoedkkm
Just wondering if you guys have updates on this? I tried to extract it, but the functions are obfuscated.
Edit 1: This extension works for blocking seen and typing. https://github.com/Sherly1001/tame
Edit 2: With the new update from Meta, blocking seen
and typing
features are not working in end-to-end chats, except it's a group chat.
Just wondering if you guys have updates on this? I tried to extract it, but the functions is obfuscated.
Nope. 🙁 Unfortunately guy who creates that "ESUIT | Un Seen for Facebook™" Chrome extension plans to monetize his extension all along, and therefore he doesn't open-source it. 🫤 What did you try to extract? The extension build code?
Also, from the extension page:
this extension is not officially developed by Facebook™, The author is
@William Chen
Not sure who he is 🤷🏻♂️, and seems like I tagged the wrong guy before hahah. I guess the only way to contact him is via https://www.facebook.com/esuitdev or fbesuit@gmail.com. Perhaps you can contact him to disclose "the trick" for this particular feature only... :D (actually, I need not to be seen more for Instagram DM tho)
Nope. 🙁 Unfortunately guy who creates that "ESUIT | Un Seen for Facebook™" Chrome extension plans to monetize his extension all along, and therefore he doesn't open-source it. 🫤 What did you try to extract? The extension build code?
I extracted the build code, .crx
. While extracting various addons and extensions some time ago, I noticed his code differs; I couldn't read it properly.
Tame got updated to support E2EE chats. Check it out! https://github.com/Sherly1001/tame/releases/tag/v0.3.4
cc: @Sherly1001
Thanks for the pointer, @flame-0! :D Actually, some 2-3 weeks ago I also tried to "decompile" that Chrome extension and fed it to the AI in order to help me understand the mechanics. I believe it all boils down to overriding the occurrences of markThreadAsRead
function in the script(s) contents.
str = str.replace(
/markThreadAsRead:function.*?{/,
'markThreadAsRead:function(){return;'
)
I found similar thing in Sherly's commit. But then, we'd need another special trick to be able to execute the overridden scripts that have been loaded to get around the Content Security Policy (CSP) that protects the browser from running a forged script (I guess Sher also managed to figure it out somehow 😆).
All in all, unfortunately life gets in my way to put all these things together properly (classic excuse 🙄😅), but still would love to see it happen for social-ghost-ext
(for Instagram bit) - I'm just gonna mention https://github.com/nhymxu/social-ghost-ext/issues/4 and https://github.com/nhymxu/social-ghost-ext/issues/5 here so that this info is linked there :) cc: @nhymxu
It's so cool to see your contributions coming together to address the problem. Unfortunately I didn't have issues notifications enabled and missed all of this. I am really sorry. If that's not too late, here's a transparent update:
I don't think this is a good solution anymore. Packaging Instagram/Facebook request blockers as an extension is VERY user-friendly, but not ideal to maintain and release fast enough across extension stores. A minor API change, and it breaks. For that, an advanced but generic request blocker (e.g. Ublock Origin, or DevTools > Network > Block URL if simple) would work best, and we could share the snippet for that instead (similarly to how people share URLs blocklists e.g. https://github.com/laylavish/uBlockOrigin-HUGE-AI-Blocklist) so users can instantly deploy it. I recognise that more code is needed to block requests these days (beyond plain URLs), but it's all about cracking the request pattern and intercepting it. Happy to hear your thoughts on that.
By the end of this week, I will update this repo, and will share a blog post developing on my ideas above, perhaps with some how-tos.
Thanks again for the discussion and understanding!
Stories are now showing as viewed. Please update the extension.