leadguru-jobs 0.310.0__tar.gz → 0.312.0__tar.gz

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.
Files changed (39) hide show
  1. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/PKG-INFO +3 -3
  2. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/leadguru_jobs.egg-info/PKG-INFO +3 -3
  3. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/leadguru_jobs.egg-info/SOURCES.txt +1 -0
  4. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/leadguru_jobs.egg-info/requires.txt +2 -2
  5. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/__init__.py +5 -0
  6. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/inbox_leads.py +4 -4
  7. leadguru_jobs-0.312.0/lgt_jobs/jobs/reindex_conversation_history.py +27 -0
  8. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/update_slack_profile.py +1 -1
  9. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/workspace_connect.py +0 -2
  10. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/setup.py +2 -2
  11. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/MANIFEST.in +0 -0
  12. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/README.md +0 -0
  13. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/leadguru_jobs.egg-info/dependency_links.txt +0 -0
  14. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/leadguru_jobs.egg-info/not-zip-safe +0 -0
  15. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/leadguru_jobs.egg-info/top_level.txt +0 -0
  16. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/basejobs.py +0 -0
  17. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/env.py +0 -0
  18. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/__init__.py +0 -0
  19. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/analytics.py +0 -0
  20. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/archive_leads.py +0 -0
  21. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/bot_stats_update.py +0 -0
  22. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/chat_history.py +0 -0
  23. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/clear_user_analytics.py +0 -0
  24. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/conversation_replied.py +0 -0
  25. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/mass_message.py +0 -0
  26. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/reactions_added.py +0 -0
  27. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/send_code.py +0 -0
  28. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/send_slack_message.py +0 -0
  29. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/jobs/user_balance_update.py +0 -0
  30. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/main.py +0 -0
  31. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/runner.py +0 -0
  32. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/services/__init__.py +0 -0
  33. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/services/web_client.py +0 -0
  34. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/simple_job.py +0 -0
  35. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/smtp.py +0 -0
  36. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/lgt_jobs/templates/new_message_mail_template.html +0 -0
  37. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/setup.cfg +0 -0
  38. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/tests/__init__.py +0 -0
  39. {leadguru_jobs-0.310.0 → leadguru_jobs-0.312.0}/tests/job_data_test.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: leadguru_jobs
3
- Version: 0.310.0
3
+ Version: 0.312.0
4
4
  Summary: LGT jobs builds
5
5
  Author-email: developer@leadguru.co
6
6
  Classifier: Development Status :: 5 - Production/Stable
@@ -20,8 +20,8 @@ Classifier: Topic :: Internet
20
20
  Requires-Dist: loguru
21
21
  Requires-Dist: pydantic
22
22
  Requires-Dist: cachetools>=3.1.0
23
- Requires-Dist: leadguru-common==0.340.0
24
- Requires-Dist: leadguru-data==0.347.0
23
+ Requires-Dist: leadguru-common==0.346.0
24
+ Requires-Dist: leadguru-data==0.353.0
25
25
  Requires-Dist: wheel
26
26
  Requires-Dist: setuptools
27
27
  Requires-Dist: twine
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: leadguru-jobs
3
- Version: 0.310.0
3
+ Version: 0.312.0
4
4
  Summary: LGT jobs builds
5
5
  Author-email: developer@leadguru.co
6
6
  Classifier: Development Status :: 5 - Production/Stable
@@ -20,8 +20,8 @@ Classifier: Topic :: Internet
20
20
  Requires-Dist: loguru
21
21
  Requires-Dist: pydantic
22
22
  Requires-Dist: cachetools>=3.1.0
23
- Requires-Dist: leadguru-common==0.340.0
24
- Requires-Dist: leadguru-data==0.347.0
23
+ Requires-Dist: leadguru-common==0.346.0
24
+ Requires-Dist: leadguru-data==0.353.0
25
25
  Requires-Dist: wheel
26
26
  Requires-Dist: setuptools
27
27
  Requires-Dist: twine
