letschatty 0.4.350__py3-none-any.whl → 0.4.352__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 (92) hide show
  1. letschatty/models/ai_microservices/__init__.py +4 -4
  2. letschatty/models/ai_microservices/expected_output.py +2 -29
  3. letschatty/models/ai_microservices/lambda_events.py +28 -155
  4. letschatty/models/ai_microservices/lambda_invokation_types.py +1 -4
  5. letschatty/models/ai_microservices/n8n_ai_agents_payload.py +1 -3
  6. letschatty/models/analytics/events/__init__.py +3 -3
  7. letschatty/models/analytics/events/chat_based_events/chat_client.py +19 -0
  8. letschatty/models/analytics/events/chat_based_events/chat_funnel.py +69 -13
  9. letschatty/models/analytics/events/company_based_events/asset_events.py +9 -2
  10. letschatty/models/analytics/events/event_type_to_classes.py +7 -3
  11. letschatty/models/analytics/events/event_types.py +11 -50
  12. letschatty/models/chat/chat.py +13 -2
  13. letschatty/models/chat/chat_with_assets.py +6 -1
  14. letschatty/models/chat/client.py +0 -2
  15. letschatty/models/chat/continuous_conversation.py +1 -1
  16. letschatty/models/company/CRM/funnel.py +365 -33
  17. letschatty/models/company/__init__.py +10 -1
  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 +0 -4
  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 +0 -1
  22. letschatty/models/company/assets/ai_agents_v2/pre_qualify_config.py +1 -29
  23. letschatty/models/company/assets/automation.py +10 -19
  24. letschatty/models/company/assets/chat_assets.py +3 -2
  25. letschatty/models/company/assets/company_assets.py +2 -0
  26. letschatty/models/company/assets/sale.py +3 -3
  27. letschatty/models/company/empresa.py +4 -1
  28. letschatty/models/company/integrations/product_sync_status.py +28 -0
  29. letschatty/models/company/integrations/shopify/company_shopify_integration.py +62 -0
  30. letschatty/models/company/integrations/shopify/shopify_product_sync_status.py +18 -0
  31. letschatty/models/company/integrations/shopify/shopify_webhook_topics.py +40 -0
  32. letschatty/models/company/integrations/sync_status_enum.py +9 -0
  33. letschatty/models/company/integrations/tienda_nube/company_tienda_nube_integration.py +62 -0
  34. letschatty/models/company/integrations/tienda_nube/tienda_nube_product_sync_status.py +18 -0
  35. letschatty/models/company/integrations/tienda_nube/tienda_nube_webhook_topics.py +46 -0
  36. letschatty/models/data_base/collection_interface.py +29 -101
  37. letschatty/models/data_base/mongo_connection.py +9 -92
  38. letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py +4 -2
  39. letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py +4 -3
  40. letschatty/models/utils/custom_exceptions/custom_exceptions.py +1 -14
  41. letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py +2 -5
  42. letschatty/services/chat/chat_service.py +47 -11
  43. letschatty/services/chatty_assets/__init__.py +0 -12
  44. letschatty/services/chatty_assets/asset_service.py +13 -190
  45. letschatty/services/chatty_assets/base_container.py +2 -3
  46. letschatty/services/chatty_assets/base_container_with_collection.py +26 -35
  47. letschatty/services/continuous_conversation_service/continuous_conversation_helper.py +0 -11
  48. letschatty/services/events/events_manager.py +1 -218
  49. letschatty/services/factories/analytics/events_factory.py +30 -66
  50. letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py +8 -46
  51. letschatty/services/messages_helpers/get_caption_or_body_or_preview.py +4 -6
  52. letschatty/services/validators/analytics_validator.py +11 -0
  53. {letschatty-0.4.350.dist-info → letschatty-0.4.352.dist-info}/METADATA +1 -1
  54. {letschatty-0.4.350.dist-info → letschatty-0.4.352.dist-info}/RECORD +56 -83
  55. letschatty/models/analytics/events/chat_based_events/ai_agent_execution_event.py +0 -71
  56. letschatty/services/chatty_assets/assets_collections.py +0 -137
  57. letschatty/services/chatty_assets/collections/__init__.py +0 -38
  58. letschatty/services/chatty_assets/collections/ai_agent_collection.py +0 -19
  59. letschatty/services/chatty_assets/collections/ai_agent_in_chat_collection.py +0 -32
  60. letschatty/services/chatty_assets/collections/ai_component_collection.py +0 -21
  61. letschatty/services/chatty_assets/collections/chain_of_thought_collection.py +0 -30
  62. letschatty/services/chatty_assets/collections/chat_collection.py +0 -21
  63. letschatty/services/chatty_assets/collections/contact_point_collection.py +0 -21
  64. letschatty/services/chatty_assets/collections/fast_answer_collection.py +0 -21
  65. letschatty/services/chatty_assets/collections/filter_criteria_collection.py +0 -18
  66. letschatty/services/chatty_assets/collections/flow_collection.py +0 -20
  67. letschatty/services/chatty_assets/collections/product_collection.py +0 -20
  68. letschatty/services/chatty_assets/collections/sale_collection.py +0 -20
  69. letschatty/services/chatty_assets/collections/source_collection.py +0 -21
  70. letschatty/services/chatty_assets/collections/tag_collection.py +0 -19
  71. letschatty/services/chatty_assets/collections/topic_collection.py +0 -21
  72. letschatty/services/chatty_assets/collections/user_collection.py +0 -20
  73. letschatty/services/chatty_assets/example_usage.py +0 -44
  74. letschatty/services/chatty_assets/services/__init__.py +0 -37
  75. letschatty/services/chatty_assets/services/ai_agent_in_chat_service.py +0 -73
  76. letschatty/services/chatty_assets/services/ai_agent_service.py +0 -23
  77. letschatty/services/chatty_assets/services/chain_of_thought_service.py +0 -70
  78. letschatty/services/chatty_assets/services/chat_service.py +0 -25
  79. letschatty/services/chatty_assets/services/contact_point_service.py +0 -29
  80. letschatty/services/chatty_assets/services/fast_answer_service.py +0 -32
  81. letschatty/services/chatty_assets/services/filter_criteria_service.py +0 -30
  82. letschatty/services/chatty_assets/services/flow_service.py +0 -25
  83. letschatty/services/chatty_assets/services/product_service.py +0 -30
  84. letschatty/services/chatty_assets/services/sale_service.py +0 -25
  85. letschatty/services/chatty_assets/services/source_service.py +0 -28
  86. letschatty/services/chatty_assets/services/tag_service.py +0 -32
  87. letschatty/services/chatty_assets/services/topic_service.py +0 -31
  88. letschatty/services/chatty_assets/services/user_service.py +0 -32
  89. letschatty/services/events/__init__.py +0 -6
  90. letschatty/services/factories/analytics/ai_agent_event_factory.py +0 -161
  91. {letschatty-0.4.350.dist-info → letschatty-0.4.352.dist-info}/LICENSE +0 -0
  92. {letschatty-0.4.350.dist-info → letschatty-0.4.352.dist-info}/WHEEL +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: letschatty
3
- Version: 0.4.350
3
+ Version: 0.4.352
4
4
  Summary: Models and custom classes to work across the Chattyverse
5
5
  License: MIT
6
6
  Author: Axel
@@ -1,20 +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=bpsDpNi8IiXwY3I7wM6OT2Sh42R4LB3Awy7-Uj-77Nw,683
4
- letschatty/models/ai_microservices/expected_output.py,sha256=oEaTE4Y9lgRog0GmW20b5xdLl9Yiq6Ln_H2_0r1dGvQ,10956
5
- letschatty/models/ai_microservices/lambda_events.py,sha256=Ujs-Jlc7-LIhwYWI4jtZBAZdQsyxgk2prOrWuzQcNKw,19399
6
- letschatty/models/ai_microservices/lambda_invokation_types.py,sha256=mb6BB_CwREjhmRmbAWibyScUgsFq2XTkfJ4QgeO06C0,2119
7
- letschatty/models/ai_microservices/n8n_ai_agents_payload.py,sha256=yV7WhAdnIOxWymrUTYJiDLH71A5mSUsX2gac8oAAGJw,882
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
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=5tfg-EiGLV1wzUFcIGbE32Er1wsie0lBwTV-z-aQqn0,2189
10
+ letschatty/models/analytics/events/__init__.py,sha256=7meuINSyULnUSRSVAWZWlFVNuBh9e0OtoH8FbzHKMr4,2155
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
14
13
  letschatty/models/analytics/events/chat_based_events/business_area.py,sha256=YZgIejCzbryySxolMSgvCFMuRggMcwBJ-jeQKdEshvM,904
