{
	"triggers": [
		{
			"uid": "core.ItemCommandTrigger",
			"label": "an item receives a command",
			"description": "This triggers the rule if an item receives a command.",
			"configDescriptions": [
				{
					"name": "itemName",
					"type": "TEXT",
					"context": "item",
					"label": "Item",
					"description": "the name of the item",
					"required": true
				},
				{
					"name": "command",
					"type": "TEXT",
					"label": "Command",
					"description": "The received command. For anything other than exact matches, add a rule condition.",
					"required": false,
					"limitToOptions": false,
					"options": [
						{
							"label": "ON",
							"value": "ON"
						},
						{
							"label": "OFF",
							"value": "OFF"
						},
						{
							"label": "OPEN",
							"value": "OPEN"
						},
						{
							"label": "CLOSED",
							"value": "CLOSED"
						},
						{
							"label": "UP",
							"value": "UP"
						},
						{
							"label": "DOWN",
							"value": "DOWN"
						}
					]
				}
			],
			"outputs": [
				{
					"name": "command",
					"type": "command",
					"description": "the received command",
					"label": "Command",
					"tags": [
						"command"
					]
				},
				{
					"name": "event",
					"type": "org.openhab.core.events.Event",
					"label": "Event",
					"description": "The event which was sent.",
					"reference": "event"
				}
			]
		},
		{
			"uid": "core.ItemStateUpdateTrigger",
			"label": "an item state is updated",
			"description": "This triggers the rule if an item state is updated (even if it does not change).",
			"configDescriptions": [
				{
					"name": "itemName",
					"type": "TEXT",
					"context": "item",
					"label": "Item",
					"description": "the name of the item",
					"required": true
				},
				{
					"name": "state",
					"type": "TEXT",
					"label": "State",
					"description": "The state of the item. For anything other than exact matches, add a rule condition.",
					"required": false,
					"limitToOptions": false,
					"options": [
						{
							"label": "ON",
							"value": "ON"
						},
						{
							"label": "OFF",
							"value": "OFF"
						},
						{
							"label": "OPEN",
							"value": "OPEN"
						},
						{
							"label": "CLOSED",
							"value": "CLOSED"
						},
						{
							"label": "UP",
							"value": "UP"
						},
						{
							"label": "DOWN",
							"value": "DOWN"
						}
					]
				}
			],
			"outputs": [
				{
					"name": "state",
					"type": "state",
					"description": "the item state",
					"label": "State",
					"tags": [
						"state"
					]
				},
				{
					"name": "event",
					"type": "org.openhab.core.events.Event",
					"label": "Event",
					"description": "The event which was sent.",
					"reference": "event"
				}
			]
		},
		{
			"uid": "core.ItemStateChangeTrigger",
			"label": "an item state changes",
			"description": "This triggers the rule if an item state has changed.",
			"configDescriptions": [
				{
					"name": "itemName",
					"type": "TEXT",
					"context": "item",
					"label": "Item",
					"description": "the name of the item",
					"required": true
				},
				{
					"name": "previousState",
					"type": "TEXT",
					"label": "Previous State",
					"description": "The required previous state of the item. For anything other than exact matches, add a rule condition.",
					"required": false,
					"limitToOptions": false,
					"options": [
						{
							"label": "ON",
							"value": "ON"
						},
						{
							"label": "OFF",
							"value": "OFF"
						},
						{
							"label": "OPEN",
							"value": "OPEN"
						},
						{
							"label": "CLOSED",
							"value": "CLOSED"
						},
						{
							"label": "UP",
							"value": "UP"
						},
						{
							"label": "DOWN",
							"value": "DOWN"
						}
					]
				},
				{
					"name": "state",
					"type": "TEXT",
					"label": "State",
					"description": "The state of the item. For anything other than exact matches, add a rule condition.",
					"required": false,
					"limitToOptions": false,
					"options": [
						{
							"label": "ON",
							"value": "ON"
						},
						{
							"label": "OFF",
							"value": "OFF"
						},
						{
							"label": "OPEN",
							"value": "OPEN"
						},
						{
							"label": "CLOSED",
							"value": "CLOSED"
						},
						{
							"label": "UP",
							"value": "UP"
						},
						{
							"label": "DOWN",
							"value": "DOWN"
						}
					]
				}
			],
			"outputs": [
				{
					"name": "newState",
					"type": "state",
					"description": "the new item state",
					"label": "New State",
					"tags": [
						"state"
					]
				},
				{
					"name": "oldState",
					"type": "state",
					"description": "the old item state",
					"label": "Old State"
				},
				{
					"name": "event",
					"type": "org.openhab.core.events.Event",
					"label": "Event",
					"description": "The event which was sent.",
					"reference": "event"
				}
			]
		},
		{
			"uid": "core.GroupCommandTrigger",
			"label": "a member of an item group receives a command",
			"description": "This triggers the rule if a member of an item group receives a command.",
			"configDescriptions": [
				{
					"name": "groupName",
					"type": "TEXT",
					"context": "item",
					"label": "Group",
					"description": "the name of the item group",
					"required": true
				},
				{
					"name": "command",
					"type": "TEXT",
					"label": "Command",
					"description": "The received command. For anything other than exact matches, add a rule condition.",
					"required": false,
					"limitToOptions": false,
					"options": [
						{
							"label": "ON",
							"value": "ON"
						},
						{
							"label": "OFF",
							"value": "OFF"
						},
						{
							"label": "OPEN",
							"value": "OPEN"
						},
						{
							"label": "CLOSED",
							"value": "CLOSED"
						},
						{
							"label": "UP",
							"value": "UP"
						},
						{
							"label": "DOWN",
							"value": "DOWN"
						}
					]
				}
			],
			"outputs": [
				{
					"name": "triggeringGroup",
					"type": "org.openhab.core.items.Item",
					"description": "the group that the item belongs to",
					"label": "Triggering Group",
					"tags": [
						"item"
					]
				},
				{
					"name": "triggeringItem",
					"type": "org.openhab.core.items.Item",
					"description": "the member of the group that received the command",
					"label": "Triggering Item",
					"tags": [
						"item"
					]
				},
				{
					"name": "command",
					"type": "command",
					"description": "the received command",
					"label": "Command",
					"tags": [
						"command"
					]
				},
				{
					"name": "event",
					"type": "org.openhab.core.events.Event",
					"label": "Event",
					"description": "The event which was sent.",
					"reference": "event"
				}
			]
		},
		{
			"uid": "core.GroupStateUpdateTrigger",
			"label": "the state of a member of an item group is updated",
			"description": "This triggers the rule if the state of a member of an item group is updated (even if it does not change).",
			"configDescriptions": [
				{
					"name": "groupName",
					"type": "TEXT",
					"context": "item",
					"label": "Group",
					"description": "the name of the item group",
					"required": true
				},
				{
					"name": "state",
					"type": "TEXT",
					"label": "State",
					"description": "The state of the item. For anything other than exact matches, add a rule condition.",
					"required": false,
					"limitToOptions": false,
					"options": [
						{
							"label": "ON",
							"value": "ON"
						},
						{
							"label": "OFF",
							"value": "OFF"
						},
						{
							"label": "OPEN",
							"value": "OPEN"
						},
						{
							"label": "CLOSED",
							"value": "CLOSED"
						},
						{
							"label": "UP",
							"value": "UP"
						},
						{
							"label": "DOWN",
							"value": "DOWN"
						}
					]
				}
			],
			"outputs": [
				{
					"name": "triggeringGroup",
					"type": "org.openhab.core.items.Item",
					"description": "the group that the item belongs to",
					"label": "Triggering Group",
					"tags": [
						"item"
					]
				},
				{
					"name": "triggeringItem",
					"type": "org.openhab.core.items.Item",
					"description": "the member of the group that updated its state",
					"label": "Triggering Item",
					"tags": [
						"item"
					]
				},
				{
					"name": "state",
					"type": "state",
					"description": "the item state",
					"label": "State",
					"tags": [
						"state"
					]
				},
				{
					"name": "event",
					"type": "org.openhab.core.events.Event",
					"label": "Event",
					"description": "The event which was sent.",
					"reference": "event"
				}
			]
		},
		{
			"uid": "core.GroupStateChangeTrigger",
			"label": "the state of a member of an item group changes",
			"description": "This triggers the rule if the state of a member of an item group has changed.",
			"configDescriptions": [
				{
					"name": "groupName",
					"type": "TEXT",
					"context": "item",
					"label": "Group",
					"description": "the name of the item group",
					"required": true
				},
				{
					"name": "previousState",
					"type": "TEXT",
					"label": "Previous State",
					"description": "The required previous state of the item. For anything other than exact matches, add a rule condition.",
					"required": false,
					"limitToOptions": false,
					"options": [
						{
							"label": "ON",
							"value": "ON"
						},
						{
							"label": "OFF",
							"value": "OFF"
						},
						{
							"label": "OPEN",
							"value": "OPEN"
						},
						{
							"label": "CLOSED",
							"value": "CLOSED"
						},
						{
							"label": "UP",
							"value": "UP"
						},
						{
							"label": "DOWN",
							"value": "DOWN"
						}
					]
				},
				{
					"name": "state",
					"type": "TEXT",
					"label": "State",
					"description": "The state of the item. For anything other than exact matches, add a rule condition.",
					"required": false,
					"limitToOptions": false,
					"options": [
						{
							"label": "ON",
							"value": "ON"
						},
						{
							"label": "OFF",
							"value": "OFF"
						},
						{
							"label": "OPEN",
							"value": "OPEN"
						},
						{
							"label": "CLOSED",
							"value": "CLOSED"
						},
						{
							"label": "UP",
							"value": "UP"
						},
						{
							"label": "DOWN",
							"value": "DOWN"
						}
					]
				}
			],
			"outputs": [
				{
					"name": "triggeringItem",
					"type": "org.openhab.core.items.Item",
					"description": "the member of the group that changed its state",
					"label": "Triggering Item",
					"tags": [
						"item"
					]
				},
				{
					"name": "newState",
					"type": "state",
					"description": "the new item state",
					"label": "New State",
					"tags": [
						"state"
					]
				},
				{
					"name": "oldState",
					"type": "state",
					"description": "the old item state",
					"label": "Old State"
				},
				{
					"name": "event",
					"type": "org.openhab.core.events.Event",
					"label": "Event",
					"description": "The event which was sent.",
					"reference": "event"
				}
			]
		}
	]
}
