跳至主要内容

Socket

Base URL

Balance

  • https://lb.exptech.dev/ws
  • https://lb-1.exptech.dev/ws
  • https://lb-2.exptech.dev/ws
  • https://lb-3.exptech.dev/ws
  • https://lb-4.exptech.dev/ws
備註

lb-*.exptech.dev 為指定 Balance Server,若不加編號則由 DNS 自動分配。

注意

由 DNS 自動分配的情況下,意味著當有 1 台伺服器故障時,請求成功率為 3/4(75%) 以下,建議手動管理要使用的 Base URL。

參考 手動處理 Base URL

連接

{
"type": "start", // 類型
"token": "<token>", // 驗證 Token (Service)
"topic": ["<topic>"] // 欲訂閱主題
}

回應

連接成功

{
"type": "info", // 類型
"event": "connect", // 事件
"topic": {
"success": ["websocket.trem.rts.v1"], // 訂閱成功主題
"failed": [] // 訂閱失敗主題
},
"time": 1724935200000 // 時間 (Unix Timestamp)
}

連接失敗

Reason 類型

  • Token has been revoked Token 已被註銷 (在 Web 控制面板)
  • Invalid message format 訊息格式錯誤
  • Token required 未提供 Token (Service)
  • Token invalid Token (Service) 無效
  • Monthly calls quota exceeded (xxx/xxx) 月呼叫次數超過限制 (xxx 根據實際情況)
  • Monthly bytes quota exceeded (xxx/xxx) 月流量超過限制 (xxx 根據實際情況)
  • Server error 伺服器錯誤
{
"type": "info", // 類型
"event": "disconnect", // 事件
"msg": "<reason>", // 訊息
"time": 1724935200000 // 時間 (Unix Timestamp)
}

NTP

{
"type": "ntp", // 類型
"time": 1724935200000 // 時間 (Unix Timestamp)
}
提示

連接成功的情況下,將每 60 秒收到一次 NTP 資訊。(不保證間格一定是 60 秒)

資料

{
"type": "data", // 類型
"topic": "websocket.trem.rts.v1", // 主題
"payload": "<payload>", // 資料
"time": 1724935200000 // 時間 (Unix Timestamp)
}
提示

收到的 data 內 topic 會跟成功訂閱的 topic 呼應,所以格式更新時可選擇訂閱 v2 (websocket.trem.rts.v2) 或是繼續使用 v1 ,但要注意棄用時間 (有 v2 後通常 v1 會在一段時間後棄用)。

訂閱

下方列出可供訂閱的主題。

RTS

  • websocket.trem.rts.v1