letschatty 0.4.341__py3-none-any.whl → 0.4.342__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.
Files changed (82) hide show
  1. letschatty/models/ai_microservices/__init__.py +3 -3
  2. letschatty/models/ai_microservices/expected_output.py +29 -2
  3. letschatty/models/ai_microservices/lambda_events.py +137 -28
  4. letschatty/models/ai_microservices/lambda_invokation_types.py +3 -1
  5. letschatty/models/ai_microservices/n8n_ai_agents_payload.py +3 -1
  6. letschatty/models/analytics/events/__init__.py +3 -2
  7. letschatty/models/analytics/events/chat_based_events/ai_agent_execution_event.py +71 -0
  8. letschatty/models/analytics/events/chat_based_events/chat_funnel.py +13 -69
  9. letschatty/models/analytics/events/company_based_events/asset_events.py +2 -9
  10. letschatty/models/analytics/events/event_type_to_classes.py +3 -6
  11. letschatty/models/analytics/events/event_types.py +50 -9
  12. letschatty/models/chat/chat.py +2 -13
  13. letschatty/models/chat/chat_with_assets.py +1 -6
  14. letschatty/models/chat/client.py +2 -0
  15. letschatty/models/chat/continuous_conversation.py +1 -1
  16. letschatty/models/company/CRM/funnel.py +33 -365
  17. letschatty/models/company/__init__.py +1 -2
  18. letschatty/models/company/assets/ai_agents_v2/ai_agents_decision_output.py +1 -1
  19. letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_in_chat.py +4 -0
  20. letschatty/models/company/assets/ai_agents_v2/chatty_ai_mode.py +2 -2
  21. letschatty/models/company/assets/ai_agents_v2/get_chat_with_prompt_response.py +1 -0
  22. letschatty/models/company/assets/ai_agents_v2/pre_qualify_config.py +14 -2
  23. letschatty/models/company/assets/automation.py +19 -10
  24. letschatty/models/company/assets/chat_assets.py +2 -3
  25. letschatty/models/company/assets/company_assets.py +0 -2
  26. letschatty/models/company/assets/sale.py +3 -3
  27. letschatty/models/data_base/collection_interface.py +101 -29
  28. letschatty/models/data_base/mongo_connection.py +92 -9
  29. letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py +2 -4
  30. letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py +3 -4
  31. letschatty/models/utils/custom_exceptions/custom_exceptions.py +14 -1
  32. letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py +5 -2
  33. letschatty/services/chat/chat_service.py +11 -47
  34. letschatty/services/chatty_assets/__init__.py +12 -0
  35. letschatty/services/chatty_assets/asset_service.py +190 -13
  36. letschatty/services/chatty_assets/assets_collections.py +137 -0
  37. letschatty/services/chatty_assets/base_container.py +3 -2
  38. letschatty/services/chatty_assets/base_container_with_collection.py +35 -26
  39. letschatty/services/chatty_assets/collections/__init__.py +38 -0
  40. letschatty/services/chatty_assets/collections/ai_agent_collection.py +19 -0
  41. letschatty/services/chatty_assets/collections/ai_agent_in_chat_collection.py +32 -0
  42. letschatty/services/chatty_assets/collections/ai_component_collection.py +21 -0
  43. letschatty/services/chatty_assets/collections/chain_of_thought_collection.py +30 -0
  44. letschatty/services/chatty_assets/collections/chat_collection.py +21 -0
  45. letschatty/services/chatty_assets/collections/contact_point_collection.py +21 -0
  46. letschatty/services/chatty_assets/collections/fast_answer_collection.py +21 -0
  47. letschatty/services/chatty_assets/collections/filter_criteria_collection.py +18 -0
  48. letschatty/services/chatty_assets/collections/flow_collection.py +20 -0
  49. letschatty/services/chatty_assets/collections/product_collection.py +20 -0
  50. letschatty/services/chatty_assets/collections/sale_collection.py +20 -0
  51. letschatty/services/chatty_assets/collections/source_collection.py +21 -0
  52. letschatty/services/chatty_assets/collections/tag_collection.py +19 -0
  53. letschatty/services/chatty_assets/collections/topic_collection.py +21 -0
  54. letschatty/services/chatty_assets/collections/user_collection.py +20 -0
  55. letschatty/services/chatty_assets/example_usage.py +44 -0
  56. letschatty/services/chatty_assets/services/__init__.py +37 -0
  57. letschatty/services/chatty_assets/services/ai_agent_in_chat_service.py +73 -0
  58. letschatty/services/chatty_assets/services/ai_agent_service.py +23 -0
  59. letschatty/services/chatty_assets/services/chain_of_thought_service.py +70 -0
  60. letschatty/services/chatty_assets/services/chat_service.py +25 -0
  61. letschatty/services/chatty_assets/services/contact_point_service.py +29 -0
  62. letschatty/services/chatty_assets/services/fast_answer_service.py +32 -0
  63. letschatty/services/chatty_assets/services/filter_criteria_service.py +30 -0
  64. letschatty/services/chatty_assets/services/flow_service.py +25 -0
  65. letschatty/services/chatty_assets/services/product_service.py +30 -0
  66. letschatty/services/chatty_assets/services/sale_service.py +25 -0
  67. letschatty/services/chatty_assets/services/source_service.py +28 -0
  68. letschatty/services/chatty_assets/services/tag_service.py +32 -0
  69. letschatty/services/chatty_assets/services/topic_service.py +31 -0
  70. letschatty/services/chatty_assets/services/user_service.py +32 -0
  71. letschatty/services/continuous_conversation_service/continuous_conversation_helper.py +11 -0
  72. letschatty/services/events/__init__.py +6 -0
  73. letschatty/services/events/events_manager.py +218 -1
  74. letschatty/services/factories/analytics/ai_agent_event_factory.py +161 -0
  75. letschatty/services/factories/analytics/events_factory.py +66 -6
  76. letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py +25 -8
  77. letschatty/services/messages_helpers/get_caption_or_body_or_preview.py +6 -4
  78. letschatty/services/validators/analytics_validator.py +0 -11
  79. {letschatty-0.4.341.dist-info → letschatty-0.4.342.dist-info}/METADATA +1 -1
  80. {letschatty-0.4.341.dist-info → letschatty-0.4.342.dist-info}/RECORD +82 -46
  81. {letschatty-0.4.341.dist-info → letschatty-0.4.342.dist-info}/LICENSE +0 -0
  82. {letschatty-0.4.341.dist-info → letschatty-0.4.342.dist-info}/WHEEL +0 -0
@@ -1,6 +1,7 @@
1
1
  from typing import Optional, Dict, Any
2
2
  from datetime import datetime
3
3
  from ....models.analytics.events import *
4
+ from ....models.analytics.events.chat_based_events.ai_agent_execution_event import AIAgentExecutionEvent
4
5
  from ....models.base_models.chatty_asset_model import ChattyAssetModel
5
6
  from ....models.company.assets.chat_assets import AssignedAssetToChat
6
7
  from ....models.company.empresa import EmpresaModel
@@ -321,7 +322,7 @@ class EventFactory:
321
322
  return events
322
323
 
323
324
  @staticmethod
324
- def funnel_stage_events(chat_with_assets: ChatWithAssets, company_info: EmpresaModel, trace_id: str,executor_type: ExecutorType, executor_id: StrObjectId, chat_funnel: ChatFunnel, funnel_transition: StageTransition, event_type: EventType, time: datetime, company_snapshot: Optional[CompanyChatsSnapshot] = None, agent_snapshot: Optional[AgentChatsSnapshot] = None) -> List[Event]:
325
+ def funnel_stage_events(chat_with_assets: ChatWithAssets, company_info: EmpresaModel, trace_id: str,executor_type: ExecutorType, executor_id: StrObjectId, chat_funnel: ClientFunnel, funnel_transition: StageTransition, event_type: EventType, time: datetime, company_snapshot: Optional[CompanyChatsSnapshot] = None, agent_snapshot: Optional[AgentChatsSnapshot] = None) -> List[Event]:
325
326
  events = []
