lanarea / splrequest
此软件包已被弃用且不再维护。没有推荐替代软件包。
用于Station Playlist的干净请求脚本
dev-master
2019-10-28 21:39 UTC
This package is auto-updated.
Last update: 2022-08-29 01:31:16 UTC
README
[已弃用] 已迁移至 OrigamiVision/StationPlaylist
SPLRequest 是一个非常小的PHP库,能够与StationPlaylist Studio连接,加载所有可用的歌曲库,甚至可以向服务器发送实时歌曲请求。
您可以从我们的 GitHub 仓库 获取最新版本,或者通过Composer安装它
composer require lanarea/splrequest
或者手动将其添加到 composer.json
{
"require": {
"lanarea/splrequest": "dev-master"
}
}
准备
在使用此脚本之前,需要应用一些(本地)设置
-
打开 StationPlaylist Studio
-
打开选项窗口(Ctrl+O 或查看 > 选项)
-
启用与SPL的外部连接
- 在左侧,选择名为“通讯”的标签页
- 设置到 StationPlaylist Studio 的TCP连接端口
- 据我所知,您不需要设置“发送响应”的值
- 可选,但最好是设置IP限制(与脚本运行在同一IP上)
- 可能:将之前提到的端口转发,使其可通过您的公共IP访问。此选项可在路由器设置中找到或通过您的ISP
-
设置要公开的目录
- 在左侧,选择名为“文件夹位置”的标签页
- 位于“搜索文件夹”标签旁边的输入框包含此脚本可以浏览的文件夹
- 不要忘记勾选“包括子文件夹”的复选框
用法
自动加载或包含类,并启用命名空间以使用该类
use LANarea\SPLRequest;
创建一个新的SPLRequest对象,包含IP地址/主机名和TCP端口
$spl = new SPLRequest('0.0.0.0', 0);
通过getAllSongs()方法获取所有可用歌曲
$results = $spl->getAllSongs(); // returns an array of all songs
上述等同于以下
$results = $spl->search('*');
可能受“通讯”标签页下的“最大搜索结果”设置的影响。
搜索歌曲
- 使用 * 作为通配符操作符(例如,“Avril*”表示以“Avril”开头的所有歌曲)
- 使用 | 作为查询的结尾(例如,“A*|”表示以A开头的所有歌曲列表)
$results = $spl->search('Avril Lavigne*'); // returns an array, or false
提示:用通配符操作符包围所有查询,例如,“*Elvis*”
进行歌曲请求
$spl->doRequest('C:/path/to/music - file.mp3'); // returns true or false
或者您还可以添加更多有用的信息
$spl->doRequest('C:/path/to/music - file.mp3', 'John Doe', 'Brussels, Belgium');
查看example.php文件获取免费示例。
注意
您必须实现自己的请求限制、缓存等。
使用此软件包,您只能处理我们能够从SPL获取和发送的数据。
已知问题
特殊符号如 é、ä、û;会显示为问号。可能是编码问题。[自5.20版本以来为UTF-8输出]
许可证
该软件包采用新BSD许可证。