leadguru-jobs 0.666.0__py3-none-any.whl → 0.667.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: leadguru_jobs
3
- Version: 0.666.0
3
+ Version: 0.667.0
4
4
  Summary: LGT jobs builds
5
5
  Author-email: developer@leadguru.co
6
6
  Classifier: Development Status :: 5 - Production/Stable
@@ -6,6 +6,7 @@ lgt_jobs/runner.py,sha256=pS-Qwyfuk22aQ1Mk3p-Q0ysdZfKy1Bh9YoWBlDaLeM8,2234
6
6
  lgt_jobs/simple_job.py,sha256=EBxhre3749GEAzJyaV1GXYy3P0pzwHchxcZ2kSN1vWU,527
7
7
  lgt_jobs/smtp.py,sha256=k0qh-Qk9AeSU3WrCOVmuWkfpi9xzwaPMzbw9cED-pZw,1150
8
8
  lgt_jobs/assets/images/arrow.png,sha256=Lr_zG1TyySAWX78jiojcV7j8BHe2S_Oi7eZYAfe4YbM,536
9
+ lgt_jobs/assets/images/arrow_blue.png,sha256=opxsLU7K6C2tNfvFSvDvi9xcZBDf3t6jPz4TESN07o8,572
9
10
  lgt_jobs/assets/images/firework.png,sha256=9d_0lUpDFfT3e4JTgp5XVb03qAdtO9yNVi1c1KoQDp8,33754
10
11
  lgt_jobs/assets/images/lock.png,sha256=515llTFqboG9PYXIrXhlbPZ5lQOHXjEYyQkXc9WfJxc,5978
11
12
  lgt_jobs/assets/images/logo.png,sha256=nt377FGkBalBF9Z9TYQRv9loHolTXwU8_VRYvCXXzx0,12596
@@ -16,7 +17,7 @@ lgt_jobs/jobs/bot_stats_update.py,sha256=Q89ID9iIbdLcMIWuDFIW0qZnbEPp8E2MJdM-Yvq
16
17
  lgt_jobs/jobs/chat_history.py,sha256=rj337uHT2XmyDu3oMPbnCBxSsRn4roxDNS0hsbvoI7I,5040
17
18
  lgt_jobs/jobs/connect_sources.py,sha256=vOKu2Q9cmQsj4VMVzOoEJkD1wzE9XurbIChx35rES8I,4957
18
19
  lgt_jobs/jobs/inbox_leads.py,sha256=6UhPp9AfSAGb3elFDT6jm7j2HZ9jPOPngsUj-hUKAYw,4867
19
- lgt_jobs/jobs/load_slack_people.py,sha256=-KzMYHFpmSEuoiSgHd3fUu4mPOfcZOY0t2WNIXcMXpk,4373
20
+ lgt_jobs/jobs/load_slack_people.py,sha256=EcOpekTX3gubPy2gn0NIVPcQls9HQ3JY14iFKJNKEQE,4512
20
21
  lgt_jobs/jobs/mass_message.py,sha256=1mFcBlL2MhzLbj5yrd_NyJc7TXDWCcROAzGDnr0miMU,2035
21
22
  lgt_jobs/jobs/send_code.py,sha256=dIlLPkG3GgGKIEqGiElyzrtdrnJNTL1Ak2V0xnE-WIQ,824
22
23
  lgt_jobs/jobs/send_slack_message.py,sha256=eiSN-yZ7XJ2WLUTQOkViSYOCYwaEwLry0ldGAcONNsM,1708
@@ -39,10 +40,10 @@ lgt_jobs/lgt_common/slack_client/web_client.py,sha256=WCu8mqYhauuxp9iDAMsjocchKD
39
40
  lgt_jobs/lgt_data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
40
41
  lgt_jobs/lgt_data/analytics.py,sha256=yfrFPXrBofzZqUNn479JkrbZXDa2ljgk-Le0YrQ9rew,21690
41
42
  lgt_jobs/lgt_data/engine.py,sha256=GY8FOl3dl7euKjQRML_H3ophaSTgfQ8ICMRv1NpE2oE,7745
42
- lgt_jobs/lgt_data/enums.py,sha256=C63klcD9OOJSs-R4bcQQvGSdkWhsLuVLPWjFtg1UKRA,2517
43
+ lgt_jobs/lgt_data/enums.py,sha256=SN2eLoB2m-bVswgLVuY46v0DhPj8IurgHY6R-KRsd6s,2621
43
44
  lgt_jobs/lgt_data/helpers.py,sha256=S_1P7pnx14dllmen-TzjA9pkKWQr39x8-v6iv7FUYnQ,423
44
45
  lgt_jobs/lgt_data/model.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
45
- lgt_jobs/lgt_data/mongo_repository.py,sha256=rnXKvILBVsGQteGesCecKQs55ZuPQCEchlZbw25zgjc,55919
46
+ lgt_jobs/lgt_data/mongo_repository.py,sha256=AG-WDftNi3PG29zzjMlu_bk9KvrdeoHXsTanqWMtNos,56175
46
47
  lgt_jobs/lgt_data/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