15
14
  letschatty/models/analytics/events/chat_based_events/chat_based_event.py,sha256=YDXzX78jZgxuPFkTqipXFAo6G0-ajl_RkJISsjM9YJU,1469
15
+ letschatty/models/analytics/events/chat_based_events/chat_client.py,sha256=Zqo9uownFMyu9w7i2pt5y1jRVzqiXGxCCTXIlsPjYsk,558
16
16
  letschatty/models/analytics/events/chat_based_events/chat_context.py,sha256=Y6VfYorrKurbUgWtIPOsfNMbGQbuTPR5wQQLrbBxD9Q,2226
17
- letschatty/models/analytics/events/chat_based_events/chat_funnel.py,sha256=HmasWF9auAZPvwQRuYyHZvGG8jmqx9TXgiRGD71-m3Y,1699
17
+ letschatty/models/analytics/events/chat_based_events/chat_funnel.py,sha256=LX_lcOn1R2VhdffdZeuc7S87PcoHBhEuppWaBXFP6tY,4184
18
18
  letschatty/models/analytics/events/chat_based_events/chat_status.py,sha256=9vt8GP6QnMrUuJF-AbUQm68Nkc0Zgexmnb-T1k8tsD4,2222
19
19
  letschatty/models/analytics/events/chat_based_events/contact_point.py,sha256=IIzf0EkgxUJKr7vqnv95LHEy0wQA9sVchHZA7Yi0H88,1944
20
20
  letschatty/models/analytics/events/chat_based_events/continuous_conversation.py,sha256=4Tbv83Zk5RIoUu6pKYpQdWMtxz9XZi26V-j5OSBP91U,2305
@@ -26,11 +26,11 @@ letschatty/models/analytics/events/chat_based_events/quality_scoring.py,sha256=f
26
26
  letschatty/models/analytics/events/chat_based_events/sale.py,sha256=WqpFp10h8yZwa5S5T4NCWCRLcBgkAAAME_CKmCv6K7M,1738
27
27
  letschatty/models/analytics/events/chat_based_events/tag_chat.py,sha256=7f1MaNdst-KN8-aIzgzyc6oBES-y8kkH5jVrsOOcxBs,1418
28
28
  letschatty/models/analytics/events/chat_based_events/workflow.py,sha256=BZQN2JDIgCVr2VbdcLg3O0J69SL_yPqGgMXzzNCId4E,1399
29
- letschatty/models/analytics/events/company_based_events/asset_events.py,sha256=eY5x3fvEzvvxZZdfTz6dvABcbU629Nx-9xwYLslbZ4U,3151
29
+ letschatty/models/analytics/events/company_based_events/asset_events.py,sha256=EtVhl_W3wxkJhflbyk4NQraxAdpLeuesc9IfyOC5QV8,3490
30
30
  letschatty/models/analytics/events/company_based_events/company_events.py,sha256=PZAiw2imo706iM0EaCxnIaiFchMKivbwjKd7gsozA8k,1673
31
31
  letschatty/models/analytics/events/company_based_events/user_events.py,sha256=ZUoBaS60s63SoTUOUunLpojP1BQ9Cdl4sl_KdgY6NGI,2466
32
- letschatty/models/analytics/events/event_type_to_classes.py,sha256=qgagTKKm9cccQAYnC5g5ilOHdV9dG5J384fzZPoSTUU,4188
33
- letschatty/models/analytics/events/event_types.py,sha256=FJgvslvTtU00F8rIIQ3pE3L3ifOBNSbzOiGCk1jRZMY,8294
32
+ letschatty/models/analytics/events/event_type_to_classes.py,sha256=x5Ai3UZio9DeRcN2ag1ipLwUFFdInIKLZNhYgyYSvcM,4384
33
+ letschatty/models/analytics/events/event_types.py,sha256=h8CH0aXIuMHjd8mCQ2v3KED03cggysIEQvV4f93s-8c,5544
34
34
  letschatty/models/analytics/metrics/__init_.py,sha256=DnGDYvEn9S1sSMe56e7mwE5r013nO-Fsf0pgBnf9RjI,276
35
35
  letschatty/models/analytics/metrics/daily_contact_points.py,sha256=eWwUmhFpL-Xn5sWQWCcACrulb4xwjMY80jDSAWsTMb4,1524
36
36
  letschatty/models/analytics/metrics/daily_new_chats.py,sha256=kTsQFDFwavTq3u7HcHx3RqZ_O517HqTrOD-k8q4JQz0,322
@@ -64,11 +64,11 @@ letschatty/models/base_models/update_model_interface.py,sha256=80YuvkEM5Rd3Ycysq
64
64
  letschatty/models/base_models/validate_timestamps_and_id.py,sha256=WRtaoW2EYtItgZjnNOYAffxy9K7M_NMNJ5imRN8Iu80,1971
65
65
  letschatty/models/channels/channel.py,sha256=Mgqigm-3uRDozxBIZZYj62PQwtnB0rAKoY2JS4477n8,2029
66
66
  letschatty/models/chat/assets_assigned_to_chat.py,sha256=nAdSzRvUSWa8-Plw6KZKnpUxxjCdWs_grml0bhskSis,192
67
- letschatty/models/chat/chat.py,sha256=NJcahnCHmY_RLUP6oKQEuEn1J8ycUsIkc7OruQmn1zs,16137
67
+ letschatty/models/chat/chat.py,sha256=P6c8JGutMsk5GF526s0RxnT_F6oBclofPtTzjcnNUrc,16749
68
68
  letschatty/models/chat/chat_status_modifications.py,sha256=LcwXNl4WRllPI_ZYKcg5ANRjmSk4Cykkra0naayMAt4,317
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
69
+ letschatty/models/chat/chat_with_assets.py,sha256=K4UUwdfLw_Q0ZNHdeoqavqyHkZwisAQOi1OPMBYszOU,814
70
+ letschatty/models/chat/client.py,sha256=oa7PM76V-OiBJL4T-IMytPW0WZdtvh9vFZhNtRQvt6Q,2196
71
+ letschatty/models/chat/continuous_conversation.py,sha256=hoRYOMd_vfYglTGVw30yKS5Ogt5mLcsgDySrfHEli6o,4529
72
72
  letschatty/models/chat/filter_parameters.py,sha256=X1IHBYCJr_1y4R8syQYEwKhintdUZc-ZiB_8kSnjiYw,4489
73
73
  letschatty/models/chat/flow_link_state.py,sha256=RblDBp6uD-P0ZtaQn1-HzL1EpEgtVhN1rT3iBhO0gMw,5458
74
74
  letschatty/models/chat/highlight.py,sha256=bUpXSMvwoTKiDa6AWDRKfMYxv5d6sax7soNtc8rAtpo,555
@@ -78,35 +78,35 @@ letschatty/models/chat/scheduled_messages.py,sha256=6z9XXgXUV6lPW8BalAZ4-MsmT8Zn
78
78
  letschatty/models/chat/temporary_chat.py,sha256=MR68vYrNvoyf40cLs2p5NnI8BNeN1VGTMAcuQw8j9RA,2303
79
79
  letschatty/models/chat/time_left.py,sha256=2uA9dS_0QAVnWn7Q2wIwGe4tMrlYBP9qySC7M8I0jb8,3307
80
80
  letschatty/models/company/CRM/business_area.py,sha256=U0F_7Rbq-e5tMSj_MugPqMHm2-IHxbAKbN0PWZ_93-o,296
81
- letschatty/models/company/CRM/funnel.py,sha256=Sn39LUJsrGLAhUFOdhHk5E3yblI1-RDlyCG_VRpOwxo,2510
82
- letschatty/models/company/__init__.py,sha256=5D1Ya_ZRGq2sLf9MXXTLZwGcrZPzo87t1NhRKS7Tw6o,140
81
+ letschatty/models/company/CRM/funnel.py,sha256=gBGZhud060sK5QFI5y9NgmFuhLCOAtzK81TKBhK2gxE,15820
82
+ letschatty/models/company/__init__.py,sha256=cGjsBU6sSqL-IkSbLiFdusRCb9eJJDyIoJTR02ujYkI,937
83
83
  letschatty/models/company/assets/__init__.py,sha256=z0xN_lt1D76bXt8DXVdbH3GkofUPQPZU9NioRSLt_lI,244
