# 应用 (App)
应用 (App) 是 Context 的一个子类,它管理着一个 QQ 号下面的全部信息。除了上面提到的属性和方法以外,App 还提供了下面的属性和方法:
# app.selfId
当前 App 绑定的 QQ 号,是 app.options.selfId 的简写形式。
# app.server
当前 App 绑定的 Server 对象。可以通过手动调用 app.server.stop() 停止服务器的运行。
# app.options
当前 App 创建时传入的配置。参见 配置文件。
# app.version
当前 App 的版本信息。参见 VersionInfo。
# app.users
由当前 App 内所有用户事件构成的上下文。特别地,你可以使用 app.users.exclude(...ids) 创建除去某些用户外所有用户的上下文。
# app.groups
由当前 App 内所有群事件构成的上下文。特别地,你可以使用 app.groups.exclude(...ids) 创建除去某些群外所有群的上下文。
# app.discusses
由当前 App 内所有讨论组事件构成的上下文。特别地,你可以使用 app.discusses.exclude(...ids) 创建除去某些讨论组外所有讨论组的上下文。
# app.user(...userIds)
创建对特定用户的上下文。
- userIds:
number[]用户 ID - 返回值:
Context新的上下文
# app.group(...groupIds)
创建对特定群的上下文。
- groupIds:
number[]群 ID - 返回值:
Context新的上下文
# app.discuss(...discussIds)
创建对特定讨论组的上下文。
- discussIds:
number[]讨论组 ID - 返回值:
Context新的上下文
# app.start()
启动此应用。
- 返回值:
Promise<void>
# app.stop()
停止此应用。
- 返回值:
Promise<void>
# app.emitEvent(meta, event, ...payloads)
在元信息相关联的上下文触发一个事件。
- meta:
Meta元信息 - event:
string事件名 - payloads:
any[]事件参数 - 返回值:
void
提示
如果你只希望该事件在 App 本身触发,应该直接使用 app.receiver.emit() 方法。
# app.parseCommandLine(message, meta)
解析一段指令调用文本。
- message:
string要解析的文本(开头不要包含指令名和前缀) - meta:
Meta元信息对象 - 返回值:
ParsedCommandLine解析结果
# app.executeCommandLine(message, meta, next?) 1.1.0+
执行一段指令调用文本。
- message:
string要执行的文本(开头不要包含指令名和前缀) - meta:
Meta元信息对象 - next:
NextFunction所处的中间件的next回调函数 - 返回值:
any执行结果