kiến thức Tổng hợp những addon chất cho Firefox / Chromium

Tải cái ext này về
FB unseen – Get this Extension for 🦊 Firefox (en-US)
Giải nén, mở file background.js, trong đó có mấy link chặn seen, add vào my filter của ublock là xong :big_smile:
mấy cái này ko chặn đc đâu, thử 2 acc chat với là biết thôi, extension từ 6 năm trước rồi :shame:
hiện tại chỉ có cái này dùng hơi ok phải chỉnh tí vì có malware theo như thím @Aisrsa nói, ai port qua firefox đc thì port, à mà dev cái extension đó là người vn đấy, nên a nào xài j**** thì coi chừng :shame:
https://voz.vn/t/abpvn-chan-quang-cao-cho-nguoi-viet.25778/post-23785991
 
mấy cái này ko chặn đc đâu, thử 2 acc chat với là biết thôi, extension từ 6 năm trước rồi :shame:
hiện tại chỉ có cái này dùng hơi ok phải chỉnh tí vì có malware theo như thím @Aisrsa nói, ai port qua firefox đc thì port, à mà dev cái extension đó là người vn đấy, nên a nào xài j**** thì coi chừng :shame:
https://voz.vn/t/abpvn-chan-quang-cao-cho-nguoi-viet.25778/post-23785991
nghe rồi sợ mấy thằng VN quá
 
Port thử thành Userscript, cần người test do không dùng Facebook nữa:

Code:
// ==UserScript==
// @name            Facebook Unseen
// @author          noname
// @namespace       http://www.example.url/to/your-web-site/
// @description     Put a good description in here
// @license         Creative Commons Attribution License
// @version            0.1
// @include         http*://facebook.com/*
// @include         http*://*.messenger.com/*
// @grant        unsafeWindow
// @run-at           document-start
// @released        2006-04-17
// @updated         2006-04-19
// @compatible      Greasemonkey
// ==/UserScript==

function getCookie(e) {
  const t = `; ${document.cookie}`,
    n = t.split(`; ${e}=`);
  if (2 === n.length) return n.pop().split(";").shift()
}(e => {
  let i = getCookie("c_user"),
    l = !!e.location.href.startsWith("https://www.messenger.com/t"),
    o = {
      fb_unseen: !0,
      fb_typing: !0,
      mess_unseen: !0,
      mess_typing: !0
    };
  e.postMessage({
    type: "get_settings",
    value: "all"
  }, "*"), e.addEventListener("message", function (e) {
    var {
      data: e
    } = e.data ? e : {
      data: {}
    };
    "update_setting" === e.type && (o[e.name] = e.value), "set_settings_all" === e.type && (o = {
      ...e.value
    })
  }, !1), e.WebSocketProxy = new Proxy(e.WebSocket, {
    construct: function (e, t) {
      const n = new e(...t),
        s = e => {},
        a = e => {
          n.removeEventListener("open", s), n.removeEventListener("close", a)
        };
      return n.addEventListener("open", s), n.addEventListener("close", a), n.send = new Proxy(n.send, {
        apply: function (t, n, s) {
          let a = new Uint8Array(s[0]);
          if (!a || a.length < 100 || 1500 < a.length) return t.apply(n, s);
          var r = (new TextDecoder).decode(a);
          if (!((l ? o.mess_typing : o.fb_typing) && r.includes('"type":4') && r.includes('\\"label\\":\\"3\\"') && r.includes("is_typing"))) {
            if ((l ? o.mess_unseen : o.fb_unseen) && r.includes('"type":3') && r.includes('\\"label\\":\\"21\\"') && !r.includes('\\"label\\":\\"46\\"') && r.includes("last_read_watermark_ts")) try {
              r = "", a.map(e => r += String.fromCharCode(e)), regfex = /\\\\\\"thread_id\\\\\\"\:[0-9]+,\\\\\\"last_read/g;
              let e = r.match(regfex);
              return e ? (e.forEach(e => {
                var t = e.match(/[0-9]+/g)[0],
                  t = 15 < t.length ? "1000000000000000" : i;
                r = r.replace(e, `\\\\\\"thread_id\\\\\\":${t},\\\\\\"last_read`)
              }), s[0] = new Uint8Array(r.split("").map(e => e.charCodeAt(0))), t.apply(n, s)) : t.apply(n, s)
            } catch (e) {
              return void t.apply(n, s)
            }
            return t.apply(n, s)
          }
        }
      }), n
    }
  }), i && (e.WebSocket = WebSocketProxy)
})(unsafeWindow);