84
84
  letschatty/models/company/assets/ai_agents_v2/ai_agent_message_draft.py,sha256=xbshA34RSjHm2g8J7hW2FkWo-Qm8MH2HTbcRcoYmyvc,2076
85
- letschatty/models/company/assets/ai_agents_v2/ai_agents_decision_output.py,sha256=Bgca167vDr9TNP56nTJykj6I8uLB70D6TcgCchByahA,5866
85
+ letschatty/models/company/assets/ai_agents_v2/ai_agents_decision_output.py,sha256=aEKZCOsGiFFPSx23fkS5Khfsxo-r8JGk3O0sxiGs8T0,5876
86
86
  letschatty/models/company/assets/ai_agents_v2/chain_of_thought_in_chat.py,sha256=xK7IbM_sEN7_-SZXcgiRyALq6IjYaJ-ivq9BE8B8Bdg,6129
87
87
  letschatty/models/company/assets/ai_agents_v2/chat_example.py,sha256=yCKt6ifNYch3C78zAvj8To0_Sb9CPAZ8sC-hyoBPa4s,1816
88
88
  letschatty/models/company/assets/ai_agents_v2/chat_example_test.py,sha256=vChD-TkX1ORRD9LMbd2HlpbK4QyrsfhDiJd-LDjIqlk,4618
89
89
  letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent.py,sha256=R2rCANri8ZiqnmPP10PWoanGddMImCMxrl78Y6d-194,8204
90
90
  letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_config_for_automation.py,sha256=W8orpgp-yG8OHNWGQ16jMv-VgM_Z-Hk0q8PtC0KT2KU,388
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
91
+ letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_in_chat.py,sha256=akCa10TtiJ1wsL33z4uxSwhZyyinnJZmdlYJ9csLak8,14470
92
+ letschatty/models/company/assets/ai_agents_v2/chatty_ai_mode.py,sha256=CKlKI3t_D5eWJPn6hRvN4_V8Wu6W8c0x_EFQlpA50F4,2521
93
93
  letschatty/models/company/assets/ai_agents_v2/context_item.py,sha256=9629_sJ4vjfF6--KR44E6lqVpc0uOGSlcorKS5ooSXU,438
94
94
  letschatty/models/company/assets/ai_agents_v2/faq.py,sha256=qL-sr17ALvJ9PEzpaXpYL91-bQ9Np3C4jCYe-zfot6o,457
95
95
  letschatty/models/company/assets/ai_agents_v2/follow_up_strategy.py,sha256=qVWim6qSrwoiWzPg5EqgqiqebXICRikFLx8-YQePLx0,3549
96
- letschatty/models/company/assets/ai_agents_v2/get_chat_with_prompt_response.py,sha256=-8xb2MWPvul3CCFp4yVb_C1uL7i4lmHJ5sBOKPZJURU,1500
96
+ letschatty/models/company/assets/ai_agents_v2/get_chat_with_prompt_response.py,sha256=r4WpTu4ZXdG6qazHWUed0WhWY0L63UZnD6plvHLD0ns,1414
97
97
  letschatty/models/company/assets/ai_agents_v2/knowleadge_base_components.py,sha256=ooC-odECa2KkMOqBfiJeLAWCRkLK0EMmc7fcg3YCAbQ,676
98
98
  letschatty/models/company/assets/ai_agents_v2/n8n_agents_info.py,sha256=UNsYXznXr2yj9J_zylZTMPrU5hjkkVgHAaIP2etpZRM,383
99
99
  letschatty/models/company/assets/ai_agents_v2/n8n_schema_incoming_message_output.json,sha256=_NERM9gJ4Ry8NFVb8mHxRmdv0GfBrHdtmKxVJWmTUrY,2102
100
100
  letschatty/models/company/assets/ai_agents_v2/n8n_schema_smart_follow_up_output.json,sha256=QAPRJXin-sE9NxQBHmmErSYHL6dQzmu4i0HEFSSXOi4,2350
101
- letschatty/models/company/assets/ai_agents_v2/pre_qualify_config.py,sha256=LoWJpAbCbB0lMrAkncjtkzI5d6Z2k_mZ8v0eItTpSAA,5496
101
+ letschatty/models/company/assets/ai_agents_v2/pre_qualify_config.py,sha256=o9kKywbnm1lEliTTV0G7oSCFroyqp_w0GkypL--sSk4,4181
102
102
  letschatty/models/company/assets/ai_agents_v2/statuses.py,sha256=nhIGfeKednLNFZCIMavbZptT_9L-HDDVshAyCLdwPe8,1109
103
103
  letschatty/models/company/assets/assignment/__init__.py,sha256=eWYZfaDQde5OJNIDed8D-LNRXOa5O_O4mGMToNFtaW8,239
104
104
  letschatty/models/company/assets/assignment/assignment_assets.py,sha256=phIJqNh4UGTU-Hux_kaOYhJm2GCqv37AnCGePSDVKmM,2245
105
- letschatty/models/company/assets/automation.py,sha256=QDMCHm--85tEGUwddjWGeUSxmCT27HiH8lRm4w4DJLE,1871
106
- letschatty/models/company/assets/chat_assets.py,sha256=26FX3hOgJF3ogxfYvhhBHJUfXMFtVHapgd8XsFStoU4,7934
105
+ letschatty/models/company/assets/automation.py,sha256=RQFOvM-lipBdalfsRSZ8K5opytVgq_GS6YSR0Mz5Qs8,1639
106
+ letschatty/models/company/assets/chat_assets.py,sha256=kUnV1ngN1OA7AgED85ue91TOiFT1Fmf3LDOPbHAf460,8016
107
107
  letschatty/models/company/assets/chatty_fast_answers/__init__.py,sha256=tbgWS0n1i0nVi9f79U44GPRnrW25NKcjl6Port92alk,48
108
108
  letschatty/models/company/assets/chatty_fast_answers/chatty_fast_answer.py,sha256=PxW3eStHXo0BY7Z9hMDqBTHmgO7XcwtOvEpwXi-rA5g,1076
109
- letschatty/models/company/assets/company_assets.py,sha256=YKRo_uXhQYRQ8HvMf4HhrHTBC2zp7xlE_B0nqSMfMFY,726
109
+ letschatty/models/company/assets/company_assets.py,sha256=9Or3hdUsWO0YCLqlwUb0Zcm_c5OerJqDx7rrrUK4_-E,800
110
110
  letschatty/models/company/assets/contact_point.py,sha256=2-C00CwQTAQkofQ4ufr5_nJPoxauOXZSDtyL-nj-hF8,2916
111
111
  letschatty/models/company/assets/filter_criteria.py,sha256=5hYhHWz5hoMyIURHML2XPZo_Bl66Cyvbh8caVPgdAvE,2283
112
112
  letschatty/models/company/assets/flow.py,sha256=mYKB6DG_DHSJymoTpeXm15OWsWI1OP4rkzvMg8AeYzY,1198
@@ -117,7 +117,7 @@ letschatty/models/company/assets/launch/subscription.py,sha256=BnZuNK0jMOzn0s9zg
117
117
  letschatty/models/company/assets/media/__init__.py,sha256=o22MHvoqGBUeG1P383KfBfsu-Fg0YdVh9FYeNB1j14s,38
118
118
  letschatty/models/company/assets/media/file.py,sha256=MFhTNe8zsgjR1zMm2UIAznp4vtD4U12UMfu7mjFIGfE,1902
119
119
  letschatty/models/company/assets/product.py,sha256=02eAZlE74nRzwOPAmbCHkQj7czVNgEtJQNzWxSBPP_w,2406
120
- letschatty/models/company/assets/sale.py,sha256=OG9tGesyajvhXNyjSgOPc8EMcAVlqoaqAVflMKBzWa4,1078
120
+ letschatty/models/company/assets/sale.py,sha256=8YiZoRHA0l6-JHX4N0jDe8PDu5Kkw1O2tZLDNOGL8p8,1143
121
121
  letschatty/models/company/assets/tag.py,sha256=P1jRAvaebEtdAUs-07sRbCK25vmS6Q5NNtH7UX7bK-0,1008
