服务商

致 VPN 服务商

Piko 是供你的用户使用的客户端应用。它读取标准的订阅链接和响应头,因此大多数面板无需改动即可使用。无需合作或注册。

本页内容
  1. “添加到 Piko”链接
  2. Piko 会发送什么
  3. 支持的格式
  4. Piko 读取的响应头
  5. 受保护的链接
  6. 测试与咨询

Piko 与任何服务商均无关联。能与 Piko 配合使用并不代表我们为其背书,我们也不列出或推荐服务商。

在你的网站、机器人或邮件中放置一个按钮,用于打开 Piko 并添加订阅。Piko 在保存任何内容之前,都会先显示确认界面。

piko://install-sub?url=https%3A%2F%2Fsub.example.com%2Fs%2Fabc123&name=Example
  • url:订阅地址,需进行百分号编码。请使用 https://;对于 http:// 地址,Piko 会提示用户该地址未加密。
  • name:可选。在你的 profile-title 响应头到达之前显示的名称。

也支持:

  • piko://add?url=…&name=… 和 piko://install-config?url=…,作用同上;
  • piko://add/<地址>,直接附上订阅地址(Happ 风格的写法);
  • piko://import?data=…,附上经百分号编码或 base64 编码的分享链接,用于添加单个服务器。

piko:// 链接只有在安装了 Piko 的设备上才能打开应用,因此请同时提供普通的订阅地址供用户复制。用户粘贴或扫描时,Piko 也能识别 happ://add/<地址> 和 v2rayng://install-sub?url=… 链接。

Piko 会发送什么

Piko 使用普通的 GET 请求获取订阅,并附带以下请求头:

请求头示例含义
User-AgentPiko/0.1.0/Android/36Piko/<应用版本>/<系统>/<系统版本>。Piko/ 前缀保持不变,你可以据此返回合适的格式。Piko 从不发送浏览器的 User-Agent。
x-hwid32 个十六进制字符仅为你的域名生成的设备 ID。同一台设备发给其他服务商的值不同。
x-device-osAndroid、iOS操作系统。
x-ver-os16系统版本。
x-device-modelPixel 9、iPhone17,3设备型号(绝不是用户给设备起的名称)。

设备相关的请求头只会发送到你订阅本身的主机,以及你在 new-url、new-domain 或 fallback-url 中指定的地址。重定向到其他主机时不会发送。在少数情况下,例如 iOS 设备重启后首次解锁之前,Piko 不会发送其中任何一项。

支持的格式

  • 明文或 base64 编码的分享链接列表:vless://、vmess://、trojan://、ss://(包括 Shadowsocks 2022)和 hysteria2://(hy2://)。
  • 完整的 Xray JSON 配置。Piko 会移除本地监听、日志文件以及其他不适用于手机应用的设置。
  • 传输方式:TCP(RAW)、WebSocket、gRPC、HTTPUpgrade、XHTTP(SplitHTTP)和 mKCP。安全层:TLS、REALITY 和 XTLS Vision。
  • 不支持:sing-box JSON、Clash YAML、WireGuard、TUIC、AnyTLS、NaiveProxy、ShadowTLS 及其他 Xray 以外的协议,已被移除的 h2 和 QUIC 传输,ss:// 插件,以及带 insecure=1 的 Hysteria2。连接公共服务器的明文 VLESS 会被拒绝。

请使用会加密连接的服务器:TLS、REALITY、Shadowsocks 2022 或 Hysteria2。应用商店规则要求 VPN 应用对发往服务器的流量进行加密,因此 Piko 可能会拒绝未加密的服务器。

Piko 读取的响应头

请以响应头的形式发送。同样的名称也可以写成响应正文开头的 #键: 值 行(Happ 风格)。两者同时存在时,以响应头为准。

响应头Piko 的处理方式
subscription-userinfoupload=…; download=…; total=…; expire=…,单位为字节和 Unix 时间(0 表示不限或永不过期)。Piko 显示已用流量和剩余天数,并在 Android 上于到期前提醒用户。
profile-title订阅名称,明文或 base64:…。如未提供,Piko 使用 content-disposition 中的文件名。
profile-update-interval更新间隔,单位为小时。默认为 4。
support-url客服链接(https://、tg: 或 mailto:),显示在“来自服务商”中。
profile-web-page-url你的网站或账户页面。
support-email客服电子邮件地址。
announce要显示的消息,明文或 base64:…。
announce-url指向你的公告的链接(https:// 或 tg:)。
sub-info-text、sub-info-button-text、sub-info-button-link带可选按钮的横幅(Happ 格式)。
routing、routing-enable以路由链接形式提供的路由配置(Happ 格式,例如 piko://routing/add/<base64>)。只有在用户同意后,Piko 才会应用。routing-enable: 0 可将其关闭。
new-url、new-domain订阅地址已迁移。Piko 会获取新地址,若可用则保存。仅接受公共主机上的 https:// 地址。
fallback-url主地址失效时 Piko 使用的镜像地址,不会更改用户的链接。
check-url-via-proxy一个 https:// 地址,Piko 会经由你的服务器请求它,用于 Xray JSON 配置的延迟测试。
x-hwid-active、x-hwid-not-supported、x-hwid-max-devices-reached、x-hwid-limit设备数量限制状态(true 或 1)。Piko 会向用户解释被拒绝的原因,并显示你的客服链接。

服务器列表中实际上是消息的条目(例如名为“5 天后到期”的“服务器”)会显示为消息,而不是服务器。

Piko 可以打开 piko://crypt1/… 链接,防止订阅地址被随意复制:以这种方式添加的地址,Piko 从不显示、复制或导出。这是一种混淆手段,而不是 DRM:密钥就在应用内。生成此类链接的工具将随 Piko 正式发布向服务商提供。如需获得通知,请发送邮件至 support@pikonet.io。

测试与咨询

在 Piko 中添加一个测试订阅,检查其信息:名称、流量、到期时间和你的消息。如果你的面板无法与 Piko 配合使用,请发送邮件至 support@pikonet.io,并注明面板名称和版本。请发送测试订阅,切勿发送真实用户的订阅。