Phôi thai Userscript lấy tại đây: https://voz.vn/t/tong-hop-nhung-addon-chat-cho-firefox-pc-mobile.682181/post-24721705
 
Port thử thành Userscript, cần người test do không dùng Facebook nữa:

Code:
// ==UserScript==
// @name            Facebook Unseen
// @author          noname
// @namespace       http://www.example.url/to/your-web-site/
// @description     Put a good description in here
// @license         Creative Commons Attribution License
// @version            0.1
// @include         http*://facebook.com/*
// @include         http*://*.messenger.com/*
// @grant        unsafeWindow
// @run-at           document-start
// @released        2006-04-17
// @updated         2006-04-19
// @compatible      Greasemonkey
// ==/UserScript==

function getCookie(e) {
  const t = `; ${document.cookie}`,
    n = t.split(`; ${e}=`);
  if (2 === n.length) return n.pop().split(";").shift()
}(e => {
  let i = getCookie("c_user"),
    l = !!e.location.href.startsWith("https://www.messenger.com/t"),
    o = {
      fb_unseen: !0,
      fb_typing: !0,
      mess_unseen: !0,
      mess_typing: !0
    };
  e.postMessage({
    type: "get_settings",
    value: "all"
  }, "*"), e.addEventListener("message", function (e) {
    var {
      data: e
    } = e.data ? e : {
      data: {}
    };
    "update_setting" === e.type && (o[e.name] = e.value), "set_settings_all" === e.type && (o = {
      ...e.value
    })
  }, !1), e.WebSocketProxy = new Proxy(e.WebSocket, {
    construct: function (e, t) {
      const n = new e(...t),
        s = e => {},
        a = e => {
          n.removeEventListener("open", s), n.removeEventListener("close", a)
        };
      return n.addEventListener("open", s), n.addEventListener("close", a), n.send = new Proxy(n.send, {
        apply: function (t, n, s) {
          let a = new Uint8Array(s[0]);
          if (!a || a.length < 100 || 1500 < a.length) return t.apply(n, s);
          var r = (new TextDecoder).decode(a);
          if (!((l ? o.mess_typing : o.fb_typing) && r.includes('"type":4') && r.includes('\\"label\\":\\"3\\"') && r.includes("is_typing"))) {
            if ((l ? o.mess_unseen : o.fb_unseen) && r.includes('"type":3') && r.includes('\\"label\\":\\"21\\"') && !r.includes('\\"label\\":\\"46\\"') && r.includes("last_read_watermark_ts")) try {
              r = "", a.map(e => r += String.fromCharCode(e)), regfex = /\\\\\\"thread_id\\\\\\"\:[0-9]+,\\\\\\"last_read/g;
              let e = r.match(regfex);
              return e ? (e.forEach(e => {
                var t = e.match(/[0-9]+/g)[0],
                  t = 15 < t.length ? "1000000000000000" : i;
                r = r.replace(e, `\\\\\\"thread_id\\\\\\":${t},\\\\\\"last_read`)
              }), s[0] = new Uint8Array(r.split("").map(e => e.charCodeAt(0))), t.apply(n, s)) : t.apply(n, s)
            } catch (e) {
              return void t.apply(n, s)
            }
            return t.apply(n, s)
          }
        }
      }), n
    }
  }), i && (e.WebSocket = WebSocketProxy)
})(unsafeWindow);

Phôi thai Userscript lấy tại đây: https://voz.vn/t/tong-hop-nhung-addon-chat-cho-firefox-pc-mobile.682181/post-24721705
không được rồi, vẫn thấy seen
 
Thử tiếp xem:

Code:
// ==UserScript==
// @name            Facebook Unseen
// @author          noname
// @namespace       http://www.example.url/to/your-web-site/
// @description     Put a good description in here
// @license         Creative Commons Attribution License
// @version            0.1
// @include         http*://facebook.com/*
// @include         http*://*.facebook.com/*
// @include         http*://*.messenger.com/*
// @include         http*://messenger.com/*
// @grant        unsafeWindow
// @run-at           document-start
// @released        2006-04-17
// @updated         2006-04-19
// @compatible      Greasemonkey
// ==/UserScript==

function getCookie(e) {
  const t = `; ${document.cookie}`,
    n = t.split(`; ${e}=`);
  if (2 === n.length) return n.pop().split(";").shift()
}(e => {
  let i = getCookie("c_user"),
    l = true,
    o = {
      fb_unseen: !0,
      fb_typing: !0,
      mess_unseen: !0,
      mess_typing: !0
    };
  e.postMessage({
    type: "get_settings",
    value: "all"
  }, "*"), e.addEventListener("message", function (e) {
    var {
      data: e
    } = e.data ? e : {
      data: {}
    };
    "update_setting" === e.type && (o[e.name] = e.value), "set_settings_all" === e.type && (o = {
      ...e.value
    })
  }, !1), e.WebSocketProxy = new Proxy(e.WebSocket, {
    construct: function (e, t) {
      const n = new e(...t),
        s = e => {},
        a = e => {
          n.removeEventListener("open", s), n.removeEventListener("close", a)
        };
      return n.addEventListener("open", s), n.addEventListener("close", a), n.send = new Proxy(n.send, {
        apply: function (t, n, s) {
          let a = new Uint8Array(s[0]);
          if (!a || a.length < 100 || 1500 < a.length) return t.apply(n, s);
          var r = (new TextDecoder).decode(a);
          if (!((l ? o.mess_typing : o.fb_typing) && r.includes('"type":4') && r.includes('\\"label\\":\\"3\\"') && r.includes("is_typing"))) {
            if ((l ? o.mess_unseen : o.fb_unseen) && r.includes('"type":3') && r.includes('\\"label\\":\\"21\\"') && !r.includes('\\"label\\":\\"46\\"') && r.includes("last_read_watermark_ts")) try {
              r = "", a.map(e => r += String.fromCharCode(e)), regfex = /\\\\\\"thread_id\\\\\\"\:[0-9]+,\\\\\\"last_read/g;
              let e = r.match(regfex);
              return e ? (e.forEach(e => {
                var t = e.match(/[0-9]+/g)[0],
                  t = 15 < t.length ? "1000000000000000" : i;
                r = r.replace(e, `\\\\\\"thread_id\\\\\\":${t},\\\\\\"last_read`)
              }), s[0] = new Uint8Array(r.split("").map(e => e.charCodeAt(0))), t.apply(n, s)) : t.apply(n, s)
            } catch (e) {
              return void t.apply(n, s)
            }
            return t.apply(n, s)
          }
        }
      }), n
    }
  }), i && (e.WebSocket = WebSocketProxy)
})(unsafeWindow);
cái này thì ok
Oz0vvsF.png
 
nghe rồi sợ mấy thằng VN quá
có thể fen chưa biết extension trên chrome store scam, malware chắc phải 60-70% do người vn viết, để ăn cắp account fb, tiktok, google làm MMO
G6puB4X.png
nên tải extension trên chrome ngồi đọc code lòi mắt, chả bù firefox cài gì cũng tự tin vì chả có thằng nào rảnh code firefox để làm MMO cả, vì người dùng quá ít, ko đáng công bỏ ra, chưa tính firefox store kiểm duyệt bằng cơm cũng gắt nữa nên vượt qua cũng khó :shame:
 
có thể fen chưa biết extension trên chrome store scam, malware chắc phải 60-70% do người vn viết, để ăn cắp account fb, tiktok, google làm MMO
G6puB4X.png
nên tải extension trên chrome ngồi đọc code lòi mắt, chả bù firefox cài gì cũng tự tin vì chả có thằng nào rảnh code firefox để làm MMO cả, vì người dùng quá ít, ko đáng công bỏ ra :shame:
nghe có vẻ chạnh lòng quá bác, nhưng đúng là em có dụ mấy đứa bạn sang dùng ff chúng nó bảo quen dùng chrome rồi, không sang
pl1fdz0.png
 
