5
5
6
6
from zigpy .types .named import EUI64 , NWK
7
7
8
+ from zha .const import EventTypes
8
9
from zha .model import BaseEvent , BaseModel
10
+ from zha .websocket .const import ControllerEvents , DeviceEvents
9
11
from zha .zigbee .model import DeviceInfo , ExtendedDeviceInfo , GroupInfo
10
12
11
13
@@ -41,26 +43,26 @@ class DeviceJoinedDeviceInfo(BaseModel):
41
43
class ConnectionLostEvent (BaseEvent ):
42
44
"""Event to signal that the connection to the radio has been lost."""
43
45
44
- event_type : Literal ["zha_gateway_message" ] = "zha_gateway_message"
45
- event : Literal ["connection_lost" ] = "connection_lost"
46
+ event_type : Literal [EventTypes . CONTROLLER_EVENT ] = EventTypes . CONTROLLER_EVENT
47
+ event : Literal [ControllerEvents . CONNECTION_LOST ] = ControllerEvents . CONNECTION_LOST
46
48
exception : Exception | None = None
47
49
48
50
49
51
class DeviceJoinedEvent (BaseEvent ):
50
52
"""Event to signal that a device has joined the network."""
51
53
52
54
device_info : DeviceJoinedDeviceInfo
53
- event_type : Literal ["zha_gateway_message" ] = "zha_gateway_message"
54
- event : Literal ["device_joined" ] = "device_joined"
55
+ event_type : Literal [EventTypes . CONTROLLER_EVENT ] = EventTypes . CONTROLLER_EVENT
56
+ event : Literal [ControllerEvents . DEVICE_JOINED ] = ControllerEvents . DEVICE_JOINED
55
57
56
58
57
59
class DeviceLeftEvent (BaseEvent ):
58
60
"""Event to signal that a device has left the network."""
59
61
60
62
ieee : EUI64
61
63
nwk : NWK
62
- event_type : Literal ["zha_gateway_message" ] = "zha_gateway_message"
63
- event : Literal ["device_left" ] = "device_left"
64
+ event_type : Literal [EventTypes . CONTROLLER_EVENT ] = EventTypes . CONTROLLER_EVENT
65
+ event : Literal [ControllerEvents . DEVICE_LEFT ] = ControllerEvents . DEVICE_LEFT
64
66
65
67
66
68
class RawDeviceInitializedDeviceInfo (DeviceJoinedDeviceInfo ):
@@ -75,70 +77,78 @@ class RawDeviceInitializedEvent(BaseEvent):
75
77
"""Event to signal that a device has been initialized without quirks loaded."""
76
78
77
79
device_info : RawDeviceInitializedDeviceInfo
78
- event_type : Literal ["zha_gateway_message" ] = "zha_gateway_message"
79
- event : Literal ["raw_device_initialized" ] = "raw_device_initialized"
80
+ event_type : Literal [EventTypes .CONTROLLER_EVENT ] = EventTypes .CONTROLLER_EVENT
81
+ event : Literal [ControllerEvents .RAW_DEVICE_INITIALIZED ] = (
82
+ ControllerEvents .RAW_DEVICE_INITIALIZED
83
+ )
80
84
81
85
82
86
class DeviceFullyInitializedEvent (BaseEvent ):
83
87
"""Event to signal that a device has been fully initialized."""
84
88
85
89
device_info : ExtendedDeviceInfoWithPairingStatus
86
90
new_join : bool = False
87
- event_type : Literal ["zha_gateway_message" ] = "zha_gateway_message"
88
- event : Literal ["device_fully_initialized" ] = "device_fully_initialized"
91
+ event_type : Literal [EventTypes .CONTROLLER_EVENT ] = EventTypes .CONTROLLER_EVENT
92
+ event : Literal [ControllerEvents .DEVICE_FULLY_INITIALIZED ] = (
93
+ ControllerEvents .DEVICE_FULLY_INITIALIZED
94
+ )
89
95
90
96
91
97
class GroupRemovedEvent (BaseEvent ):
92
98
"""Group removed event."""
93
99
94
- event_type : Literal ["zha_gateway_message" ] = "zha_gateway_message"
95
- event : Literal ["group_removed" ] = "group_removed"
100
+ event_type : Literal [EventTypes . CONTROLLER_EVENT ] = EventTypes . CONTROLLER_EVENT
101
+ event : Literal [ControllerEvents . GROUP_REMOVED ] = ControllerEvents . GROUP_REMOVED
96
102
group_info : GroupInfo
97
103
98
104
99
105
class GroupAddedEvent (BaseEvent ):
100
106
"""Group added event."""
101
107
102
- event_type : Literal ["zha_gateway_message" ] = "zha_gateway_message"
103
- event : Literal ["group_added" ] = "group_added"
108
+ event_type : Literal [EventTypes . CONTROLLER_EVENT ] = EventTypes . CONTROLLER_EVENT
109
+ event : Literal [ControllerEvents . GROUP_ADDED ] = ControllerEvents . GROUP_ADDED
104
110
group_info : GroupInfo
105
111
106
112
107
113
class GroupMemberAddedEvent (BaseEvent ):
108
114
"""Group member added event."""
109
115
110
- event_type : Literal ["zha_gateway_message" ] = "zha_gateway_message"
111
- event : Literal ["group_member_added" ] = "group_member_added"
116
+ event_type : Literal [EventTypes .CONTROLLER_EVENT ] = EventTypes .CONTROLLER_EVENT
117
+ event : Literal [ControllerEvents .GROUP_MEMBER_ADDED ] = (
118
+ ControllerEvents .GROUP_MEMBER_ADDED
119
+ )
112
120
group_info : GroupInfo
113
121
114
122
115
123
class GroupMemberRemovedEvent (BaseEvent ):
116
124
"""Group member removed event."""
117
125
118
- event_type : Literal ["zha_gateway_message" ] = "zha_gateway_message"
119
- event : Literal ["group_member_removed" ] = "group_member_removed"
126
+ event_type : Literal [EventTypes .CONTROLLER_EVENT ] = EventTypes .CONTROLLER_EVENT
127
+ event : Literal [ControllerEvents .GROUP_MEMBER_REMOVED ] = (
128
+ ControllerEvents .GROUP_MEMBER_REMOVED
129
+ )
120
130
group_info : GroupInfo
121
131
122
132
123
133
class DeviceRemovedEvent (BaseEvent ):
124
134
"""Event to signal that a device has been removed."""
125
135
126
136
device_info : ExtendedDeviceInfo
127
- event_type : Literal ["zha_gateway_message" ] = "zha_gateway_message"
128
- event : Literal ["device_removed" ] = "device_removed"
137
+ event_type : Literal [EventTypes . CONTROLLER_EVENT ] = EventTypes . CONTROLLER_EVENT
138
+ event : Literal [ControllerEvents . DEVICE_REMOVED ] = ControllerEvents . DEVICE_REMOVED
129
139
130
140
131
141
class DeviceOfflineEvent (BaseEvent ):
132
142
"""Device offline event."""
133
143
134
- event : Literal ["device_offline" ] = "device_offline"
135
- event_type : Literal ["device_event" ] = "device_event"
144
+ event : Literal [DeviceEvents . DEVICE_OFFLINE ] = DeviceEvents . DEVICE_OFFLINE
145
+ event_type : Literal [EventTypes . DEVICE_EVENT ] = EventTypes . DEVICE_EVENT
136
146
device_info : ExtendedDeviceInfo
137
147
138
148
139
149
class DeviceOnlineEvent (BaseEvent ):
140
150
"""Device online event."""
141
151
142
- event : Literal ["device_online" ] = "device_online"
143
- event_type : Literal ["device_event" ] = "device_event"
152
+ event : Literal [DeviceEvents . DEVICE_ONLINE ] = DeviceEvents . DEVICE_ONLINE
153
+ event_type : Literal [EventTypes . DEVICE_EVENT ] = EventTypes . DEVICE_EVENT
144
154
device_info : ExtendedDeviceInfo
0 commit comments