开发应用程序的最佳做法 > 资产建模 > 使用事件、警报和订阅
使用事件、警报和订阅
事件用于指示 ThingWorx 平台中条件的变化情况。可通过某个满足的条件、调用某项服务或调用 REST 来触发这些事件。ThingWorx 具有多种标准事件类型,这些类型的事件会根据特定条件触发,例如,当属性的值变化 (DataChange) 或开始使用事物 (ThingStart) 时即会触发。
警报是基于属性状态的标准事件类型。当属性值满足用户定义的特定条件时,系统即会自动触发此类事件。
触发包括警报在内的事件时,需进行订阅才能执行某些操作。订阅是指触发其订阅的事件时所执行的特殊服务。
事件需要预定义的数据形状。数据形状会存储与事件关联的数据,这些数据可通过订阅来访问。您可以向扩展中的实体添加订阅,以便在触发事件时执行自定义行为。
创建事件、警报和订阅的最佳做法
创建事件、警报和订阅时,可以使用以下最佳做法:
为事件、警报和订阅定义命名约定。请牢记以下几点:
在实体中使用标准命名法。例如:您可以在不同的实体类型中使用唯一的名称空间前缀,以避免出现冲突。
为实体提供有意义的名称。
尝试为所创建的每个实体提供适当的描述。
避免名称含混不清。
尽可能避免使用较长的实体名称。
有关详细信息,请参阅 的 命名实体部分。
在事物形状级别定义所有事件和订阅。
* 
建议您使用“事物形态”定义属性和服务。如果在事物模板上定义属性和服务,则很难将它们的定义移至事物形态。
为事物、事物模板或事物形态的每个属性分别定义警报。
确保事件和警报具有与其关联的订阅。由此可确保,每当触发事件或警报时,都会在应用程序中执行相关功能。这样会导致应用程序中出现数据流。
开发应用程序时,您可以通过计划程序订阅来执行自动备份。
测试订阅中定义的服务时,请检查应用程序日志以验证订阅是否按预期运行。
有关为订阅创建服务的最佳做法的信息,请参阅 服务