122
122
  letschatty/models/company/assets/users/agent_chats_snapshot.py,sha256=CTNRN8p9HE57bvxI8MbO2krg8KD3yIo3PmFjIV0iVWg,568
123
123
  letschatty/models/company/assets/users/user.py,sha256=JWABDnvc9qhFnFcqBWSH2OAmVny37pUMBxo2CJGOMtA,9019
@@ -126,14 +126,22 @@ letschatty/models/company/assets/workflow_execution.py,sha256=CKlT9JTryKC8kNniRX
126
126
  letschatty/models/company/company_chats_snapshot.py,sha256=Mg9Wmu3pfE-t5Sf57FCj-psvc5TkDkFfma-hdh6nE0Q,668
127
127
  letschatty/models/company/company_messaging_settgins.py,sha256=7isXt7gmqw-FKSUSZwdctdXDFMfPi2OyPuWqB7WpC6c,957
128
128
  letschatty/models/company/conversation_topic.py,sha256=__IinJ3YcUsiApF4Em5uAgd01ydRUrlCVxaat-pCCRg,1704
129
- letschatty/models/company/empresa.py,sha256=2INPC8YSZJcT10Gny_zXV_PujeqUGccsZHV31ZSywyw,5961
129
+ letschatty/models/company/empresa.py,sha256=1WGtjWxBoxxShZ_OFCk7i_hpSX2QJ0DiPB4BoE3A4UU,6475
130
130
  letschatty/models/company/form_field.py,sha256=LGyMLybwvfEPG3hMmwsoP_4wnMaPJbVFpG6c1HdVC8E,9802
131
131
  letschatty/models/company/insight.py,sha256=B7BL07E4Z1b9aJHi3PXC1atln4-7fSo9JeqgQoeB_ao,7459
132
+ letschatty/models/company/integrations/product_sync_status.py,sha256=115zOvkaeXpHIUQftXe6dJsOUki3ru8hG3c75e2v4ag,814
133
+ letschatty/models/company/integrations/shopify/company_shopify_integration.py,sha256=PbxgIOG0Qp9Bz0WDrQffuSWrbEiV93JjX7PtHeYsqa0,2496
134
+ letschatty/models/company/integrations/shopify/shopify_product_sync_status.py,sha256=FhsmtFIf82pO9a1_OwV3MyKiJ6CGzlw-SCANZoV2M2g,588
135
+ letschatty/models/company/integrations/shopify/shopify_webhook_topics.py,sha256=HlSm0JHH6G3NPug8tbx9PQaC9yO3cwXJPTuU3qkWdDk,1263
136
+ letschatty/models/company/integrations/sync_status_enum.py,sha256=gh5kkKgLRqhygFFUPhITksp0Z-ImFEpGpzVABr7JiFM,154
137
+ letschatty/models/company/integrations/tienda_nube/company_tienda_nube_integration.py,sha256=2uJJax2-KDkYVQRXa7_AQLGbbXwNc28tnc4oSPFDh-k,2487
138
+ letschatty/models/company/integrations/tienda_nube/tienda_nube_product_sync_status.py,sha256=j_c3LFu9djzf96JLaZlQs86yrllIvCghrd5MfsvtcBQ,605
139
+ letschatty/models/company/integrations/tienda_nube/tienda_nube_webhook_topics.py,sha256=CIDK_dD6djqrZtXZg1tjU0EMlTUF0h93KLYK02XnvLo,1435
132
140
  letschatty/models/company/notifications/notification.py,sha256=wE7rIi21nZno6jjIxajMz4e7OJbzrDHjH1KdkNzJiF8,1907
133
141
  letschatty/models/copilot/links.py,sha256=mcddNR6WdWOoOr3NgDl_FElxF15SiZZXw9wmIV08HRw,185
134
142
  letschatty/models/data_base/__init__.py,sha256=cUTj-TBUYJn1iAofztCr3VUJFF9qg1vmaQlOuoKb1MM,45
135
- letschatty/models/data_base/collection_interface.py,sha256=CpmP2cZzJomHNQjS00Gq8GvHe6ac1ycRaiVecVxrchc,8768
136
- letschatty/models/data_base/mongo_connection.py,sha256=Uj70b8ad2ngRWh5Ju4X77n_d5QSdyhXlMbppGvJ1yW0,5066
143
+ letschatty/models/data_base/collection_interface.py,sha256=CeRx8T5spSdbEh3rD15yWesggbFFosuaCE5FFwObOZs,5962
144
+ letschatty/models/data_base/mongo_connection.py,sha256=M1Qhk3AYCBiTV9tp-P6Ef92n7_ZundMIXzdC0GYTrk0,1302
137
145
  letschatty/models/execution/__init__.py,sha256=-XMgns_gpDuqibgcpsBU63oiLfzf4Ms0xMOyiAJoMLg,70
138
146
  letschatty/models/execution/execution.py,sha256=L4kwZfXaGHTb8j6qPNWMVQFNbaoG0dMCg1THvsBRmJM,4049
139
147
  letschatty/models/execution/executor.py,sha256=KarlbDFgv6DpG4nQMGB8Yuogh2_ZCznBhpWv8baiaTA,1188
@@ -159,11 +167,11 @@ letschatty/models/messages/chatty_messages/schema/chatty_content/content_audio.p
159
167
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_button.py,sha256=jdk9QFBN-SaAV6_fnBqkXwl0AFXJLbBNatikhUXLobo,181
160
168
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_central.py,sha256=k7J1G4GlfRX5J4ZJIoviOHiekioaLbAc-76In_ZfiIo,712
161
169
  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=cxQXOFFZ_kCPs5M7QBAye8_HIPReWgNZPPxayHCCSGY,508
170
+ letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py,sha256=sy25r2a2eVxHoJoy_4ZiGSBXz7gYxErXvsq-JWSMLL0,604
163
171
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_image.py,sha256=AmILz3zm1HFUh5hjSxjBxLg4AR2DoY9NrBU9NIjjjvk,102
164
172
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_interactive.py,sha256=zIdk_-RlTQIAGh9AifnY7Yqs3C7ukyX2RPb-VyhIJ0w,164
165
173
  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=-K10IU5Snt9TMU9qiuR9uRrLhF0HUEZ0vZRHP25jKSo,775
174
+ letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py,sha256=Y_jm1HkGFORZAr3uxz-cNo4nGGuwdHS6cC0KHu5-9e0,865
167
175
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_reaction.py,sha256=ZRCrWXJxUYCnpMikPO6JGj1eeZvQGcj8nKMQkVXw0KA,155
168
176
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_sticker.py,sha256=hmV6LQZXorn3iM-tzVk_kxA9BxW4jEiopRjNFY9xcFA,254
169
177
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_text.py,sha256=A_gw5WNCcStpSzHC_jzszDvxtv-ChVOJA2po5EHnccs,416
@@ -204,7 +212,7 @@ letschatty/models/messages/meta_message_model/schema/values/value_messages.py,sh
204
212
  letschatty/models/messages/meta_message_model/schema/values/value_statuses.py,sha256=SGibpHxdWy6DbzGfJjlrHIxrviqxXbRj54k4rz-fDQM,1966
205
213
  letschatty/models/utils/__init__.py,sha256=ziz1DfISJPfq5dE9xjNiwBlwsscHfOks1s0BWD7c1cI,20
206
214
  letschatty/models/utils/custom_exceptions/__init__.py,sha256=FrZBwS0o2TuTJcJFRnreRT5v_tv8EY2_EhKL2cAr7PI,32
207
- letschatty/models/utils/custom_exceptions/custom_exceptions.py,sha256=IrNv2Uuc6U9vnnt9hOqLK0ouNuyLG4_jZ5QJGorynS4,12398
215
+ letschatty/models/utils/custom_exceptions/custom_exceptions.py,sha256=mX7AGWsl3qj76lub3wpe8HCUgZEOwnKDYPOw0_3YYOY,11665
208
216
  letschatty/models/utils/definitions.py,sha256=ylyTOyDVYpE6UcViTSpxnzoxic4VzPVHE45k2Vc1U6A,826
209
217
  letschatty/models/utils/types/CRUD_operations.py,sha256=bRagXYtzeIzM4JSY8mD-4tTaqviUmq_0tY9H74nSS5I,139
