知识库
SCALE 自动化语言
SCALE(Simple Cross-Platform Agent Language for Extensibility)是 TeamViewer 的跨平台自动化语言,用于端点管理和设备操作。它提供了一种一致的方式,可在 Windows、macOS 和 Linux 设备上执行诊断、修复和管理任务。通过结合内置代理功能、流程控制、结构化输出以及操作系统集成,SCALE 可帮助组织以受控且可预测的方式自动执行端点活动。SCALE 广泛用于 TeamViewer 自动化工作流中,包括 Tia 故障排除体验中提供的已批准工具。
本文适用于所有 TeamViewer ONE(Standard、Advanced 和 Enterprise)、Premium、Corporate 及 Tensor 许可证持有者。
什么是 SCALE?
SCALE 是一种专为端点管理而设计的自动化语言。它使组织能够直接在受管设备上运行诊断、修复、信息收集和运营工作流。
SCALE 提供:
- 可在 Windows、macOS 和 Linux 上跨平台执行
- 一致访问端点数据和设备能力
- 可供自动化工作流使用的结构化输出
- 通过预定义逻辑和治理机制实现受控执行
在 TeamViewer 中,SCALE 为端点自动化提供支持,包括通过 Tia 和其他受管工作流呈现的许多诊断与修复工具。
背景
SCALE 最初由 1E 开发,并为其数字员工体验(DEX)端点自动化提供支持。在 TeamViewer 收购 1E 之后,SCALE 成为 TeamViewer 的一部分,并继续作为整个平台端点自动化能力的基础。
SCALE 的工作原理
SCALE 设计得非常精简,仅包含安全且可预测地执行端点自动化所需的功能。其有限且定义明确的语言范围有助于减少不必要的复杂性,并支持受控执行。通过依赖已批准的工具和预定义操作,SCALE 可实现可预测且受治理的自动化工作流。
该语言围绕四个核心领域构建。
流程控制
SCALE 通过以下结构支持决策和迭代:
IF / ELSE / ENDIFFOREACH
这些结构使工具能够在需要时评估条件并处理多个项目。
清晰终止
工具可以使用以下命令显式结束执行:
EVALUATERETURNNOCONTENTERRORNOTIMPLEMENTED
这些命令有助于确保每次执行都以清晰且明确定义的状态结束。
Shell bridge
某些自动化任务需要只能通过特定平台命令获得的操作系统功能。在这些情况下,已批准的工具可利用诸如 Windows 上的 PowerShell,或 Linux 和 macOS 上的 shell 命令等能力。
这些命令作为预定义工具逻辑的一部分运行,同时保留 SCALE 提供的治理、执行控制和结构化结果处理。
代理方法
SCALE 包含一个内置的跨平台代理方法库,可在受支持的操作系统上以一致方式读取设备信息并执行操作。
示例 SCALE 指令
以下诊断指令从 Windows 设备检索网络配置信息:
// Diagnostic instruction — read-only by design@result = Scripting.RunText(Language: "PowerShell",Text: "Get-NetIPConfiguration | ConvertTo-Json");EVALUATE @result; // stop early if nothing returnedRETURN @result;
在此示例中:
- PowerShell 命令检索网络配置数据。
- 结果存储在一个变量中。
- 工具验证是否返回了数据。
- 结构化输出将返回给调用方。
结构化结果
SCALE 将熟悉的脚本模式与类似 SQL 的数据处理能力相结合。这使得数据可以在返回之前先在端点上进行筛选和整理。
因此,工具返回的是结构化信息,而不是原始命令输出。由于每个工具都会按照定义好的返回架构返回数据,Tia 可以一致地解释工具结果、减少歧义,并支持可靠的故障排除工作流。
与操作系统命令集成
在需要时,SCALE 工具可以在内部执行特定于操作系统的命令。
示例包括:
Windows 上的 PowerShell 命令
Linux 上的 shell 命令
macOS 上的 shell 命令
尽管底层命令可能因操作系统而异,但 SCALE 可确保结果按照工具返回架构定义的一致格式返回。
SCALE 与 Tool Catalog
Tia 故障排除功能一文包含了向 Tia 提供的已批准诊断和修复工具。在这些工具可供使用之前,其工具定义、预期输入、输出和执行行为均已预先定义并受到治理。这有助于确保一致性、可追溯性和运营控制。
SCALE 提供为这些工具提供支持的执行语言。SCALE 与 Tool Catalog 共同实现受控且一致的故障排除工作流。
治理与控制
SCALE 提供已批准工具所使用的执行语言,但它并不决定哪些工具可用。可用工具通过 Tool Catalog 审批流程进行治理,并根据其预定义定义执行。
这种工具治理与工具执行之间的分离有助于实现:
- 运营监督
- 一致执行
- 可追溯性
- 受控自动化
通过使用已批准的工具和预定义输出,组织可以对端点自动化活动保持更高的可见性和控制力。
官方文档
有关 SCALE 的技术参考信息,请参阅官方SCALE 文档。