内网联动说明

1. 文档范围

内网联动的主要作用,是让外部软件与「破茧」在局域网环境下协同工作,实现:

  • 股票代码共享
  • 页面联动
  • 数据联动
  • 外部程序对当前关注标的的同步跟随

典型使用方式包括:

  • 「破茧行情笔记」中点击某只股票后,外部程序同步切换到同一只股票
  • 外部自研工具接收「破茧行情笔记」当前联动代码,做二次分析、展示或记录
  • 多个终端之间通过一个局域网服务端中转,实现轻量级联动

2. 主入口

主程序联动输出入口:

当前主程序中,多个页面都会把“当前股票代码联动”统一汇总到这里,例如:

  • 市场页
  • 涨停页
  • 静狩页
  • 石室
  • 关联概念 / 行业点击

这些页面最终都会调用:

linknet(code, 0)而向外发送信息。

IP设置:

软件设置页联动地址和允许开关

3. 当前联动输出类型

3.1 type == 0

这是当前项目里最常用的联动输出类型。

含义:仅联动股票代码

当前发送内容:直接发送 code

例如:

600519

或者:

300750

3.2 type == 1

当前代码中 type == 1 也归类为“联动代码和日期”,发送逻辑是:

code|date

4. 发送格式

把一段 UTF-8 文本直接写入 TCP socket。

对于当前普通联动场景,内容就是:

6 位股票代码字符串

000001
600000
300033

5. 外部解析要求

由于当前发送端没有附带长度头、结束符或 JSON 包装,外部接收方必须注意:

5.1 不要假设一次 recv() 就是一条完整消息

TCP 是字节流,不是消息流。

因此外部程序不能简单认为:

  • 一次读取 = 一条联动消息

在低频场景下可能“看起来一直正常”,但从协议定义上这不是安全假设。

5.2 当前最稳的解析方式

如果外部服务只接收当前普通联动输出,可以按以下保守规则处理:

  1. 按 UTF-8 文本读取字节流
  2. 在接收缓冲区中扫描 6 位纯数字代码
  3. 将识别到的 6 位股票代码作为一条联动消息处理

6. 外部服务器要求

如果要接这个内网联动输出,外部至少需要提供一个 TCP 服务端。

主程序当前会连接:端口 5200

因此外部服务端要求:

  • 监听 TCP 5200 端口
  • 服务端 IP 必须填写到软件配置中的 联动服务器 IP
  • 该 IP 必须是合法 IPv4 / IPv6 地址

当前程序启动时不会自动恢复联动连接状态。

外部只要能稳定接收并正确切分这段文本流,就能完成联动解析。