nghe có vẻ chạnh lòng quá bác, nhưng đúng là em có dụ mấy đứa bạn sang dùng ff chúng nó bảo quen dùng chrome rồi, không sang
pl1fdz0.png
cài chrome cũng đc, đừng xài mấy extension vớ vẩn là ok. Đa số các vụ mất tải khoản, bị chiếm đoạt fanpage facebook đều từ cài mấy extension nhỏ nhỏ như cái unseen này chẳng hạn
 
nghe có vẻ chạnh lòng quá bác, nhưng đúng là em có dụ mấy đứa bạn sang dùng ff chúng nó bảo quen dùng chrome rồi, không sang
pl1fdz0.png
Kho extension của Chrome đến người dùng rành rọt còn sợ đái cả ra quần ấy chứ, quá nhiều malware, cài xong đi ngủ sáng dậy thấy mình ra đê ở, mà đúng là có người từng bị vậy thật một thằng nó dùng extension của Chrome để lấy cookie trình duyệt, nó đăng nhập vào ngân hàng chuyển tiền mà khi này tất cả đều là hên xui xem ngân hàng bảo mật ra sao, ngân hàng mà kiểu giấy giấy như mấy cái ở Việt Nam thì chắc chỉ có mất trắng.

Quyền hạn của extension còn cho phép extension này tắt phụt extension kia thì sao mà bảo mật được, thằng hacker nó chỉ cần tắt uBlock 1 giây rồi cho vào trang malware của nó, thế là dính chưởng rồi.

Đọc bài này nhé, rất rất nhiều người là nạn nhân của nó: PSA: The "Get cookies.txt" extension is now actively malware. self.youtubedl

Chrome nó làm ăn thế này cho phép nhà phát triển mã hóa code loạn lên như thế này thì bố trí tuệ nhân tạo cũng không kiểm dịch được (cái này của J**Team):

1683304847402.png
 
Last edited:
nghe có vẻ chạnh lòng quá bác, nhưng đúng là em có dụ mấy đứa bạn sang dùng ff chúng nó bảo quen dùng chrome rồi, không sang
pl1fdz0.png
dùng gì không quan trọng lắm, đừng lướt web kiểu chết não là được chứ thấy link sếch trong comment facebook bấm vội thì khó cứu
 
:angry: duyệt web na ná giống nhau thì có gì quen với ko quen nhỉ
E phải cảm ơn thớt đã khơi lại tình iu của e với firefox :beauty:
:beauty:
Đúng rồi, giờ trình duyệt web hơn nhau ở tính năng chứ về tốc độ thì như nhau hết, đặc biệt nếu theo vài hướng dẫn đinh trong thread như:

  • uBlock + Auto Tab Discard để chặn quảng cáo, giảm RAM thừa
  • External Application (EA) để xem Youtube/Twitch bằng MPV tăng tính đa nhiệm khi vừa xem video vừa làm việc thoải mái không bị gián mắt vào tab Youtube, cho hiệu năng cao hơn rất nhiều lần trình xem HTML5 của trình duyệt web (Test hiệu năng MPV xem nhiều stream cùng lúc (2 stream) (4 stream)), tải video bằng yt-dlp gọt gần như 100% dịch vụ xem video phổ biến
  • Multi-threaded Download Manager để thay thế IDM tải đa luồng, miễn phí, mã mở
  • Nếu cần dịch thuật thì Linguist/TWP là dịch còn tốt hơn cả tính năng dịch mặc định của Chrome, thậm chí hỗ trợ cả dịch offline bằng AI

Thì trải nghiệm sẽ được cải thiện rất nhiều. Ngoài ra có rất nhiều tối ưu cho Firefox ở đây để cài thiện tốc độ, hiệu năng, vượt rào ISP chặn bằng ECH
 
Back
Top