Skip to Content
Docs数据对接902 协议文件及脚本引用参数命名规范

版本: v1.0 修改日期: 2026-05-29 面向用户: 实施工程师 / 研发人员 / 协议对接人员

本规范统一 viSCADA 平台协议对接过程中的文件命名与参数命名方式,帮助团队降低沟通成本、减少字段重复与歧义,提升跨脚本协作与长期维护效率。本文档适用于新增协议脚本与已有脚本改造两种场景。

1 文件命名规范

1.1 命名格式

协议文件统一采用如下格式:

[数据对接厂家产品名称]_([协议类型])

ℹ️ 下划线 _ 与括号 () 均使用半角英文符号

1.2 命名示例

海康威视摄像平台_(HTTP) 大华门禁系统_(MQTT) Oracle业务库_(SQL)

1.3 命名要求

  • 名称能直接体现「对接谁、用什么协议」
  • 禁止使用无意义名称,如 testdemo脚本1
  • 协议类型必须与实际接入方式一致

1.4 协议类型与 Telegraf 插件对照

填写协议类型时请参照下表,避免名称不一致:

Telegraf 插件Plugin ID协议类型
MQTT Consumerinputs.mqtt_consumerMQTT
HTTPinputs.httpHTTP
HTTP Listener v2inputs.http_listener_v2Webhook
Modbusinputs.modbusModbus
OPC UA Client Readerinputs.opcuaOPCUA
Siemens S7inputs.s7commS7
Apache Kafka Consumerinputs.kafka_consumerKafka
SQLinputs.sqlSQL

2 参数命名通用规则

2.1 统一使用小驼峰命名

写法是否推荐
baseUrl
connectTimeoutMs
base_url❌ 下划线
BaseUrl❌ 大驼峰

2.2 同一含义只保留一个名字

统一用 baseUrl,不要同时出现 urlapiUrlrequestUrl 表示同一意思。

2.3 同类脚本命名保持一致

所有脚本统一使用:hostportusernamepassword

2.4 带单位的参数必须写清单位

  • connectTimeoutMs(毫秒)
  • retryIntervalMs(毫秒)
  • maxBytes(字节)

2.5 布尔值统一用 is / enable 开头

  • isSsl
  • enableCompression

2.6 敏感字段禁止明文打印

passwordtokensecretKeyclientSecret 等字段,日志输出必须脱敏处理。

3 参数专项规范

3.1 地址类参数

3.1.1 标准参数表

参数名含义示例
host主机/IP,不带协议和端口127.0.0.1
port端口8080
baseUrl协议 + host + porthttp://127.0.0.1:8080
endpointPath接口路径/api/v1/device/status
requestUrl完整请求地址http://127.0.0.1:8080/api/v1/device/status

3.1.2 使用规则

⚠️ requestUrlbaseUrl + endpointPath 二选一,不要同时配置两套。

如保留 address 字段,只允许写成 host:port 形式。

3.2 认证类参数

3.2.1 标准参数表

参数名含义
authType认证方式
username用户名
password密码
tokenBearer Token
apiKeyNameAPI Key 名称
apiKeyValueAPI Key 值
apiKeyIn位置:header / query
accessKey访问密钥
secretKey密钥
clientId客户端 ID
clientSecret客户端密钥

3.2.2 authType 推荐值

含义
none无认证
basicBasic 基础认证
bearerTokenBearer Token 认证
apiKeyAPI Key 认证
hmacHMAC 签名认证
oauth2ClientCredentialsOAuth2 客户端凭证
tlsMutualTLS 双向认证

3.3 运行控制类参数

3.3.1 标准参数表

参数名含义
connectTimeoutMs连接超时(毫秒)
readTimeoutMs读取超时(毫秒)
writeTimeoutMs写入超时(毫秒)
retryCount重试次数
retryIntervalMs重试间隔(毫秒)
batchSize批量大小
maxRecords最大记录数
pageNo页码
pageSize每页条数
dataFormat数据格式

3.3.2 dataFormat 推荐值

说明
jsonJSON 格式
xmlXML 格式
csvCSV 格式
avroApache Avro 格式
protobufProtocol Buffers 格式

4 常见协议参数规范

4.1 HTTP / HTTPS

参数名说明
httpMethod请求方法
headers请求头
queryParamsQuery 参数
body请求体
contentType内容类型
accept接收类型
authType认证方式
tokenBearer Token
usernameBasic 用户名
passwordBasic 密码
proxyHost代理主机
proxyPort代理端口

4.2 MQTT

参数名说明
brokerUrlBroker 地址
clientId客户端 ID
username用户名
password密码
topic主题

⚠️ MQTT 统一使用 brokerUrl,不要混用 baseUrlrequestUrl

4.3 Kafka

参数名说明
bootstrapServers集群地址
topicTopic 名称
groupId消费组
clientId客户端 ID
securityProtocol安全协议
saslMechanismSASL 机制
saslUsernameSASL 用户名
saslPasswordSASL 密码

4.4 JDBC / 数据库

参数名说明
databaseType数据库类型
jdbcUrlJDBC 连接串
username用户名
password密码
schemaNameschema 名称
tableName表名
fieldName字段名
sqlSQL 语句

⚠️ 数据库场景优先使用 jdbcUrl,不要同时写 hostportdatabaseName 等多套参数。

5 参考模板

以下模板给出典型协议的参数最小集合,可直接套用到新脚本。敏感字段使用 ****** 占位,实际填写时替换为真实值。

5.1 HTTP 模板

baseUrl=https://api.xxx.com endpointPath=/api/v1/data httpMethod=POST contentType=application/json authType=bearerToken token=****** connectTimeoutMs=5000 readTimeoutMs=15000 retryCount=3 retryIntervalMs=1000

5.2 MQTT 模板

brokerUrl=tcp://127.0.0.1:1883 clientId=client_001 username=u1 password=****** topic=device/status connectTimeoutMs=5000 retryCount=3 retryIntervalMs=1000

5.3 JDBC 模板

databaseType=mysql jdbcUrl=jdbc:mysql://127.0.0.1:3306/testdb username=dbuser password=****** sql=select * from device_info connectTimeoutMs=5000 readTimeoutMs=15000

6 规范落地检查清单

在提交或评审脚本前,请逐项核对:

  • 文件名包含厂家产品名称和协议类型,格式为 [产品名]_([协议])
  • 所有参数名使用小驼峰命名
  • 同一含义只使用一个参数名(如统一 baseUrl,不混用 url/apiUrl)
  • 地址类参数仅使用一套方案(requestUrlbaseUrl+endpointPath 二选一)
  • 带单位的参数名中包含单位(如 connectTimeoutMs)
  • 布尔参数以 isenable 开头
  • 敏感字段(passwordtoken 等)未明文输出到日志
  • MQTT 协议使用 brokerUrl,未混用 baseUrl
  • 数据库协议优先使用 jdbcUrl,未同时写 host/port/databaseName
  • 新增参数已查阅本规范,优先复用现有命名

💡 建议:每次评审脚本时按本清单逐项勾选,未勾选项需在评审意见中明确说明原因。长期保持清单习惯,可显著降低跨脚本协作的认知负担。

Last updated on