ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ°ΠΌ, ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Π½ΡΠΌ Π²ΠΎ ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΊΠ°ΠΊ ΠΈ Π² ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΠ΅ΡΡΡ , ΡΠ½Π°ΡΠ°Π»Π° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ Π½Π° Β«Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΡΒ» ΡΡΡΠ»ΠΊΡ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΡΠΎΡΠΈΠ°Π»ΡΠ½Π°Ρ ΡΠ΅ΡΡ ΡΠ΅ΡΠ°Π΅Ρ: Π½ΡΠΆΠ½ΠΎ Π»ΠΈ ΠΏΡΡΠΊΠ°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄Π°Π»ΡΡΠ΅ ΠΈΠ»ΠΈ Π½Π΅Ρ. ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΡΡ Π»ΡΠ΄Π΅ΠΉ Π·Π°ΠΌΠ΅ΡΠ°Π»ΠΈ ΠΏΠΎΠ»-ΡΠ΅ΠΊΡΠ½Π΄Π½ΠΎΠ΅ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ Β«vk.com/away.phpΒ» Π² Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π±ΡΠ°ΡΠ·Π΅ΡΠ°, Π½ΠΎ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π½Π΅ ΠΏΡΠΈΠ΄Π°Π²Π°Π»ΠΈ ΡΡΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
ΠΡΠ΅Π΄ΡΡΡΠΎΡΠΈΡ
ΠΠ΄Π½Π°ΠΆΠ΄Ρ, Π½Π΅ΠΊΠΈΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ, Π΄ΠΎΠ΄Π΅Π»Π°Π² ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΎΡΠΎΠ·Π½Π°Π», ΡΡΠΎ ΠΎΠ΄Π΅ΡΠΆΠΈΠΌ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ΠΌ ΠΎ Π½ΡΠΌ Π²ΡΠ΅ΠΌ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ. ΠΡΠΎΠ΅ΠΊΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°Π»ΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΌ IP, Π½ΠΎ Π±Π΅Π· Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ. ΠΠΎΡΡΠΎΠΌΡ Π½Π° ΡΠΊΠΎΡΡΡ ΡΡΠΊΡ Π±ΡΠ» ΡΠ΄Π΅Π»Π°Π» ΠΊΡΠ°ΡΠΈΠ²ΡΠΉ ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ ΡΡΠ΅ΡΡΠ΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ Π² Π΄ΠΎΠΌΠ΅Π½Π΅ .ddns.net, ΠΊΠΎΡΠΎΡΡΠΉ Π² ΠΈΡΠΎΠ³Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΡΡΠ»ΠΊΠΈ.Β
ΠΠ΅ΡΠ½ΡΠ²ΡΠΈΡΡ ΡΠ΅ΡΠ΅Π· Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΊ ΠΏΠΎΡΡΡ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ», ΡΡΠΎ Π²ΠΌΠ΅ΡΡΠΎ ΡΠ°ΠΉΡΠ° ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΡΡ Π·Π°Π³Π»ΡΡΠΊΠ° Π²ΠΊ, ΠΎΡΠ²Π΅Π΄ΠΎΠΌΠ»ΡΡΡΠ°Ρ ΠΎ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ Π½Π° Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΠΉ ΡΠ°ΠΉΡ:
ΠΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ, ΡΠΌΠ½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠ°ΠΌΠΈ Π²ΠΏΡΠ°Π²Π΅ ΡΠ΅ΡΠ°ΡΡ, Π½Π° ΠΊΠ°ΠΊΠΎΠΉ ΡΠ°ΠΉΡ ΠΈΠΌ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΡΡ, Π° Π½Π° ΠΊΠ°ΠΊΠΎΠΉ Π½Π΅Ρ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΠΊΠΎΠ½ΡΠ°ΠΊΡΠ΅ Π΄ΡΠΌΠ°Π΅Ρ ΠΈΠ½Π°ΡΠ΅ ΠΈ Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π±Π΅Π· ΠΊΠΎΡΡΡΠ»Π΅ΠΉ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅.
Π§ΡΠΎ Π½Π΅ ΡΠ°ΠΊ
Π£ ΡΠ°ΠΊΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π΅ΡΠΎΠΌΡΡ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΎΠ²:
- ΠΡΡΡΡΡΡΠ²ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΎΡΠΊΡΡΡΡ ΠΏΠΎΠ΄ΠΎΠ·ΡΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΡ. ΠΠ°ΠΊ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΎΡΡ Π²ΡΡΠ΅, Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΡΠ΅ΠΎΠ΄ΠΎΠ»Π΅ΡΡ Π·Π°Π³Π»ΡΡΠΊΡ. ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΎΡΠΊΡΡΡΡ ΡΡΡΠ»ΠΊΡ β ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ Π΅Π΅ ΠΈ Π²ΡΡΠ°Π²ΠΈΡΡ Π² Π°Π΄ΡΠ΅ΡΠ½ΡΡ ΡΡΡΠΎΠΊΡ.
- ΠΠ°ΠΌΠ΅Π΄Π»ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅. Π‘ΠΊΠΎΡΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΏΠΈΠ½Π³Π°. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΡΠΈ Π±ΠΎΠ»ΡΡΠΎΠΌ ΠΏΠΈΠ½Π³Π΅, ΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΠΏΠ°ΡΡΡ Π΄ΡΠ°Π³ΠΎΡΠ΅Π½Π½ΡΠ΅ ΡΠ΅ΠΊΡΠ½Π΄Ρ ΠΆΠΈΠ·Π½ΠΈ, ΡΡΠΎ, ΠΊΠ°ΠΊ ΠΌΡ Π·Π½Π°Π΅ΠΌ, Π½Π΅ Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ.
- ΠΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ². Π’Π°ΠΊΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΠΎΠ±Π»Π΅Π³ΡΠ°Π΅Ρ ΡΠ±ΠΎΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΡΠ΅ΠΌ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅ ΠΈ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΠΊ, Π΄ΠΎΠ±Π°Π²Π»ΡΡ ΠΊ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠΉ ΡΡΡΠ»ΠΊΠ΅ id ΠΏΠΎΡΡΠ° Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ» ΡΠ΄Π΅Π»Π°Π½ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄.
ΠΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅ΠΌ ΠΠΆΠ°Π½Π³ΠΎ
ΠΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅Ρ
Π²ΡΡΠ΅ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΡ
ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π±ΡΠ°ΡΠ·Π΅ΡΠ°. ΠΠΎ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ Π²ΡΠ±ΠΎΡ ΠΏΠ°Π΄Π°Π΅Ρ Π½Π° Chrome. ΠΠ° Ρ
Π°Π±ΡΠ΅ Π΅ΡΡΡ ΠΎΡΠ»ΠΈΡΠ½Π°Ρ
ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ Π΄Π²Π° ΡΠ°ΠΉΠ»Π°: json-Manifest ΠΈ JavaScript-ΡΠ°ΠΉΠ» Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ url Π°Π΄ΡΠ΅ΡΠ°.
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Manifest ΡΠ°ΠΉΠ»
ΠΠ»Π°Π²Π½ΠΎΠ΅ ΡΡΠΎ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ β Π΄Π°ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΡ Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ ΠΈ Π½Π°Π·Π½Π°ΡΠΈΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠΊΡΠΈΠΏΡ:
{
"manifest_version": 2,
"name": "Run Away From vk.com/away",
"version": "1.0",
"background": {
"scripts": ["background.js"]
},
"permissions": ["tabs"],
"browser_action": {
"default_title": "Run Away From vk.com/away"
}
}
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ js ΡΠ°ΠΉΠ»
ΠΠ΄Π΅ΡΡ Π²ΡΡ ΠΏΡΠΎΡΡΠΎ: Π² ΡΠΎΠ±ΡΡΠΈΠ΅, Π²ΡΠ·ΡΠ²Π°Π΅ΠΌΠΎΠ΅ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ, Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ Π½Π° url Π°Π΄ΡΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΎΠ½ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Π½Π° Β«
chrome.tabs.onCreated.addListener( function (tabId, changeInfo, tab) {
chrome.tabs.query({'active': true, 'lastFocusedWindow': true}, function (tabs) {
var url = tabs[0].url;
if (url.substr(0,23) == "https://vk.com/away.php"){
var last = url.indexOf("&", 0)
if(last == -1)last = 1000;
var url = decodeURIComponent(url.substr(27, last-27));
chrome.tabs.update({url: url});
}
});
});
Π‘ΠΎΠ±ΠΈΡΠ°Π΅ΠΌ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅
Π£Π±Π΅Π΄ΠΈΠ²ΡΠΈΡΡ ΡΡΠΎ ΠΎΠ±Π° ΡΠ°ΠΉΠ»Π° Π»Π΅ΠΆΠ°Ρ Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅, ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ Chrome, Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π²ΠΊΠ»Π°Π΄ΠΊΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Β«ΠΠ°Π³ΡΡΠ·ΠΈΡΡ ΡΠ°ΡΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅Β». Π ΠΎΡΠΊΡΡΠ²ΡΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΏΠ°ΠΏΠΊΡ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½Π°Ρ ΠΈ Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ ΡΠΎΠ±ΡΠ°ΡΡ. ΠΠΎΡΠΎΠ²ΠΎ! Π’Π΅ΠΏΠ΅ΡΡ Π²ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ Π²ΠΈΠ΄Π° vk.com/away Π·Π°ΠΌΠ΅Π½ΡΡΡΡΡ Π½Π° ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅.
ΠΠΌΠ΅ΡΡΠΎ Π·Π°ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ
ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΠ°ΠΊΠΎΠΉ ΡΠΈΠΏ Π·Π°Π³Π»ΡΡΠ΅ΠΊ ΡΠΏΠ°Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π»ΡΠ΄Π΅ΠΉ ΠΎΡ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΠΌΠΎΡΠ΅Π½Π½ΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΠ°ΠΉΡΠΎΠ², ΠΎΠ΄Π½Π°ΠΊΠΎ, Ρ ΡΡΠΈΡΠ°Ρ, ΡΡΠΎ Π»ΡΠ΄ΠΈ ΡΠ°ΠΌΠΈ Π² ΠΏΡΠ°Π²Π΅ ΡΠ΅ΡΠ°ΡΡ, ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΡΡ ΠΈΠΌ Π½Π° Π½Π΅Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡΡ ΡΡΡΠ»ΠΊΡ ΠΈΠ»ΠΈ Π½Π΅Ρ.
ΠΠ»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° Ρ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΠ» ΠΏΡΠΎΠ΅ΠΊΡ Π½Π°
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com