- 媒资接口 servhub-ep03 → servhub-ep01(ep03 媒资滞后,新片查不到、片名错位) - 登录接口 external(预发布) → api.future.jetsentv.com(现网) - 新增 JST-INTERFACE-REFERENCE.md 接口排查手册
127 lines
4.6 KiB
Markdown
127 lines
4.6 KiB
Markdown
# 橘视厅接口参考手册(日常排查用)
|
||
|
||
> 2026-09-09 整理。来源:release App `jiecheng_business1.3.27` 抓包 + 后端实测 + 同事现场 curl 验证。
|
||
|
||
---
|
||
|
||
## 一、基础凭证(release App 写死,我方沿用)
|
||
|
||
```
|
||
sptoken = 9006874392099a89506142c6df9e3314
|
||
signKey = alltvjs
|
||
portalcode = PCODE-JC
|
||
channelid = 001
|
||
```
|
||
|
||
签名算法:`sign = MD5(sptoken + timeshift + portalcode + signKey).toUpperCase()`
|
||
|
||
---
|
||
|
||
## 二、CDN 节点与数据差异(核心坑)
|
||
|
||
### 现网 servhub(DNS 同 IP 但媒资库版本不同!)
|
||
|
||
| 节点 | 完整 URL | release App 命中 | 说明 |
|
||
|---|---|---|---|
|
||
| **ep01** | `https://servhub-ep01.future.jetsentv.com/` | ✅ 实际走这个 | 最新片(8月中下旬上线的)、正确片名 |
|
||
| **ep03** | `https://servhub-ep03.future.jetsentv.com/` | ❌ 已弃用 | 媒资滞后,新片缺失、片名被改写 |
|
||
|
||
### 实测对比(ep01 vs ep03)
|
||
|
||
| 片名 | contentcode | ep01 | ep03 |
|
||
|---|---|---|---|
|
||
| 后悔没有好好爱过你 | `23010022026090109192132084` | ✅ 同名 | ✅ 同名 |
|
||
| 乌女山怪谈 | `23010022026090109192132085` | ✅ 同名 | ✅ 同名 |
|
||
| 千门八将之群龙夺宝 | `23010022026082517202131945` | ✅ 同名 | ✅ 同名 |
|
||
| 日出江花 | `23010022026082416335131944` | ✅ 同名 | ✅ 同名 |
|
||
| 刺客的身份 | `23010022026080316521131798` | ✅ 同名 | ✅ 同名 |
|
||
| 湘西异闻录 | `23010022026072809450131743` | ✅ 原名湘西异闻录 | ⚠️ **显示为血夜行** |
|
||
| 海墓龙棺 | `23010022026081017241131881` | ✅ 有 | ❌ **完全查不到**(sizetotal=0) |
|
||
|
||
**结论**:后端媒资代理必须走 **ep01**,否则新片查不到、老片片名错位。
|
||
|
||
### 预发布 external
|
||
|
||
| 节点 | 完整 URL | 说明 |
|
||
|---|---|---|
|
||
| external-ep01 | `https://external-ep01.future.jetsentv.com:8010` | App 预发布主入口 |
|
||
| external-ep02 | `https://external-ep02.future.jetsentv.com` | 预发布备用 |
|
||
|
||
---
|
||
|
||
## 三、API 主入口(登录/激活/支付,不走 servhub)
|
||
|
||
| 环境 | 完整 URL | 用途 |
|
||
|---|---|---|
|
||
| 现网 | `https://api.future.jetsentv.com/` | ums_api(login/logout/isLogin)、ccms_api(activateCard/queryUsable)、bms_api(queryOrderList/getPayResultCycle) |
|
||
| 预发布 | `https://external.future.jetsentv.com/` | 同上 |
|
||
|
||
> **不受 ep01/ep03 影响**,API 统一网关。
|
||
|
||
---
|
||
|
||
## 四、图片 CDN
|
||
|
||
| 域名 | 用途 |
|
||
|---|---|
|
||
| `https://imgcms.jetsenx.huashi.tv` | **主**:新片海报(海墓龙棺、湘西异闻录等) |
|
||
| `https://img01.jetsenx.huashi.tv` | 老片海报 |
|
||
|
||
---
|
||
|
||
## 五、华视网聚旧域名(已全部失效)
|
||
|
||
| 域名 | 当前状态 |
|
||
|---|---|
|
||
| `https://api.jetsenx.huashi.tv` | 502 Bad Gateway |
|
||
| `https://external.jetsenx.huashi.tv` | 404 Not Found |
|
||
|
||
---
|
||
|
||
## 六、我方后端配置项
|
||
|
||
文件:`src/main/java/io/as/modules/media/config/JetsenMediaConfig.java`
|
||
|
||
```yaml
|
||
jetsen:
|
||
media:
|
||
base-url: https://servhub-ep01.future.jetsentv.com/ # ← ep01,关键!
|
||
path-prefix: /IPTVPortalInterface
|
||
sp-token: 9006874392099a89506142c6df9e3314
|
||
portal-code: PCODE-JC
|
||
sign-key: alltvjs
|
||
channel-id: "001"
|
||
```
|
||
|
||
橘视厅 API(登录/激活)配置在数据库 `sys_config` 的 `JST_PLATFORM_CONFIG`:
|
||
```json
|
||
{
|
||
"jstApiBaseUrl": "https://api.future.jetsentv.com",
|
||
"accesser": "JSTASJD",
|
||
"secret": "kMeWsBu0QsTXpnft",
|
||
"agCode": "1100101010200492358120169",
|
||
"serviceComboCode": "1100121010200494755850172",
|
||
"serviceGroupCode": "1100122010201752209710182",
|
||
"businessLine": "4100450011381755998420012"
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
## 七、日常排查 Checklist
|
||
|
||
**媒资查不到 / 片名错位**
|
||
1. 先确认 contentcode 对不对(App 埋点里取)
|
||
2. 用 ep01 手工 curl 确认:`curl -X POST https://servhub-ep01.future.jetsentv.com/IPTVPortalInterface/content/getcontentlist.do -H "Content-Type: application/json" -d '{"channelid":"001","contentcode":"xxx","portalcode":"PCODE-JC","sign":"...","sptoken":"9006874392099a89506142c6df9e3314","timeshift":"..."}'`
|
||
3. 如果 ep01 有、ep03 没有 → 后端 JetsenMediaConfig.baseUrl 被误改回 ep03 了
|
||
4. 如果两边都没有 → contentcode 不是橘视厅原生的,可能是 App 本地别名/运营配置的
|
||
|
||
**SDK init 失败 / 播放鉴权失败**
|
||
1. 确认橘视厅 API 走的是 `api.future.jetsentv.com`(不走 servhub)
|
||
2. thirdCardNo 派生:`thirdCardNo + "_bul_" + businessLine`
|
||
3. businessLine = `4100450011381755998420012`(代销模式用的)
|
||
|
||
**激活失败 "设备不存在"**
|
||
1. 发卡后异步激活必须等事务提交再触发(TransactionSynchronization.afterCommit)
|
||
2. 重试任务 `dayCardActivateRetryTask` 每 5 分钟执行,已覆盖伙伴代销卡(无 orderNo 的也能重激)
|