@@ -25,6 +25,7 @@ lgt_jobs/jobs/conversation_replied.py
25
25
  lgt_jobs/jobs/inbox_leads.py
26
26
  lgt_jobs/jobs/mass_message.py
27
27
  lgt_jobs/jobs/reactions_added.py
28
+ lgt_jobs/jobs/reindex_conversation_history.py
28
29
  lgt_jobs/jobs/send_code.py
29
30
  lgt_jobs/jobs/send_slack_message.py
30
31
  lgt_jobs/jobs/update_slack_profile.py
@@ -1,8 +1,8 @@
1
1
  loguru
2
2
  pydantic
3
3
  cachetools>=3.1.0
4
- leadguru-common==0.340.0
5
- leadguru-data==0.347.0
4
+ leadguru-common==0.346.0
5
+ leadguru-data==0.353.0
6
6
  wheel
7
7
  setuptools
8
8
  twine
@@ -9,6 +9,8 @@ from .jobs.archive_leads import (ArchiveLeadsJob, ArchiveLeadsJobData)
9
9
  from .jobs.bot_stats_update import (BotStatsUpdateJob, BotStatsUpdateJobData)
10
10
  from .jobs.chat_history import (LoadChatHistoryJob, LoadChatHistoryJobData)
11
11
  from .jobs.update_slack_profile import (UpdateUserSlackProfileJob, UpdateUserSlackProfileJobData)
12
+ from .jobs.reindex_conversation_history import ReIndexUserLeadsConversationHistoryJob,\
13
+ ReIndexUserLeadsConversationHistoryJobData
12
14
  from .jobs.clear_user_analytics import ClearUserAnalyticsJobData, ClearUserAnalyticsJob
13
15
  from .jobs.mass_message import SendMassMessageSlackChannelJob, SendMassMessageSlackChannelJobData
14
16
  from .basejobs import (BaseBackgroundJobData, BaseBackgroundJob, InvalidJobTypeException)
@@ -28,6 +30,7 @@ jobs_map = {
28
30
  "ReactionAddedJob": ReactionAddedJob,
29
31
  "SendSlackMessageJob": SendSlackMessageJob,
30
32
  "UpdateUserBalanceJob": UpdateUserBalanceJob,
33
+ "ReIndexUserLeadsConversationHistoryJob": ReIndexUserLeadsConversationHistoryJob,
31
34
  "ClearUserAnalyticsJob": ClearUserAnalyticsJob,
32
35
  "SendMassMessageSlackChannelJob": SendMassMessageSlackChannelJob,
33
36
  }
