mirror of
https://github.com/ail-project/ail-framework.git
synced 2025-01-18 08:26:15 +00:00
chg: [retro hunt + update] add ocr retro hunt + new update
This commit is contained in:
parent
7e27089255
commit
2a45cfd75c
6 changed files with 142 additions and 1 deletions
|
@ -93,7 +93,7 @@ def get_objects_tracked():
|
||||||
return ['barcode', 'decoded', 'item', 'pgp', 'message', 'ocr', 'qrcode', 'title']
|
return ['barcode', 'decoded', 'item', 'pgp', 'message', 'ocr', 'qrcode', 'title']
|
||||||
|
|
||||||
def get_objects_retro_hunted():
|
def get_objects_retro_hunted():
|
||||||
return ['decoded', 'item', 'message']
|
return ['decoded', 'item', 'message', 'ocr']
|
||||||
|
|
||||||
def get_all_objects_with_subtypes_tuple():
|
def get_all_objects_with_subtypes_tuple():
|
||||||
str_objs = []
|
str_objs = []
|
||||||
|
|
|
@ -25,6 +25,7 @@ from lib.objects import ChatThreads
|
||||||
from lib.objects import Messages
|
from lib.objects import Messages
|
||||||
from lib.objects.BarCodes import Barcode
|
from lib.objects.BarCodes import Barcode
|
||||||
from lib.objects.QrCodes import Qrcode
|
from lib.objects.QrCodes import Qrcode
|
||||||
|
from lib.objects.Ocrs import Ocr
|
||||||
from lib.objects import UsersAccount
|
from lib.objects import UsersAccount
|
||||||
from lib.objects import Usernames
|
from lib.objects import Usernames
|
||||||
from lib import Language
|
from lib import Language
|
||||||
|
@ -421,6 +422,25 @@ def get_nb_messages_iterator(filters={}):
|
||||||
nb_messages += chat.get_nb_messages()
|
nb_messages += chat.get_nb_messages()
|
||||||
return nb_messages
|
return nb_messages
|
||||||
|
|
||||||
|
|
||||||
|
def get_ocrs_iterator(filters={}):
|
||||||
|
for instance_uuid in get_chat_service_instances():
|
||||||
|
for chat_id in ChatServiceInstance(instance_uuid).get_chats():
|
||||||
|
chat = Chats.Chat(chat_id, instance_uuid)
|
||||||
|
print(chat.get_correlation('ocr'))
|
||||||
|
for ocr in chat.get_correlation('ocr').get('ocr', []):
|
||||||
|
_, ocr_id = ocr.split(':', 1)
|
||||||
|
yield Ocr(ocr_id)
|
||||||
|
|
||||||
|
def get_nb_ors_iterator(filters={}):
|
||||||
|
nb = 0
|
||||||
|
for instance_uuid in get_chat_service_instances():
|
||||||
|
for chat_id in ChatServiceInstance(instance_uuid).get_chats():
|
||||||
|
chat = Chats.Chat(chat_id, instance_uuid)
|
||||||
|
nb += chat.get_nb_correlation('ocr')
|
||||||
|
return nb
|
||||||
|
|
||||||
|
|
||||||
def get_chat_object_messages_meta(c_messages):
|
def get_chat_object_messages_meta(c_messages):
|
||||||
temp_chats = {}
|
temp_chats = {}
|
||||||
for date in c_messages:
|
for date in c_messages:
|
||||||
|
|
|
@ -371,6 +371,8 @@ def obj_iterator(obj_type, filters):
|
||||||
return Pgps.get_all_pgps_objects(filters=filters)
|
return Pgps.get_all_pgps_objects(filters=filters)
|
||||||
elif obj_type == 'message':
|
elif obj_type == 'message':
|
||||||
return chats_viewer.get_messages_iterator(filters=filters)
|
return chats_viewer.get_messages_iterator(filters=filters)
|
||||||
|
elif obj_type == 'ocr':
|
||||||
|
return chats_viewer.get_ocrs_iterator(filters=filters)
|
||||||
elif obj_type == 'title':
|
elif obj_type == 'title':
|
||||||
return Titles.Titles().get_iterator()
|
return Titles.Titles().get_iterator()
|
||||||
|
|
||||||
|
@ -390,6 +392,8 @@ def card_obj_iterator(obj_type, filters):
|
||||||
return Pgps.nb_all_pgps_objects(filters=filters)
|
return Pgps.nb_all_pgps_objects(filters=filters)
|
||||||
elif obj_type == 'message':
|
elif obj_type == 'message':
|
||||||
return chats_viewer.get_nb_messages_iterator(filters=filters)
|
return chats_viewer.get_nb_messages_iterator(filters=filters)
|
||||||
|
elif obj_type == 'ocr':
|
||||||
|
return chats_viewer.get_nb_ors_iterator(filters=filters)
|
||||||
|
|
||||||
def get_ui_obj_tag_table_keys(obj_type): # TODO REMOVE ME
|
def get_ui_obj_tag_table_keys(obj_type): # TODO REMOVE ME
|
||||||
"""
|
"""
|
||||||
|
|
75
update/v6.0.1/Update.py
Executable file
75
update/v6.0.1/Update.py
Executable file
|
@ -0,0 +1,75 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
|
# -*-coding:UTF-8 -*
|
||||||
|
|
||||||
|
import os
|
||||||
|
import sys
|
||||||
|
|
||||||
|
sys.path.append(os.environ['AIL_HOME'])
|
||||||
|
##################################
|
||||||
|
# Import Project packages
|
||||||
|
##################################
|
||||||
|
from update.bin.ail_updater import AIL_Updater
|
||||||
|
from lib import ail_users
|
||||||
|
from lib import crawlers
|
||||||
|
from lib import Investigations
|
||||||
|
from lib import Tracker
|
||||||
|
|
||||||
|
def _fix_user_lowercase():
|
||||||
|
r_tracking = Investigations.r_tracking
|
||||||
|
r_tracker = Tracker.r_tracker
|
||||||
|
r_crawler = crawlers.r_crawler
|
||||||
|
|
||||||
|
for user_id in ail_users.get_users():
|
||||||
|
l_user_id = user_id.lower()
|
||||||
|
if user_id != l_user_id:
|
||||||
|
print(f'Updating {user_id} ...')
|
||||||
|
ail_users.kill_session_user(user_id)
|
||||||
|
|
||||||
|
# Investigations
|
||||||
|
for investigation_uuid in Investigations.get_user_all_investigations(user_id):
|
||||||
|
r_tracking.srem(f'investigations:user:{user_id}', investigation_uuid)
|
||||||
|
r_tracking.sadd(f'investigations:user:{l_user_id}', investigation_uuid)
|
||||||
|
r_tracking.hset(f'investigations:data:{investigation_uuid}', 'creator_user', l_user_id)
|
||||||
|
|
||||||
|
# Trackers
|
||||||
|
for tracker_uuid in Tracker.get_user_trackers(user_id):
|
||||||
|
tracker = Tracker.Tracker(tracker_uuid)
|
||||||
|
tracker_type = tracker.get_type()
|
||||||
|
|
||||||
|
r_tracker.rename(f'user:tracker:{user_id}:{tracker_type}', f'user:tracker:{l_user_id}:{tracker_type}')
|
||||||
|
r_tracker.rename(f'user:tracker:{user_id}', f'user:tracker:{l_user_id}')
|
||||||
|
|
||||||
|
# creator
|
||||||
|
r_tracker.hset(f'tracker:{tracker_uuid}', 'user_id', l_user_id)
|
||||||
|
|
||||||
|
try:
|
||||||
|
r_tracker.rename(f'trackers:user:{user_id}', f'trackers:user:{l_user_id}')
|
||||||
|
except Exception:
|
||||||
|
pass
|
||||||
|
|
||||||
|
# Cookiejar
|
||||||
|
for cookiejar_uuid in crawlers.get_cookiejars_user(user_id):
|
||||||
|
cookiejar = crawlers.Cookiejar(cookiejar_uuid)
|
||||||
|
# creator
|
||||||
|
cookiejar._set_user(l_user_id)
|
||||||
|
|
||||||
|
try:
|
||||||
|
r_crawler.rename(f'cookiejars:user:{user_id}', f'cookiejars:user:{l_user_id}')
|
||||||
|
except Exception:
|
||||||
|
pass
|
||||||
|
|
||||||
|
# ail_user
|
||||||
|
ail_users._fix_user_lowercase(user_id)
|
||||||
|
|
||||||
|
|
||||||
|
class Updater(AIL_Updater):
|
||||||
|
"""default Updater."""
|
||||||
|
|
||||||
|
def __init__(self, version):
|
||||||
|
super(Updater, self).__init__(version)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
_fix_user_lowercase()
|
||||||
|
# updater = Updater('v6.0.1')
|
||||||
|
# updater.run_update()
|
38
update/v6.0.1/Update.sh
Executable file
38
update/v6.0.1/Update.sh
Executable file
|
@ -0,0 +1,38 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
[ -z "$AIL_HOME" ] && echo "Needs the env var AIL_HOME. Run the script from the virtual environment." && exit 1;
|
||||||
|
[ -z "$AIL_REDIS" ] && echo "Needs the env var AIL_REDIS. Run the script from the virtual environment." && exit 1;
|
||||||
|
[ -z "$AIL_BIN" ] && echo "Needs the env var AIL_ARDB. Run the script from the virtual environment." && exit 1;
|
||||||
|
[ -z "$AIL_FLASK" ] && echo "Needs the env var AIL_FLASK. Run the script from the virtual environment." && exit 1;
|
||||||
|
|
||||||
|
export PATH=$AIL_HOME:$PATH
|
||||||
|
export PATH=$AIL_REDIS:$PATH
|
||||||
|
export PATH=$AIL_BIN:$PATH
|
||||||
|
export PATH=$AIL_FLASK:$PATH
|
||||||
|
|
||||||
|
GREEN="\\033[1;32m"
|
||||||
|
DEFAULT="\\033[0;39m"
|
||||||
|
|
||||||
|
echo -e $GREEN"Shutting down AIL ..."$DEFAULT
|
||||||
|
bash ${AIL_BIN}/LAUNCH.sh -ks
|
||||||
|
wait
|
||||||
|
|
||||||
|
echo -e $GREEN"Updating UI resources..."$DEFAULT
|
||||||
|
bash ${AIL_BIN}/LAUNCH.sh -ut
|
||||||
|
wait
|
||||||
|
|
||||||
|
echo -e $GREEN"Updating python requirement..."$DEFAULT
|
||||||
|
pip install -U flask-sock
|
||||||
|
|
||||||
|
# SUBMODULES #
|
||||||
|
git submodule update
|
||||||
|
|
||||||
|
echo ""
|
||||||
|
echo -e $GREEN"Updating AIL VERSION ..."$DEFAULT
|
||||||
|
echo ""
|
||||||
|
python ${AIL_HOME}/update/v6.0/Update.py
|
||||||
|
wait
|
||||||
|
echo ""
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
exit 0
|
|
@ -82,6 +82,10 @@
|
||||||
<input class="custom-control-input" type="checkbox" name="message_obj" id="message_obj" checked="">
|
<input class="custom-control-input" type="checkbox" name="message_obj" id="message_obj" checked="">
|
||||||
<label class="custom-control-label" for="message_obj"><i class="fas fa-comment-dots"></i> Messages</label>
|
<label class="custom-control-label" for="message_obj"><i class="fas fa-comment-dots"></i> Messages</label>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="custom-control custom-switch mt-1">
|
||||||
|
<input class="custom-control-input" type="checkbox" name="ocr_obj" id="ocr_obj" checked="">
|
||||||
|
<label class="custom-control-label" for="ocr_obj"><i class="fas fa-expand"></i> Ocrs</label>
|
||||||
|
</div>
|
||||||
{# <div class="custom-control custom-switch mt-1">#}
|
{# <div class="custom-control custom-switch mt-1">#}
|
||||||
{# <input class="custom-control-input" type="checkbox" name="domain_obj" id="domain_obj" checked="">#}
|
{# <input class="custom-control-input" type="checkbox" name="domain_obj" id="domain_obj" checked="">#}
|
||||||
{# <label class="custom-control-label" for="domain_obj"><i class="fas fa-spider"></i> Domain</label>#}
|
{# <label class="custom-control-label" for="domain_obj"><i class="fas fa-spider"></i> Domain</label>#}
|
||||||
|
|
Loading…
Add table
Reference in a new issue