跳至主要內容

快速开始

hylexus约 608 字大约 2 分钟

快速开始

此处将展示一个 最少配置 的808协议消息处理服务的搭建。

传送门

本小节的示例可以在 samples/jt-808-server-sample-bareopen in new window 下找到对应代码。

创建工程

创建一个空的 spring-boot 工程。

传送门

可以使用 Spring Initializeropen in new window 快速初始化一个 Spring Boot 工程。

添加依赖

引入为 808协议 提供的 spring-boot-starter

  • gradle
dependencies {
	// ...
	implementation group: 'io.github.hylexus.jt', name: 'jt-808-server-spring-boot-stater', version: "1.0.12-RELEASE"
    // ...
}
  • maven
<dependency>
    <groupId>io.github.hylexus.jt</groupId>
    <artifactId>jt-808-server-spring-boot-stater</artifactId>
    <version>1.0.12-RELEASE</version>
</dependency>

配置

  • application.yml
jt808:
  print-component-statistics: true
logging:
  level: info
  level.io.github.hylexus: debug
  • @EnableJt808ServerAutoConfig 启用自动配置
@SpringBootApplication
// 启用自动配置
@EnableJt808ServerAutoConfig
public class Jt808ServerSampleBareApplication {

    public static void main(String[] args) {
        SpringApplication.run(Jt808ServerSampleBareApplication.class, args);
    }

}

测试

至此,对808消息的处理流程已经搭建完毕。启动 spring-boot 项目开始测试。

可以从启动日志中的组件统计信息中看到内置了一个对 0x0102 (终端鉴权) 消息的处理器。处理逻辑位于 io.github.hylexus.jt808.handler.impl.BuiltinAuthMsgHandler

配置提示

组件统计信息 的开关由配置项 jt808.print-component-statistics = true|false 来控制

鉴权成功与否是由函数式接口 io.github.hylexus.jt808.ext.AuthCodeValidator 处理的。
并且内置了一个 永远返回true的仅仅用于调试 的实现类 BuiltinAuthCodeValidatorForDebugging

使用发包工具测试鉴权消息

注意:

无论以什么发包工具发包,都请记得以 十六进制格式 发送!可以参考 推荐发包工具

注意:

无论以什么发包工具发包,都请记得以 十六进制格式 发送!可以参考 推荐发包工具

注意:

无论以什么发包工具发包,都请记得以 十六进制格式 发送!可以参考 推荐发包工具

用发包工具发送如下报文给服务器( 默认TCP端口:6808 )测试:

7E0102000676890100562606E144454A544E506D7E

此时可以从控制台看到,内置的鉴权消息处理器打印出的日志,解析出了鉴权码,并且已经回复客户端。

auth-msg-breakpoint

传送门

本小节的示例可以在 samples/jt-808-server-sample-bareopen in new window 下找到对应代码。