nonebot2/website/versioned_docs/version-2.3.1/api/config.md
noneflow[bot] 622e8e8af3 🔖 Release 2.3.1
2024-05-20 14:19:50 +00:00

4.1 KiB
Raw Permalink Blame History

sidebar_position description
1 nonebot.config 模块

nonebot.config

本模块定义了 NoneBot 本身运行所需的配置项。

NoneBot 使用 pydantic 以及 python-dotenv 来读取配置。

配置项需符合特殊格式或 json 序列化格式 详情见 pydantic Field Type 文档。

class Env(_env_file=ENV_FILE_SENTINEL, _env_file_encoding=None, _env_nested_delimiter=None, **values)

  • 说明

    运行环境配置。大小写不敏感。

    将会从 环境变量 > dotenv 配置文件 的优先级读取环境信息。

  • 参数

    • _env_file (DOTENV_TYPE | None)

    • _env_file_encoding (str | None)

    • _env_nested_delimiter (str | None)

    • **values (Any)

class-var environment

  • 类型: str

  • 说明

    当前环境名。

    NoneBot 将从 .env.{environment} 文件中加载配置。

class Config(_env_file=ENV_FILE_SENTINEL, _env_file_encoding=None, _env_nested_delimiter=None, **values)

  • 说明

    NoneBot 主要配置。大小写不敏感。

    除了 NoneBot 的配置项外,还可以自行添加配置项到 .env.{environment} 文件中。 这些配置将会在 json 反序列化后一起带入 Config 类中。

    配置方法参考: 配置

  • 参数

    • _env_file (DOTENV_TYPE | None)

    • _env_file_encoding (str | None)

    • _env_nested_delimiter (str | None)

    • **values (Any)

class-var driver

  • 类型: str

  • 说明

    NoneBot 运行所使用的 Driver 。继承自 Driver

    配置格式为 <module>[:<Driver>][+<module>[:<Mixin>]]*

    ~nonebot.drivers. 的缩写。

    配置方法参考: 配置驱动器

class-var host

  • 类型: IPvAnyAddress

  • 说明: NoneBot ReverseDriver 服务端监听的 IP/主机名。

class-var port

  • 类型: int

  • 说明: NoneBot ReverseDriver 服务端监听的端口。

class-var log_level

  • 类型: int | str

  • 说明

    NoneBot 日志输出等级,可以为 int 类型等级或等级名称。

    参考 记录日志loguru 日志等级

    :::tip 提示 日志等级名称应为大写,如 INFO。 :::

  • 用法

    LOG_LEVEL=25
    LOG_LEVEL=INFO
    

class-var api_timeout

  • 类型: float | None

  • 说明: API 请求超时时间,单位: 秒。

class-var superusers

  • 类型: set[str]

  • 说明: 机器人超级用户。

  • 用法

    SUPERUSERS=["12345789"]
    

class-var nickname

  • 类型: set[str]

  • 说明: 机器人昵称。

class-var command_start

  • 类型: set[str]

  • 说明

    命令的起始标记,用于判断一条消息是不是命令。

    参考命令响应规则

  • 用法

    COMMAND_START=["/", ""]
    

class-var command_sep

  • 类型: set[str]

  • 说明

    命令的分隔标记,用于将文本形式的命令切分为元组(实际的命令名)。

    参考命令响应规则

  • 用法

    COMMAND_SEP=["."]
    

class-var session_expire_timeout

  • 类型: timedelta

  • 说明: 等待用户回复的超时时间。

  • 用法

    SESSION_EXPIRE_TIMEOUT=[-][DD]D[,][HH:MM:]SS[.ffffff]
    SESSION_EXPIRE_TIMEOUT=[±]P[DD]DT[HH]H[MM]M[SS]S  # ISO 8601