210
218
  letschatty/models/utils/types/__init__.py,sha256=2z69a0c4s5fWiA9I3thv4P_SbehlvF3e-t757L0vcK4,419
@@ -224,64 +232,29 @@ letschatty/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
224
232
  letschatty/services/ai_agents/context_builder_v2.py,sha256=WoUZj5NASARBmweSkKU-T9VfkmsJdTV09CVvPb5bK_A,7438
225
233
  letschatty/services/ai_agents/cot_follow_up_examples.py,sha256=_syeGIUdpZZ9yfmARc6-Rjgdp6xDaImVZwNpvMPOkaU,10702
226
234
  letschatty/services/ai_agents/followup_schema.json,sha256=H0NaPmfjsiQGE8jcdkVZbHNmRSTnq7GXJm49SXBMe18,2932
227
- letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py,sha256=Syeogf-t35uQ_Z7MD9HfySw9PlRJ7CDyApmGpUlKLAY,11481
235
+ letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py,sha256=ULh1THzcMdlpbncshD54ZkE3atxoPmA1aao5JabV3ig,11245
228
236
  letschatty/services/ai_agents/smart_follow_up_service_v2.py,sha256=GqOmEKoomSUvduTAjl9Dmj7_XItItTQpzjT73JMywGw,7982
229
237
  letschatty/services/ai_agents/tool_descriptions/assign_chat_to_ai_agent_itself.json,sha256=Nc24Z-cHenadv-8C_tufKeZMOwIanDJ-j1ffW8z_GI0,802
230
238
  letschatty/services/ai_agents/tool_descriptions/human_handover.json,sha256=-b3l_SyFARq4XHZx26SU63bl0aul_g4Q7vet4E8GqAM,995
231
239
  letschatty/services/ai_agents/tool_descriptions.py,sha256=MMFhcgEl6Z7k8BUv3Yx1pCxHzIjc8HD93S0uM5OPj8Y,105
232
240
  letschatty/services/ai_components_service.py,sha256=QUb-NdzHj4nPmnceVSQ9Pe3swFWUrkUFKzDZeuP0b5o,3762
233
241
  letschatty/services/chat/chat_extractors.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
234
- letschatty/services/chat/chat_service.py,sha256=DsnjSYmOXGSRQPtnYEx2O4NPdEXpG1GBOjk53M-jYM8,47832
242
+ letschatty/services/chat/chat_service.py,sha256=75ebdL9C1k4NU_zfTsGqSi31H0Gv1yqB-IOHJK6GyQY,49439
235
243
  letschatty/services/chat/client_service.py,sha256=TtlG0GJDqx6YemfueiJzAtMNk_udnPhg0MJG0bKwnk8,1097
236
244
  letschatty/services/chat/conversation_topics_service.py,sha256=jvIkpHTCz0JKXui3n_BRs6UQ-TB3x7DrQsnX2zUVFVw,2461
237
- letschatty/services/chatty_assets/__init__.py,sha256=yNe0X8N86OBgrUagYVexX8u8wxoqeepNiCSUwa0OnNo,375
238
- letschatty/services/chatty_assets/asset_service.py,sha256=8fcPAvH2c5sNBmQruiRXtGSoZYiP69GIlKFVj6RkR1A,12226
239
- letschatty/services/chatty_assets/assets_collections.py,sha256=QcoDSnBIinDaw1TqiYkWA-3QowEhK0eI7tzSMhE-JCo,5103
240
- letschatty/services/chatty_assets/base_container.py,sha256=IXOQ9ttlIk0U8ghzwGR3DpjF4_6pd4-FZiyTqxK-Cpo,5815
241
- letschatty/services/chatty_assets/base_container_with_collection.py,sha256=3n145X8UuJAeyMn_jc6Z853_bLXYCbYB0R7QdMWe9_E,16360
242
- letschatty/services/chatty_assets/collections/__init__.py,sha256=tIPckK4mVZkGx6ZUO7NnGbbBj5040ifnztbcac60Gwg,1292
243
- letschatty/services/chatty_assets/collections/ai_agent_collection.py,sha256=nmufhb_DDJ1HC2AxN19eu9DYYyyTqPMVzL6Z_D8v5jo,751
244
- letschatty/services/chatty_assets/collections/ai_agent_in_chat_collection.py,sha256=UwCiOkoGxizxKfXLZ3s8__Ep-W0fgrk284NB8oQMFRI,1360
245
- letschatty/services/chatty_assets/collections/ai_component_collection.py,sha256=zB3GGmUNyfyrJ83VUCU4sfwqL_cM4XENc0Iv2NAMujU,863
246
- letschatty/services/chatty_assets/collections/chain_of_thought_collection.py,sha256=FIQMGFmENNZ9KKU11hSrh0rfvCpqrnDx2wnRtboJTIc,1470
247
- letschatty/services/chatty_assets/collections/chat_collection.py,sha256=DZgBPah83i6D5Ni5vleTtbpdY58fkhY8wZRqZjgPf44,728
248
- letschatty/services/chatty_assets/collections/contact_point_collection.py,sha256=KTiJ2ZrzWxlyNPxY4MG2bkpB2rhcy5u3ndHAmdSA8SI,859
249
- letschatty/services/chatty_assets/collections/fast_answer_collection.py,sha256=jlbEu8I_F4dLnPD14ZkhadXB-zmPL6RCUosdCjLmUw8,858
250
- letschatty/services/chatty_assets/collections/filter_criteria_collection.py,sha256=Jt2Llvg_JRFrx4D98RpgEnTj0gG-6m6p6Crpc_uGpAo,779
251
- letschatty/services/chatty_assets/collections/flow_collection.py,sha256=qHlDzO0tzddhkdGoywdu_XGQ-NtwfZiy1oOPcpcyKus,714
252
- letschatty/services/chatty_assets/collections/product_collection.py,sha256=_1ag0MNF0Qsugqmnu3663MJg5afnfXU1kwaFsS3_wGQ,741
253
- letschatty/services/chatty_assets/collections/sale_collection.py,sha256=ct-qF5nsQeZUEo7JJG1CRqAgyh7nbGPgO-oiFYF-eT4,686
254
- letschatty/services/chatty_assets/collections/source_collection.py,sha256=-NvseN4Y0PN9iSsiwpAy4ffeMh5a4yX44ghnZPJ4DbU,791
255
- letschatty/services/chatty_assets/collections/tag_collection.py,sha256=dCnudX0cPFbXrMpBBiKOw5r6JjxNGhFWG3fTpRzm7rk,632
256
- letschatty/services/chatty_assets/collections/topic_collection.py,sha256=D4xcVlmuAFL_5yufkPB78lEbwmZ84uMEsI1u7bHysv8,792
257
- letschatty/services/chatty_assets/collections/user_collection.py,sha256=zQI2yLCwYY5upYT5gveOWJz7xiu2yCVVGp4de_dD9eI,700
245
+ letschatty/services/chatty_assets/__init__.py,sha256=quOXMGvcDVRkbeaGfCQliFfZzis5m1wrfJkHqDkWRx8,132
246
+ letschatty/services/chatty_assets/asset_service.py,sha256=9EbtqSjTdil9kz7GZMmGYOkF3m4vZpAxyDPt4t-8zhc,3675
247
+ letschatty/services/chatty_assets/base_container.py,sha256=p1fdwBEJZpE-Y_NRNSKH4as4KvU8tl8hUouVUP-U_W0,5781
248
+ letschatty/services/chatty_assets/base_container_with_collection.py,sha256=0fF7uadzVCm3Rc9M-vH44twTpuOpOx9kRNvu-uggZi4,15836
258
249
  letschatty/services/chatty_assets/documentation_diagram.png,sha256=JrmxqqZ5S93kIA-1A1_ipXTnA-TG6ZM1cpR1aCoAR4g,252644
259
- letschatty/services/chatty_assets/example_usage.py,sha256=5ixfxBQp11s4TQb2-DCcLPyVCJ3P5cH_7rPwl0ExX5A,1606
260
250
  letschatty/services/chatty_assets/readme.md,sha256=X-bXFaB7MH5E0bVMiDH7qY0-yDBG71K-iLsPykYPkL4,1638
