Архив форума Ace Stream       Wiki        Info

перейти на новый форум
Расширенный поиск  

Автор Тема: TorrentTube for TbDEV  (Прочитано 91146 раз)

0 Пользователей и 6 Гостей смотрят эту тему.

lEx0

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 24
TorrentTube for TbDEV
« : 21 Апреля 2010, 14:29:37 »

Мод для TbDEV в процессе разработки
Записан

ARiS

  • Еxpert
  • Newbie
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 9
Re: TorrentTube for TbDEV
« Ответ #1 : 24 Апреля 2010, 19:46:42 »

Ставил для себя, решил поделиться.
Сразу отмечу, что в данном случае используется приватный трекер, поэтому как вы будете выдавать торрент-файл плееру решайте/делайте сами. В данном примере подразумевается наличие на хостинге папки TorrentTube в которой находятся торренты с пасскеями кого-либо из пользователей.


Ищем подобную строку в details.php:
tr("Описание", format_comment($row["descr"]), 1);
Если у вас движок от Yuna, то ищем
tr($tracker_lang['description'], format_comment($row["descr"]), 1, 1);
и вставляем ниже (можно выше, перед "if (!empty($row["descr"]))" ) следующее:
if ($row["cat_id"] == "AAAAAAA") {
require_once('ts_client.php');
define('API_KEY', 'XXXXXXXXX');
define('ZONE_ID', YYYYYYYYY);
$client = new TS_Client(API_KEY);
$path = "./TorrentTube/$row[filename].torrent"; //путь к торрентам
$torrent_data = file_get_contents($path);
$content_name = 'Test content';
$duration = 6738; //можно было бы брать из БД конкретно под каждый торрент, но не увидел где это вообще используется.
$content_uid = $client->add_content(ZONE_ID, base64_encode($torrent_data), $content_name, $duration);

$on = "<div id=\"content\" style=\"position: relative; width: 720px; height: 304px; margin: 0 auto; background: #000 url('pic/bg_player.png') no-repeat 0 0;\">
<div id=\"ts_player\" style=\"width: 100%; height: 100%; color: #fff; text-align: center;\">Подождите, идет загрузка плеера...</div>
<script type=\"text/javascript\">
var tsHost = ((\"https:\" == document.location.protocol) ? \"https://\" : \"http://\");
document.write(unescape(\"%3Cscript src='\" + tsHost + \"torrentstream.net/p/" . $content_uid . "' type='text/javascript'%3E%3C/script%3E\"));
</script>
<script type=\"text/javascript\">
tsplayer(\"ts_player\", {width: \"720px\", height: \"304px\"});
</script>
</div>";
                  tr(Онлайн, $on, 1);
}
меняя XXXXXXXXX на свой "Код партнера", а YYYYYYYYY на ID вашей площадки (если не понимаете о чём речь читайте этот форум, всё доходчиво написано).
Так же в условии if, замените AAAAAAA на id вашей категории фильмов (если их несколько, то можно так: if ($row["cat_id"] == "AAAAAAA" || $row["cat_id"] == "BBBBBBB" и т.д.) {  )

ts_client.php - брать тут: http://torrentstream.net/download/?product=tsclient&version=latest и загрузить в корень.
Картинку в прикреплении залить в папку pic, но это не обязательно.







Полноценный мод для модификации движка TBDev от Yuna.
Особенности:
- в настройках категорий функционально указывается использовать в категории плеер или нет
- в торрент файл добавляется пасскей смотрящего



SQL:
ALTER TABLE `categories` ADD `tstream` enum('yes','no') NOT NULL default 'no';
в category.php
ищем
Цитировать
if($edited == 1) {
после вставляем
$tstream = $_GET['tstream'];
ищем ниже на пару строк
Цитировать
image = ".sqlesc($cat_img).",
после вставляем
tstream = ".sqlesc($tstream).",
ищем
Цитировать
$img = htmlspecialchars_uni($_GET['img']);
после вставляем
$tstream = htmlspecialchars_uni($_GET['tstream']);
if ($tstream == "yes")
$checked = "checked";
else
$checked2 = "checked";

ищем
Цитировать
echo("<tr><td>Сортировка: </td><td align='right'><input type='text' size=50 name='cat_sort' value='$sort'></td></tr>");
после вставляем
echo("<tr><td>TorrentTube: </td><td align='right'><input type='radio' name='tstream' value='yes' $checked>Да <input type='radio' name='tstream' value='no' $checked2>Нет</td></tr>");
ищем
Цитировать
$img = $row['image'];
после вставляем
$tstream = $row['tstream'];
ищем
Цитировать
<a href='category.php?editid=$id&name=$name&img=$img&sort=$sort>
заменяем на:
<a href='category.php?editid=$id&name=$name&img=$img&sort=$sort&tstream=$tstream'>

в config.php добавляем перед "?>"
//Конфигурация TorrentTube
$ttube_key = "***"; // Код партнера
$ttube_id = "***";   // id площадки
// [END] Конфигурация TorrentTube
Заменяя *** на код партнера и id площадки соответственно

в details.php ищем
Цитировать
categories.id AS cat_id,
добавляем
categories.tstream AS cat_tstream,
ищем:
Цитировать
tr($tracker_lang['description'], format_comment($row["descr"]), 1, 1);
после вставляем:
// [START] TorrentTube
if ($row["cat_tstream"] == "yes") {
require_once('ts_client.php');
define('API_KEY', $ttube_key);
define('ZONE_ID', $ttube_id);
sql_query("UPDATE torrents SET hits = hits + 1 WHERE id = ".sqlesc($id));
require_once "include/benc.php";

$fn = "$torrent_dir/$id.torrent";

if (!$row || !is_file($fn) || !is_readable($fn))
    stderr($tracker_lang['error'], $tracker_lang['unable_to_read_torrent']);
    
if (strlen($CURUSER['passkey']) != 32) {
    $CURUSER['passkey'] = md5($CURUSER['username'].get_date_time().$CURUSER['passhash']);
    sql_query("UPDATE users SET passkey=".sqlesc($CURUSER[passkey])." WHERE id=".sqlesc($CURUSER[id]));
}

$dict = bdec_file($fn, (1024*1024));
$dict['value']['announce']['value'] = $announce_urls[0]."?passkey=$CURUSER[passkey]";
$dict['value']['announce']['string'] = strlen($dict['value']['announce']['value']).":".$dict['value']['announce']['value'];
$dict['value']['announce']['strlen'] = strlen($dict['value']['announce']['string']);

$torrent_data = benc($dict);


$client = new TS_Client(API_KEY);
$content_name = $row['save_as'];
$duration = 6738;
$content_uid = $client->add_content(ZONE_ID, base64_encode($torrent_data), $content_name, $duration);

$on = "<div id=\"content\" style=\"position: relative; width: 720px; height: 304px; margin: 0 auto; background: #000 url('pic/bg_player.png') no-repeat 0 0;\">
<div id=\"ts_player\" style=\"width: 100%; height: 100%; color: #fff; text-align: center;\">Подождите, идет загрузка плеера...</div>
<script type=\"text/javascript\">
var tsHost = ((\"https:\" == document.location.protocol) ? \"https://\" : \"http://\");
document.write(unescape(\"%3Cscript src='\" + tsHost + \"torrentstream.net/p/" . $content_uid . "' type='text/javascript'%3E%3C/script%3E\"));
</script>
<script type=\"text/javascript\">
tsplayer(\"ts_player\", {width: \"720px\", height: \"304px\"});
</script>
</div>";
                  tr(Онлайн, $on, 1);
}
// [END] TorrentTube
« Последнее редактирование: 12 Ноября 2010, 21:19:38 от ARiS »
Записан

lEx0

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 24
Re: TorrentTube for TbDEV
« Ответ #2 : 27 Апреля 2010, 08:10:11 »

спс за внимание, в течении этой недели будет докончена Платная и Бесплатная версия TorrentTube
Записан

MisterSer

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 32
Re: TorrentTube for TbDEV
« Ответ #3 : 07 Мая 2010, 22:13:14 »

Извините, читал форум но так и не нашел, как стать партнером. Укажите на то место, пожалуйста.
Записан

lEx0

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 24
Re: TorrentTube for TbDEV
« Ответ #4 : 07 Мая 2010, 23:19:35 »

Извините, читал форум но так и не нашел, как стать партнером. Укажите на то место, пожалуйста.

надо зайти на http://torrentstream.net и зарегистрироваться там как Партнер
Записан

grunya404

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 2
Re: TorrentTube for TbDEV
« Ответ #5 : 19 Мая 2010, 19:10:48 »

а что будет в платной версии ?
как обстоит дело с воспроизведением раздач сериалов к примеру, в котрых в одном торренте лежит много файлов?
Записан

Constantin

  • Administrator
  • Hero Member
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 1757
    • Torrent Stream
Re: TorrentTube for TbDEV
« Ответ #6 : 19 Мая 2010, 20:18:20 »

а что будет в платной версии ?
как обстоит дело с воспроизведением раздач сериалов к примеру, в котрых в одном торренте лежит много файлов?

Возможность выбора и воспроизведения файла относится непосредственно к работе плагина и самой системы TS.

P.S. В следующей версии плагина такая возможность будет!
Записан

MisterSer

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 32
Re: TorrentTube for TbDEV
« Ответ #7 : 19 Мая 2010, 20:21:15 »

Когда планируете выпуск следующей версии плагина? Это важно!
Записан

Constantin

  • Administrator
  • Hero Member
  • *****
  • Оффлайн Оффлайн
  • Сообщений: 1757
    • Torrent Stream
Re: TorrentTube for TbDEV
« Ответ #8 : 19 Мая 2010, 21:49:18 »

Когда планируете выпуск следующей версии плагина? Это важно!

Мы сами хотим выпустить, как можно быстрее, более функциональную версию, но точной даты мы пока сказать не можем.
Записан

MisterSer

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 32
Re: TorrentTube for TbDEV
« Ответ #9 : 22 Мая 2010, 00:19:26 »

спс за внимание, в течении этой недели будет докончена Платная и Бесплатная версия TorrentTube

Как продвигается работа по TorrentTube?

Или как в этом коде реализовать создание плееров из торрент файла пользователя? То есть плеер создаеться для каждого пользователя.
Записан

denzel519

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 4
Re: TorrentTube for TbDEV
« Ответ #10 : 04 Июня 2010, 04:19:19 »

Не пашет, не появляется плеер!
Записан

kosjak

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 11
Re: TorrentTube for TbDEV
« Ответ #11 : 04 Июня 2010, 13:06:16 »

Не пашет, не появляется плеер!

Может потому, что руки растут от туда же откуда и у PHPDoga?  ;D И зачем такому г.... двиглу примочка в виде TorrentStream? :D исправьте сначала миллион багов в движке, а потом уже думайте о сторонних приложениях :)
Записан

kosjak

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 11
Re: TorrentTube for TbDEV
« Ответ #12 : 04 Июня 2010, 13:16:52 »

спс за внимание, в течении этой недели будет докончена Платная и Бесплатная версия TorrentTube

Как продвигается работа по TorrentTube?

Или как в этом коде реализовать создание плееров из торрент файла пользователя? То есть плеер создаеться для каждого пользователя.

Плеер создается не для каждого пользователя, а для .торрент файла, вообще скажу так, не знаю как организована автоматическая регистрация плеера, но я бы вам посоветовал у себя на трекере записывать полученый код плеера в базу и производить проверку на его наличие при повторном использовании плеера. Так по крайней мере организовано у меня.
Записан

MisterSer

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 32
Re: TorrentTube for TbDEV
« Ответ #13 : 04 Июня 2010, 14:24:32 »

Идея в следующем, если релиз подходит под определенные условия, то создается для этого релиза плеер автоматически (торрент файл берется пользователя, кто хочет смотреть этот релиз он лайн).
Записан

kosjak

  • Newbie
  • *
  • Оффлайн Оффлайн
  • Сообщений: 11
Re: TorrentTube for TbDEV
« Ответ #14 : 04 Июня 2010, 20:11:42 »

Идея в следующем, если релиз подходит под определенные условия, то создается для этого релиза плеер автоматически (торрент файл берется пользователя, кто хочет смотреть этот релиз он лайн).

Если судить по приведенному коду, то торрент файл берется не пользователя, а тот который лежит в папке torrents, минус в том, что в торрент файле, который лежит в папке не прописан пасскей, а анонсер без пасскея вас не пустит дальше(не учитываем случай если не используется пасскей). Поэтому я бы вам посоветовал отдавать .торрент файл через скрипт. Кстати .торрент файл забирает не пользователь, а сервер торентстрима, по этому не стоит надеяться на кукисы и сессии. Мой совет сделать для торрентстрима 1 маленькую переменную в скрипте и вписывать в торрент файл нужный вам пасскей :) Дальше далее все зависит от вас, вашей выдумки и навыков :)
Записан