Есть локальный конвертер для преобразования файла m3u в enigma2.
Как сделать обратный конвертер для преобразования --- файла enigma2 в m3u ?
На входе мы имеем такой файл формата m3u:
#EXTM3U
#EXTINF:-1,1 Armenia HD
http://amtv1.livestreamingcdn.com/am2abr/tracks-v2a1/index.m3u8
#EXTINF:-1, 1HD
https://daserstehdint-lh.akamaihd.net/i/daserstehd_int@629195/index_1992_av-p.m3u8?
#EXTINF:-1, 1 Moldova
http://live.trm.md:1935/live/M1Mlive/playlist.m3u8
#EXTINF:-1, 1 Music Channel (HU)
http://stream.1music.hu/stream/1music.m3u8
После конвертации в enigma2 имеем:
#NAME OpenPLi based IPTV converter - 4097:0:1:0
#SERVICE 4097:0:1:0:0:0:0:0:0:0:http%3a//amtv1.livestreamingcdn.com/am2abr/tracks-v2a1/index.m3u8:1 Armenia HD
#DESCRIPTION 1 Armenia HD
#SERVICE 4097:0:1:0:0:0:0:0:0:0:https%3a//daserstehdint-lh.akamaihd.net/i/daserstehd_int@629195/index_1992_av-p.m3u8?:1HD
#DESCRIPTION 1HD
#SERVICE 4097:0:1:0:0:0:0:0:0:0:http%3a//live.trm.md%3a1935/live/M1Mlive/playlist.m3u8:1 Moldova
#DESCRIPTION 1 Moldova
#SERVICE 4097:0:1:0:0:0:0:0:0:0:http%3a//stream.1music.hu/stream/1music.m3u8:1 Music Channel (HU)
#DESCRIPTION 1 Music Channel (HU)
=================================================================== Это сам исходный конвертер (IPTV converter - 4097.html):
<html>
<body bgcolor="#76ace2">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script language="javascript" type="text/javascript">
String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, ''); };
function WriteForm(e)
{
try
{
var base=document.getElementById("baseUrl").value;
e=document.getElementById("ExampleOutput");
l=e.value.split("\n");
s='#NAME OpenPLi based IPTV converter - 4097:0:1:0\n';
name='';
for (var i=0;i<l.length;i++)
{
v=l[i].trim();if (v=='') continue;
if (v.indexOf("#")!==-1)
{
if (v.toUpperCase().indexOf("#EXTINF")!=-1)
{
ci=v.indexOf(',');
if (ci!==-1) name=v.substr(ci+1);
}
}
else
{
if (v.trim().toUpperCase().indexOf('UDP:')!=-1)
{
url=base+v.replace('udp://@', "udp/","i");
}
else url=v;
url=url.replace(/:/g,'%3a');
name=name.replace(/#EXTINF:|[0-9],|-[1-9],|,/g,'');
name=name.replace(/^\s+/g,'');
if (name=='') name='Channel '+i;
s+='#SERVICE 4097:0:1:0:0:0:0:0:0:0:';
s+=url;
s+=':';
s+=name+'\n';
s+='#DESCRIPTION '
s+=name+'\n';
name='';
}
}
s=s.split('&').join('&');
e.value=s;
}
catch(Err)
{
alert("Error: " + Err.description);
}
return false;
}
function OpenForm(e)
{
var e=document.getElementById("ExampleOutput");
window.open('data:text/xml;charset=utf-8,' + encodeURIComponent(e.value),'webtv_usr.xml');
}
function OpenFormData(e)
{
var e=document.getElementById("ExampleOutput");
window.open('data:application/octet-stream;charset=utf-8,' + encodeURIComponent(e.value),'userbouquet.Bica_OpenPLI_Based_4097_IPTV');
}
</script>
</head>
<body>
<br /> <b>IPTV Enigma2 (4097) Converter by SATmax</b>
<p>
<br /> Аddress udp <input id="baseUrl" value="http://localhost:81/">
<br />
<a href="#" onclick="WriteForm();"> </a><br />
<!--<a href="#" onclick="OpenForm();"> Otvoriti.</a><br />-->
<!--<a href="#" onclick="OpenFormData();"> Skinuti.</a><br />-->
<b>Ubacite m3u link/ove i kliknite na konvertiraj. Linkove iskopirajte u praznu datoteku userbouqet.myiptv.tv i prebacite u etc/enigma2. Restart Enigma2</b>
<p>
<br />
<form>
<div><input type="button" name="convert" class="viptvButtons" value="Convert" onClick="WriteForm();" /></div>
<div id="footer">
</div>
<p>
<input type="reset" value="Reset">
</p>
<textarea id="ExampleOutput" style="width:100%" rows="35"></textarea>
</form>
</body>
</html>
================================================================= Есть скрипт который работает с enigma2 linux:
#!/bin/sh
#Преобразует ваш enigma2 userbouquet в плейлист.m3u
cd /tmp
urbt=`find -name "userbouquet.*.tv" | sed 's/^..//'`
if [ ! -f "$urbt" ] ; then
echo ""
echo "Нет файла для конвертации"
echo ""
echo "Поместите ваш userbouquet в папку /tmp и попробуйте ещё раз "
echo ""
exit 0
else
sed -i '/http/,/DESCRIPTION/!d' $urbt
if ! grep -q "DESCRIPTION" $urbt ; then
grep SERVICE $urbt | sed -e "s/.*http/http/g" -e 's/:/\n&#/g' -e 's/:#/#EXTINF:0,/' -e 's/%3a/:/g' -i $urbt
echo "#EXTM3U" > shift
cat $urbt | awk 'NR%2==0 {print $0; print p} {p=$0}' >> shift
elif grep -q "DESCRIPTION" $urbt ; then
echo "#EXTM3U" > shift
cat $urbt | awk 'NR%2==0 {print $0; print p} {p=$0}' >> shift
grep SERVICE shift | sed -e "s/.*http/http/g" -e 's/:.*//g' -e 's/%3a/:/g' -e 's/DESCRIPTION//g' -e '2,$s/#/#EXTINF:0,/' -i shift
fi
name=`echo "$urbt" | sed -e 's/userbouquet.//;s/.m3u//;s/.tv$//'`
mv shift "$name".m3u
rm $urbt
echo ""
echo "Ваш $urbt успешно переконвертирован в плейлист $name.m3u"
echo ""
echo "Можно забирать в папке /tmp"
echo ""
fi
exit 0
Виртуальный выделенный сервер (VDS) становится отличным выбором
Задача: есть несколько h3, при вводе в input букв - начать выводить подходящие h3html-разметка
На данном этапе, у меня получилось сделать авторизацию в service account по jwt, создать папку и пермишеныС файлами проблема: когда я перехожу по ссылке...