2026-01-21 11:26:03.101224 >>> [routes.py] issue_token 2026-01-21 11:26:03.102004 >>> Auth.token: client_id=Olivos 2026-01-21 11:26:03.626710 >>> Auth.token: ok 2026-01-21 11:26:03.666438 >>> [routes.py] issue_token 2026-01-21 11:26:03.666633 >>> Auth.token: client_id=Olivos 2026-01-21 11:26:04.129953 >>> Auth.token: ok 2026-01-21 11:26:04.150499 >>> [persons.py] list_persons 2026-01-21 11:26:04.150750 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005564, 'jti': 'd2fd17e1-c853-4bb6-8712-2d161242a75b', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005564, 'exp': 1769023564, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:26:04.283376 >>> [persons.py] lanzando hilo para lector: P1. ENTRADA PROPIETARIOS 2026-01-21 11:26:04.286513 >>> [persons.py] lanzando hilo para lector: P1. ENTRADA VISITAS 2026-01-21 11:26:04.289322 >>> [persons.py] lanzando hilo para lector: P1. SALIDA PROPIETARIOS 2026-01-21 11:26:04.291896 >>> [persons.py] lanzando hilo para lector: P1. SALIDA VISITAS 2026-01-21 11:26:04.294932 >>> [persons.py] lanzando hilo para lector: P2. ENTRADA PROPIETARIOS 2026-01-21 11:26:04.297159 >>> [persons.py] lanzando hilo para lector: P2. ENTRADA VISITAS 2026-01-21 11:26:04.299764 >>> [persons.py] lanzando hilo para lector: P2. SALIDA PROPIETARIOS 2026-01-21 11:26:04.302092 >>> [persons.py] lanzando hilo para lector: P2. SALIDA VISITAS 2026-01-21 11:26:04.303866 >>> [persons.py] lanzando hilo para lector: P3. ENTRADA PROPIETARIOS 2026-01-21 11:26:04.305534 >>> [persons.py] lanzando hilo para lector: P3. ENTRADA VISITAS 2026-01-21 11:26:04.307395 >>> [persons.py] lanzando hilo para lector: P3. SALIDA PROPIETARIOS 2026-01-21 11:26:04.309244 >>> [persons.py] lanzando hilo para lector: P3. SALIDA VISITAS 2026-01-21 11:26:04.309360 >>> [persons.py] hilos finalizados 2026-01-21 11:26:05.240972 >>> [persons.py] hilos finalizados 2026-01-21 11:26:05.241155 >>> [persons.py] hilos finalizados 2026-01-21 11:26:05.321306 >>> [persons.py] hilos finalizados 2026-01-21 11:26:05.321475 >>> [persons.py] hilos finalizados 2026-01-21 11:26:05.321526 >>> [persons.py] hilos finalizados 2026-01-21 11:26:05.321566 >>> [persons.py] hilos finalizados 2026-01-21 11:26:05.321605 >>> [persons.py] hilos finalizados 2026-01-21 11:26:05.321642 >>> [persons.py] hilos finalizados 2026-01-21 11:26:05.321678 >>> [persons.py] hilos finalizados 2026-01-21 11:26:05.321714 >>> [persons.py] hilos finalizados 2026-01-21 11:26:05.321772 >>> [persons.py] hilos finalizados 2026-01-21 11:26:05.321828 >>> [TIMING] Desde que se inician los hilos hasta la rspuesta final -> 1.043 s 2026-01-21 11:26:36.712251 >>> [routes.py] issue_token 2026-01-21 11:26:36.712417 >>> Auth.token: client_id=Olivos 2026-01-21 11:26:37.166170 >>> Auth.token: ok 2026-01-21 11:27:25.792934 >>> [routes.py] issue_token 2026-01-21 11:27:25.793109 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:26.249776 >>> Auth.token: ok 2026-01-21 11:27:27.782054 >>> [routes.py] issue_token 2026-01-21 11:27:27.782345 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:28.238580 >>> Auth.token: ok 2026-01-21 11:27:28.277918 >>> [routes.py] issue_token 2026-01-21 11:27:28.278077 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:28.731868 >>> Auth.token: ok 2026-01-21 11:27:28.749239 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005648, 'jti': '473b414e-a28a-4c59-b339-5dfdbfa65d2d', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005648, 'exp': 1769023648, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:27:32.995070 >>> [routes.py] issue_token 2026-01-21 11:27:32.995228 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:33.454543 >>> Auth.token: ok 2026-01-21 11:27:33.493588 >>> [routes.py] issue_token 2026-01-21 11:27:33.493761 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:33.950564 >>> Auth.token: ok 2026-01-21 11:27:33.968557 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005653, 'jti': 'd351165d-9035-48fd-b72c-1b163dcb6c09', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005653, 'exp': 1769023653, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:27:42.266576 >>> [routes.py] issue_token 2026-01-21 11:27:42.266758 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:42.727310 >>> Auth.token: ok 2026-01-21 11:27:42.774299 >>> [routes.py] issue_token 2026-01-21 11:27:42.774459 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:43.229763 >>> Auth.token: ok 2026-01-21 11:27:43.247576 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005663, 'jti': '8d66d80d-7a3f-4a98-80a6-069a02be1a73', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005663, 'exp': 1769023663, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:27:45.798608 >>> [routes.py] issue_token 2026-01-21 11:27:45.798903 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:46.254137 >>> Auth.token: ok 2026-01-21 11:27:46.301517 >>> [routes.py] issue_token 2026-01-21 11:27:46.301682 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:46.750985 >>> Auth.token: ok 2026-01-21 11:27:46.768914 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005666, 'jti': '62d9edf9-4f63-4721-90b9-c8511a993cfb', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005666, 'exp': 1769023666, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:27:49.713370 >>> [routes.py] issue_token 2026-01-21 11:27:49.713536 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:50.167172 >>> Auth.token: ok 2026-01-21 11:27:50.216334 >>> [routes.py] issue_token 2026-01-21 11:27:50.216496 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:50.671444 >>> Auth.token: ok 2026-01-21 11:27:50.689911 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005670, 'jti': '0f12b3e7-fbb9-4eeb-bd58-2fd0900bd5a3', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005670, 'exp': 1769023670, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:27:53.369154 >>> [routes.py] issue_token 2026-01-21 11:27:53.369315 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:53.835791 >>> Auth.token: ok 2026-01-21 11:27:53.881056 >>> [routes.py] issue_token 2026-01-21 11:27:53.881228 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:54.338224 >>> Auth.token: ok 2026-01-21 11:27:54.356773 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005674, 'jti': '3350d5b2-fef4-4cb3-a9bc-7f97c375ec88', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005674, 'exp': 1769023674, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:27:56.539220 >>> [routes.py] issue_token 2026-01-21 11:27:56.539400 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:57.041855 >>> Auth.token: ok 2026-01-21 11:27:57.175462 >>> [routes.py] issue_token 2026-01-21 11:27:57.175629 >>> Auth.token: client_id=Olivos 2026-01-21 11:27:57.671990 >>> Auth.token: ok 2026-01-21 11:27:57.702489 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005677, 'jti': 'f1872e76-19ef-47fc-ab48-c3d54ff1a6e1', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005677, 'exp': 1769023677, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:28:00.334207 >>> [routes.py] issue_token 2026-01-21 11:28:00.334371 >>> Auth.token: client_id=Olivos 2026-01-21 11:28:00.781892 >>> Auth.token: ok 2026-01-21 11:28:00.820179 >>> [routes.py] issue_token 2026-01-21 11:28:00.820342 >>> Auth.token: client_id=Olivos 2026-01-21 11:28:01.269491 >>> Auth.token: ok 2026-01-21 11:28:01.288883 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005681, 'jti': '0868801f-4948-47bb-9e86-bbcc007af411', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005681, 'exp': 1769023681, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:28:04.486781 >>> [routes.py] issue_token 2026-01-21 11:28:04.486947 >>> Auth.token: client_id=Olivos 2026-01-21 11:28:04.990850 >>> Auth.token: ok 2026-01-21 11:28:05.029745 >>> [routes.py] issue_token 2026-01-21 11:28:05.029912 >>> Auth.token: client_id=Olivos 2026-01-21 11:28:05.478815 >>> Auth.token: ok 2026-01-21 11:28:05.496295 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005685, 'jti': 'bdcb37fe-d343-4e10-8a32-7c4f5e39c3ed', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005685, 'exp': 1769023685, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:28:08.150245 >>> [routes.py] issue_token 2026-01-21 11:28:08.150456 >>> Auth.token: client_id=Olivos 2026-01-21 11:28:08.627599 >>> Auth.token: ok 2026-01-21 11:28:08.665392 >>> [routes.py] issue_token 2026-01-21 11:28:08.665556 >>> Auth.token: client_id=Olivos 2026-01-21 11:28:09.138656 >>> Auth.token: ok 2026-01-21 11:28:09.156473 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005689, 'jti': '5f1317fb-80ff-4c09-94a7-5122a0993813', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005689, 'exp': 1769023689, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:28:15.575397 >>> [routes.py] issue_token 2026-01-21 11:28:15.575647 >>> Auth.token: client_id=Olivos 2026-01-21 11:28:16.025250 >>> Auth.token: ok 2026-01-21 11:29:38.028604 >>> [routes.py] issue_token 2026-01-21 11:29:38.028828 >>> Auth.token: client_id=Olivos 2026-01-21 11:29:38.479752 >>> Auth.token: ok 2026-01-21 11:29:38.524374 >>> [routes.py] issue_token 2026-01-21 11:29:38.524529 >>> Auth.token: client_id=Olivos 2026-01-21 11:29:38.975057 >>> Auth.token: ok 2026-01-21 11:29:38.993709 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005778, 'jti': '0858b440-c1c5-4a56-b63b-e45bdf68c80e', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005778, 'exp': 1769023778, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:29:39.146901 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005778, 'jti': '0858b440-c1c5-4a56-b63b-e45bdf68c80e', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005778, 'exp': 1769023778, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:29:41.628235 >>> [upload_face_via_fdlib] url=http://olivosportal1.dyndns.org:5020/ISAPI/Intelligent/FDLib/FaceDataRecord?format=json 2026-01-21 11:29:41.628420 >>> [upload_face_via_fdlib] status=200 2026-01-21 11:29:41.629012 >>> [upload_face_via_fdlib] status={ "statusCode": 1, "statusString": "OK", "subStatusCode": "ok", "FPID": "0000000023" } 2026-01-21 11:29:43.895923 >>> [upload_face_via_fdlib] url=http://olivosportal1.dyndns.org:5021/ISAPI/Intelligent/FDLib/FaceDataRecord?format=json 2026-01-21 11:29:43.896122 >>> [upload_face_via_fdlib] status=200 2026-01-21 11:29:43.896370 >>> [upload_face_via_fdlib] status={ "statusCode": 1, "statusString": "OK", "subStatusCode": "ok", "FPID": "0000000023" } 2026-01-21 11:29:46.483888 >>> [upload_face_via_fdlib] url=http://olivosportal1.dyndns.org:5022/ISAPI/Intelligent/FDLib/FaceDataRecord?format=json 2026-01-21 11:29:46.484086 >>> [upload_face_via_fdlib] status=200 2026-01-21 11:29:46.484330 >>> [upload_face_via_fdlib] status={ "statusCode": 1, "statusString": "OK", "subStatusCode": "ok", "FPID": "0000000023" } 2026-01-21 11:29:48.762165 >>> [upload_face_via_fdlib] url=http://olivosportal1.dyndns.org:5023/ISAPI/Intelligent/FDLib/FaceDataRecord?format=json 2026-01-21 11:29:48.762350 >>> [upload_face_via_fdlib] status=200 2026-01-21 11:29:48.762587 >>> [upload_face_via_fdlib] status={ "statusCode": 1, "statusString": "OK", "subStatusCode": "ok", "FPID": "0000000023" } 2026-01-21 11:29:51.532635 >>> [upload_face_via_fdlib] url=http://olivosportal2.dyndns.org:5020/ISAPI/Intelligent/FDLib/FaceDataRecord?format=json 2026-01-21 11:29:51.532841 >>> [upload_face_via_fdlib] status=200 2026-01-21 11:29:51.533147 >>> [upload_face_via_fdlib] status={ "statusCode": 1, "statusString": "OK", "subStatusCode": "ok", "FPID": "0000000023" } 2026-01-21 11:29:53.820647 >>> [upload_face_via_fdlib] url=http://olivosportal2.dyndns.org:5021/ISAPI/Intelligent/FDLib/FaceDataRecord?format=json 2026-01-21 11:29:53.820852 >>> [upload_face_via_fdlib] status=200 2026-01-21 11:29:53.821111 >>> [upload_face_via_fdlib] status={ "statusCode": 1, "statusString": "OK", "subStatusCode": "ok", "FPID": "0000000023" } 2026-01-21 11:29:56.169766 >>> [upload_face_via_fdlib] url=http://olivosportal2.dyndns.org:5022/ISAPI/Intelligent/FDLib/FaceDataRecord?format=json 2026-01-21 11:29:56.169969 >>> [upload_face_via_fdlib] status=200 2026-01-21 11:29:56.170243 >>> [upload_face_via_fdlib] status={ "statusCode": 1, "statusString": "OK", "subStatusCode": "ok", "FPID": "0000000023" } 2026-01-21 11:29:58.485464 >>> [upload_face_via_fdlib] url=http://olivosportal2.dyndns.org:5023/ISAPI/Intelligent/FDLib/FaceDataRecord?format=json 2026-01-21 11:29:58.485654 >>> [upload_face_via_fdlib] status=200 2026-01-21 11:29:58.485991 >>> [upload_face_via_fdlib] status={ "statusCode": 1, "statusString": "OK", "subStatusCode": "ok", "FPID": "0000000023" } 2026-01-21 11:30:01.000603 >>> [upload_face_via_fdlib] url=http://olivosportal3.dyndns.org:5020/ISAPI/Intelligent/FDLib/FaceDataRecord?format=json 2026-01-21 11:30:01.000805 >>> [upload_face_via_fdlib] status=200 2026-01-21 11:30:01.001055 >>> [upload_face_via_fdlib] status={ "statusCode": 1, "statusString": "OK", "subStatusCode": "ok", "FPID": "0000000023" } 2026-01-21 11:30:03.302090 >>> [upload_face_via_fdlib] url=http://olivosportal3.dyndns.org:5021/ISAPI/Intelligent/FDLib/FaceDataRecord?format=json 2026-01-21 11:30:03.302300 >>> [upload_face_via_fdlib] status=200 2026-01-21 11:30:03.302549 >>> [upload_face_via_fdlib] status={ "statusCode": 1, "statusString": "OK", "subStatusCode": "ok", "FPID": "0000000023" } 2026-01-21 11:30:05.616082 >>> [upload_face_via_fdlib] url=http://olivosportal3.dyndns.org:5022/ISAPI/Intelligent/FDLib/FaceDataRecord?format=json 2026-01-21 11:30:05.616276 >>> [upload_face_via_fdlib] status=200 2026-01-21 11:30:05.616520 >>> [upload_face_via_fdlib] status={ "statusCode": 1, "statusString": "OK", "subStatusCode": "ok", "FPID": "0000000023" } 2026-01-21 11:30:08.065754 >>> [upload_face_via_fdlib] url=http://olivosportal3.dyndns.org:5023/ISAPI/Intelligent/FDLib/FaceDataRecord?format=json 2026-01-21 11:30:08.065946 >>> [upload_face_via_fdlib] status=200 2026-01-21 11:30:08.066186 >>> [upload_face_via_fdlib] status={ "statusCode": 1, "statusString": "OK", "subStatusCode": "ok", "FPID": "0000000023" } 2026-01-21 11:30:08.086621 >>> [persons.py] modify_person 2026-01-21 11:30:08.086862 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005778, 'jti': '0858b440-c1c5-4a56-b63b-e45bdf68c80e', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005778, 'exp': 1769023778, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:30:08.086999 >>> [persons.py] body {'valid_to': '2035-01-01T23:59:59', 'gender': 'male', 'maxOpenDoorTime': 0, 'userType': 'normal', 'valid_from': '2025-01-01T00:00:00', 'readers': ['olivosportal3.dyndns.org:5023', 'olivosportal3.dyndns.org:5022', 'olivosportal3.dyndns.org:5021', 'olivosportal3.dyndns.org:5020', 'olivosportal2.dyndns.org:5023', 'olivosportal2.dyndns.org:5022', 'olivosportal2.dyndns.org:5021', 'olivosportal2.dyndns.org:5020', 'olivosportal1.dyndns.org:5023', 'olivosportal1.dyndns.org:5022', 'olivosportal1.dyndns.org:5021', 'olivosportal1.dyndns.org:5020'], 'name': 'iparkings test'} 2026-01-21 11:30:09.111918 >>> Usuario encontrado:{'UserInfoSearch': {'searchID': '1', 'responseStatusStrg': 'OK', 'numOfMatches': 1, 'totalMatches': 1, 'UserInfo': [{'employeeNo': '0000000023', 'name': 'iparkings test', 'userType': 'normal', 'sortByNamePosition': 0, 'sortByNameFlag': 'I', 'closeDelayEnabled': False, 'Valid': {'enable': True, 'beginTime': '2025-01-01T00:00:00', 'endTime': '2035-01-01T23:59:59', 'timeType': 'local'}, 'belongGroup': '', 'password': '', 'doorRight': '1', 'RightPlan': [{'doorNo': 1, 'planTemplateNo': '1'}], 'maxOpenDoorTime': 0, 'openDoorTime': 0, 'roomNumber': 1, 'floorNumber': 1, 'localUIRight': False, 'gender': 'male', 'numOfCard': 0, 'numOfFP': 0, 'numOfFace': 1, 'PersonInfoExtends': [{'value': ''}], 'faceURL': 'http://olivosportal1.dyndns.org:5020/LOCALS/pic/enrlFace/0/0000000002.jpg@WEB000000000003'}]}} 2026-01-21 11:30:10.936286 >>> Usuario encontrado:{'UserInfoSearch': {'searchID': '1', 'responseStatusStrg': 'OK', 'numOfMatches': 1, 'totalMatches': 1, 'UserInfo': [{'employeeNo': '0000000023', 'name': 'iParkings test', 'userType': 'normal', 'sortByNamePosition': 0, 'sortByNameFlag': '#', 'closeDelayEnabled': False, 'Valid': {'enable': True, 'beginTime': '2025-01-01T00:00:00', 'endTime': '2035-01-01T23:59:59', 'timeType': 'local'}, 'belongGroup': '', 'password': '', 'doorRight': '1', 'RightPlan': [{'doorNo': 1, 'planTemplateNo': '1'}], 'maxOpenDoorTime': 0, 'openDoorTime': 0, 'roomNumber': 1, 'floorNumber': 1, 'localUIRight': False, 'gender': 'male', 'numOfCard': 1, 'numOfFP': 0, 'numOfFace': 1, 'PersonInfoExtends': [{'value': ''}], 'faceURL': 'http://olivosportal1.dyndns.org:5021/LOCALS/pic/enrlFace/0/0000000002.jpg@WEB000000000004'}]}} 2026-01-21 11:30:12.687661 >>> Usuario encontrado:{'UserInfoSearch': {'searchID': '1', 'responseStatusStrg': 'OK', 'numOfMatches': 1, 'totalMatches': 1, 'UserInfo': [{'employeeNo': '0000000023', 'name': 'iParkings test', 'userType': 'normal', 'onlyVerify': False, 'closeDelayEnabled': False, 'Valid': {'enable': True, 'beginTime': '2025-01-01T00:00:00', 'endTime': '2035-01-01T23:59:59', 'timeType': 'local'}, 'belongGroup': '', 'password': '', 'doorRight': '1', 'RightPlan': [{'doorNo': 1, 'planTemplateNo': '1'}], 'maxOpenDoorTime': 0, 'openDoorTime': 0, 'roomNumber': 1, 'floorNumber': 1, 'localUIRight': False, 'gender': 'male', 'numOfCard': 1, 'numOfFP': 0, 'numOfFace': 1, 'PersonInfoExtends': [{'value': ''}]}]}} 2026-01-21 11:30:14.518168 >>> Usuario encontrado:{'UserInfoSearch': {'searchID': '1', 'responseStatusStrg': 'OK', 'numOfMatches': 1, 'totalMatches': 1, 'UserInfo': [{'employeeNo': '0000000023', 'name': 'iParkings test', 'userType': 'normal', 'sortByNamePosition': 0, 'sortByNameFlag': '#', 'closeDelayEnabled': False, 'Valid': {'enable': True, 'beginTime': '2025-01-01T00:00:00', 'endTime': '2035-01-01T23:59:59', 'timeType': 'local'}, 'belongGroup': '', 'password': '', 'doorRight': '1', 'RightPlan': [{'doorNo': 1, 'planTemplateNo': '1'}], 'maxOpenDoorTime': 0, 'openDoorTime': 0, 'roomNumber': 1, 'floorNumber': 1, 'localUIRight': False, 'gender': 'male', 'numOfCard': 1, 'numOfFP': 0, 'numOfFace': 1, 'PersonInfoExtends': [{'value': ''}], 'faceURL': 'http://olivosportal1.dyndns.org:5023/LOCALS/pic/enrlFace/0/0000000002.jpg@WEB000000000004'}]}} 2026-01-21 11:30:16.286806 >>> Usuario encontrado:{'UserInfoSearch': {'searchID': '1', 'responseStatusStrg': 'OK', 'numOfMatches': 1, 'totalMatches': 1, 'UserInfo': [{'employeeNo': '0000000023', 'name': 'iParkings test', 'userType': 'normal', 'onlyVerify': False, 'closeDelayEnabled': False, 'Valid': {'enable': True, 'beginTime': '2025-01-01T00:00:00', 'endTime': '2035-01-01T23:59:59', 'timeType': 'local'}, 'belongGroup': '', 'password': '', 'doorRight': '1', 'RightPlan': [{'doorNo': 1, 'planTemplateNo': '1'}], 'maxOpenDoorTime': 0, 'openDoorTime': 0, 'roomNumber': 1, 'floorNumber': 1, 'localUIRight': False, 'gender': 'male', 'numOfCard': 1, 'numOfFP': 0, 'numOfFace': 1, 'PersonInfoExtends': [{'value': ''}]}]}} 2026-01-21 11:30:18.053816 >>> Usuario encontrado:{'UserInfoSearch': {'searchID': '1', 'responseStatusStrg': 'OK', 'numOfMatches': 1, 'totalMatches': 1, 'UserInfo': [{'employeeNo': '0000000023', 'name': 'iParkings test', 'userType': 'normal', 'sortByNamePosition': 0, 'sortByNameFlag': '#', 'closeDelayEnabled': False, 'Valid': {'enable': True, 'beginTime': '2025-01-01T00:00:00', 'endTime': '2035-01-01T23:59:59', 'timeType': 'local'}, 'belongGroup': '', 'password': '', 'doorRight': '1', 'RightPlan': [{'doorNo': 1, 'planTemplateNo': '1'}], 'maxOpenDoorTime': 0, 'openDoorTime': 0, 'roomNumber': 1, 'floorNumber': 1, 'localUIRight': False, 'gender': 'male', 'numOfCard': 1, 'numOfFP': 0, 'numOfFace': 1, 'PersonInfoExtends': [{'value': ''}], 'faceURL': 'http://olivosportal2.dyndns.org:5021/LOCALS/pic/enrlFace/0/0000000002.jpg@WEB000000000005'}]}} 2026-01-21 11:30:19.850079 >>> Usuario encontrado:{'UserInfoSearch': {'searchID': '1', 'responseStatusStrg': 'OK', 'numOfMatches': 1, 'totalMatches': 1, 'UserInfo': [{'employeeNo': '0000000023', 'name': 'iParkings test', 'userType': 'normal', 'sortByNamePosition': 0, 'sortByNameFlag': 'I', 'closeDelayEnabled': False, 'Valid': {'enable': True, 'beginTime': '2025-01-01T00:00:00', 'endTime': '2035-01-01T23:59:59', 'timeType': 'local'}, 'belongGroup': '', 'password': '', 'doorRight': '1', 'RightPlan': [{'doorNo': 1, 'planTemplateNo': '1'}], 'maxOpenDoorTime': 0, 'openDoorTime': 0, 'roomNumber': 1, 'floorNumber': 1, 'localUIRight': False, 'gender': 'male', 'numOfCard': 1, 'numOfFP': 0, 'numOfFace': 1, 'PersonInfoExtends': [{'value': ''}], 'faceURL': 'http://olivosportal2.dyndns.org:5022/LOCALS/pic/enrlFace/0/0000000001.jpg@WEB000000000004'}]}} 2026-01-21 11:30:21.601348 >>> Usuario encontrado:{'UserInfoSearch': {'searchID': '1', 'responseStatusStrg': 'OK', 'numOfMatches': 1, 'totalMatches': 1, 'UserInfo': [{'employeeNo': '0000000023', 'name': 'iParkings test', 'userType': 'normal', 'sortByNamePosition': 0, 'sortByNameFlag': 'I', 'closeDelayEnabled': False, 'Valid': {'enable': True, 'beginTime': '2025-01-01T00:00:00', 'endTime': '2035-01-01T23:59:59', 'timeType': 'local'}, 'belongGroup': '', 'password': '', 'doorRight': '1', 'RightPlan': [{'doorNo': 1, 'planTemplateNo': '1'}], 'maxOpenDoorTime': 0, 'openDoorTime': 0, 'roomNumber': 1, 'floorNumber': 1, 'localUIRight': False, 'gender': 'male', 'numOfCard': 1, 'numOfFP': 0, 'numOfFace': 1, 'PersonInfoExtends': [{'value': ''}], 'faceURL': 'http://olivosportal2.dyndns.org:5023/LOCALS/pic/enrlFace/0/0000000001.jpg@WEB000000000003'}]}} 2026-01-21 11:30:23.426842 >>> Usuario encontrado:{'UserInfoSearch': {'searchID': '1', 'responseStatusStrg': 'OK', 'numOfMatches': 1, 'totalMatches': 1, 'UserInfo': [{'employeeNo': '0000000023', 'name': 'iParkings test', 'userType': 'normal', 'sortByNamePosition': 0, 'sortByNameFlag': 'I', 'closeDelayEnabled': False, 'Valid': {'enable': True, 'beginTime': '2025-01-01T00:00:00', 'endTime': '2035-01-01T23:59:59', 'timeType': 'local'}, 'belongGroup': '', 'password': '', 'doorRight': '1', 'RightPlan': [{'doorNo': 1, 'planTemplateNo': '1'}], 'maxOpenDoorTime': 0, 'openDoorTime': 0, 'roomNumber': 1, 'floorNumber': 1, 'localUIRight': False, 'gender': 'male', 'numOfCard': 1, 'numOfFP': 0, 'numOfFace': 1, 'PersonInfoExtends': [{'value': ''}], 'faceURL': 'http://olivosportal3.dyndns.org:5020/LOCALS/pic/enrlFace/0/0000000001.jpg@WEB000000000003'}]}} 2026-01-21 11:30:25.192068 >>> Usuario encontrado:{'UserInfoSearch': {'searchID': '1', 'responseStatusStrg': 'OK', 'numOfMatches': 1, 'totalMatches': 1, 'UserInfo': [{'employeeNo': '0000000023', 'name': 'iParkings test', 'userType': 'normal', 'sortByNamePosition': 0, 'sortByNameFlag': 'I', 'closeDelayEnabled': False, 'Valid': {'enable': True, 'beginTime': '2025-01-01T00:00:00', 'endTime': '2035-01-01T23:59:59', 'timeType': 'local'}, 'belongGroup': '', 'password': '', 'doorRight': '1', 'RightPlan': [{'doorNo': 1, 'planTemplateNo': '1'}], 'maxOpenDoorTime': 0, 'openDoorTime': 0, 'roomNumber': 1, 'floorNumber': 1, 'localUIRight': False, 'gender': 'male', 'numOfCard': 1, 'numOfFP': 0, 'numOfFace': 1, 'PersonInfoExtends': [{'value': ''}], 'faceURL': 'http://olivosportal3.dyndns.org:5021/LOCALS/pic/enrlFace/0/0000000001.jpg@WEB000000000003'}]}} 2026-01-21 11:30:26.943515 >>> Usuario encontrado:{'UserInfoSearch': {'searchID': '1', 'responseStatusStrg': 'OK', 'numOfMatches': 1, 'totalMatches': 1, 'UserInfo': [{'employeeNo': '0000000023', 'name': 'iParkings test', 'userType': 'normal', 'sortByNamePosition': 0, 'sortByNameFlag': 'I', 'closeDelayEnabled': False, 'Valid': {'enable': True, 'beginTime': '2025-01-01T00:00:00', 'endTime': '2035-01-01T23:59:59', 'timeType': 'local'}, 'belongGroup': '', 'password': '', 'doorRight': '1', 'RightPlan': [{'doorNo': 1, 'planTemplateNo': '1'}], 'maxOpenDoorTime': 0, 'openDoorTime': 0, 'roomNumber': 1, 'floorNumber': 1, 'localUIRight': False, 'gender': 'male', 'numOfCard': 0, 'numOfFP': 0, 'numOfFace': 1, 'PersonInfoExtends': [{'value': ''}], 'faceURL': 'http://olivosportal3.dyndns.org:5022/LOCALS/pic/enrlFace/0/0000000001.jpg@WEB000000000003'}]}} 2026-01-21 11:30:28.707608 >>> Usuario encontrado:{'UserInfoSearch': {'searchID': '1', 'responseStatusStrg': 'OK', 'numOfMatches': 1, 'totalMatches': 1, 'UserInfo': [{'employeeNo': '0000000023', 'name': 'iParkings test', 'userType': 'normal', 'sortByNamePosition': 0, 'sortByNameFlag': 'I', 'closeDelayEnabled': False, 'Valid': {'enable': True, 'beginTime': '2025-01-01T00:00:00', 'endTime': '2035-01-01T23:59:59', 'timeType': 'local'}, 'belongGroup': '', 'password': '', 'doorRight': '1', 'RightPlan': [{'doorNo': 1, 'planTemplateNo': '1'}], 'maxOpenDoorTime': 0, 'openDoorTime': 0, 'roomNumber': 1, 'floorNumber': 1, 'localUIRight': False, 'gender': 'male', 'numOfCard': 0, 'numOfFP': 0, 'numOfFace': 1, 'PersonInfoExtends': [{'value': ''}], 'faceURL': 'http://olivosportal3.dyndns.org:5023/LOCALS/pic/enrlFace/0/0000000001.jpg@WEB000000000003'}]}} 2026-01-21 11:33:14.033475 >>> [routes.py] issue_token 2026-01-21 11:33:14.033658 >>> Auth.token: client_id=Olivos 2026-01-21 11:33:14.533271 >>> Auth.token: ok 2026-01-21 11:33:14.572540 >>> [routes.py] issue_token 2026-01-21 11:33:14.572694 >>> Auth.token: client_id=Olivos 2026-01-21 11:33:15.026216 >>> Auth.token: ok 2026-01-21 11:33:15.045653 >>> [persons.py] list_persons 2026-01-21 11:33:15.045891 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769005995, 'jti': 'd364d8f8-ed7e-402c-afa7-e3dc55c3b881', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769005995, 'exp': 1769023995, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:33:15.180666 >>> [persons.py] lanzando hilo para lector: P1. ENTRADA PROPIETARIOS 2026-01-21 11:33:15.183407 >>> [persons.py] lanzando hilo para lector: P1. ENTRADA VISITAS 2026-01-21 11:33:15.186045 >>> [persons.py] lanzando hilo para lector: P1. SALIDA PROPIETARIOS 2026-01-21 11:33:15.192012 >>> [persons.py] lanzando hilo para lector: P1. SALIDA VISITAS 2026-01-21 11:33:15.195410 >>> [persons.py] lanzando hilo para lector: P2. ENTRADA PROPIETARIOS 2026-01-21 11:33:15.197623 >>> [persons.py] lanzando hilo para lector: P2. ENTRADA VISITAS 2026-01-21 11:33:15.200399 >>> [persons.py] lanzando hilo para lector: P2. SALIDA PROPIETARIOS 2026-01-21 11:33:15.202602 >>> [persons.py] lanzando hilo para lector: P2. SALIDA VISITAS 2026-01-21 11:33:15.204585 >>> [persons.py] lanzando hilo para lector: P3. ENTRADA PROPIETARIOS 2026-01-21 11:33:15.206484 >>> [persons.py] lanzando hilo para lector: P3. ENTRADA VISITAS 2026-01-21 11:33:15.209090 >>> [persons.py] lanzando hilo para lector: P3. SALIDA PROPIETARIOS 2026-01-21 11:33:15.211120 >>> [persons.py] lanzando hilo para lector: P3. SALIDA VISITAS 2026-01-21 11:33:15.211230 >>> [persons.py] hilos finalizados 2026-01-21 11:33:16.083191 >>> [persons.py] hilos finalizados 2026-01-21 11:33:16.140325 >>> [persons.py] hilos finalizados 2026-01-21 11:33:16.150539 >>> [persons.py] hilos finalizados 2026-01-21 11:33:16.150752 >>> [persons.py] hilos finalizados 2026-01-21 11:33:16.205003 >>> [persons.py] hilos finalizados 2026-01-21 11:33:16.205252 >>> [persons.py] hilos finalizados 2026-01-21 11:33:16.217782 >>> [persons.py] hilos finalizados 2026-01-21 11:33:16.250048 >>> [persons.py] hilos finalizados 2026-01-21 11:33:16.250267 >>> [persons.py] hilos finalizados 2026-01-21 11:33:16.250319 >>> [persons.py] hilos finalizados 2026-01-21 11:33:16.250375 >>> [persons.py] hilos finalizados 2026-01-21 11:33:16.250426 >>> [TIMING] Desde que se inician los hilos hasta la rspuesta final -> 1.072 s 2026-01-21 11:39:03.880766 >>> [routes.py] issue_token 2026-01-21 11:39:03.881096 >>> Auth.token: client_id=Olivos 2026-01-21 11:39:04.449705 >>> Auth.token: ok 2026-01-21 11:39:04.488628 >>> [routes.py] issue_token 2026-01-21 11:39:04.488823 >>> Auth.token: client_id=Olivos 2026-01-21 11:39:04.939152 >>> Auth.token: ok 2026-01-21 11:39:04.960110 >>> [events.py] list_events 2026-01-21 11:39:04.960311 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769006344, 'jti': 'ad21dd21-3a44-47b9-97c5-92a91c0182ca', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769006344, 'exp': 1769024344, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:39:05.087767 >>> hikvision.client fetch_events 2026-01-21 11:39:05.087988 >>> hikvision.client fetch_events || url: http://olivosportal1.dyndns.org:5020/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:39:05.090613 >>> [events.py] lanzando hilo para lector: P1. ENTRADA PROPIETARIOS 2026-01-21 11:39:05.091034 >>> hikvision.client fetch_events 2026-01-21 11:39:05.091180 >>> hikvision.client fetch_events || url: http://olivosportal1.dyndns.org:5021/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:39:05.092858 >>> [events.py] lanzando hilo para lector: P1. ENTRADA VISITAS 2026-01-21 11:39:05.093288 >>> hikvision.client fetch_events 2026-01-21 11:39:05.093422 >>> hikvision.client fetch_events || url: http://olivosportal1.dyndns.org:5022/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:39:05.095427 >>> [events.py] lanzando hilo para lector: P1. SALIDA PROPIETARIOS 2026-01-21 11:39:05.095796 >>> hikvision.client fetch_events 2026-01-21 11:39:05.095912 >>> hikvision.client fetch_events || url: http://olivosportal1.dyndns.org:5023/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:39:05.097422 >>> [events.py] lanzando hilo para lector: P1. SALIDA VISITAS 2026-01-21 11:39:05.098374 >>> hikvision.client fetch_events 2026-01-21 11:39:05.098489 >>> hikvision.client fetch_events || url: http://olivosportal2.dyndns.org:5020/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:39:05.099972 >>> [events.py] lanzando hilo para lector: P2. ENTRADA PROPIETARIOS 2026-01-21 11:39:05.100398 >>> hikvision.client fetch_events 2026-01-21 11:39:05.100506 >>> hikvision.client fetch_events || url: http://olivosportal2.dyndns.org:5021/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:39:05.102158 >>> [events.py] lanzando hilo para lector: P2. ENTRADA VISITAS 2026-01-21 11:39:05.110108 >>> hikvision.client fetch_events 2026-01-21 11:39:05.110330 >>> hikvision.client fetch_events || url: http://olivosportal2.dyndns.org:5022/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:39:05.112670 >>> [events.py] lanzando hilo para lector: P2. SALIDA PROPIETARIOS 2026-01-21 11:39:05.113190 >>> hikvision.client fetch_events 2026-01-21 11:39:05.113333 >>> hikvision.client fetch_events || url: http://olivosportal2.dyndns.org:5023/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:39:05.115157 >>> [events.py] lanzando hilo para lector: P2. SALIDA VISITAS 2026-01-21 11:39:05.115552 >>> hikvision.client fetch_events 2026-01-21 11:39:05.115658 >>> hikvision.client fetch_events || url: http://olivosportal3.dyndns.org:5020/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:39:05.117629 >>> [events.py] lanzando hilo para lector: P3. ENTRADA PROPIETARIOS 2026-01-21 11:39:05.118079 >>> hikvision.client fetch_events 2026-01-21 11:39:05.118211 >>> hikvision.client fetch_events || url: http://olivosportal3.dyndns.org:5021/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:39:05.119712 >>> [events.py] lanzando hilo para lector: P3. ENTRADA VISITAS 2026-01-21 11:39:05.120132 >>> hikvision.client fetch_events 2026-01-21 11:39:05.120238 >>> hikvision.client fetch_events || url: http://olivosportal3.dyndns.org:5022/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:39:05.122030 >>> [events.py] lanzando hilo para lector: P3. SALIDA PROPIETARIOS 2026-01-21 11:39:05.122698 >>> hikvision.client fetch_events 2026-01-21 11:39:05.122852 >>> hikvision.client fetch_events || url: http://olivosportal3.dyndns.org:5023/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:39:05.124416 >>> [events.py] lanzando hilo para lector: P3. SALIDA VISITAS 2026-01-21 11:39:05.979466 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:39:05.979680 >>> target_minors: [1, 75, 38] 2026-01-21 11:39:05.979928 >>> normalized len: 0 2026-01-21 11:39:05.980090 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:39:05.993316 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:39:05.993542 >>> target_minors: [1, 75, 38] 2026-01-21 11:39:05.993596 >>> normalized len: 0 2026-01-21 11:39:05.993940 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:39:05.995018 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:39:05.995288 >>> target_minors: [1, 75, 38] 2026-01-21 11:39:05.995339 >>> normalized len: 0 2026-01-21 11:39:05.995435 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:39:06.001476 >>> Eventos crudos encontrados >>> 1 2026-01-21 11:39:06.001677 >>> target_minors: [1, 75, 38] 2026-01-21 11:39:06.001773 >>> normalized len: 0 2026-01-21 11:39:06.001917 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:39:06.003189 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:39:06.003314 >>> target_minors: [1, 75, 38] 2026-01-21 11:39:06.003363 >>> normalized len: 0 2026-01-21 11:39:06.003454 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:39:06.003838 >>> [events.py] hilos finalizados 2026-01-21 11:39:06.003933 >>> [events.py] hilos finalizados 2026-01-21 11:39:06.004666 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:39:06.004792 >>> target_minors: [1, 75, 38] 2026-01-21 11:39:06.004846 >>> normalized len: 0 2026-01-21 11:39:06.004943 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:39:06.011941 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:39:06.012283 >>> target_minors: [1, 75, 38] 2026-01-21 11:39:06.012348 >>> normalized len: 0 2026-01-21 11:39:06.012460 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:39:06.018537 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:39:06.018743 >>> target_minors: [1, 75, 38] 2026-01-21 11:39:06.018900 >>> normalized len: 0 2026-01-21 11:39:06.019338 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:39:06.027861 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:39:06.028036 >>> target_minors: [1, 75, 38] 2026-01-21 11:39:06.028087 >>> normalized len: 0 2026-01-21 11:39:06.028198 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:39:06.030206 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:39:06.030344 >>> target_minors: [1, 75, 38] 2026-01-21 11:39:06.030395 >>> normalized len: 0 2026-01-21 11:39:06.030660 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:39:06.033509 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:39:06.033635 >>> target_minors: [1, 75, 38] 2026-01-21 11:39:06.033685 >>> normalized len: 0 2026-01-21 11:39:06.033812 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:39:06.034058 >>> [events.py] hilos finalizados 2026-01-21 11:39:06.034145 >>> [events.py] hilos finalizados 2026-01-21 11:39:06.099517 >>> Eventos crudos encontrados >>> 3 2026-01-21 11:39:06.099746 >>> target_minors: [1, 75, 38] 2026-01-21 11:39:06.099824 >>> normalized len: 1 2026-01-21 11:39:06.099970 >>> hikvision.client fetch_events || total: 1 2026-01-21 11:39:06.100303 >>> [events.py] hilos finalizados 2026-01-21 11:39:06.100400 >>> [events.py] hilos finalizados 2026-01-21 11:39:06.100446 >>> [events.py] hilos finalizados 2026-01-21 11:39:06.100486 >>> [events.py] hilos finalizados 2026-01-21 11:39:06.100524 >>> [events.py] hilos finalizados 2026-01-21 11:39:06.100561 >>> [events.py] hilos finalizados 2026-01-21 11:39:06.100598 >>> [events.py] hilos finalizados 2026-01-21 11:39:06.100635 >>> [events.py] hilos finalizados 2026-01-21 11:39:06.100677 >>> [TIMING] list_events threads total -> 1.013 s 2026-01-21 11:43:38.795560 >>> [routes.py] issue_token 2026-01-21 11:43:38.795885 >>> Auth.token: client_id=Olivos 2026-01-21 11:43:39.303978 >>> Auth.token: ok 2026-01-21 11:43:39.343546 >>> [routes.py] issue_token 2026-01-21 11:43:39.343709 >>> Auth.token: client_id=Olivos 2026-01-21 11:43:39.818119 >>> Auth.token: ok 2026-01-21 11:43:39.839341 >>> [events.py] list_events 2026-01-21 11:43:39.839535 >>> [decorators.py] get_tenant_id_from_jwt_identity, informacion del token >>> claims: {'fresh': False, 'iat': 1769006619, 'jti': '67697633-26dd-43bb-a050-d420a2a9ca68', 'type': 'access', 'sub': 'Olivos', 'nbf': 1769006619, 'exp': 1769024619, 'scopes': ['users:read', 'users:write', 'events:read']} || tenant: Olivos 2026-01-21 11:43:39.966907 >>> hikvision.client fetch_events 2026-01-21 11:43:39.967180 >>> hikvision.client fetch_events || url: http://olivosportal1.dyndns.org:5020/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:43:39.969348 >>> [events.py] lanzando hilo para lector: P1. ENTRADA PROPIETARIOS 2026-01-21 11:43:39.969750 >>> hikvision.client fetch_events 2026-01-21 11:43:39.969893 >>> hikvision.client fetch_events || url: http://olivosportal1.dyndns.org:5021/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:43:39.971465 >>> [events.py] lanzando hilo para lector: P1. ENTRADA VISITAS 2026-01-21 11:43:39.971834 >>> hikvision.client fetch_events 2026-01-21 11:43:39.971964 >>> hikvision.client fetch_events || url: http://olivosportal1.dyndns.org:5022/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:43:39.973876 >>> [events.py] lanzando hilo para lector: P1. SALIDA PROPIETARIOS 2026-01-21 11:43:39.974240 >>> hikvision.client fetch_events 2026-01-21 11:43:39.974358 >>> hikvision.client fetch_events || url: http://olivosportal1.dyndns.org:5023/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:43:39.975788 >>> [events.py] lanzando hilo para lector: P1. SALIDA VISITAS 2026-01-21 11:43:39.976097 >>> hikvision.client fetch_events 2026-01-21 11:43:39.976203 >>> hikvision.client fetch_events || url: http://olivosportal2.dyndns.org:5020/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:43:39.977606 >>> [events.py] lanzando hilo para lector: P2. ENTRADA PROPIETARIOS 2026-01-21 11:43:39.978002 >>> hikvision.client fetch_events 2026-01-21 11:43:39.978116 >>> hikvision.client fetch_events || url: http://olivosportal2.dyndns.org:5021/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:43:39.979522 >>> [events.py] lanzando hilo para lector: P2. ENTRADA VISITAS 2026-01-21 11:43:39.979835 >>> hikvision.client fetch_events 2026-01-21 11:43:39.979966 >>> hikvision.client fetch_events || url: http://olivosportal2.dyndns.org:5022/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:43:39.981349 >>> [events.py] lanzando hilo para lector: P2. SALIDA PROPIETARIOS 2026-01-21 11:43:39.981680 >>> hikvision.client fetch_events 2026-01-21 11:43:39.981819 >>> hikvision.client fetch_events || url: http://olivosportal2.dyndns.org:5023/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:43:39.983174 >>> [events.py] lanzando hilo para lector: P2. SALIDA VISITAS 2026-01-21 11:43:39.983519 >>> hikvision.client fetch_events 2026-01-21 11:43:39.983621 >>> hikvision.client fetch_events || url: http://olivosportal3.dyndns.org:5020/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:43:39.985295 >>> [events.py] lanzando hilo para lector: P3. ENTRADA PROPIETARIOS 2026-01-21 11:43:39.985623 >>> hikvision.client fetch_events 2026-01-21 11:43:39.985749 >>> hikvision.client fetch_events || url: http://olivosportal3.dyndns.org:5021/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:43:39.987223 >>> [events.py] lanzando hilo para lector: P3. ENTRADA VISITAS 2026-01-21 11:43:39.987572 >>> hikvision.client fetch_events 2026-01-21 11:43:39.987692 >>> hikvision.client fetch_events || url: http://olivosportal3.dyndns.org:5022/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:43:39.989516 >>> [events.py] lanzando hilo para lector: P3. SALIDA PROPIETARIOS 2026-01-21 11:43:39.989876 >>> hikvision.client fetch_events 2026-01-21 11:43:39.989985 >>> hikvision.client fetch_events || url: http://olivosportal3.dyndns.org:5023/ISAPI/AccessControl/AcsEvent?format=json&security=1 || payload: {'AcsEventCond': {'searchID': '1', 'searchResultPosition': 0, 'maxResults': 100, 'major': 5, 'minor': 0, 'startTime': '2026-01-21T00:00:00-03:00', 'endTime': '2026-01-21T23:59:59-03:00', 'timeReverseOrder': True}} 2026-01-21 11:43:39.991374 >>> [events.py] lanzando hilo para lector: P3. SALIDA VISITAS 2026-01-21 11:43:40.865140 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:43:40.865376 >>> target_minors: [1, 75, 38] 2026-01-21 11:43:40.865436 >>> normalized len: 0 2026-01-21 11:43:40.865557 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:43:40.867668 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:43:40.867907 >>> target_minors: [1, 75, 38] 2026-01-21 11:43:40.867973 >>> normalized len: 0 2026-01-21 11:43:40.868101 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:43:40.869154 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:43:40.869287 >>> target_minors: [1, 75, 38] 2026-01-21 11:43:40.869352 >>> normalized len: 0 2026-01-21 11:43:40.869453 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:43:40.870302 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:43:40.870405 >>> target_minors: [1, 75, 38] 2026-01-21 11:43:40.870453 >>> normalized len: 0 2026-01-21 11:43:40.870535 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:43:40.870701 >>> [events.py] hilos finalizados 2026-01-21 11:43:40.870801 >>> [events.py] hilos finalizados 2026-01-21 11:43:40.871474 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:43:40.871568 >>> target_minors: [1, 75, 38] 2026-01-21 11:43:40.871614 >>> normalized len: 0 2026-01-21 11:43:40.871696 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:43:40.872575 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:43:40.872672 >>> target_minors: [1, 75, 38] 2026-01-21 11:43:40.872747 >>> normalized len: 0 2026-01-21 11:43:40.872847 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:43:40.873041 >>> [events.py] hilos finalizados 2026-01-21 11:43:40.873116 >>> [events.py] hilos finalizados 2026-01-21 11:43:40.873792 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:43:40.873897 >>> target_minors: [1, 75, 38] 2026-01-21 11:43:40.873944 >>> normalized len: 0 2026-01-21 11:43:40.874026 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:43:40.893162 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:43:40.893359 >>> target_minors: [1, 75, 38] 2026-01-21 11:43:40.893411 >>> normalized len: 0 2026-01-21 11:43:40.893561 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:43:40.894611 >>> Eventos crudos encontrados >>> 1 2026-01-21 11:43:40.894754 >>> target_minors: [1, 75, 38] 2026-01-21 11:43:40.894819 >>> normalized len: 0 2026-01-21 11:43:40.894919 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:43:40.898004 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:43:40.898144 >>> target_minors: [1, 75, 38] 2026-01-21 11:43:40.898198 >>> normalized len: 0 2026-01-21 11:43:40.898296 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:43:40.904654 >>> Eventos crudos encontrados >>> 0 2026-01-21 11:43:40.904865 >>> target_minors: [1, 75, 38] 2026-01-21 11:43:40.904932 >>> normalized len: 0 2026-01-21 11:43:40.905055 >>> hikvision.client fetch_events || total: 0 2026-01-21 11:43:40.963666 >>> Eventos crudos encontrados >>> 3 2026-01-21 11:43:40.963926 >>> target_minors: [1, 75, 38] 2026-01-21 11:43:40.964018 >>> normalized len: 1 2026-01-21 11:43:40.964160 >>> hikvision.client fetch_events || total: 1 2026-01-21 11:43:40.964433 >>> [events.py] hilos finalizados 2026-01-21 11:43:40.964552 >>> [events.py] hilos finalizados 2026-01-21 11:43:40.964595 >>> [events.py] hilos finalizados 2026-01-21 11:43:40.964635 >>> [events.py] hilos finalizados 2026-01-21 11:43:40.964672 >>> [events.py] hilos finalizados 2026-01-21 11:43:40.964709 >>> [events.py] hilos finalizados 2026-01-21 11:43:40.964778 >>> [events.py] hilos finalizados 2026-01-21 11:43:40.964816 >>> [events.py] hilos finalizados 2026-01-21 11:43:40.964858 >>> [TIMING] list_events threads total -> 0.998 s