From b1b79d09f2633dddf23db310404abb1918418cf5 Mon Sep 17 00:00:00 2001 From: bashmak Date: Fri, 14 Apr 2017 14:28:32 +0300 Subject: [PATCH 1/2] =?UTF-8?q?FIXBUG:=20=D0=BF=D0=B8=D1=82=D0=BE=D0=BD=20?= =?UTF-8?q?<=201.6=20=D0=BD=D0=B5=20=D0=BF=D0=BE=D0=B4=D0=B4=D0=B5=D1=80?= =?UTF-8?q?=D0=B6=D0=B8=D0=B2=D0=B0=D0=B5=D1=82=20=D1=80=D0=B0=D1=81=D0=BF?= =?UTF-8?q?=D0=B0=D0=BA=D0=BE=D0=B2=D0=BA=D1=83=20=D1=87=D0=B5=D1=80=D0=B5?= =?UTF-8?q?=D0=B7=20*?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- agent/mod_mikrotik.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agent/mod_mikrotik.py b/agent/mod_mikrotik.py index a5e969f..5a28925 100644 --- a/agent/mod_mikrotik.py +++ b/agent/mod_mikrotik.py @@ -241,7 +241,7 @@ class QueueManager(TransmitterManager, metaclass=ABCMeta): def remove_range(self, q_ids): names = ['%d' % usr for usr in q_ids] - return self._exec_cmd(['/queue/simple/remove', *names]) + return self._exec_cmd(['/queue/simple/remove'] + names) def update(self, user): assert isinstance(user, AbonStruct) From a2fdb91e19266070974cd4e18e7a4115aac25f8c Mon Sep 17 00:00:00 2001 From: bashmak Date: Fri, 14 Apr 2017 15:41:25 +0300 Subject: [PATCH 2/2] =?UTF-8?q?=D0=9E=D0=B1=D1=80=D0=B0=D0=B1=D0=B0=D1=82?= =?UTF-8?q?=D1=8B=D0=B2=D0=B0=D0=B5=D0=BC=20=D1=82=D0=BE=D0=BB=D1=8C=D0=BA?= =?UTF-8?q?=D0=BE=20=D1=81=D1=82=D0=B0=D1=82=D0=B8=D0=BA=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cron.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/cron.py b/cron.py index 3e16d91..e2a2230 100755 --- a/cron.py +++ b/cron.py @@ -9,7 +9,7 @@ from agent import Transmitter, NasNetworkError, NasFailedResult def main(): - tm = Transmitter() + tm = None users = Abon.objects.all() for user in users: @@ -32,12 +32,13 @@ def main(): # а если нет ip то и синхронизировать абонента без ip нельзя continue - # ищем абонента в списке инфы из nas - tm.update_user(ab) + # обновляем абонента если он статический. Иначе его обновит dhcp + if user.opt82 is None: + if tm is None: + tm = Transmitter() + tm.update_user(ab) - except NasNetworkError as er: - print("Error:", er) - except NasFailedResult as er: + except (NasNetworkError, NasFailedResult) as er: print("Error:", er) except LogicError as er: print("Notice:", er)