261
- letschatty/services/chatty_assets/services/__init__.py,sha256=DlEH-RMWpV3R4DoWPbFGUHDDccr3fsh2b29xvG8VdIc,1086
262
- letschatty/services/chatty_assets/services/ai_agent_in_chat_service.py,sha256=yEBJ9C-1OHHic1wksjM19D8XzpPzS02oISovcht2q1Y,3081
263
- letschatty/services/chatty_assets/services/ai_agent_service.py,sha256=HDJ2feazeqZFMqDf4LrV7B29pmUC9yYpIMqJqFLwwq8,909
264
- letschatty/services/chatty_assets/services/chain_of_thought_service.py,sha256=uxh6sZg1EUzOotdy2gGR8P_safViE5a2VPgIHKBzpdU,2903
265
- letschatty/services/chatty_assets/services/chat_service.py,sha256=Ws4ruj7mKOa7T4T-LjPqN29OOeJ-ijgA24dhnjgxABs,848
266
- letschatty/services/chatty_assets/services/contact_point_service.py,sha256=U07F1EPpm0uiRdsmxfDoM2P5YNsWuB0-DHfXJTdxicw,1118
267
- letschatty/services/chatty_assets/services/fast_answer_service.py,sha256=QoVAoJ6n7KLHgjFPDzNVHFsSv5ferqg7aswPLUHRf4Y,1375
268
- letschatty/services/chatty_assets/services/filter_criteria_service.py,sha256=r9f5T2-pjNGtvEMKH4N94EcydtKwl_HQfgX_Qm0W8Jo,1311
269
- letschatty/services/chatty_assets/services/flow_service.py,sha256=ppPl9HIxq9TM4EHJ_r5U7SScPXfu0emmxaz8kBPOBjQ,897
270
- letschatty/services/chatty_assets/services/product_service.py,sha256=uoktDFNNV7StCHrrPpplo770-oKSnxb8_Ugb-RjWKPM,1199
271
- letschatty/services/chatty_assets/services/sale_service.py,sha256=cP6smx6cFVN0naytMW4kNxHZoVuaspGsbBGtoITqpmk,863
272
- letschatty/services/chatty_assets/services/source_service.py,sha256=N1wWK5gqHD4A0itqYw9R20fTZi64VQtobHXFovAMTkY,1133
273
- letschatty/services/chatty_assets/services/tag_service.py,sha256=HOee-8GEU4y6Rxa5T1j53epAx3EtF4xTixvrZc4R_CY,1229
274
- letschatty/services/chatty_assets/services/topic_service.py,sha256=tRsWVURtvNYZwJZX4scvyQJ3L4CJ5hySnA-wju6NR-I,1241
275
- letschatty/services/chatty_assets/services/user_service.py,sha256=C1HbBBqfR2sFL8lCy1ufAbBnCVybGX-WVji-tC5IvWQ,1276
276
251
  letschatty/services/concurrent/concurrent.py,sha256=ZLNeCENCKlR3_CGMthggklOplNkJB7YX9IcD9H-aU1A,2868
277
252
  letschatty/services/contact_points/contact_point_service.py,sha256=bNkZWFSHVSV8tR84OdUYMvoIA74-NkBckmrFerXnwDI,7623
278
- letschatty/services/continuous_conversation_service/continuous_conversation_helper.py,sha256=ynYW1Whqw6IGoPifCvyyXh0BYdcIP3HvYKNZONp4Lpc,17574
279
- letschatty/services/events/__init__.py,sha256=vdSYpBO19Z9GmbXueOcjZ9pv2E0HOqpHObGYl8xkNxw,140
280
- letschatty/services/events/events_manager.py,sha256=bfSmNSV2UqQ3pXQFariXOsXrSiSlc-pI1zfB-xg6Blo,9080
253
+ letschatty/services/continuous_conversation_service/continuous_conversation_helper.py,sha256=Tnd_1wSjW6moufmrR51gdGrPDDSxR-qcYmVoz1DXPL8,16734
254
+ letschatty/services/events/events_manager.py,sha256=z2CAc-TqpXkyX9pPHImFXMIDRipLp7e-mN1gRvaM04E,67
281
255
  letschatty/services/factories/__init__.py,sha256=cDAQ_0M5xKqZAui5ijHvbtHxn3jFFM4kBcXIXc_Bv38,161
282
- letschatty/services/factories/analytics/ai_agent_event_factory.py,sha256=m4apDnq0Oy9f2LId8f0ytHofQOwDVN09sqZFZ1MO_Wk,7356
283
256
  letschatty/services/factories/analytics/contact_point_factory.py,sha256=5YXkoIwd43gtoYpFUACIXJGCJYyUEqS97XxpR_dBrt4,441
284
- letschatty/services/factories/analytics/events_factory.py,sha256=In0IgLrJHzEINohLvli9pRE81I9iN1pl1L7oAm_FcN8,37858
257
+ letschatty/services/factories/analytics/events_factory.py,sha256=25nrhNkDZat9g3JG73NTN22KNK0sM7B3zUmOzxz_n6A,36483
285
258
  letschatty/services/factories/analytics/smart_messages/topics_factory.py,sha256=nJRlOtQFiosafXakZoJj8UCVoiNovjDiOoO52vIh4ok,682
286
259
  letschatty/services/factories/analytics/sources/helpers.py,sha256=_2lsaTEhNFqr2ZyO8clMCD-t3MCPTQMyVoSUo5Fio_Y,868
287
260
  letschatty/services/factories/analytics/sources/source_factory.py,sha256=kvpS9dLoCsIVnV_wMQzBpFXoN3AyjyphX-IFRg5sO5c,7877
@@ -291,7 +264,7 @@ letschatty/services/factories/chatty_fast_answers/chatty_fast_answers_factory.py
291
264
  letschatty/services/factories/clients/client_factory.py,sha256=WIFUksJlnMSSLeHEVTAorpelEvpJMQg_mxg66wZfLcQ,1567
292
265
  letschatty/services/factories/company/__init__.py,sha256=Zd3Zo21bQ1Lk9mQNpNaaTZ5EyjttWXi9AthgV5GnSb4,43
293
266
  letschatty/services/factories/company/empresa_factory.py,sha256=tJ5Y9WhvYTEvPZXzREGHi2X-aNnW1_B49K12fAo290w,1710
294
- letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py,sha256=5fJwbaKw-qNqImONdM_xUXCTJ4ARKw4PQuun8R7jHzY,6059
267
+ letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py,sha256=AtEAjgmix9mlW1Tn-4wacfwBCoqDCcf0aZyXegL73e4,4475
295
268
  letschatty/services/factories/messages/__init__.py,sha256=Qm02DTwopP5WKXt4hMB5j-Y2ytfAUfMqztX5_pPJnxI,122
296
269
  letschatty/services/factories/messages/central_notification_factory.py,sha256=P8rrBw-Ew0AMqL31YsHH9dXAMQALiLzh6BH618eX_EU,2815
297
270
  letschatty/services/factories/messages/chatty_message_factory.py,sha256=kFYkkrZ1x-njavcqcSkRY30DIj5cFHLCo5Iixd63JR4,2234
@@ -305,13 +278,13 @@ letschatty/services/factories/meta_notifications/meta_notification_factory.py,sh
305
278
  letschatty/services/factories/product_factory.py,sha256=PwSeZjp0OOM-_Dl7om8DjLKc0NZN_fEK4QLe9ElmYsk,2360
306
279
  letschatty/services/filter_criteria_service.py,sha256=4ZA3Na6wF2zWHQk65YiYQogR2Y25G2-U9maJZxAh_H0,4429
307
280
  letschatty/services/messages_helpers/__init__.py,sha256=3LQssKlikjOPP32u1OQ5CHWYdmJsrQiEq1F14MzHt8A,73
308
- letschatty/services/messages_helpers/get_caption_or_body_or_preview.py,sha256=21l3RgwUIROC8hoIggFl0YVyzX10uOwr7QNZG2pGNok,2010
281
+ letschatty/services/messages_helpers/get_caption_or_body_or_preview.py,sha256=Bdz8lduHma7XuEt2tcru-ASVFcGtXKbxyOh6DqJ2FdA,1662
309
282
  letschatty/services/scheduled_messages_service/scheduled_messages_helpers.py,sha256=RM_lx_RZvxkEscvpYsWOqWpNCXg4ar_6TI8q-BaX92M,13042
