/
app.py
69 lines (46 loc) · 1.7 KB
/
app.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
from sinric import SinricPro
from credentials import appKey, deviceId, secretKey, speakerId, deviceIdArr
from sinric import SinricProUdp
def Events():
while True:
# Select as per your requirements
# REMOVE THE COMMENTS TO USE
# client.event_handler.raiseEvent(speakerId, 'setBands',data={'name': '','level': 0})
# client.event_handler.raiseEvent(speakerId, 'setMode',data={'mode': ''})
# client.event_handler.raiseEvent(speakerId, 'setLockState',data={'mute': True})
pass
event_callback = {
'Events': Events
}
def onPowerState(deviceId, state):
# Do Something
return True, state
def onSetBands(deviceId, name, level):
print(name, level)
# Do Somethign
return True, {'name': name, 'level': level}
def onAdjustBands(deviceId, name, level, direction):
# Do something with level
return True, {'name': name, 'level': level}
def onResetBands(deviceId, band1, band2, band3):
# Do something with reset
return True
def onSetMode(deviceId, mode):
# Do something with mode
return True, mode
def onSetMute(deviceId, mute):
# Muted : True, Not muted : False
return True, mute
callbacks = {
'powerState': onPowerState,
'setBands': onSetBands,
'setMode': onSetMode,
'adjustBands': onAdjustBands,
'resetBands': onResetBands,
'setMute': onSetMute
}
if __name__ == '__main__':
client = SinricPro(appKey, deviceIdArr, callbacks,
event_callbacks=event_callback, enable_log=False,restore_states=True,secretKey=secretKey)
udp_client = SinricProUdp(callbacks,deviceIdArr,enable_trace=False) # Set it to True to start logging request Offline Request/Response
client.handle_all(udp_client)