Два (и более) анносов

F1
F1nT
Сообщения: 6
Зарегистрирован: 10 июл 2009, 20:18

Сообщение F1nT 15 июл 2009, 21:36

Суть данного хак-мода, чтобы в торрент файл добавлялся не один announce_url, а сколько вы захотите!
Приступим (2 анонса):

Редактируем файл \download\file.php
1. Удаляем:

Код: Выделить всё

$dict['value']['announce']['string'] = strlen($dict['value']['announce']['value']).":".$dict['value']['announce']['value'];
$dict['value']['announce']['strlen'] = strlen($dict['value']['announce']['string']);


2. Вставляем (вместо удаленных строчек):

Код: Выделить всё

$url2 = "ВТОРОЙ АНОНС URL";
$url2_li = "l".$url2."e";

$url1 = $forum_url.$config['ppkbb_announce_url']."?passkey=$user_passkey";
$url1_li = "l".$url1."e";

$b = array('type' => 'list', 'value' => array(bdec(benc_str($url1))), 'strlen' => strlen($url1_li), 'string' => $url_li);
$c = array('type' => 'list', 'value' => array(bdec(benc_str($url2))), 'strlen' => strlen($url2_li), 'string' => $url2_li);

$a = array($b,$c);

$dict['value']['announce-list'] =  Array ('type' => 'list', 'value' => $a, 'strlen'=>strlen(benc_str( $url1 ).benc_str( $url2 ).benc_str( $url3 ).benc_str( $url4 ).benc_str( $url5 )), 'string' =>benc_str( $url1 ).benc_str( $url2 )
) ;


3. В строчке

Код: Выделить всё

$url2 = "ВТОРОЙ АНОНС URL";

Вставляем анонс url.


Пример для 4 анонсов:

Код: Выделить всё

$url4 = "ЧЕТВЕРТЫЙ АНОНС";
$url4_li = "l".$url4."e";

$url3 = "ТРЕТИЙ АНОНС";
$url3_li = "l".$url3."e";

$url2 = "ВТОРОЙ АНОНС";
$url2_li = "l".$url2."e";

$url1 = $forum_url.$config['ppkbb_announce_url']."?passkey=$user_passkey";
$url1_li = "l".$url1."e";

$b = array('type' => 'list', 'value' => array(bdec(benc_str($url1))), 'strlen' => strlen($url1_li), 'string' => $url_li);
$c = array('type' => 'list', 'value' => array(bdec(benc_str($url2))), 'strlen' => strlen($url2_li), 'string' => $url2_li);
$d = array('type' => 'list', 'value' => array(bdec(benc_str($url3))), 'strlen' => strlen($url3_li), 'string' => $url3_li);
$e = array('type' => 'list', 'value' => array(bdec(benc_str($url4))), 'strlen' => strlen($url4_li), 'string' => $url4_li);

$a = array($b,$c,$d,$e);

$dict['value']['announce-list'] =  Array ('type' => 'list', 'value' => $a, 'strlen'=>strlen(benc_str( $url1 ).benc_str( $url2 ).benc_str( $url3 ).benc_str( $url4 ).benc_str( $url5 )), 'string' =>benc_str( $url1 ).benc_str( $url2 ).benc_str( $url3 ).benc_str( $url4 )
) ;


Вот и все!
Также без проблем можно добавить кучу анонсов:)
Последний раз редактировалось F1nT 17 июл 2009, 22:38, всего редактировалось 1 раз.
Ca
Caratel
Сообщения: 123
Зарегистрирован: 01 июн 2009, 10:48
Откуда: Gotey 13

Сообщение Caratel 16 июл 2009, 15:15

Спасибо, работает :D
Le
Level
Сообщения: 29
Зарегистрирован: 17 июл 2009, 23:06

Сообщение Level 24 июл 2009, 07:54

Еще не разобрался до конца в трекере.

Что дает анонс и в чем плюсы 2х 3х и тд анонсов?
F1
F1nT
Сообщения: 6
Зарегистрирован: 10 июл 2009, 20:18

Сообщение F1nT 25 июл 2009, 00:43

Announce
Обращение клиента к трекеру.
При каждом announce клиент передаёт на трекер информацию об объёмах им скачанного и отданного, a трекер передаёт клиенту список адресов других клиентов.
Обращение клиента к трекеру происходит через определённые интервалы времени, которые определяются настройками клиента и трекера.

Announce URL
Адрес трекера, к которому клиент делает announce. Во многих клиентах называется Tracker URL. Может включать passkey.

