云服务器Tailscale连通家庭网络构建自有IPTV电子节目单(EPG)服务

云服务器Tailscale连通家庭网络构建自有IPTV电子节目单(EPG)服务

编程文章jaq1232025-02-17 11:27:5622A+A-

习惯使用Tivimate、Kodi、DIYP或者TVBox等电视应用观看家里电信运营商的IPTV电视直播及回看。除了要有家中的IPTV直播及回看源,还需要有电子节目单(EPG)服务。之前EPG主要是用51zmt及112114提供的免费服务,但不少家中IPTV的频道都没有对应的节目单。因而创建一个自用的EPG服务,直接从家里IPTV运营商的EPG服务器上抓取电子节目单,构建了一个满足自己需要的自用EPG服务。

正好手里有一个99元一年的阿里云服务器,就把自用的EPG服务部署到了阿里云的服务器。电子节目单需要每天定时运行抓取新的节目内容,可是IPTV运营商的EPG服务器只支持从家庭宽带内网中访问。默认情况下无法从阿里云服务器上访问。

解决的方法是通过Tailscale创建一个家庭虚拟局域网,并把云服务及家庭路由器节点加入。如下图Tailscale控制台中的op节点是家中的OpenWrt路由器,es是阿里云服务器。

需要在家里路由器的Tailscale配置中设置IPTV EPG服务器的路由信息,让Tailscale虚拟局域网中的设备都可以访问到EPG服务器。如下图中的210.13.0.0/19网段,这是笔者家中IPTV 专网的网段,访问运营商的IPTV EPG服务需要能访问这个网段。

这样通过Tailscale虚拟局域网就可以让阿里云服务器上的应用访问到家庭IPTV专网的上EPG服务器了。在云服务器上设置一个crontab定时任务,每天定时运营抓取最新的ITPV节目单了。

5 */12 * * * /xxx/xxx/updateEpg.sh

抓取的节目单会保存在一个目录里。

当然还是运行一个简单的Web服务,比如Nginx。用于支持xml及json格式的EPG查询接口,分别用于tivimate/kodi或者DIYP/TVBox应用的EPG接口。

点击这里复制本文地址 以上内容由jaq123整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

苍茫编程网 © All Rights Reserved.  蜀ICP备2024111239号-21