tr069

(14)

TeamsACS 登录时,显示用户不存在

## login 时,用户不存在的逻辑在哪里 使用 admin/teamsacs 登录时,发现无法登录,提示用户不存在。 于是查看了一下登录的处理逻辑: ``` // 登录提交 webserver.POST("/login

TeamsACS 在处理 BootStrap 事件时, 如何生成的密码

TeamsACS 是一个开源的 tr069 ACS 实现。其在处理 CPE 发送的 BootStrap 事件时,逻辑有点绕。 ## BootStrap 处理逻辑 1. 判断 CPE 请求的 body 非空时,如果是 BootSt

TeamsACS 对于 BootStrap Event 的处理逻辑

实际上类似于 [TeamsACS 对于 PERIODIC Event 的处理逻辑](/teamsacs-periodic-event-processing-logic) 的处理逻辑, 只不过多了一个 UpdateManagementAut

TeamsACS 对于 PERIODIC Event 的处理逻辑

## Event 类型的判别 tr069/handlers.go ``` func (s *Tr069Server) processInformEvent(c echo.Context, lastInform *cwmp.Info

tr069 协议中何时使用 basic auth 或者 http digest auth

由于没有在 TeamsACS 的 tr069 server 部分代码中没有找到 HTTP Digest Auth Middleware 的逻辑。 我开始怀疑我对 tr069 协议的 auth 部分理解有问题。所以查询了 tr069 协议文

tr069 server TeamsACS 中的 Basic Auth 与 HTTP Digest Auth

我在 TeamsACS tr069/server.go 中只找到了 BasicAuth middleware, 并没有 http digest auth (准确地说 auth_client.go 中有实现,但是 server 逻辑里没有).

tr069 CPE 模拟器 genieacs-sim 默认通信流程解读

## cpe 端模拟器 genieacs sim 的日志 ``` > ./genieacs-sim --acs-url=http://127.0.0.1:2999 Simulator 000000 started Simulator

tr069 事件类型 (event type)

Inform 类型的消息中,包含 Event 信息。 > All communications and operations are performed in the scope of the provisioning session

tr069 消息类型 (message type)

tr069 是基于 SOAP 的 RPC 协议。 message type 可以理解为每个 RPC 的方法名。 这里有趣的地方是,既然是远程调用,那么就存在两种情况: - ACS 调用 CPE 的方法 - CPE 调用

TeamsACS 代码目录结构

粗略浏览一遍,大概了解每个模块的每个文件是实现什么功能的。可以 tree 一下结构,把每个文件的注释加上。 ## 查看目录 排除 assets 子目录,因为下面的 js 文件太多。 ``` tree -I assets