47
48
  lgt_jobs/lgt_data/models/base.py,sha256=YaiceCaaF45snOLx-bQoYJ1aTWrfgMQeHWjAaRnzGKE,592
48
49
  lgt_jobs/lgt_data/models/boards/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -104,7 +105,7 @@ lgt_jobs/lgt_data/repositories/post/posts.py,sha256=ZA19L-CYdxLhlapyMQtSJzP3QMUl
104
105
  lgt_jobs/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
105
106
  lgt_jobs/services/web_client.py,sha256=oMyWJxwGeIe3f40fPT7xcisjDg3BhA3Ipf8dr1jVT-Y,1549
106
107
  lgt_jobs/templates/new_message.html,sha256=dZl8UmdAOOMq4nidvAgMFroSrTV7Pw0RWt2yLp_2idg,6989
107
- leadguru_jobs-0.666.0.dist-info/METADATA,sha256=Rnmd6tDbiIl6egRSGTz2tqQS3OfthpQdv5r3hAFvQdI,1319
108
- leadguru_jobs-0.666.0.dist-info/WHEEL,sha256=cVxcB9AmuTcXqmwrtPhNK88dr7IR_b6qagTj0UvIEbY,91
109
- leadguru_jobs-0.666.0.dist-info/top_level.txt,sha256=rIuw1DqwbnZyeoarBSC-bYeGOhv9mZBs7_afl9q4_JI,9
110
- leadguru_jobs-0.666.0.dist-info/RECORD,,
108
+ leadguru_jobs-0.667.0.dist-info/METADATA,sha256=RWqlsDJAimR-IoPCpChcqy1REVjJd7LjlitHAJlrTmg,1319
109
+ leadguru_jobs-0.667.0.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
110
+ leadguru_jobs-0.667.0.dist-info/top_level.txt,sha256=rIuw1DqwbnZyeoarBSC-bYeGOhv9mZBs7_afl9q4_JI,9
111
+ leadguru_jobs-0.667.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (74.1.2)
2
+ Generator: setuptools (75.1.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
Binary file
@@ -7,7 +7,8 @@ from lgt_jobs.lgt_common.enums.slack_errors import SlackErrors
7
7
  from lgt_jobs.lgt_common.slack_client.slack_client import SlackClient
8
8
  from lgt_jobs.lgt_data.models.bots.base_bot import Source
9
9
  from lgt_jobs.lgt_data.models.people.people import SlackMemberInformation
10
- from lgt_jobs.lgt_data.mongo_repository import DedicatedBotRepository, SlackContactUserRepository
10
+ from lgt_jobs.lgt_data.mongo_repository import DedicatedBotRepository, SlackContactUserRepository, \
11
+ UserContactsRepository
11
12
  import logging as log
12
13
  from pydantic import BaseModel
13
14
  from lgt_jobs.basejobs import BaseBackgroundJobData, BaseBackgroundJob
@@ -86,6 +87,7 @@ class LoadSlackPeopleJob(BaseBackgroundJob, ABC):
86
87
  member_info_dic.pop('created_at')
87
88
  if last_activity:
88
89
  member_info_dic['last_activity'] = last_activity
90
+ UserContactsRepository().update_many(member_info.sender_id, last_activity=last_activity)
89
91
  SlackContactUserRepository().collection().update_one({"sender_id": member_info.sender_id,
90
92
  "source.source_id": source.source_id},
91
93
  {"$set": member_info_dic}, upsert=True)
@@ -55,13 +55,16 @@ class DefaultBoards(str, Enum):
55
55
 
56
56
  class ImageName(str, Enum):
57
57
  ARROW = 'arrow.png'
58
+ ARROW_BLUE = 'arrow_blue.png'
58
59
  CRY = 'cry.png'
59
60
  FIREWORK = 'firework.png'
60
61
  HANDS = 'hands.png'
61
62
  LOCK = 'lock.png'
62
63
  LOGO = 'logo.png'
64
+ LOGO_DARK_THEME = 'logo_dark_theme.png'
63
65
  MAIL = 'mail.png'
64
66
  SAD = 'sad.png'
67
+ PERSON = 'person.png'
65
68
 
66
69
 
67
70
  class FeaturesEnum(str, Enum):
@@ -1165,6 +1165,11 @@ class UserContactsRepository(BaseMongoRepository):
1165
1165
  update_dict = {k: v for k, v in kwargs.items() if v is not None}
1166
1166
  self.collection().update_one(pipeline, {'$set': update_dict}, upsert=False)
1167
1167
 
1168
+ def update_many(self, sender_id: str, **kwargs):
1169
+ pipeline = {'sender_id': sender_id}
1170
+ update_dict = {k: v for k, v in kwargs.items() if v is not None}
1171
+ self.collection().update_many(pipeline, {'$set': update_dict}, upsert=False)
1172
+
1168
1173
  def find_grouped_actual_contacts(self, user_id: ObjectId | str, **kwargs) -> dict[str, list[UserContact]]:
1169
1174
  spam = kwargs.get('spam')
1170
1175
  with_chat_only = kwargs.get('with_chat_only', False)