Add lag bar item.

This commit is contained in:
poljar (Damir Jelić) 2018-01-30 12:58:16 +01:00
parent bb5b90691e
commit a4d4e56919
3 changed files with 23 additions and 1 deletions

View file

@ -66,6 +66,24 @@ def matrix_bar_item_name(data, item, window, buffer, extra_info):
return ""
@utf8_decode
def matrix_bar_item_lag(data, item, window, buffer, extra_info):
# pylint: disable=unused-argument
for server in SERVERS.values():
if (buffer in server.buffers.values() or
buffer == server.server_buffer):
if server.lag >= 500:
lag = "{0:.3f}" if server.lag < 1000 else "{0:.0f}"
lag_string = "Lag: {lag}".format(
lag=lag.format(server.lag / 1000)
)
return lag_string
return ""
return ""
def init_bar_items():
W.bar_item_new("(extra)buffer_plugin", "matrix_bar_item_plugin", "")
W.bar_item_new("(extra)buffer_name", "matrix_bar_item_name", "")
W.bar_item_new("(extra)lag", "matrix_bar_item_lag", "")

View file

@ -60,6 +60,7 @@ class MatrixServer:
self.access_token = None # type: str
self.next_batch = None # type: str
self.transaction_id = 0 # type: int
self.lag = 0 # type: int
self.http_parser = HttpParser() # type: HttpParser
self.http_buffer = [] # type: List[bytes]