T-Box Basic dev
Loading...
Searching...
No Matches
ril_recovery.h File Reference

RIL 网络恢复纯策略 More...

#include <stdbool.h>
#include <stdint.h>
#include "ril_config.h"
#include "ril_data_types.h"

Go to the source code of this file.

Data Structures

struct  ril_recovery_state_t
 一路 APN 的恢复策略状态 More...

Enumerations

enum  ril_recovery_action_t {
  RIL_RECOVERY_NONE = 0 , RIL_RECOVERY_REDIAL , RIL_RECOVERY_RECONCILE , RIL_RECOVERY_RESET ,
  RIL_RECOVERY_DEGRADED
}
 恢复策略建议 daemon 执行的动作 More...

Functions

uint64_t ril_recovery_probe_delay_ms (const ril_recovery_state_t *state, const ril_health_config_t *config)
 查询当前恢复层级对应的下一次探测间隔。
void ril_recovery_set_readiness (ril_recovery_state_t *state, bool ready, uint64_t now_ms)
 暂停或恢复一路 APN 的恢复计时。
ril_recovery_action_t ril_recovery_update (ril_recovery_state_t *state, const ril_health_config_t *config, bool ready, bool healthy, uint64_t now_ms)
 根据最新探测结果推进一路 APN 的恢复策略。

Detailed Description

RIL 网络恢复纯策略

Version
1.0.0
Date
2026-07-17

Enumeration Type Documentation

◆ ril_recovery_action_t

恢复策略建议 daemon 执行的动作

Enumerator
RIL_RECOVERY_NONE 

不执行恢复动作

RIL_RECOVERY_REDIAL 

重新拨号

RIL_RECOVERY_RECONCILE 

重新配置 profile 并拨号

RIL_RECOVERY_RESET 

复位模组后恢复

RIL_RECOVERY_DEGRADED 

停止自动恢复并进入降级状态

Function Documentation

◆ ril_recovery_probe_delay_ms()

uint64_t ril_recovery_probe_delay_ms ( const ril_recovery_state_t * state,
const ril_health_config_t * config )

查询当前恢复层级对应的下一次探测间隔。

降级状态使用 cooldown_sec 作为最小探测间隔,其他状态使用 interval_ms。

Parameters
state当前恢复状态。
config网络健康配置。
Returns
下一次探测间隔,单位毫秒;参数无效返回 0。

◆ ril_recovery_set_readiness()

void ril_recovery_set_readiness ( ril_recovery_state_t * state,
bool ready,
uint64_t now_ms )

暂停或恢复一路 APN 的恢复计时。

本函数不消费健康探测结果,也不改变失败次数和恢复层级。

Parameters
state输入并更新恢复状态。
ready当前是否满足 SIM、RF 和注册条件。
now_ms当前单调时钟毫秒数。

◆ ril_recovery_update()

ril_recovery_action_t ril_recovery_update ( ril_recovery_state_t * state,
const ril_health_config_t * config,
bool ready,
bool healthy,
uint64_t now_ms )

根据最新探测结果推进一路 APN 的恢复策略。

本函数不执行 I/O、不调用 backend,也不读取时钟。

Parameters
state输入并更新恢复状态。
config网络健康配置。
ready当前是否满足 SIM、RF 和注册条件。
healthy最新可用探测结果是否健康。
now_ms当前单调时钟毫秒数。
Returns
建议 daemon 执行的一个恢复动作。