326
327
  base_data = EventFactory._create_base_customer_event_data(
327
328
  chat_with_assets=chat_with_assets,
@@ -334,10 +335,8 @@ class EventFactory:
334
335
  funnel_data = FunnelEventData(
335
336
  **base_data.model_dump(),
336
337
  funnel_id=chat_funnel.funnel_id,
337
- chat_funnel_id=chat_funnel.id,
338
- stage_transition=funnel_transition,
339
- time_in_funnel_seconds=chat_funnel.time_in_funnel_seconds,
340
- time_in_last_stage_seconds=chat_funnel.time_in_current_stage_seconds
338
+ funnel_stage_transition=funnel_transition,
339
+ time_in_funnel_seconds=chat_funnel.time_in_funnel_seconds
341
340
  )
342
341
  event = ChatFunnelEvent(
343
342
  specversion=EventFactory.package_version(),
@@ -613,4 +612,65 @@ class EventFactory:
613
612
  trace_id=trace_id
614
613
  )
615
614
  events.append(event)
616
- return events
615
+ return events
616
+
617
+ @staticmethod
618
+ def ai_agent_execution_event(
619
+ event_type: EventType,
620
+ chat_id: StrObjectId,
621
+ company_id: StrObjectId,
622
+ frozen_company_name: str,
623
+ ai_agent_id: StrObjectId,
624
+ chain_of_thought_id: StrObjectId,
625
+ trigger: str,
626
+ source: str = "chatty.api",
627
+ decision_type: Optional[str] = None,
628
+ error_message: Optional[str] = None,
629
+ duration_ms: Optional[int] = None,
630
+ user_rating: Optional[int] = None,
631
+ metadata: Optional[Dict[str, Any]] = None,
632
+ trace_id: Optional[str] = None
633
+ ) -> AIAgentExecutionEvent:
634
+ """
635
+ Create an AI agent execution event using the modularized AIAgentEventFactory.
636
+
637
+ This method delegates to AIAgentEventFactory to maintain modularity while
638
+ keeping event creation centralized through EventsFactory.
639
+
640
+ Args:
641
+ event_type: The type of event (from EventType enum)
642
+ chat_id: ID of the chat where the event occurred
643
+ company_id: ID of the company
644
+ frozen_company_name: Company name snapshot for analytics
645
+ ai_agent_id: ID of the AI agent asset
646
+ chain_of_thought_id: ID of the chain of thought execution
647
+ trigger: What triggered the execution (USER_MESSAGE, FOLLOW_UP, etc.)
648
+ source: Event source (e.g., 'chatty.api', 'chatty.lambda')
649
+ decision_type: Type of decision if applicable
650
+ error_message: Error message if this is an error event
651
+ duration_ms: Duration of the operation in milliseconds
652
+ user_rating: User rating (1-5 stars) if applicable
653
+ metadata: Additional event-specific data
654
+ trace_id: Trace ID for tracking event flows
655
+
656
+ Returns:
657
+ AIAgentExecutionEvent ready to be queued to EventBridge
658
+ """
659
+ from .ai_agent_event_factory import AIAgentEventFactory
660
+
661
+ return AIAgentEventFactory.create_event(
662
+ event_type=event_type,
663
+ chat_id=chat_id,
664
+ company_id=company_id,
665
+ frozen_company_name=frozen_company_name,
666
+ ai_agent_id=ai_agent_id,
667
+ chain_of_thought_id=chain_of_thought_id,
668
+ trigger=trigger,
669
+ source=source,
670
+ decision_type=decision_type,
671
+ error_message=error_message,
672
+ duration_ms=duration_ms,
673
+ user_rating=user_rating,
674
+ metadata=metadata,
675
+ trace_id=trace_id
676
+ )
@@ -1,8 +1,8 @@
1
1
 
2
2
  from letschatty.models import StrObjectId
3
- from letschatty.models.ai_microservices.lambda_events import DoubleCheckerForIncomingMessagesAnswerCallbackEvent, DoubleCheckerForIncomingMessagesAnswerEvent, FixBuggedAiAgentsCallsInChatsEvent, QualityTestEventData, QualityTestsForUpdatedAIComponentEvent, QualityTestsForUpdatedAIComponentEventData
3
+ from letschatty.models.ai_microservices.lambda_events import DoubleCheckerForIncomingMessagesAnswerCallbackEvent, DoubleCheckerForIncomingMessagesAnswerEvent, FixBuggedAiAgentsCallsInChatsEvent, GetChainOfThoughtsByChatIdEvent, GetChatWithPromptForFollowUpEvent, GetChatWithPromptForIncomingMessageEvent, QualityTestEventData, QualityTestsForUpdatedAIComponentEvent, QualityTestsForUpdatedAIComponentEventData, ManualTriggerEvent, CancelExecutionEvent, AssignAIAgentToChatEvent, RemoveAIAgentFromChatEvent, UpdateAIAgentModeInChatEvent, EscalateAIAgentInChatEvent, UnescalateAIAgentInChatEvent, SmartFollowUpDecisionOutputEvent
4
4
  from letschatty.models.ai_microservices.lambda_invokation_types import InvokationType
5
- from letschatty.models.ai_microservices import AllQualityTestEvent, AllQualityTestEventData, FollowUpEvent, IncomingMessageEvent, QualityTestEvent, QualityTestInteractionCallbackEvent, SmartTaggingCallbackEvent, IncomingMessageCallbackEvent, QualityTestCallbackEvent, LambdaAiEvent, SmartTaggingEvent, SmartTaggingPromptEvent
5
+ from letschatty.models.ai_microservices import AllQualityTestEvent, AllQualityTestEventData, QualityTestEvent, QualityTestInteractionCallbackEvent, SmartTaggingCallbackEvent, QualityTestCallbackEvent, LambdaAiEvent, SmartTaggingEvent, SmartTaggingPromptEvent
6
6
  from letschatty.models.base_models.ai_agent_component import AiAgentComponent
7
7
  from letschatty.models.company.assets.ai_agents_v2.chat_example import ChatExample
8
8
  from letschatty.models.company.assets.ai_agents_v2.chat_example_test import ChatExampleTestCase
@@ -19,16 +19,10 @@ class LambdaEventFactory:
19
19
  return SmartTaggingEvent(**event_data)
20
20
  case InvokationType.SMART_TAGGING_CALLBACK:
21
21
  return SmartTaggingCallbackEvent(**event_data)
22
- case InvokationType.INCOMING_MESSAGE:
23
- return IncomingMessageEvent(**event_data)
24
22
  case InvokationType.SINGLE_QUALITY_TEST:
25
23
  return QualityTestEvent(**event_data)
26
24
  case InvokationType.ALL_QUALITY_TEST:
27
25
  return AllQualityTestEvent(**event_data)
28
- case InvokationType.INCOMING_MESSAGE_CALLBACK:
29
- return IncomingMessageCallbackEvent(**event_data)
30
- case InvokationType.FOLLOW_UP:
31
- return FollowUpEvent(**event_data)
32
26
  case InvokationType.SINGLE_QUALITY_TEST_CALLBACK:
33
27
  return QualityTestCallbackEvent(**event_data)
34
28
  case InvokationType.SMART_TAGGING_PROMPT:
@@ -41,6 +35,29 @@ class LambdaEventFactory:
41
35
  return DoubleCheckerForIncomingMessagesAnswerEvent(**event_data)
42
36
  case InvokationType.DOUBLE_CHECKER_FOR_INCOMING_MESSAGES_ANSWER_CALLBACK:
43
37
  return DoubleCheckerForIncomingMessagesAnswerCallbackEvent(**event_data)
38
+ case InvokationType.GET_CHAT_WITH_PROMPT_INCOMING_MESSAGE:
39
+ return GetChatWithPromptForIncomingMessageEvent(**event_data)
40
+ case InvokationType.GET_CHAT_WITH_PROMPT_FOLLOW_UP:
41
+ return GetChatWithPromptForFollowUpEvent(**event_data)
42
+ case InvokationType.MANUAL_TRIGGER:
43
+ return ManualTriggerEvent(**event_data)
44
+ case InvokationType.CANCEL_EXECUTION:
45
+ return CancelExecutionEvent(**event_data)
46
+ case InvokationType.ASSIGN_AI_AGENT_TO_CHAT:
47
+ return AssignAIAgentToChatEvent(**event_data)
48
+ case InvokationType.REMOVE_AI_AGENT_FROM_CHAT:
49
+ return RemoveAIAgentFromChatEvent(**event_data)
50
+ case InvokationType.UPDATE_AI_AGENT_MODE_IN_CHAT:
51
+ return UpdateAIAgentModeInChatEvent(**event_data)
52
+ case InvokationType.ESCALATE_AI_AGENT_IN_CHAT:
53
+ return EscalateAIAgentInChatEvent(**event_data)
54
+ case InvokationType.UNESCALATE_AI_AGENT_IN_CHAT:
55
+ return UnescalateAIAgentInChatEvent(**event_data)
56
+ case InvokationType.GET_CHAIN_OF_THOUGHTS_BY_CHAT_ID:
57
+ return GetChainOfThoughtsByChatIdEvent(**event_data)
58
+ case InvokationType.SMART_FOLLOW_UP_DECISION_OUTPUT:
59
+ return SmartFollowUpDecisionOutputEvent(**event_data)
60
+
44
61
  case _:
45
62
  raise ValueError(f"Invalid event type: {event_type}")
46
63
 
@@ -1,3 +1,4 @@
1
+ from letschatty.models.messages.chatty_messages.button import ChattyContentButton
1
2
  from ...models.messages.chatty_messages.schema import ChattyContent, ChattyContentText, ChattyContentContacts, ChattyContentLocation, ChattyContentImage, ChattyContentVideo, ChattyContentAudio, ChattyContentDocument, ChattyContentSticker, ChattyContentReaction
2
3
  class MessageTextOrCaptionOrPreview:
3
4
  @staticmethod
@@ -5,9 +6,9 @@ class MessageTextOrCaptionOrPreview:
5
6
  if isinstance(message_content, ChattyContentText):
6
7
  return message_content.body
7
8
  elif isinstance(message_content, ChattyContentContacts):
8
- return "👥 Mensaje de tipo contacto"
9
- elif isinstance(message_content, ChattyContentLocation):
10
- return "📍 Mensaje de tipo ubicación"
9
+ return f"👤 *Contacto recibido:* {message_content.contacts[0].full_name} \n📞 *Teléfono:* {message_content.contacts[0].phone_number}"
10
+ elif isinstance(message_content, ChattyContentLocation):
11
+ return f"📍 \nLatitud: {message_content.latitude} \nLongitud: {message_content.longitude}_"
11
12
  elif isinstance(message_content, ChattyContentImage):
12
13
  return "🖼️ Mensaje de tipo imagen"
13
14
  elif isinstance(message_content, ChattyContentVideo):
@@ -22,6 +23,7 @@ class MessageTextOrCaptionOrPreview:
22
23
  return "😀 Mensaje de tipo sticker"
23
24
  elif isinstance(message_content, ChattyContentReaction):
24
25
  return "❤️ Mensaje de tipo reacción"
26
+ elif isinstance(message_content, ChattyContentButton):
27
+ return f"{message_content.payload}"
25
28
  else:
26
-
27
29
  return "Vista previa del mensaje"
@@ -10,10 +10,6 @@ if TYPE_CHECKING:
10
10
 
11
11
  class SourcesAndTopicsValidator:
12
12
  """This class provides methods to validate sources and topics."""
13
- @staticmethod
14
- def normalize_source_name(name: str) -> str:
15
- return name.strip().lower()
16
-
17
13
  @staticmethod
18
14
  def source_validation_check(sources : Dict[str,Source], topics : Dict[str,Topic], source : Source, existing_source_id : str | None = None) -> None:
19
15
  """Checks validation of a source against other sources and topics."""
@@ -32,16 +28,9 @@ class SourcesAndTopicsValidator:
32
28
  """This method checks that no duplicated source is created.
33
29
  For Pure Ads, it checks that the ad_id is unique and doesn't exist already.
34
30
  For Other Sources, it checks that exact trigger doesn't exist already. """
35
- normalized_name = SourcesAndTopicsValidator.normalize_source_name(source.name)
36
- existing_source_name = None
37
- if existing_source_id and existing_source_id in sources:
38
- existing_source_name = SourcesAndTopicsValidator.normalize_source_name(sources[existing_source_id].name)
39
- should_check_name = existing_source_name is None or normalized_name != existing_source_name
40
31
  for source_id, source_to_check in sources.items():
41
32
  if source_id == existing_source_id:
42
33
  continue
43
- if should_check_name and SourcesAndTopicsValidator.normalize_source_name(source_to_check.name) == normalized_name:
44
- raise ConflictedSource(f":warning: *Conflict while adding source: Name already exists* \n New source '{source.name}' \n- Id {source.id} \n Existing source '{source_to_check.name}' \n- Id {source_to_check.id}", conflicting_source_id=source_to_check.id)
45
34
  if source == source_to_check: #type: ignore
46
35
  if isinstance(source, OtherSource):
47
36
  raise ConflictedSource(f":warning: *Conflict while adding source: Trigger already exists* \n New source '{source.name}' \n- Id {source.id} \n- Trigger {source.trigger[:30]} \n Existing source '{source_to_check.name}' \n- Id {source_to_check.id} \n- Trigger '{source_to_check.trigger[:30]}'", conflicting_source_id=source_to_check.id)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: letschatty
3
- Version: 0.4.341
3
+ Version: 0.4.342
4
4
  Summary: Models and custom classes to work across the Chattyverse
5
5
  License: MIT
6
6
  Author: Axel
@@ -1,19 +1,20 @@
1
1
  letschatty/__init__.py,sha256=6dGYdy5edB1dHdgvpqUpENZ347CpIyWgR1CsGYwPSk8,45
2
2
  letschatty/models/__init__.py,sha256=obWHa796C-O1mqo_lk22KhUC2ODVvG7cICY3Lo-AqJg,126
3
- letschatty/models/ai_microservices/__init__.py,sha256=h0xLiuU1wfHpDl1oKCzVKUef3ROYU7qIyVxBsdcdZe0,641
4
- letschatty/models/ai_microservices/expected_output.py,sha256=PWXvmGiOhqAuOVCZHhfvUMzb8BwSnAoys4CReJ9dIK4,9441
5
- letschatty/models/ai_microservices/lambda_events.py,sha256=ELIjD95MM4t1EdeHUTxCT8qkUWJFwqu9Q9dwGnQQxWE,14626
6
- letschatty/models/ai_microservices/lambda_invokation_types.py,sha256=KWvXFvHhwYMaAIHbGpdW8AYE0eqrfCgZ_28jIyGXoME,1918
7
- letschatty/models/ai_microservices/n8n_ai_agents_payload.py,sha256=E5tu2UcSJCybMSvxfZG3JIxSxHbTBbjdRE74cnRtlGY,696
3
+ letschatty/models/ai_microservices/__init__.py,sha256=Ijt8hsCpqZoAlUNPfj8O2gE4zCwEGshio4THxdMT06c,601
4
+ letschatty/models/ai_microservices/expected_output.py,sha256=oEaTE4Y9lgRog0GmW20b5xdLl9Yiq6Ln_H2_0r1dGvQ,10956
5
+ letschatty/models/ai_microservices/lambda_events.py,sha256=uh0gPVf9iP5FkWagxJjxy2pQQxdaud2TNoovIROFKD0,18449
6
+ letschatty/models/ai_microservices/lambda_invokation_types.py,sha256=qvwEj2Cn9Pe0WSxi4I7pwdD9qbLSu_i3c_ZVhUjYxR4,2033
7
+ letschatty/models/ai_microservices/n8n_ai_agents_payload.py,sha256=yV7WhAdnIOxWymrUTYJiDLH71A5mSUsX2gac8oAAGJw,882
8
8
  letschatty/models/ai_microservices/openai_payloads.py,sha256=HauUGf4c37khJJsKyH4ikxzHKboGWnerjDQgDOnMFrY,271
9
9
  letschatty/models/analytics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
- letschatty/models/analytics/events/__init__.py,sha256=LtbKa54_Um7LFKyn-nQ30efHuR4et-aOVFTg3K0Ova4,2096
10
+ letschatty/models/analytics/events/__init__.py,sha256=5tfg-EiGLV1wzUFcIGbE32Er1wsie0lBwTV-z-aQqn0,2189
11
11
  letschatty/models/analytics/events/base.py,sha256=vmRnowUYot4OjYyqVjevGY9kF3Kb47IDkMJgJRwvcfU,1793
12
12
  letschatty/models/analytics/events/chat_based_events/ai_agent_chat.py,sha256=Ac6Llg2IFM0lftCkAErThjd283f_AEYqg76OkNnihuM,1681
13
+ letschatty/models/analytics/events/chat_based_events/ai_agent_execution_event.py,sha256=Rr8LoVNANDLJJeki3CiD7gOVOlruh-Kjt3L5xBKbST0,2888
13
14
  letschatty/models/analytics/events/chat_based_events/business_area.py,sha256=YZgIejCzbryySxolMSgvCFMuRggMcwBJ-jeQKdEshvM,904
14
15
  letschatty/models/analytics/events/chat_based_events/chat_based_event.py,sha256=YDXzX78jZgxuPFkTqipXFAo6G0-ajl_RkJISsjM9YJU,1469
15
16
  letschatty/models/analytics/events/chat_based_events/chat_context.py,sha256=Y6VfYorrKurbUgWtIPOsfNMbGQbuTPR5wQQLrbBxD9Q,2226
16
- letschatty/models/analytics/events/chat_based_events/chat_funnel.py,sha256=LX_lcOn1R2VhdffdZeuc7S87PcoHBhEuppWaBXFP6tY,4184
17
+ letschatty/models/analytics/events/chat_based_events/chat_funnel.py,sha256=HmasWF9auAZPvwQRuYyHZvGG8jmqx9TXgiRGD71-m3Y,1699
17
18
  letschatty/models/analytics/events/chat_based_events/chat_status.py,sha256=9vt8GP6QnMrUuJF-AbUQm68Nkc0Zgexmnb-T1k8tsD4,2222
18
19
  letschatty/models/analytics/events/chat_based_events/contact_point.py,sha256=IIzf0EkgxUJKr7vqnv95LHEy0wQA9sVchHZA7Yi0H88,1944
19
20
  letschatty/models/analytics/events/chat_based_events/continuous_conversation.py,sha256=4Tbv83Zk5RIoUu6pKYpQdWMtxz9XZi26V-j5OSBP91U,2305
@@ -25,11 +26,11 @@ letschatty/models/analytics/events/chat_based_events/quality_scoring.py,sha256=f
25
26
  letschatty/models/analytics/events/chat_based_events/sale.py,sha256=WqpFp10h8yZwa5S5T4NCWCRLcBgkAAAME_CKmCv6K7M,1738
26
27
  letschatty/models/analytics/events/chat_based_events/tag_chat.py,sha256=7f1MaNdst-KN8-aIzgzyc6oBES-y8kkH5jVrsOOcxBs,1418
27
28
  letschatty/models/analytics/events/chat_based_events/workflow.py,sha256=BZQN2JDIgCVr2VbdcLg3O0J69SL_yPqGgMXzzNCId4E,1399
28
- letschatty/models/analytics/events/company_based_events/asset_events.py,sha256=EtVhl_W3wxkJhflbyk4NQraxAdpLeuesc9IfyOC5QV8,3490
29
+ letschatty/models/analytics/events/company_based_events/asset_events.py,sha256=eY5x3fvEzvvxZZdfTz6dvABcbU629Nx-9xwYLslbZ4U,3151
29
30
  letschatty/models/analytics/events/company_based_events/company_events.py,sha256=PZAiw2imo706iM0EaCxnIaiFchMKivbwjKd7gsozA8k,1673
30
31
  letschatty/models/analytics/events/company_based_events/user_events.py,sha256=ZUoBaS60s63SoTUOUunLpojP1BQ9Cdl4sl_KdgY6NGI,2466
31
- letschatty/models/analytics/events/event_type_to_classes.py,sha256=mjE45PLLNAuXIoCuIQaOMSxu-Z3NkIhQYk5y5NOOdOw,4331
32
- letschatty/models/analytics/events/event_types.py,sha256=kubeWq3ICqFnrM6rm1UNJJIveQy8lfb0KpM2o1aY6Wk,5471
32
+ letschatty/models/analytics/events/event_type_to_classes.py,sha256=qgagTKKm9cccQAYnC5g5ilOHdV9dG5J384fzZPoSTUU,4188
33
+ letschatty/models/analytics/events/event_types.py,sha256=FJgvslvTtU00F8rIIQ3pE3L3ifOBNSbzOiGCk1jRZMY,8294
33
34
  letschatty/models/analytics/metrics/__init_.py,sha256=DnGDYvEn9S1sSMe56e7mwE5r013nO-Fsf0pgBnf9RjI,276
34
35
  letschatty/models/analytics/metrics/daily_contact_points.py,sha256=eWwUmhFpL-Xn5sWQWCcACrulb4xwjMY80jDSAWsTMb4,1524
35
36
  letschatty/models/analytics/metrics/daily_new_chats.py,sha256=kTsQFDFwavTq3u7HcHx3RqZ_O517HqTrOD-k8q4JQz0,322
@@ -63,11 +64,11 @@ letschatty/models/base_models/update_model_interface.py,sha256=80YuvkEM5Rd3Ycysq
63
64
  letschatty/models/base_models/validate_timestamps_and_id.py,sha256=WRtaoW2EYtItgZjnNOYAffxy9K7M_NMNJ5imRN8Iu80,1971
64
65
  letschatty/models/channels/channel.py,sha256=Mgqigm-3uRDozxBIZZYj62PQwtnB0rAKoY2JS4477n8,2029
65
66
  letschatty/models/chat/assets_assigned_to_chat.py,sha256=nAdSzRvUSWa8-Plw6KZKnpUxxjCdWs_grml0bhskSis,192
66
- letschatty/models/chat/chat.py,sha256=P6c8JGutMsk5GF526s0RxnT_F6oBclofPtTzjcnNUrc,16749
67
+ letschatty/models/chat/chat.py,sha256=NJcahnCHmY_RLUP6oKQEuEn1J8ycUsIkc7OruQmn1zs,16137
67
68
  letschatty/models/chat/chat_status_modifications.py,sha256=LcwXNl4WRllPI_ZYKcg5ANRjmSk4Cykkra0naayMAt4,317
68
- letschatty/models/chat/chat_with_assets.py,sha256=K4UUwdfLw_Q0ZNHdeoqavqyHkZwisAQOi1OPMBYszOU,814
69
- letschatty/models/chat/client.py,sha256=oa7PM76V-OiBJL4T-IMytPW0WZdtvh9vFZhNtRQvt6Q,2196
70
- letschatty/models/chat/continuous_conversation.py,sha256=hoRYOMd_vfYglTGVw30yKS5Ogt5mLcsgDySrfHEli6o,4529
69
+ letschatty/models/chat/chat_with_assets.py,sha256=AvpcKz5zyiIxfnLjyVx8JSX9c0UQFhVKoACnyW0bu4Q,574
70
+ letschatty/models/chat/client.py,sha256=qMaa-s65lBHMXOpSO2XRtKYeEki7Rr3E79ocKI5kcC4,2299
71
+ letschatty/models/chat/continuous_conversation.py,sha256=IgYrvY9ckFzC7DoljdE9ynvJWqH3iAwyGnHvOn03EQ0,4513
71
72
  letschatty/models/chat/filter_parameters.py,sha256=X1IHBYCJr_1y4R8syQYEwKhintdUZc-ZiB_8kSnjiYw,4489
72
73
  letschatty/models/chat/flow_link_state.py,sha256=RblDBp6uD-P0ZtaQn1-HzL1EpEgtVhN1rT3iBhO0gMw,5458
73
74
  letschatty/models/chat/highlight.py,sha256=bUpXSMvwoTKiDa6AWDRKfMYxv5d6sax7soNtc8rAtpo,555
@@ -77,35 +78,35 @@ letschatty/models/chat/scheduled_messages.py,sha256=6z9XXgXUV6lPW8BalAZ4-MsmT8Zn
77
78
  letschatty/models/chat/temporary_chat.py,sha256=MR68vYrNvoyf40cLs2p5NnI8BNeN1VGTMAcuQw8j9RA,2303
78
79
  letschatty/models/chat/time_left.py,sha256=2uA9dS_0QAVnWn7Q2wIwGe4tMrlYBP9qySC7M8I0jb8,3307
79
80
  letschatty/models/company/CRM/business_area.py,sha256=U0F_7Rbq-e5tMSj_MugPqMHm2-IHxbAKbN0PWZ_93-o,296
80
- letschatty/models/company/CRM/funnel.py,sha256=gBGZhud060sK5QFI5y9NgmFuhLCOAtzK81TKBhK2gxE,15820
81
- letschatty/models/company/__init__.py,sha256=N_I-kRMHrtnp00c_bbFSiYYM47HJRS-d5slgtbexsl4,229
81
+ letschatty/models/company/CRM/funnel.py,sha256=Sn39LUJsrGLAhUFOdhHk5E3yblI1-RDlyCG_VRpOwxo,2510
82
+ letschatty/models/company/__init__.py,sha256=5D1Ya_ZRGq2sLf9MXXTLZwGcrZPzo87t1NhRKS7Tw6o,140
82
83
  letschatty/models/company/assets/__init__.py,sha256=z0xN_lt1D76bXt8DXVdbH3GkofUPQPZU9NioRSLt_lI,244
83
84
  letschatty/models/company/assets/ai_agents_v2/ai_agent_message_draft.py,sha256=xbshA34RSjHm2g8J7hW2FkWo-Qm8MH2HTbcRcoYmyvc,2076
84
- letschatty/models/company/assets/ai_agents_v2/ai_agents_decision_output.py,sha256=aEKZCOsGiFFPSx23fkS5Khfsxo-r8JGk3O0sxiGs8T0,5876
85
+ letschatty/models/company/assets/ai_agents_v2/ai_agents_decision_output.py,sha256=Bgca167vDr9TNP56nTJykj6I8uLB70D6TcgCchByahA,5866
85
86
  letschatty/models/company/assets/ai_agents_v2/chain_of_thought_in_chat.py,sha256=xK7IbM_sEN7_-SZXcgiRyALq6IjYaJ-ivq9BE8B8Bdg,6129
86
87
  letschatty/models/company/assets/ai_agents_v2/chat_example.py,sha256=yCKt6ifNYch3C78zAvj8To0_Sb9CPAZ8sC-hyoBPa4s,1816
87
88
  letschatty/models/company/assets/ai_agents_v2/chat_example_test.py,sha256=vChD-TkX1ORRD9LMbd2HlpbK4QyrsfhDiJd-LDjIqlk,4618
88
89
  letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent.py,sha256=R2rCANri8ZiqnmPP10PWoanGddMImCMxrl78Y6d-194,8204
89
90
  letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_config_for_automation.py,sha256=W8orpgp-yG8OHNWGQ16jMv-VgM_Z-Hk0q8PtC0KT2KU,388
90
- letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_in_chat.py,sha256=akCa10TtiJ1wsL33z4uxSwhZyyinnJZmdlYJ9csLak8,14470
91
- letschatty/models/company/assets/ai_agents_v2/chatty_ai_mode.py,sha256=CKlKI3t_D5eWJPn6hRvN4_V8Wu6W8c0x_EFQlpA50F4,2521
91
+ letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_in_chat.py,sha256=p-Mys4XM0kppdETj__gCa0ddQmS93S_evVYTrha4eCc,14630
92
+ letschatty/models/company/assets/ai_agents_v2/chatty_ai_mode.py,sha256=fnmExsywjDk5stMcgpHF-8W5lLy-5ReCm02HaQ6Ae98,2309
92
93
  letschatty/models/company/assets/ai_agents_v2/context_item.py,sha256=9629_sJ4vjfF6--KR44E6lqVpc0uOGSlcorKS5ooSXU,438
93
94
  letschatty/models/company/assets/ai_agents_v2/faq.py,sha256=qL-sr17ALvJ9PEzpaXpYL91-bQ9Np3C4jCYe-zfot6o,457
94
95
  letschatty/models/company/assets/ai_agents_v2/follow_up_strategy.py,sha256=qVWim6qSrwoiWzPg5EqgqiqebXICRikFLx8-YQePLx0,3549
95
- letschatty/models/company/assets/ai_agents_v2/get_chat_with_prompt_response.py,sha256=r4WpTu4ZXdG6qazHWUed0WhWY0L63UZnD6plvHLD0ns,1414
96
+ letschatty/models/company/assets/ai_agents_v2/get_chat_with_prompt_response.py,sha256=-8xb2MWPvul3CCFp4yVb_C1uL7i4lmHJ5sBOKPZJURU,1500
96
97
  letschatty/models/company/assets/ai_agents_v2/knowleadge_base_components.py,sha256=ooC-odECa2KkMOqBfiJeLAWCRkLK0EMmc7fcg3YCAbQ,676
97
98
  letschatty/models/company/assets/ai_agents_v2/n8n_agents_info.py,sha256=UNsYXznXr2yj9J_zylZTMPrU5hjkkVgHAaIP2etpZRM,383
98
99
  letschatty/models/company/assets/ai_agents_v2/n8n_schema_incoming_message_output.json,sha256=_NERM9gJ4Ry8NFVb8mHxRmdv0GfBrHdtmKxVJWmTUrY,2102
99
100
  letschatty/models/company/assets/ai_agents_v2/n8n_schema_smart_follow_up_output.json,sha256=QAPRJXin-sE9NxQBHmmErSYHL6dQzmu4i0HEFSSXOi4,2350
100
- letschatty/models/company/assets/ai_agents_v2/pre_qualify_config.py,sha256=o9kKywbnm1lEliTTV0G7oSCFroyqp_w0GkypL--sSk4,4181
101
+ letschatty/models/company/assets/ai_agents_v2/pre_qualify_config.py,sha256=tXsUXWB4d_SeY1ip9aMZzmkAftaNP3CMlW3_04xArcM,4761
101
102
  letschatty/models/company/assets/ai_agents_v2/statuses.py,sha256=nhIGfeKednLNFZCIMavbZptT_9L-HDDVshAyCLdwPe8,1109
102
103
  letschatty/models/company/assets/assignment/__init__.py,sha256=eWYZfaDQde5OJNIDed8D-LNRXOa5O_O4mGMToNFtaW8,239
103
104
  letschatty/models/company/assets/assignment/assignment_assets.py,sha256=phIJqNh4UGTU-Hux_kaOYhJm2GCqv37AnCGePSDVKmM,2245
104
- letschatty/models/company/assets/automation.py,sha256=RQFOvM-lipBdalfsRSZ8K5opytVgq_GS6YSR0Mz5Qs8,1639
105
- letschatty/models/company/assets/chat_assets.py,sha256=kUnV1ngN1OA7AgED85ue91TOiFT1Fmf3LDOPbHAf460,8016
105
+ letschatty/models/company/assets/automation.py,sha256=QDMCHm--85tEGUwddjWGeUSxmCT27HiH8lRm4w4DJLE,1871
106
+ letschatty/models/company/assets/chat_assets.py,sha256=26FX3hOgJF3ogxfYvhhBHJUfXMFtVHapgd8XsFStoU4,7934
106
107
  letschatty/models/company/assets/chatty_fast_answers/__init__.py,sha256=tbgWS0n1i0nVi9f79U44GPRnrW25NKcjl6Port92alk,48
107
108
  letschatty/models/company/assets/chatty_fast_answers/chatty_fast_answer.py,sha256=PxW3eStHXo0BY7Z9hMDqBTHmgO7XcwtOvEpwXi-rA5g,1076
108
- letschatty/models/company/assets/company_assets.py,sha256=9Or3hdUsWO0YCLqlwUb0Zcm_c5OerJqDx7rrrUK4_-E,800
109
+ letschatty/models/company/assets/company_assets.py,sha256=YKRo_uXhQYRQ8HvMf4HhrHTBC2zp7xlE_B0nqSMfMFY,726
109
110
  letschatty/models/company/assets/contact_point.py,sha256=2-C00CwQTAQkofQ4ufr5_nJPoxauOXZSDtyL-nj-hF8,2916
110
111
  letschatty/models/company/assets/filter_criteria.py,sha256=5hYhHWz5hoMyIURHML2XPZo_Bl66Cyvbh8caVPgdAvE,2283
111
112
  letschatty/models/company/assets/flow.py,sha256=mYKB6DG_DHSJymoTpeXm15OWsWI1OP4rkzvMg8AeYzY,1198
@@ -116,7 +117,7 @@ letschatty/models/company/assets/launch/subscription.py,sha256=BnZuNK0jMOzn0s9zg
116
117
  letschatty/models/company/assets/media/__init__.py,sha256=o22MHvoqGBUeG1P383KfBfsu-Fg0YdVh9FYeNB1j14s,38
117
118
  letschatty/models/company/assets/media/file.py,sha256=MFhTNe8zsgjR1zMm2UIAznp4vtD4U12UMfu7mjFIGfE,1902
118
119
  letschatty/models/company/assets/product.py,sha256=02eAZlE74nRzwOPAmbCHkQj7czVNgEtJQNzWxSBPP_w,2406
119
- letschatty/models/company/assets/sale.py,sha256=8YiZoRHA0l6-JHX4N0jDe8PDu5Kkw1O2tZLDNOGL8p8,1143
120
+ letschatty/models/company/assets/sale.py,sha256=OG9tGesyajvhXNyjSgOPc8EMcAVlqoaqAVflMKBzWa4,1078
120
121
  letschatty/models/company/assets/tag.py,sha256=P1jRAvaebEtdAUs-07sRbCK25vmS6Q5NNtH7UX7bK-0,1008
121
122
  letschatty/models/company/assets/users/agent_chats_snapshot.py,sha256=CTNRN8p9HE57bvxI8MbO2krg8KD3yIo3PmFjIV0iVWg,568
122
123
  letschatty/models/company/assets/users/user.py,sha256=JWABDnvc9qhFnFcqBWSH2OAmVny37pUMBxo2CJGOMtA,9019
@@ -132,8 +133,8 @@ letschatty/models/company/integrations/shopify/shopify_product_sync_status.py,sh
132
133
  letschatty/models/company/notifications/notification.py,sha256=wE7rIi21nZno6jjIxajMz4e7OJbzrDHjH1KdkNzJiF8,1907
133
134
  letschatty/models/copilot/links.py,sha256=mcddNR6WdWOoOr3NgDl_FElxF15SiZZXw9wmIV08HRw,185
134
135
  letschatty/models/data_base/__init__.py,sha256=cUTj-TBUYJn1iAofztCr3VUJFF9qg1vmaQlOuoKb1MM,45
135
- letschatty/models/data_base/collection_interface.py,sha256=CeRx8T5spSdbEh3rD15yWesggbFFosuaCE5FFwObOZs,5962
136
- letschatty/models/data_base/mongo_connection.py,sha256=M1Qhk3AYCBiTV9tp-P6Ef92n7_ZundMIXzdC0GYTrk0,1302
136
+ letschatty/models/data_base/collection_interface.py,sha256=CpmP2cZzJomHNQjS00Gq8GvHe6ac1ycRaiVecVxrchc,8768
137
+ letschatty/models/data_base/mongo_connection.py,sha256=Uj70b8ad2ngRWh5Ju4X77n_d5QSdyhXlMbppGvJ1yW0,5066
137
138
  letschatty/models/execution/__init__.py,sha256=-XMgns_gpDuqibgcpsBU63oiLfzf4Ms0xMOyiAJoMLg,70
138
139
  letschatty/models/execution/execution.py,sha256=L4kwZfXaGHTb8j6qPNWMVQFNbaoG0dMCg1THvsBRmJM,4049
139
140
  letschatty/models/execution/executor.py,sha256=KarlbDFgv6DpG4nQMGB8Yuogh2_ZCznBhpWv8baiaTA,1188
@@ -159,11 +160,11 @@ letschatty/models/messages/chatty_messages/schema/chatty_content/content_audio.p
159
160
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_button.py,sha256=jdk9QFBN-SaAV6_fnBqkXwl0AFXJLbBNatikhUXLobo,181
160
161
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_central.py,sha256=k7J1G4GlfRX5J4ZJIoviOHiekioaLbAc-76In_ZfiIo,712
161
162
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_contacts.py,sha256=I1f_NNaT7QYriruMJdWT6K_8JjaU7XVaTSXctNB-_9o,985
162
- letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py,sha256=sy25r2a2eVxHoJoy_4ZiGSBXz7gYxErXvsq-JWSMLL0,604
163
+ letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py,sha256=cxQXOFFZ_kCPs5M7QBAye8_HIPReWgNZPPxayHCCSGY,508
163
164
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_image.py,sha256=AmILz3zm1HFUh5hjSxjBxLg4AR2DoY9NrBU9NIjjjvk,102
164
165
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_interactive.py,sha256=zIdk_-RlTQIAGh9AifnY7Yqs3C7ukyX2RPb-VyhIJ0w,164
165
166
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_location.py,sha256=GLk7-QtkksY7G53swRKRiZo481GuhBXA-bsCEBf3B3A,217
166
- letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py,sha256=Y_jm1HkGFORZAr3uxz-cNo4nGGuwdHS6cC0KHu5-9e0,865
167
+ letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py,sha256=-K10IU5Snt9TMU9qiuR9uRrLhF0HUEZ0vZRHP25jKSo,775
167
168
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_reaction.py,sha256=ZRCrWXJxUYCnpMikPO6JGj1eeZvQGcj8nKMQkVXw0KA,155
168
169
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_sticker.py,sha256=hmV6LQZXorn3iM-tzVk_kxA9BxW4jEiopRjNFY9xcFA,254
169
170
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_text.py,sha256=A_gw5WNCcStpSzHC_jzszDvxtv-ChVOJA2po5EHnccs,416
@@ -204,7 +205,7 @@ letschatty/models/messages/meta_message_model/schema/values/value_messages.py,sh
204
205
  letschatty/models/messages/meta_message_model/schema/values/value_statuses.py,sha256=SGibpHxdWy6DbzGfJjlrHIxrviqxXbRj54k4rz-fDQM,1966
205
206
  letschatty/models/utils/__init__.py,sha256=ziz1DfISJPfq5dE9xjNiwBlwsscHfOks1s0BWD7c1cI,20
206
207
  letschatty/models/utils/custom_exceptions/__init__.py,sha256=FrZBwS0o2TuTJcJFRnreRT5v_tv8EY2_EhKL2cAr7PI,32
207
- letschatty/models/utils/custom_exceptions/custom_exceptions.py,sha256=mX7AGWsl3qj76lub3wpe8HCUgZEOwnKDYPOw0_3YYOY,11665
208
+ letschatty/models/utils/custom_exceptions/custom_exceptions.py,sha256=IrNv2Uuc6U9vnnt9hOqLK0ouNuyLG4_jZ5QJGorynS4,12398
208
209
  letschatty/models/utils/definitions.py,sha256=ylyTOyDVYpE6UcViTSpxnzoxic4VzPVHE45k2Vc1U6A,826
209
210
  letschatty/models/utils/types/CRUD_operations.py,sha256=bRagXYtzeIzM4JSY8mD-4tTaqviUmq_0tY9H74nSS5I,139
210
211
  letschatty/models/utils/types/__init__.py,sha256=2z69a0c4s5fWiA9I3thv4P_SbehlvF3e-t757L0vcK4,419
@@ -224,29 +225,64 @@ letschatty/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
224
225
  letschatty/services/ai_agents/context_builder_v2.py,sha256=WoUZj5NASARBmweSkKU-T9VfkmsJdTV09CVvPb5bK_A,7438
225
226
  letschatty/services/ai_agents/cot_follow_up_examples.py,sha256=_syeGIUdpZZ9yfmARc6-Rjgdp6xDaImVZwNpvMPOkaU,10702
226
227
  letschatty/services/ai_agents/followup_schema.json,sha256=H0NaPmfjsiQGE8jcdkVZbHNmRSTnq7GXJm49SXBMe18,2932
227
- letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py,sha256=ULh1THzcMdlpbncshD54ZkE3atxoPmA1aao5JabV3ig,11245
228
+ letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py,sha256=Syeogf-t35uQ_Z7MD9HfySw9PlRJ7CDyApmGpUlKLAY,11481
228
229
  letschatty/services/ai_agents/smart_follow_up_service_v2.py,sha256=GqOmEKoomSUvduTAjl9Dmj7_XItItTQpzjT73JMywGw,7982
229
230
  letschatty/services/ai_agents/tool_descriptions/assign_chat_to_ai_agent_itself.json,sha256=Nc24Z-cHenadv-8C_tufKeZMOwIanDJ-j1ffW8z_GI0,802
230
231
  letschatty/services/ai_agents/tool_descriptions/human_handover.json,sha256=-b3l_SyFARq4XHZx26SU63bl0aul_g4Q7vet4E8GqAM,995
231
232
  letschatty/services/ai_agents/tool_descriptions.py,sha256=MMFhcgEl6Z7k8BUv3Yx1pCxHzIjc8HD93S0uM5OPj8Y,105
232
233
  letschatty/services/ai_components_service.py,sha256=QUb-NdzHj4nPmnceVSQ9Pe3swFWUrkUFKzDZeuP0b5o,3762
233
234
  letschatty/services/chat/chat_extractors.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
234
- letschatty/services/chat/chat_service.py,sha256=9AZLZP7PLCu8Aud5PLAWET-VCEweRx8WSOWyBBOMQz0,49431
235
+ letschatty/services/chat/chat_service.py,sha256=DsnjSYmOXGSRQPtnYEx2O4NPdEXpG1GBOjk53M-jYM8,47832
235
236
  letschatty/services/chat/client_service.py,sha256=TtlG0GJDqx6YemfueiJzAtMNk_udnPhg0MJG0bKwnk8,1097
236
237
  letschatty/services/chat/conversation_topics_service.py,sha256=jvIkpHTCz0JKXui3n_BRs6UQ-TB3x7DrQsnX2zUVFVw,2461
237
- letschatty/services/chatty_assets/__init__.py,sha256=quOXMGvcDVRkbeaGfCQliFfZzis5m1wrfJkHqDkWRx8,132
238
- letschatty/services/chatty_assets/asset_service.py,sha256=9EbtqSjTdil9kz7GZMmGYOkF3m4vZpAxyDPt4t-8zhc,3675
239
- letschatty/services/chatty_assets/base_container.py,sha256=p1fdwBEJZpE-Y_NRNSKH4as4KvU8tl8hUouVUP-U_W0,5781
240
- letschatty/services/chatty_assets/base_container_with_collection.py,sha256=0fF7uadzVCm3Rc9M-vH44twTpuOpOx9kRNvu-uggZi4,15836
238
+ letschatty/services/chatty_assets/__init__.py,sha256=yNe0X8N86OBgrUagYVexX8u8wxoqeepNiCSUwa0OnNo,375
239
+ letschatty/services/chatty_assets/asset_service.py,sha256=8fcPAvH2c5sNBmQruiRXtGSoZYiP69GIlKFVj6RkR1A,12226
240
+ letschatty/services/chatty_assets/assets_collections.py,sha256=QcoDSnBIinDaw1TqiYkWA-3QowEhK0eI7tzSMhE-JCo,5103
241
+ letschatty/services/chatty_assets/base_container.py,sha256=IXOQ9ttlIk0U8ghzwGR3DpjF4_6pd4-FZiyTqxK-Cpo,5815
242
+ letschatty/services/chatty_assets/base_container_with_collection.py,sha256=3n145X8UuJAeyMn_jc6Z853_bLXYCbYB0R7QdMWe9_E,16360
243
+ letschatty/services/chatty_assets/collections/__init__.py,sha256=tIPckK4mVZkGx6ZUO7NnGbbBj5040ifnztbcac60Gwg,1292
244
+ letschatty/services/chatty_assets/collections/ai_agent_collection.py,sha256=nmufhb_DDJ1HC2AxN19eu9DYYyyTqPMVzL6Z_D8v5jo,751
245
+ letschatty/services/chatty_assets/collections/ai_agent_in_chat_collection.py,sha256=UwCiOkoGxizxKfXLZ3s8__Ep-W0fgrk284NB8oQMFRI,1360
246
+ letschatty/services/chatty_assets/collections/ai_component_collection.py,sha256=zB3GGmUNyfyrJ83VUCU4sfwqL_cM4XENc0Iv2NAMujU,863
247
+ letschatty/services/chatty_assets/collections/chain_of_thought_collection.py,sha256=FIQMGFmENNZ9KKU11hSrh0rfvCpqrnDx2wnRtboJTIc,1470
248
+ letschatty/services/chatty_assets/collections/chat_collection.py,sha256=DZgBPah83i6D5Ni5vleTtbpdY58fkhY8wZRqZjgPf44,728
249
+ letschatty/services/chatty_assets/collections/contact_point_collection.py,sha256=KTiJ2ZrzWxlyNPxY4MG2bkpB2rhcy5u3ndHAmdSA8SI,859
250
+ letschatty/services/chatty_assets/collections/fast_answer_collection.py,sha256=jlbEu8I_F4dLnPD14ZkhadXB-zmPL6RCUosdCjLmUw8,858
251
+ letschatty/services/chatty_assets/collections/filter_criteria_collection.py,sha256=Jt2Llvg_JRFrx4D98RpgEnTj0gG-6m6p6Crpc_uGpAo,779
252
+ letschatty/services/chatty_assets/collections/flow_collection.py,sha256=qHlDzO0tzddhkdGoywdu_XGQ-NtwfZiy1oOPcpcyKus,714
253
+ letschatty/services/chatty_assets/collections/product_collection.py,sha256=_1ag0MNF0Qsugqmnu3663MJg5afnfXU1kwaFsS3_wGQ,741
254
+ letschatty/services/chatty_assets/collections/sale_collection.py,sha256=ct-qF5nsQeZUEo7JJG1CRqAgyh7nbGPgO-oiFYF-eT4,686
255
+ letschatty/services/chatty_assets/collections/source_collection.py,sha256=-NvseN4Y0PN9iSsiwpAy4ffeMh5a4yX44ghnZPJ4DbU,791
256
+ letschatty/services/chatty_assets/collections/tag_collection.py,sha256=dCnudX0cPFbXrMpBBiKOw5r6JjxNGhFWG3fTpRzm7rk,632
257
+ letschatty/services/chatty_assets/collections/topic_collection.py,sha256=D4xcVlmuAFL_5yufkPB78lEbwmZ84uMEsI1u7bHysv8,792
258
+ letschatty/services/chatty_assets/collections/user_collection.py,sha256=zQI2yLCwYY5upYT5gveOWJz7xiu2yCVVGp4de_dD9eI,700
241
259
  letschatty/services/chatty_assets/documentation_diagram.png,sha256=JrmxqqZ5S93kIA-1A1_ipXTnA-TG6ZM1cpR1aCoAR4g,252644
260
+ letschatty/services/chatty_assets/example_usage.py,sha256=5ixfxBQp11s4TQb2-DCcLPyVCJ3P5cH_7rPwl0ExX5A,1606
242
261
  letschatty/services/chatty_assets/readme.md,sha256=X-bXFaB7MH5E0bVMiDH7qY0-yDBG71K-iLsPykYPkL4,1638
262
+ letschatty/services/chatty_assets/services/__init__.py,sha256=DlEH-RMWpV3R4DoWPbFGUHDDccr3fsh2b29xvG8VdIc,1086
263
+ letschatty/services/chatty_assets/services/ai_agent_in_chat_service.py,sha256=yEBJ9C-1OHHic1wksjM19D8XzpPzS02oISovcht2q1Y,3081
264
+ letschatty/services/chatty_assets/services/ai_agent_service.py,sha256=HDJ2feazeqZFMqDf4LrV7B29pmUC9yYpIMqJqFLwwq8,909
265
+ letschatty/services/chatty_assets/services/chain_of_thought_service.py,sha256=uxh6sZg1EUzOotdy2gGR8P_safViE5a2VPgIHKBzpdU,2903
266
+ letschatty/services/chatty_assets/services/chat_service.py,sha256=Ws4ruj7mKOa7T4T-LjPqN29OOeJ-ijgA24dhnjgxABs,848
267
+ letschatty/services/chatty_assets/services/contact_point_service.py,sha256=U07F1EPpm0uiRdsmxfDoM2P5YNsWuB0-DHfXJTdxicw,1118
268
+ letschatty/services/chatty_assets/services/fast_answer_service.py,sha256=QoVAoJ6n7KLHgjFPDzNVHFsSv5ferqg7aswPLUHRf4Y,1375
269
+ letschatty/services/chatty_assets/services/filter_criteria_service.py,sha256=r9f5T2-pjNGtvEMKH4N94EcydtKwl_HQfgX_Qm0W8Jo,1311
270
+ letschatty/services/chatty_assets/services/flow_service.py,sha256=ppPl9HIxq9TM4EHJ_r5U7SScPXfu0emmxaz8kBPOBjQ,897
271
+ letschatty/services/chatty_assets/services/product_service.py,sha256=uoktDFNNV7StCHrrPpplo770-oKSnxb8_Ugb-RjWKPM,1199
272
+ letschatty/services/chatty_assets/services/sale_service.py,sha256=cP6smx6cFVN0naytMW4kNxHZoVuaspGsbBGtoITqpmk,863
273
+ letschatty/services/chatty_assets/services/source_service.py,sha256=N1wWK5gqHD4A0itqYw9R20fTZi64VQtobHXFovAMTkY,1133
274
+ letschatty/services/chatty_assets/services/tag_service.py,sha256=HOee-8GEU4y6Rxa5T1j53epAx3EtF4xTixvrZc4R_CY,1229
275
+ letschatty/services/chatty_assets/services/topic_service.py,sha256=tRsWVURtvNYZwJZX4scvyQJ3L4CJ5hySnA-wju6NR-I,1241
276
+ letschatty/services/chatty_assets/services/user_service.py,sha256=C1HbBBqfR2sFL8lCy1ufAbBnCVybGX-WVji-tC5IvWQ,1276
243
277
  letschatty/services/concurrent/concurrent.py,sha256=ZLNeCENCKlR3_CGMthggklOplNkJB7YX9IcD9H-aU1A,2868
244
278
  letschatty/services/contact_points/contact_point_service.py,sha256=bNkZWFSHVSV8tR84OdUYMvoIA74-NkBckmrFerXnwDI,7623
245
- letschatty/services/continuous_conversation_service/continuous_conversation_helper.py,sha256=Tnd_1wSjW6moufmrR51gdGrPDDSxR-qcYmVoz1DXPL8,16734
246
- letschatty/services/events/events_manager.py,sha256=z2CAc-TqpXkyX9pPHImFXMIDRipLp7e-mN1gRvaM04E,67
279
+ letschatty/services/continuous_conversation_service/continuous_conversation_helper.py,sha256=ynYW1Whqw6IGoPifCvyyXh0BYdcIP3HvYKNZONp4Lpc,17574
280
+ letschatty/services/events/__init__.py,sha256=vdSYpBO19Z9GmbXueOcjZ9pv2E0HOqpHObGYl8xkNxw,140
281
+ letschatty/services/events/events_manager.py,sha256=bfSmNSV2UqQ3pXQFariXOsXrSiSlc-pI1zfB-xg6Blo,9080
247
282
  letschatty/services/factories/__init__.py,sha256=cDAQ_0M5xKqZAui5ijHvbtHxn3jFFM4kBcXIXc_Bv38,161
283
+ letschatty/services/factories/analytics/ai_agent_event_factory.py,sha256=m4apDnq0Oy9f2LId8f0ytHofQOwDVN09sqZFZ1MO_Wk,7356
248
284
  letschatty/services/factories/analytics/contact_point_factory.py,sha256=5YXkoIwd43gtoYpFUACIXJGCJYyUEqS97XxpR_dBrt4,441
249
- letschatty/services/factories/analytics/events_factory.py,sha256=o_ojRvzM5X8U3zSzbWqqA2bAWk6TP0YH3CZzPzxC7lY,35384
285
+ letschatty/services/factories/analytics/events_factory.py,sha256=In0IgLrJHzEINohLvli9pRE81I9iN1pl1L7oAm_FcN8,37858
250
286
  letschatty/services/factories/analytics/smart_messages/topics_factory.py,sha256=nJRlOtQFiosafXakZoJj8UCVoiNovjDiOoO52vIh4ok,682
251
287
  letschatty/services/factories/analytics/sources/helpers.py,sha256=_2lsaTEhNFqr2ZyO8clMCD-t3MCPTQMyVoSUo5Fio_Y,868
252
288
  letschatty/services/factories/analytics/sources/source_factory.py,sha256=kvpS9dLoCsIVnV_wMQzBpFXoN3AyjyphX-IFRg5sO5c,7877
@@ -256,7 +292,7 @@ letschatty/services/factories/chatty_fast_answers/chatty_fast_answers_factory.py
256
292
  letschatty/services/factories/clients/client_factory.py,sha256=WIFUksJlnMSSLeHEVTAorpelEvpJMQg_mxg66wZfLcQ,1567
257
293
  letschatty/services/factories/company/__init__.py,sha256=Zd3Zo21bQ1Lk9mQNpNaaTZ5EyjttWXi9AthgV5GnSb4,43
258
294
  letschatty/services/factories/company/empresa_factory.py,sha256=tJ5Y9WhvYTEvPZXzREGHi2X-aNnW1_B49K12fAo290w,1710
259
- letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py,sha256=AtEAjgmix9mlW1Tn-4wacfwBCoqDCcf0aZyXegL73e4,4475
295
+ letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py,sha256=tCY77uqvOoTlXwtepjwagIIk1id8ci7eb1WwZ4CXrzo,5796
260
296
  letschatty/services/factories/messages/__init__.py,sha256=Qm02DTwopP5WKXt4hMB5j-Y2ytfAUfMqztX5_pPJnxI,122
261
297
  letschatty/services/factories/messages/central_notification_factory.py,sha256=P8rrBw-Ew0AMqL31YsHH9dXAMQALiLzh6BH618eX_EU,2815
262
298
  letschatty/services/factories/messages/chatty_message_factory.py,sha256=kFYkkrZ1x-njavcqcSkRY30DIj5cFHLCo5Iixd63JR4,2234
@@ -270,13 +306,13 @@ letschatty/services/factories/meta_notifications/meta_notification_factory.py,sh
270
306
  letschatty/services/factories/product_factory.py,sha256=PwSeZjp0OOM-_Dl7om8DjLKc0NZN_fEK4QLe9ElmYsk,2360
271
307
  letschatty/services/filter_criteria_service.py,sha256=4ZA3Na6wF2zWHQk65YiYQogR2Y25G2-U9maJZxAh_H0,4429
272
308
  letschatty/services/messages_helpers/__init__.py,sha256=3LQssKlikjOPP32u1OQ5CHWYdmJsrQiEq1F14MzHt8A,73
273
- letschatty/services/messages_helpers/get_caption_or_body_or_preview.py,sha256=Bdz8lduHma7XuEt2tcru-ASVFcGtXKbxyOh6DqJ2FdA,1662
309
+ letschatty/services/messages_helpers/get_caption_or_body_or_preview.py,sha256=21l3RgwUIROC8hoIggFl0YVyzX10uOwr7QNZG2pGNok,2010
274
310
  letschatty/services/scheduled_messages_service/scheduled_messages_helpers.py,sha256=RM_lx_RZvxkEscvpYsWOqWpNCXg4ar_6TI8q-BaX92M,13042
275
311
  letschatty/services/template_campaigns/template_campaign_service.py,sha256=jORgDncuXJ5ZV4fr_KsfKBHOz_lypIy6lcNMWMw8OPw,4038
276
312
  letschatty/services/users/agent_service.py,sha256=hIkUUJ1SpkKbh5_uo4i2CeqGtuMTjU7tSV8k5J7WPG4,279
277
313
  letschatty/services/users/user_factory.py,sha256=FCB9uiAfjMeYfh4kMdx5h8VDHJ8MCsD-uaxW3X3KaWM,6681
278
- letschatty/services/validators/analytics_validator.py,sha256=6ejecLcif2i1C5trUo1qQgp8vKr9WchdljFZ5GzB2i4,7239
279
- letschatty-0.4.341.dist-info/LICENSE,sha256=EClLu_bO2HBLDcThowIwfaIg5EOwIYhpRsBJjVEk92A,1197
280
- letschatty-0.4.341.dist-info/METADATA,sha256=3Vp3NZtQ9o29Vp0EeVLqXtx-FQVBE8z6l9JSPT5Rhlg,3283
281
- letschatty-0.4.341.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
282
- letschatty-0.4.341.dist-info/RECORD,,
314
+ letschatty/services/validators/analytics_validator.py,sha256=-QBR6XIqEv2qw3stcBQehkwui1EcfWUM6M9DRQODykY,6335
315
+ letschatty-0.4.342.dist-info/LICENSE,sha256=EClLu_bO2HBLDcThowIwfaIg5EOwIYhpRsBJjVEk92A,1197
316
+ letschatty-0.4.342.dist-info/METADATA,sha256=3LxQHwJv_0WpQQ_ZGlWEJjn2GLuRtCGbrQzvaUWo79U,3283
317
+ letschatty-0.4.342.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
318
+ letschatty-0.4.342.dist-info/RECORD,,