Взято с вики (http://ru.wikibooks.org/wiki/Bittorrent/%D0%A2%D0%B5%D1%80%D0%BC%D0%B8%D0%BD%D1%8B#Announce)

Приемущества в нескольких аннонс урл заключается в мультитрекерной раздаче (которой она становится после добавления сия нескольких анносов)
Что такое мультитрекер читать тут http://ru.wikipedia.org/wiki/%D0%9C%D1%83%D0%BB%D1%8C%D1%82%D0%B8%D1%82%D1%80%D0%B5%D0%BA%D0%B5%D1%80

Приведу для наглядности пример :)
У Пети адрес аннонса http://www.petya.ru/announce.php
У Васи адрес аннонса http://www.vasya.ru/announce.php

При этот некий торрент файл,назовем его kirguduika.torrent у Пети скачали и раздают 2 человека, а у Васи 234 человека.
И при добавлении в торрент файл обоих УРЛ http://www.petya.ru/announce.php и http://www.vasya.ru/announce.php количество сидов будет 236, в независимости откуда он был скачан (у Пети или у Васи) что значительно увеличит скорость.
Но это при том,что трекеры поддерживают мультитрекерность.


Также нужно для подключения ретрекеров ( http://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D1%82%D1%80%D0%B5%D0%BA%D0%B5%D1%80 )
al
aleh
Сообщения: 5
Зарегистрирован: 21 июл 2009, 01:09

Сообщение aleh 26 июл 2009, 10:21

Попробовал - получилось. Спасибо.

Но возник вопрос. Возможно ли сделать так: проверка пользователя на принадлежность к определенному диапазону ip адресов (определенному провайдеру) и в зависимости от этого давать разные анонсы?
F1
F1nT
Сообщения: 6
Зарегистрирован: 10 июл 2009, 20:18

Сообщение F1nT 26 июл 2009, 12:17

Вот у самого такой вопрос возник, но пока решения не нашел.
Аватара пользователя
PPK
Администратор
Сообщения: 9019
Зарегистрирован: 21 мар 2009, 17:13
Благодарил (а): 72 раза
Поблагодарили: 1311 раз

Сообщение PPK 27 июл 2009, 15:16

В файле /tracker/announce.php есть функция validip() - берём её, делаем массив адресов и дополнительных аннонс url ... ну и далее выбираем нужные в соотв. с IP (ест. php нужно знать ;) ), реализация на файлах где-то у меня лежит, как время будет - сделаю - выложу
Go
Gorlum
Сообщения: 100
Зарегистрирован: 23 июн 2009, 16:11

Сообщение Gorlum 01 авг 2009, 14:05

Фишка очень полезная. Голосую за добавление в базовую функциональность :)
mi
mike_tm
Сообщения: 79
Зарегистрирован: 09 сен 2009, 22:30

Сообщение mike_tm 14 сен 2009, 18:10

F1nT писал(а):Суть данного хак-мода, чтобы в торрент файл добавлялся не один announce_url, а сколько вы захотите!
Приступим (2 анонса):

Редактируем файл \download\file.php
1. Удаляем:

Код: Выделить всё

$dict['value']['announce']['string'] = strlen($dict['value']['announce']['value']).":".$dict['value']['announce']['value'];
$dict['value']['announce']['strlen'] = strlen($dict['value']['announce']['string']);




вообще нет таких строк у меня в файле
Bo
Boec
Сообщения: 146
Зарегистрирован: 24 авг 2009, 01:42
Благодарил (а): 2 раза
Поблагодарили: 1 раз

Сообщение Boec 19 сен 2009, 13:38

mike_tm писал(а):
F1nT писал(а):Суть данного хак-мода, чтобы в торрент файл добавлялся не один announce_url, а сколько вы захотите!
Приступим (2 анонса):

Редактируем файл \download\file.php
1. Удаляем:

Код: Выделить всё

$dict['value']['announce']['string'] = strlen($dict['value']['announce']['value']).":".$dict['value']['announce']['value'];
$dict['value']['announce']['strlen'] = strlen($dict['value']['announce']['string']);




вообще нет таких строк у меня в файле



Теперь эта сточка отвечает за это

Код: Выделить всё

$dict['value']['announce'] = bdec(benc_str($forum_url.$config['ppkbb_announce_url']."?passkey=$user_passkey"));



PPK писал(а):В файле /tracker/announce.php есть функция validip() - берём её, делаем массив адресов и дополнительных аннонс url ... ну и далее выбираем нужные в соотв. с IP (ест. php нужно знать ;) ), реализация на файлах где-то у меня лежит, как время будет - сделаю - выложу


Очень интересен твой вариант)

Вернуться в «Готовые моды для трекера»

Кто сейчас на конференции

Сейчас этот форум просматривают: CCBot и 1 гость