310
283
  letschatty/services/template_campaigns/template_campaign_service.py,sha256=jORgDncuXJ5ZV4fr_KsfKBHOz_lypIy6lcNMWMw8OPw,4038
311
284
  letschatty/services/users/agent_service.py,sha256=hIkUUJ1SpkKbh5_uo4i2CeqGtuMTjU7tSV8k5J7WPG4,279
312
285
  letschatty/services/users/user_factory.py,sha256=FCB9uiAfjMeYfh4kMdx5h8VDHJ8MCsD-uaxW3X3KaWM,6681
313
- letschatty/services/validators/analytics_validator.py,sha256=-QBR6XIqEv2qw3stcBQehkwui1EcfWUM6M9DRQODykY,6335
314
- letschatty-0.4.350.dist-info/LICENSE,sha256=EClLu_bO2HBLDcThowIwfaIg5EOwIYhpRsBJjVEk92A,1197
315
- letschatty-0.4.350.dist-info/METADATA,sha256=o8NAjLrxC9cFSrLcT58uCnL9MThc0urF5kgt3unwi2M,3283
316
- letschatty-0.4.350.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
317
- letschatty-0.4.350.dist-info/RECORD,,
286
+ letschatty/services/validators/analytics_validator.py,sha256=6ejecLcif2i1C5trUo1qQgp8vKr9WchdljFZ5GzB2i4,7239
287
+ letschatty-0.4.352.dist-info/LICENSE,sha256=EClLu_bO2HBLDcThowIwfaIg5EOwIYhpRsBJjVEk92A,1197
288
+ letschatty-0.4.352.dist-info/METADATA,sha256=74xaD8t1Frkxej4OkYwaownCxE3Zv70rV5-Cibah3ec,3283
289
+ letschatty-0.4.352.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
290
+ letschatty-0.4.352.dist-info/RECORD,,
@@ -1,71 +0,0 @@
1
- """AI Agent Execution Events - Track AI agent lifecycle and decision-making"""
2
-
3
- from ..base import Event, EventData
4
- from ..event_types import EventType
5
- from .chat_based_event import CustomerEventData
6
- from typing import ClassVar, Optional, Dict, Any
7
- from ....utils.types.identifier import StrObjectId
8
-
9
-
10
- class AIAgentExecutionEventData(CustomerEventData):
11
- """Data for AI agent execution events"""
12
- ai_agent_id: StrObjectId
13
- chain_of_thought_id: StrObjectId
14
- trigger: str # USER_MESSAGE, FOLLOW_UP, MANUAL_TRIGGER, RETRY
15
- decision_type: Optional[str] = None # send, suggest, escalate, skip
16
- error_message: Optional[str] = None
17
- duration_ms: Optional[int] = None
18
- user_rating: Optional[int] = None # 1-5 stars
19
- metadata: Optional[Dict[str, Any]] = None
20
-
21
-
22
- class AIAgentExecutionEvent(Event):
23
- """
24
- Events for AI agent execution lifecycle.
25
-
26
- This event type covers the entire AI agent decision-making process,
27
- from trigger to final decision, including all intermediate steps.
28
- """
29
- data: AIAgentExecutionEventData
30
-
31
- VALID_TYPES: ClassVar[set] = {
32
- # Trigger events
33
- EventType.CHATTY_AI_AGENT_IN_CHAT_TRIGGER_USER_MESSAGE,
34
- EventType.CHATTY_AI_AGENT_IN_CHAT_TRIGGER_FOLLOW_UP,
35
- EventType.CHATTY_AI_AGENT_IN_CHAT_TRIGGER_MANUAL,
36
- EventType.CHATTY_AI_AGENT_IN_CHAT_TRIGGER_RETRY,
37
-
38
- # State events
39
- EventType.CHATTY_AI_AGENT_IN_CHAT_STATE_PROCESSING_STARTED,
40
- EventType.CHATTY_AI_AGENT_IN_CHAT_STATE_CALL_STARTED,
41
- EventType.CHATTY_AI_AGENT_IN_CHAT_STATE_ESCALATED,
42
- EventType.CHATTY_AI_AGENT_IN_CHAT_STATE_UNESCALATED,
43
-
44
- # Call events
45
- EventType.CHATTY_AI_AGENT_IN_CHAT_CALL_GET_CHAT_WITH_PROMPT,
46
- EventType.CHATTY_AI_AGENT_IN_CHAT_CALL_TAGGER,
47
- EventType.CHATTY_AI_AGENT_IN_CHAT_CALL_DOUBLE_CHECKER,
48
- EventType.CHATTY_AI_AGENT_IN_CHAT_CALL_DEBUGGER,
49
-
50
- # Callback events
51
- EventType.CHATTY_AI_AGENT_IN_CHAT_CALLBACK_GET_CHAT_WITH_PROMPT,
52
- EventType.CHATTY_AI_AGENT_IN_CHAT_CALLBACK_TAGGER,
53
- EventType.CHATTY_AI_AGENT_IN_CHAT_CALLBACK_DOUBLE_CHECKER,
54
- EventType.CHATTY_AI_AGENT_IN_CHAT_CALLBACK_OUTPUT_RECEIVED,
55
-
56
- # Decision events
57
- EventType.CHATTY_AI_AGENT_IN_CHAT_DECISION_SEND,
58
- EventType.CHATTY_AI_AGENT_IN_CHAT_DECISION_SUGGEST,
59
- EventType.CHATTY_AI_AGENT_IN_CHAT_DECISION_ESCALATE,
60
- EventType.CHATTY_AI_AGENT_IN_CHAT_DECISION_SKIP,
61
- EventType.CHATTY_AI_AGENT_IN_CHAT_DECISION_SENT_TO_API,
62
- EventType.CHATTY_AI_AGENT_IN_CHAT_DECISION_COMPLETED,
63
-
64
- # Error events
65
- EventType.CHATTY_AI_AGENT_IN_CHAT_ERROR_CALL_FAILED,
66
- EventType.CHATTY_AI_AGENT_IN_CHAT_ERROR_CALL_CANCELLED,
67
- EventType.CHATTY_AI_AGENT_IN_CHAT_ERROR_VALIDATION_FAILED,
68
-
69
- # Rating events
70
- EventType.CHATTY_AI_AGENT_IN_CHAT_RATING_RECEIVED,
71
- }
@@ -1,137 +0,0 @@
1
- """
2
- Read-only Assets Collections Container
3
-
4
- This module provides a singleton container class that gives microservices
5
- read-only access to asset data using pre-configured AssetCollection subclasses.
6
- Perfect for services that only need to read asset data without CRUD operations.
7
- """
8
- from __future__ import annotations
9
- from typing import TYPE_CHECKING, Any
10
- import logging
11
-
12
- # Import base components
13
- from ...models.data_base.mongo_connection import MongoConnection
14
- from ...models.base_models.singleton import SingletonMeta
15
-
16
- # Import pre-configured collection subclasses
17
- from .collections import (
18
- ProductCollection,
19
- TagCollection,
20
- UserCollection,
21
- ChatCollection,
22
- SourceCollection,
23
- FlowCollection,
24
- SaleCollection,
25
- ContactPointCollection,
26
- AiAgentCollection,
27
- FilterCriteriaCollection,
28
- AiComponentCollection
29
- )
30
-
31
- # Import asset models for type hints
32
- from ...models.company.assets.product import Product
33
- from ...models.company.assets.tag import Tag
34
- from ...models.company.assets.users.user import User
35
- from ...models.chat.chat import Chat
36
- from ...models.analytics.sources import SourceBase
37
- from ...models.company.assets.flow import FlowPreview
38
- from ...models.company.assets.sale import Sale
39
- from ...models.company.assets.contact_point import ContactPoint
40
- from ...models.company.assets.ai_agents_v2.chatty_ai_agent import ChattyAIAgent
41
- from ...models.company.assets.filter_criteria import FilterCriteria
42
-
43
- if TYPE_CHECKING:
44
- pass
45
-
46
- logger = logging.getLogger("AssetsCollections")
47
-
48
-
49
- class AssetsCollections(metaclass=SingletonMeta):
50
- """
51
- Read-only singleton container for accessing asset collections across microservices.
52
-
53
- This class provides simple read access to various asset types without the overhead
54
- of the full AssetService (no caching, no events, no write operations).
55
-
56
- Usage:
57
- assets = AssetsCollections(connection)
58
- product = assets.get_product_by_id(product_id)
59
- tag = assets.get_tag_by_id(tag_id)
60
- """
61
-
62
- def __init__(self, connection: MongoConnection):
63
- """
64
- Initialize all asset collections using pre-configured collection subclasses.
65
-
66
- Args:
67
- connection: MongoConnection instance to use for database access
68
- """
69
- logger.debug("Initializing AssetsCollections")
70
-
71
- # Initialize all collections using pre-configured subclasses
72
- # Each collection subclass already knows its collection name, asset type,
73
- # preview type, and create_instance_method
74
- self.products = ProductCollection(connection)
75
- self.tags = TagCollection(connection)
76
- self.users = UserCollection(connection)
77
- self.chats = ChatCollection(connection)
78
- self.sources = SourceCollection(connection)
79
- self.flows = FlowCollection(connection)
80
- self.sales = SaleCollection(connection)
81
- self.contact_points = ContactPointCollection(connection)
82
- self.ai_agents = AiAgentCollection(connection)
83
- self.filter_criterias = FilterCriteriaCollection(connection)
84
- self.ai_components = AiComponentCollection(connection)
85
-
86
- logger.debug("AssetsCollections initialized successfully")
87
-
88
- # Convenience getter methods for easy access
89
-
90
- async def get_product_by_id(self, id: str) -> Product:
91
- """Get a product by ID."""
92
- return await self.products.get_by_id(id)
93
-
94
- async def get_tag_by_id(self, id: str) -> Tag:
95
- """Get a tag by ID."""
96
- return await self.tags.get_by_id(id)
97
-
98
- async def get_user_by_id(self, id: str) -> User:
99
- """Get a user by ID."""
100
- return await self.users.get_by_id(id)
101
-
102
- async def get_chat_by_id(self, id: str) -> Chat:
103
- """Get a chat by ID."""
104
- return await self.chats.get_by_id(id)
105
-
106
- async def get_source_by_id(self, id: str) -> SourceBase:
107
- """Get a source by ID."""
108
- return await self.sources.get_by_id(id)
109
-
110
- async def get_flow_by_id(self, id: str) -> FlowPreview:
111
- """Get a flow by ID."""
112
- return await self.flows.get_by_id(id)
113
-
114
- async def get_sale_by_id(self, id: str) -> Sale:
115
- """Get a sale by ID."""
116
- return await self.sales.get_by_id(id)
117
-
118
- async def get_contact_point_by_id(self, id: str) -> ContactPoint:
119
- """Get a contact point by ID."""
120
- return await self.contact_points.get_by_id(id)
121
-
122
- async def get_ai_agent_by_id(self, id: str) -> ChattyAIAgent:
123
- """Get an AI agent by ID."""
124
- return await self.ai_agents.get_by_id(id)
125
-
126
- async def get_filter_criteria_by_id(self, id: str) -> FilterCriteria:
127
- """Get a filter criteria by ID."""
128
- return await self.filter_criterias.get_by_id(id)
129
-
130
- async def get_filter_criterias_by_ids(self, ids: list[str]) -> list[FilterCriteria]:
131
- """Get multiple filter criterias by their IDs in a single query."""
132
- return await self.filter_criterias.get_by_ids(ids=ids)
133
-
134
- async def get_ai_components_by_ids(self, ids: list[str]) -> list[Any]:
135
- """Get multiple AI components by their IDs in a single query."""
136
- return await self.ai_components.get_by_ids(ids=ids)
137
-
@@ -1,38 +0,0 @@
1
- """
2
- Asset Collection Subclasses
3
-
4
- This module provides pre-configured AssetCollection subclasses for each asset type.
5
- These ensure consistency between the API and microservices by defining the collection
6
- configuration (collection name, asset type, preview type, create_instance_method) once.
7
- """
8
-
9
- from .product_collection import ProductCollection
10
- from .tag_collection import TagCollection
11
- from .user_collection import UserCollection
12
- from .chat_collection import ChatCollection
13
- from .source_collection import SourceCollection
14
- from .flow_collection import FlowCollection
15
- from .sale_collection import SaleCollection
16
- from .contact_point_collection import ContactPointCollection
17
- from .ai_agent_collection import AiAgentCollection
18
- from .fast_answer_collection import FastAnswerCollection
19
- from .topic_collection import TopicCollection
20
- from .filter_criteria_collection import FilterCriteriaCollection
21
- from .ai_component_collection import AiComponentCollection
22
-
23
- __all__ = [
24
- 'ProductCollection',
25
- 'TagCollection',
26
- 'UserCollection',
27
- 'ChatCollection',
28
- 'SourceCollection',
29
- 'FlowCollection',
30
- 'SaleCollection',
31
- 'ContactPointCollection',
32
- 'AiAgentCollection',
33
- 'FastAnswerCollection',
34
- 'TopicCollection',
35
- 'FilterCriteriaCollection',
36
- 'AiComponentCollection',
37
- ]
38
-
@@ -1,19 +0,0 @@
1
- """AI Agent Collection - Pre-configured AssetCollection for AI Agents"""
2
-
3
- from ..asset_service import AssetCollection
4
- from ....models.company.assets.ai_agents_v2.chatty_ai_agent import ChattyAIAgent, ChattyAIAgentPreview
5
- from ....models.data_base.mongo_connection import MongoConnection
6
-
7
-
8
- class AiAgentCollection(AssetCollection[ChattyAIAgent, ChattyAIAgentPreview]):
9
- """Pre-configured collection for AI Agent assets"""
10
-
11
- def __init__(self, connection: MongoConnection):
12
- super().__init__(
13
- collection="ai_agents",
14
- asset_type=ChattyAIAgent,
15
- connection=connection,
16
- create_instance_method=ChattyAIAgent.default_create_instance_method,
17
- preview_type=ChattyAIAgentPreview
18
- )
19
-
@@ -1,32 +0,0 @@
1
- """AI Agent In Chat Collection - Pre-configured AssetCollection for AI Agent state in chats"""
2
-
3
- from ..asset_service import AssetCollection
4
- from ....models.company.assets.ai_agents_v2.chatty_ai_agent_in_chat import ChattyAIAgentInChat
5
- from ....models.data_base.mongo_connection import MongoConnection
6
- from typing import Optional
7
-
8
-
9
- class AIAgentInChatCollection(AssetCollection[ChattyAIAgentInChat, ChattyAIAgentInChat]):
10
- """
11
- Pre-configured collection for AI Agent In Chat state.
12
-
13
- This is a standalone collection (not embedded in Chat) that allows Lambda to
14
- manage AI agent state independently without loading entire chat documents.
15
- """
16
-
17
- def __init__(self, connection: MongoConnection):
18
- super().__init__(
19
- collection="chatty_ai_agents_in_chat",
20
- asset_type=ChattyAIAgentInChat,
21
- connection=connection,
22
- create_instance_method=lambda doc: ChattyAIAgentInChat(**doc),
23
- preview_type=ChattyAIAgentInChat # No separate preview type needed
24
- )
25
-
26
- async def get_by_chat_id(self, chat_id: str) -> Optional[ChattyAIAgentInChat]:
27
- """Get AI agent state by chat ID, or None if not found"""
28
- doc = await self.async_collection.find_one({"chat_id": chat_id, "deleted_at": None})
29
- if not doc:
30
- return None
31
- return self.create_instance(doc)
32
-
@@ -1,21 +0,0 @@
1
- """AI Component Collection - Pre-configured AssetCollection for AI Components"""
2
-
3
- from typing import Any
4
- from ..asset_service import AssetCollection
5
- from ....models.base_models.ai_agent_component import AiAgentComponent, AiAgentComponentPreview
6
- from ....models.data_base.mongo_connection import MongoConnection
7
- from ....services.ai_components_service import AiComponentsService
8
-
9
-
10
- class AiComponentCollection(AssetCollection[AiAgentComponent, AiAgentComponentPreview]):
11
- """Pre-configured collection for AI Component assets"""
12
-
13
- def __init__(self, connection: MongoConnection):
14
- super().__init__(
15
- collection="ai_components",
16
- asset_type=AiAgentComponent,
17
- connection=connection,
18
- create_instance_method=AiComponentsService.instantiate_component,
19
- preview_type=AiAgentComponentPreview
20
- )
21
-