Страница 1 из 1

Radio.tcl

СообщениеДобавлено: 03 фев 2012 10:12
Sparkle
Здравствуйте.
Скажите, как можно сделать данный скрипт, допустим все песни играют на "Европа плюс" и в общий чат пишет какая играет песня в данный момент, и с каждой новой песни, бот сообщал в чат, сколько мин. играет песня, исполнитель, жанр, год песни, вообщем вся инфа, и естественно без команд, так как бот сам должен выводить автоматически, каждую новую песню.

Re: Radio.tcl

СообщениеДобавлено: 03 фев 2012 11:36
Spoofing
О таком скрипте (radio.tcl) не знаю, а по поводу того что вы написали - дайте больше информации, с какого места вы слушаете радио (быть может, стрим уже передает название трека и можно граббить оттуда), либо есть страница в интернете, которую можно проверять на текущий трек. А сам скрипт будет не сложный в любом случае.

Re: Radio.tcl

СообщениеДобавлено: 03 фев 2012 11:41
tvrsh
Сделать такой скрипт просто. Читаешь вот эту тему: tcl-skripti/kak-vzyat-dannie-web-stranici-t426.html
Сначала делаешь скрипт с командой, чтобы показывал, что играет в данный момент.
Потом команду меняешь на таймер и делаешь, чтобы выводило в канал каждые 5 минут.
Следующим шагом надо добавить сравнение, чтобы выводить в канал только в том случае, если новое значение не равно предыдущему. То есть, если песня изменилась, то пишем ее в канал.
Дерзай.

Re: Radio.tcl

СообщениеДобавлено: 03 фев 2012 11:55
Vertigo
Для европы плюс, урл может быть такой http://europaplus.ru/online/air/1.js
И потом в скрипте дописывать к этому адресу случайное число, например микросекунды:
TCL: [ Скачать ] [ Скрыть ]
variable starturl "http://europaplus.ru/online/air/1.js"
...
proc name {args} {
...
proc body
...
variable starturl
set url $starturl
append url "?rnd=[clock clicks -microseconds]"
...
http::geturl $url ...
...
}

По этому адресу приходит ajax вида
{ "id": "943", "artist": "Madcon", "song": "Freaky Like Me", "photo": [ "http:\/\/www.europaplus.ru\/images\/songs\/1283329621_mad105.jpg", "http:\/\/www.europaplus.ru\/images\/songs\/1283329621_mad1051.jpg" ], "djs": [ { "name": "Сева Полищук", "link": "\/index.php?go=ProgramsDjs&cat=1&dj=8" } ], "playlist": [ { "artist": "Madcon", "song": "Freaky Like Me", "img1": "http:\/\/www.europaplus.ru\/upload\/thumb\/song_72x54\/images\/songs\/1283329621_mad105.jpg", "img2": "http:\/\/www.europaplus.ru\/upload\/thumb\/song_72x54\/images\/songs\/1283329621_mad1051.jpg", "id": "943", "start_ts": "1328255030", "duration": "186", "rating": "4.3033088235294" }, { "artist": "PH Electro", "song": "Every Breath You Take", "img1": "http:\/\/www.europaplus.ru\/upload\/thumb\/song_72x54\/images\/songs\/1300787571_ph1051.jpg", "img2": "http:\/\/www.europaplus.ru\/upload\/thumb\/song_72x54\/images\/songs\/1300787571_ph105.jpg", "id": "1023", "start_ts": "1328254868", "duration": "163", "rating": "4.19140625" }, { "artist": "ONE REPUBLIC", "song": "ALL THE RIGHT MOVES", "img1": null, "img2": null, "id": false, "start_ts": "1328254631", "duration": "232", "rating": false } ] }
, откуда не так сложно вытащить текущее название песни, длительность и имя ди-джея в студии.