leadguru-jobs 0.405.0__py3-none-any.whl → 0.407.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.
- {leadguru_jobs-0.405.0.dist-info → leadguru_jobs-0.407.0.dist-info}/METADATA +10 -5
- leadguru_jobs-0.407.0.dist-info/RECORD +49 -0
- lgt_jobs/__init__.py +4 -4
- lgt_jobs/jobs/analytics.py +1 -1
- lgt_jobs/jobs/archive_leads.py +2 -2
- lgt_jobs/jobs/bot_stats_update.py +10 -11
- lgt_jobs/jobs/chat_history.py +60 -53
- lgt_jobs/jobs/inbox_leads.py +5 -6
- lgt_jobs/jobs/mass_message.py +2 -2
- lgt_jobs/jobs/send_code.py +1 -1
- lgt_jobs/jobs/send_slack_message.py +5 -24
- lgt_jobs/jobs/update_slack_profile.py +12 -14
- lgt_jobs/jobs/user_balance_update.py +5 -5
- lgt_jobs/jobs/workspace_connect.py +7 -5
- lgt_jobs/lgt_common/__init__.py +0 -0
- lgt_jobs/lgt_common/discord_client/__init__.py +0 -0
- lgt_jobs/lgt_common/discord_client/discord_client.py +62 -0
- lgt_jobs/lgt_common/discord_client/methods.py +16 -0
- lgt_jobs/lgt_common/enums/__init__.py +0 -0
- lgt_jobs/lgt_common/enums/slack_errors.py +6 -0
- lgt_jobs/lgt_common/helpers.py +18 -0
- lgt_jobs/lgt_common/lgt_logging.py +15 -0
- lgt_jobs/lgt_common/pubsub/__init__.py +0 -0
- lgt_jobs/lgt_common/pubsub/command.py +14 -0
- lgt_jobs/lgt_common/pubsub/messages.py +37 -0
- lgt_jobs/lgt_common/pubsub/pubsubfactory.py +51 -0
- lgt_jobs/lgt_common/slack_client/__init__.py +0 -0
- lgt_jobs/lgt_common/slack_client/methods.py +46 -0
- lgt_jobs/lgt_common/slack_client/slack_client.py +392 -0
- lgt_jobs/lgt_common/slack_client/web_client.py +166 -0
- lgt_jobs/lgt_data/__init__.py +0 -0
- lgt_jobs/lgt_data/analytics.py +723 -0
- lgt_jobs/lgt_data/engine.py +223 -0
- lgt_jobs/lgt_data/enums.py +68 -0
- lgt_jobs/lgt_data/helpers.py +2 -0
- lgt_jobs/lgt_data/model.py +955 -0
- lgt_jobs/lgt_data/mongo_repository.py +998 -0
- lgt_jobs/main.py +9 -11
- lgt_jobs/runner.py +6 -9
- lgt_jobs/smtp.py +1 -1
- leadguru_jobs-0.405.0.dist-info/RECORD +0 -26
- {leadguru_jobs-0.405.0.dist-info → leadguru_jobs-0.407.0.dist-info}/WHEEL +0 -0
- {leadguru_jobs-0.405.0.dist-info → leadguru_jobs-0.407.0.dist-info}/top_level.txt +0 -0
lgt_jobs/main.py
CHANGED
@@ -2,11 +2,11 @@ import json
|
|
2
2
|
import sys
|
3
3
|
import threading
|
4
4
|
import time
|
5
|
-
from
|
6
|
-
from
|
7
|
-
from
|
8
|
-
|
9
|
-
from lgt_jobs import
|
5
|
+
from lgt_common.pubsub.pubsubfactory import PubSubFactory
|
6
|
+
from lgt_common.lgt_logging import log
|
7
|
+
from lgt_jobs.env import project_id, background_jobs_topic, background_jobs_subscriber
|
8
|
+
from lgt_jobs.runner import BackgroundJobRunner
|
9
|
+
from lgt_jobs import jobs_map
|
10
10
|
|
11
11
|
lock = threading.Lock()
|
12
12
|
|
@@ -35,12 +35,10 @@ def run_background_job_with_lock(message):
|
|
35
35
|
|
36
36
|
|
37
37
|
if __name__ == '__main__':
|
38
|
-
factory = PubSubFactory(
|
39
|
-
factory.create_topic_if_doesnt_exist(
|
40
|
-
factory.create_subscription_if_doesnt_exist(
|
41
|
-
|
42
|
-
bot_subscription_path = factory.get_subscription_path(env.background_jobs_subscriber, env.background_jobs_topic)
|
43
|
-
|
38
|
+
factory = PubSubFactory(project_id)
|
39
|
+
factory.create_topic_if_doesnt_exist(background_jobs_topic)
|
40
|
+
factory.create_subscription_if_doesnt_exist(background_jobs_subscriber, background_jobs_topic,600)
|
41
|
+
bot_subscription_path = factory.get_subscription_path(background_jobs_subscriber, background_jobs_topic)
|
44
42
|
factory.subscriber.subscribe(bot_subscription_path, callback=run_background_job_with_lock)
|
45
43
|
log.info(f'Listening for messages on {bot_subscription_path}')
|
46
44
|
while True:
|
lgt_jobs/runner.py
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
import json
|
2
|
-
from datetime import datetime
|
3
|
-
from
|
4
|
-
from lgt_data.engine import DelayedJob
|
2
|
+
from datetime import datetime, UTC
|
3
|
+
from lgt_jobs.lgt_common.pubsub.messages import publish_message2_pubsub
|
4
|
+
from lgt_jobs.lgt_data.engine import DelayedJob
|
5
5
|
from .basejobs import InvalidJobTypeException, BaseBackgroundJobData, BaseBackgroundJob
|
6
6
|
from .env import background_jobs_topic
|
7
7
|
|
@@ -33,22 +33,19 @@ class BackgroundJobRunner:
|
|
33
33
|
|
34
34
|
@staticmethod
|
35
35
|
def submit_data(data: dict):
|
36
|
-
json_str = json.dumps(data,
|
37
|
-
ensure_ascii=False,
|
38
|
-
default=datetime_converter)
|
36
|
+
json_str = json.dumps(data, ensure_ascii=False, default=datetime_converter)
|
39
37
|
BackgroundJobRunner.submit_json(json_str)
|
40
38
|
|
41
39
|
@staticmethod
|
42
40
|
def submit_json(json_str: str):
|
43
|
-
|
44
|
-
message_json=json_str)
|
41
|
+
publish_message2_pubsub(background_jobs_topic, message_json=json_str)
|
45
42
|
|
46
43
|
@staticmethod
|
47
44
|
def schedule(jib: str, job: type, data: BaseBackgroundJobData, scheduled_at: datetime):
|
48
45
|
job_data = BaseBackgroundJob.dumps(job, data.model_dump())
|
49
46
|
DelayedJob(
|
50
47
|
jib=jib,
|
51
|
-
created_at=datetime.
|
48
|
+
created_at=datetime.now(UTC),
|
52
49
|
scheduled_at=scheduled_at,
|
53
50
|
job_type=job.__name__,
|
54
51
|
data=json.dumps(job_data, ensure_ascii=False, default=datetime_converter)
|
lgt_jobs/smtp.py
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
from abc import ABC
|
2
2
|
import smtplib
|
3
3
|
from pydantic import BaseModel
|
4
|
-
from
|
4
|
+
from lgt_jobs.lgt_common.lgt_logging import log
|
5
5
|
from .basejobs import BaseBackgroundJobData, BaseBackgroundJob
|
6
6
|
from .env import smtp_login, smtp_password, smtp_host
|
7
7
|
|
@@ -1,26 +0,0 @@
|
|
1
|
-
lgt_jobs/__init__.py,sha256=pzjunSJcWLeoxyN7wYDovpRgm0I68Dc0l7N1ykZaWxc,2131
|
2
|
-
lgt_jobs/basejobs.py,sha256=LPEclvY6fIG17YMGy9pRK0Q58n62gkI5W1BTK6R2p-c,1234
|
3
|
-
lgt_jobs/env.py,sha256=yzZ3Z2zAlA8B9FAY1GGEz2pkN_IiFqL-Reql1_Ub5qg,639
|
4
|
-
lgt_jobs/main.py,sha256=g9cIpahGFXZZv6fsftbjrOhQMrrD04kxKOuPpxKk3rk,1545
|
5
|
-
lgt_jobs/runner.py,sha256=Gqh5EBiV-XHkERmlD4PCrk-47VCLmwCs7Hl9pEo6kyI,2204
|
6
|
-
lgt_jobs/simple_job.py,sha256=sta7MP-57iwRewPycmTAc9dvSbocbGjWhb1QYYj7ccA,519
|
7
|
-
lgt_jobs/smtp.py,sha256=W9OIkckBORAWEsNgIG3nVKs6OTU6esZNnq09WDsj8Lc,1352
|
8
|
-
lgt_jobs/jobs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
9
|
-
lgt_jobs/jobs/analytics.py,sha256=uL3_0xpS37VRJihTW1KiM_yhGGt1XV2yUNId_y-ISLk,972
|
10
|
-
lgt_jobs/jobs/archive_leads.py,sha256=wZ4LwbuC9G7NB16AO15YiMemEV40LoJVjd8VRqaFv9o,831
|
11
|
-
lgt_jobs/jobs/bot_stats_update.py,sha256=ZVeDxhVyDHiVFWIs1cGlEsu2WyF5P8mQClLT28C6hMA,6977
|
12
|
-
lgt_jobs/jobs/chat_history.py,sha256=i5OOkKT7yaEmSwnwK7Ym5xIFo3DyxBTfo1Sgsm1BoX0,4696
|
13
|
-
lgt_jobs/jobs/inbox_leads.py,sha256=1vwV45RU3vHZnlnmLdW6Mo_ZADyjDS1z2gDPb9cggY8,4738
|
14
|
-
lgt_jobs/jobs/mass_message.py,sha256=sRKHYTQ5cwNep7gsuZTSpAEh8Y5d6PJ5lTQ6XxjsVSQ,2028
|
15
|
-
lgt_jobs/jobs/send_code.py,sha256=eLvp6KhOBp4DW-p162xojOm62J_Jzs6kfxutWhobE8U,826
|
16
|
-
lgt_jobs/jobs/send_slack_message.py,sha256=QiXbd2Ff61gby_IcBdTr9M3ATll3YvBuaKoegGG_Mnc,2672
|
17
|
-
lgt_jobs/jobs/update_slack_profile.py,sha256=NIIQRnmrWWYgYz12GWq5on12vaAaXsydQ2QDdeKV7SM,2646
|
18
|
-
lgt_jobs/jobs/user_balance_update.py,sha256=7LkcpKMilxqUcCS1_OW51qQnaXvGBavkj0a-0_-gK2g,2352
|
19
|
-
lgt_jobs/jobs/workspace_connect.py,sha256=YpLkhnr1cajkCioPojuavLPKPQIRmAKJtT6uoi5IBwM,6973
|
20
|
-
lgt_jobs/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
21
|
-
lgt_jobs/services/web_client.py,sha256=D3y5KVVBk7mesRnsiByx4tFmNbfTOKOUoIp3VCHuk0I,1983
|
22
|
-
lgt_jobs/templates/new_message_mail_template.html,sha256=82XdDPtmkJVUWUcZtgd8bv_9-viAG2WWOnf3AhR6PeY,3635
|
23
|
-
leadguru_jobs-0.405.0.dist-info/METADATA,sha256=G4h25ivJ4PpH2gjg92mgPwSD15VVg0kI8zBluzD-pKc,1181
|
24
|
-
leadguru_jobs-0.405.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
25
|
-
leadguru_jobs-0.405.0.dist-info/top_level.txt,sha256=rIuw1DqwbnZyeoarBSC-bYeGOhv9mZBs7_afl9q4_JI,9
|
26
|
-
leadguru_jobs-0.405.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|