@@ -45,6 +48,7 @@ __all__ = [
45
48
  ReactionAddedJob,
46
49
  SendSlackMessageJob,
47
50
  UpdateUserBalanceJob,
51
+ ReIndexUserLeadsConversationHistoryJob,
48
52
  ClearUserAnalyticsJob,
49
53
  SendMassMessageSlackChannelJob,
50
54
 
@@ -64,6 +68,7 @@ __all__ = [
64
68
  ReactionAddedJobData,
65
69
  SendSlackMessageJobData,
66
70
  UpdateUserBalanceJobData,
71
+ ReIndexUserLeadsConversationHistoryJobData,
67
72
  ClearUserAnalyticsJobData,
68
73
  SendMassMessageSlackChannelJobData,
69
74
  # mapping
@@ -3,8 +3,8 @@ from lgt.common.python.lgt_logging import log
3
3
  from lgt.common.python.slack_client.web_client import SlackWebClient
4
4
  from lgt_data.enums import DefaultBoards
5
5
  from lgt_data.model import UserModel, DedicatedBotModel, SlackMemberInformation, UserLeadModel
6
- from lgt_data.mongo_repository import UserMongoRepository, DedicatedBotRepository, \
7
- SlackContactUserRepository, BoardsMongoRepository, UserContactsRepository
6
+ from lgt_data.mongo_repository import UserLeadMongoRepository, UserMongoRepository, DedicatedBotRepository, \
7
+ SlackContactUserRepository, BoardsMongoRepository
8
8
  from pydantic import BaseModel
9
9
  from ..basejobs import BaseBackgroundJob, BaseBackgroundJobData
10
10
  from ..services.web_client import V3ServerClient
@@ -56,8 +56,8 @@ class InboxLeadsJob(BaseBackgroundJob, ABC):
56
56
  messages = history.get('messages', [])
57
57
  log.info(f'[InboxLeadsJob]: Count of messages: {len(messages)} with {sender_id}')
58
58
  if messages:
59
- user_contact = UserContactsRepository().find_one(user.id, sender_id=sender_id)
60
- if not user_contact:
59
+ user_lead = UserLeadMongoRepository().get_lead(user.id, sender_id=sender_id)
60
+ if not user_lead:
61
61
  people = SlackContactUserRepository().find_one(sender_id)
62
62
  if not people:
63
63
  slack_profile = slack_client.get_profile(sender_id).get('user')
@@ -0,0 +1,27 @@
1
+ from abc import ABC
2
+ from typing import List
3
+ from lgt_data.model import UserLeadModel
4
+ from lgt_data.mongo_repository import UserLeadMongoRepository
5
+ from pydantic import BaseModel
6
+ from ..basejobs import BaseBackgroundJobData, BaseBackgroundJob
7
+
8
+ """
9
+ User Leads reindex conversation history
10
+ """
11
+
12
+
13
+ class ReIndexUserLeadsConversationHistoryJobData(BaseBackgroundJobData, BaseModel):
14
+ user_id: str
15
+
16
+
17
+ class ReIndexUserLeadsConversationHistoryJob(BaseBackgroundJob, ABC):
18
+ @property
19
+ def job_data_type(self) -> type:
20
+ return ReIndexUserLeadsConversationHistoryJobData
21
+
22
+ def exec(self, data: ReIndexUserLeadsConversationHistoryJobData):
23
+ leads: List[UserLeadModel] = UserLeadMongoRepository().get_leads(user_id=data.user_id, skip=0, limit=10000)
24
+ leads = [lead for lead in leads if hasattr(lead, "chat_history") and lead.chat_history]
25
+ for lead in leads:
26
+ index = "\n".join([message.text for message in lead.chat_history])
27
+ UserLeadMongoRepository().update_lead(data.user_id, lead.id, full_message_text=index)
@@ -27,7 +27,7 @@ class UpdateUserSlackProfileJob(BaseBackgroundJob, ABC):
27
27
  for bot in bots:
28
28
  if bot.invalid_creds:
29
29
  log.warning(
30
- f'User: {user.email} dedicated bot: {bot.name} credentials are invalid. '
30
+ f'User: {user.email} dedicated bot: {bot.source.source_id} credentials are invalid. '
31
31
  f'Not able to update user profile')
32
32
  continue
33
33
 
@@ -118,8 +118,6 @@ class ConnectSlackAccountJob(BaseBackgroundJob, ABC):
118
118
  slack_user.cookies)
119
119
  dedicated_bot.two_factor_required = workspace.two_factor_required
120
120
  dedicated_bot.banned = False
121
- dedicated_bot.source.source_name = workspace.domain
122
- dedicated_bot.registration_link = dedicated_bot.slack_url = workspace.url
123
121
  dedicated_bots_repository.add_or_update(dedicated_bot)
124
122
  BackgroundJobRunner.submit(BotStatsUpdateJob, BotStatsUpdateJobData(bot_id=str(dedicated_bot.id)))
125
123
 
@@ -24,8 +24,8 @@ install_requires = [
24
24
  'loguru',
25
25
  'pydantic',
26
26
  'cachetools>=3.1.0',
27
- 'leadguru-common==0.340.0',
28
- 'leadguru-data==0.347.0',
27
+ 'leadguru-common==0.346.0',
28
+ 'leadguru-data==0.353.0',
29
29
  'wheel',
30
30
  'setuptools',
31
31
  'twine',