trigger status for all peers on ws connect
This commit is contained in:
parent
2c61fcc111
commit
0cc3a4523e
2 changed files with 9 additions and 3 deletions
|
@ -109,6 +109,12 @@ class User(db.Model):
|
||||||
def is_online(self):
|
def is_online(self):
|
||||||
return state.nodes and state.nodes.is_online(self.id)
|
return state.nodes and state.nodes.is_online(self.id)
|
||||||
|
|
||||||
|
def trigger_status(self):
|
||||||
|
trigger_event('status', {
|
||||||
|
'id': self.id,
|
||||||
|
'online': self.is_online()
|
||||||
|
})
|
||||||
|
|
||||||
def lists_json(self):
|
def lists_json(self):
|
||||||
self.library
|
self.library
|
||||||
return [l.json() for l in self.lists.order_by('index_')]
|
return [l.json() for l in self.lists.order_by('index_')]
|
||||||
|
|
|
@ -37,13 +37,13 @@ class Handler(WebSocketHandler):
|
||||||
if state.update:
|
if state.update:
|
||||||
trigger_event('updatestatus', state.tasks._status)
|
trigger_event('updatestatus', state.tasks._status)
|
||||||
else:
|
else:
|
||||||
|
from user.models import User
|
||||||
trigger_event('status', {
|
trigger_event('status', {
|
||||||
'id': settings.USER_ID,
|
'id': settings.USER_ID,
|
||||||
'online': state.online
|
'online': state.online
|
||||||
})
|
})
|
||||||
if state.nodes:
|
for u in User.query.filter(User.id!=settings.USER_ID).filter_by(peered=True).all():
|
||||||
for node in state.nodes._nodes.values():
|
u.trigger_status()
|
||||||
node.trigger_status()
|
|
||||||
|
|
||||||
#websocket calls
|
#websocket calls
|
||||||
def on_message(self, message):
|
def on_message(self, message):
|
||||||
|
|
Loading…
Add table
Reference in a new issue