letschatty 0.4.342__py3-none-any.whl → 0.4.344__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 (88) hide show
  1. letschatty/models/ai_microservices/__init__.py +3 -3
  2. letschatty/models/ai_microservices/expected_output.py +2 -29
  3. letschatty/models/ai_microservices/lambda_events.py +28 -137
  4. letschatty/models/ai_microservices/lambda_invokation_types.py +1 -3
  5. letschatty/models/ai_microservices/n8n_ai_agents_payload.py +1 -3
  6. letschatty/models/analytics/events/__init__.py +2 -3
  7. letschatty/models/analytics/events/chat_based_events/chat_funnel.py +69 -13
  8. letschatty/models/analytics/events/company_based_events/asset_events.py +9 -2
  9. letschatty/models/analytics/events/event_type_to_classes.py +6 -3
  10. letschatty/models/analytics/events/event_types.py +9 -50
  11. letschatty/models/chat/chat.py +13 -2
  12. letschatty/models/chat/chat_with_assets.py +6 -1
  13. letschatty/models/chat/client.py +0 -2
  14. letschatty/models/chat/continuous_conversation.py +1 -1
  15. letschatty/models/company/CRM/funnel.py +365 -33
  16. letschatty/models/company/__init__.py +7 -1
  17. letschatty/models/company/assets/ai_agents_v2/ai_agents_decision_output.py +1 -1
  18. letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_in_chat.py +0 -4
  19. letschatty/models/company/assets/ai_agents_v2/chatty_ai_mode.py +2 -2
  20. letschatty/models/company/assets/ai_agents_v2/get_chat_with_prompt_response.py +0 -1
  21. letschatty/models/company/assets/ai_agents_v2/pre_qualify_config.py +2 -14
  22. letschatty/models/company/assets/automation.py +10 -19
  23. letschatty/models/company/assets/chat_assets.py +3 -2
  24. letschatty/models/company/assets/company_assets.py +2 -0
  25. letschatty/models/company/assets/sale.py +3 -3
  26. letschatty/models/company/empresa.py +2 -1
  27. letschatty/models/company/integrations/product_sync_status.py +28 -0
  28. letschatty/models/company/integrations/shopify/company_shopify_integration.py +62 -0
  29. letschatty/models/company/integrations/shopify/shopify_product_sync_status.py +12 -36
  30. letschatty/models/company/integrations/shopify/shopify_webhook_topics.py +40 -0
  31. letschatty/models/company/integrations/sync_status_enum.py +9 -0
  32. letschatty/models/data_base/collection_interface.py +29 -101
  33. letschatty/models/data_base/mongo_connection.py +9 -92
  34. letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py +4 -2
  35. letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py +4 -3
  36. letschatty/models/utils/custom_exceptions/custom_exceptions.py +1 -14
  37. letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py +2 -5
  38. letschatty/services/chat/chat_service.py +67 -12
  39. letschatty/services/chatty_assets/__init__.py +0 -12
  40. letschatty/services/chatty_assets/asset_service.py +13 -190
  41. letschatty/services/chatty_assets/base_container.py +2 -3
  42. letschatty/services/chatty_assets/base_container_with_collection.py +26 -35
  43. letschatty/services/continuous_conversation_service/continuous_conversation_helper.py +0 -11
  44. letschatty/services/events/events_manager.py +1 -218
  45. letschatty/services/factories/analytics/events_factory.py +6 -66
  46. letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py +8 -25
  47. letschatty/services/messages_helpers/get_caption_or_body_or_preview.py +4 -6
  48. letschatty/services/validators/analytics_validator.py +11 -0
  49. {letschatty-0.4.342.dist-info → letschatty-0.4.344.dist-info}/METADATA +1 -1
  50. {letschatty-0.4.342.dist-info → letschatty-0.4.344.dist-info}/RECORD +52 -84
  51. letschatty/models/analytics/events/chat_based_events/ai_agent_execution_event.py +0 -71
  52. letschatty/services/chatty_assets/assets_collections.py +0 -137
  53. letschatty/services/chatty_assets/collections/__init__.py +0 -38
  54. letschatty/services/chatty_assets/collections/ai_agent_collection.py +0 -19
  55. letschatty/services/chatty_assets/collections/ai_agent_in_chat_collection.py +0 -32
  56. letschatty/services/chatty_assets/collections/ai_component_collection.py +0 -21
  57. letschatty/services/chatty_assets/collections/chain_of_thought_collection.py +0 -30
  58. letschatty/services/chatty_assets/collections/chat_collection.py +0 -21
  59. letschatty/services/chatty_assets/collections/contact_point_collection.py +0 -21
  60. letschatty/services/chatty_assets/collections/fast_answer_collection.py +0 -21
  61. letschatty/services/chatty_assets/collections/filter_criteria_collection.py +0 -18
  62. letschatty/services/chatty_assets/collections/flow_collection.py +0 -20
  63. letschatty/services/chatty_assets/collections/product_collection.py +0 -20
  64. letschatty/services/chatty_assets/collections/sale_collection.py +0 -20
  65. letschatty/services/chatty_assets/collections/source_collection.py +0 -21
  66. letschatty/services/chatty_assets/collections/tag_collection.py +0 -19
  67. letschatty/services/chatty_assets/collections/topic_collection.py +0 -21
  68. letschatty/services/chatty_assets/collections/user_collection.py +0 -20
  69. letschatty/services/chatty_assets/example_usage.py +0 -44
  70. letschatty/services/chatty_assets/services/__init__.py +0 -37
  71. letschatty/services/chatty_assets/services/ai_agent_in_chat_service.py +0 -73
  72. letschatty/services/chatty_assets/services/ai_agent_service.py +0 -23
  73. letschatty/services/chatty_assets/services/chain_of_thought_service.py +0 -70
  74. letschatty/services/chatty_assets/services/chat_service.py +0 -25
  75. letschatty/services/chatty_assets/services/contact_point_service.py +0 -29
  76. letschatty/services/chatty_assets/services/fast_answer_service.py +0 -32
  77. letschatty/services/chatty_assets/services/filter_criteria_service.py +0 -30
  78. letschatty/services/chatty_assets/services/flow_service.py +0 -25
  79. letschatty/services/chatty_assets/services/product_service.py +0 -30
  80. letschatty/services/chatty_assets/services/sale_service.py +0 -25
  81. letschatty/services/chatty_assets/services/source_service.py +0 -28
  82. letschatty/services/chatty_assets/services/tag_service.py +0 -32
  83. letschatty/services/chatty_assets/services/topic_service.py +0 -31
  84. letschatty/services/chatty_assets/services/user_service.py +0 -32
  85. letschatty/services/events/__init__.py +0 -6
  86. letschatty/services/factories/analytics/ai_agent_event_factory.py +0 -161
  87. {letschatty-0.4.342.dist-info → letschatty-0.4.344.dist-info}/LICENSE +0 -0
  88. {letschatty-0.4.342.dist-info → letschatty-0.4.344.dist-info}/WHEEL +0 -0
@@ -1,20 +1,19 @@
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=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
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=LtbKa54_Um7LFKyn-nQ30efHuR4et-aOVFTg3K0Ova4,2096
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
16
15
  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
16
+ letschatty/models/analytics/events/chat_based_events/chat_funnel.py,sha256=LX_lcOn1R2VhdffdZeuc7S87PcoHBhEuppWaBXFP6tY,4184
18
17
  letschatty/models/analytics/events/chat_based_events/chat_status.py,sha256=9vt8GP6QnMrUuJF-AbUQm68Nkc0Zgexmnb-T1k8tsD4,2222
19
18
  letschatty/models/analytics/events/chat_based_events/contact_point.py,sha256=IIzf0EkgxUJKr7vqnv95LHEy0wQA9sVchHZA7Yi0H88,1944
20
19
  letschatty/models/analytics/events/chat_based_events/continuous_conversation.py,sha256=4Tbv83Zk5RIoUu6pKYpQdWMtxz9XZi26V-j5OSBP91U,2305
@@ -26,11 +25,11 @@ letschatty/models/analytics/events/chat_based_events/quality_scoring.py,sha256=f
26
25
  letschatty/models/analytics/events/chat_based_events/sale.py,sha256=WqpFp10h8yZwa5S5T4NCWCRLcBgkAAAME_CKmCv6K7M,1738
27
26
  letschatty/models/analytics/events/chat_based_events/tag_chat.py,sha256=7f1MaNdst-KN8-aIzgzyc6oBES-y8kkH5jVrsOOcxBs,1418
28
27
  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
28
+ letschatty/models/analytics/events/company_based_events/asset_events.py,sha256=EtVhl_W3wxkJhflbyk4NQraxAdpLeuesc9IfyOC5QV8,3490
30
29
  letschatty/models/analytics/events/company_based_events/company_events.py,sha256=PZAiw2imo706iM0EaCxnIaiFchMKivbwjKd7gsozA8k,1673
31
30
  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
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
34
33
  letschatty/models/analytics/metrics/__init_.py,sha256=DnGDYvEn9S1sSMe56e7mwE5r013nO-Fsf0pgBnf9RjI,276
35
34
  letschatty/models/analytics/metrics/daily_contact_points.py,sha256=eWwUmhFpL-Xn5sWQWCcACrulb4xwjMY80jDSAWsTMb4,1524
36
35
  letschatty/models/analytics/metrics/daily_new_chats.py,sha256=kTsQFDFwavTq3u7HcHx3RqZ_O517HqTrOD-k8q4JQz0,322
@@ -64,11 +63,11 @@ letschatty/models/base_models/update_model_interface.py,sha256=80YuvkEM5Rd3Ycysq
64
63
  letschatty/models/base_models/validate_timestamps_and_id.py,sha256=WRtaoW2EYtItgZjnNOYAffxy9K7M_NMNJ5imRN8Iu80,1971
65
64
  letschatty/models/channels/channel.py,sha256=Mgqigm-3uRDozxBIZZYj62PQwtnB0rAKoY2JS4477n8,2029
66
65
  letschatty/models/chat/assets_assigned_to_chat.py,sha256=nAdSzRvUSWa8-Plw6KZKnpUxxjCdWs_grml0bhskSis,192
67
- letschatty/models/chat/chat.py,sha256=NJcahnCHmY_RLUP6oKQEuEn1J8ycUsIkc7OruQmn1zs,16137
66
+ letschatty/models/chat/chat.py,sha256=P6c8JGutMsk5GF526s0RxnT_F6oBclofPtTzjcnNUrc,16749
68
67
  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
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
72
71
  letschatty/models/chat/filter_parameters.py,sha256=X1IHBYCJr_1y4R8syQYEwKhintdUZc-ZiB_8kSnjiYw,4489
73
72
  letschatty/models/chat/flow_link_state.py,sha256=RblDBp6uD-P0ZtaQn1-HzL1EpEgtVhN1rT3iBhO0gMw,5458
74
73
  letschatty/models/chat/highlight.py,sha256=bUpXSMvwoTKiDa6AWDRKfMYxv5d6sax7soNtc8rAtpo,555
@@ -78,35 +77,35 @@ letschatty/models/chat/scheduled_messages.py,sha256=6z9XXgXUV6lPW8BalAZ4-MsmT8Zn
78
77
  letschatty/models/chat/temporary_chat.py,sha256=MR68vYrNvoyf40cLs2p5NnI8BNeN1VGTMAcuQw8j9RA,2303
79
78
  letschatty/models/chat/time_left.py,sha256=2uA9dS_0QAVnWn7Q2wIwGe4tMrlYBP9qySC7M8I0jb8,3307
80
79
  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
80
+ letschatty/models/company/CRM/funnel.py,sha256=gBGZhud060sK5QFI5y9NgmFuhLCOAtzK81TKBhK2gxE,15820
81
+ letschatty/models/company/__init__.py,sha256=s6maWpREH-RAPoTm8svdivJ5foNEBkb5K6ncyZ0oEjo,626
83
82
  letschatty/models/company/assets/__init__.py,sha256=z0xN_lt1D76bXt8DXVdbH3GkofUPQPZU9NioRSLt_lI,244
84
83
  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
84
+ letschatty/models/company/assets/ai_agents_v2/ai_agents_decision_output.py,sha256=aEKZCOsGiFFPSx23fkS5Khfsxo-r8JGk3O0sxiGs8T0,5876
86
85
  letschatty/models/company/assets/ai_agents_v2/chain_of_thought_in_chat.py,sha256=xK7IbM_sEN7_-SZXcgiRyALq6IjYaJ-ivq9BE8B8Bdg,6129
87
86
  letschatty/models/company/assets/ai_agents_v2/chat_example.py,sha256=yCKt6ifNYch3C78zAvj8To0_Sb9CPAZ8sC-hyoBPa4s,1816
88
87
  letschatty/models/company/assets/ai_agents_v2/chat_example_test.py,sha256=vChD-TkX1ORRD9LMbd2HlpbK4QyrsfhDiJd-LDjIqlk,4618
89
88
  letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent.py,sha256=R2rCANri8ZiqnmPP10PWoanGddMImCMxrl78Y6d-194,8204
90
89
  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
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
93
92
  letschatty/models/company/assets/ai_agents_v2/context_item.py,sha256=9629_sJ4vjfF6--KR44E6lqVpc0uOGSlcorKS5ooSXU,438
94
93
  letschatty/models/company/assets/ai_agents_v2/faq.py,sha256=qL-sr17ALvJ9PEzpaXpYL91-bQ9Np3C4jCYe-zfot6o,457
95
94
  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
95
+ letschatty/models/company/assets/ai_agents_v2/get_chat_with_prompt_response.py,sha256=r4WpTu4ZXdG6qazHWUed0WhWY0L63UZnD6plvHLD0ns,1414
97
96
  letschatty/models/company/assets/ai_agents_v2/knowleadge_base_components.py,sha256=ooC-odECa2KkMOqBfiJeLAWCRkLK0EMmc7fcg3YCAbQ,676
98
97
  letschatty/models/company/assets/ai_agents_v2/n8n_agents_info.py,sha256=UNsYXznXr2yj9J_zylZTMPrU5hjkkVgHAaIP2etpZRM,383
99
98
  letschatty/models/company/assets/ai_agents_v2/n8n_schema_incoming_message_output.json,sha256=_NERM9gJ4Ry8NFVb8mHxRmdv0GfBrHdtmKxVJWmTUrY,2102
100
99
  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=tXsUXWB4d_SeY1ip9aMZzmkAftaNP3CMlW3_04xArcM,4761
100
+ letschatty/models/company/assets/ai_agents_v2/pre_qualify_config.py,sha256=o9kKywbnm1lEliTTV0G7oSCFroyqp_w0GkypL--sSk4,4181
102
101
  letschatty/models/company/assets/ai_agents_v2/statuses.py,sha256=nhIGfeKednLNFZCIMavbZptT_9L-HDDVshAyCLdwPe8,1109
103
102
  letschatty/models/company/assets/assignment/__init__.py,sha256=eWYZfaDQde5OJNIDed8D-LNRXOa5O_O4mGMToNFtaW8,239
104
103
  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
104
+ letschatty/models/company/assets/automation.py,sha256=RQFOvM-lipBdalfsRSZ8K5opytVgq_GS6YSR0Mz5Qs8,1639
105
+ letschatty/models/company/assets/chat_assets.py,sha256=kUnV1ngN1OA7AgED85ue91TOiFT1Fmf3LDOPbHAf460,8016
107
106
  letschatty/models/company/assets/chatty_fast_answers/__init__.py,sha256=tbgWS0n1i0nVi9f79U44GPRnrW25NKcjl6Port92alk,48
108
107
  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
108
+ letschatty/models/company/assets/company_assets.py,sha256=9Or3hdUsWO0YCLqlwUb0Zcm_c5OerJqDx7rrrUK4_-E,800
110
109
  letschatty/models/company/assets/contact_point.py,sha256=2-C00CwQTAQkofQ4ufr5_nJPoxauOXZSDtyL-nj-hF8,2916
111
110
  letschatty/models/company/assets/filter_criteria.py,sha256=5hYhHWz5hoMyIURHML2XPZo_Bl66Cyvbh8caVPgdAvE,2283
112
111
  letschatty/models/company/assets/flow.py,sha256=mYKB6DG_DHSJymoTpeXm15OWsWI1OP4rkzvMg8AeYzY,1198
@@ -117,7 +116,7 @@ letschatty/models/company/assets/launch/subscription.py,sha256=BnZuNK0jMOzn0s9zg
117
116
  letschatty/models/company/assets/media/__init__.py,sha256=o22MHvoqGBUeG1P383KfBfsu-Fg0YdVh9FYeNB1j14s,38
118
117
  letschatty/models/company/assets/media/file.py,sha256=MFhTNe8zsgjR1zMm2UIAznp4vtD4U12UMfu7mjFIGfE,1902
119
118
  letschatty/models/company/assets/product.py,sha256=02eAZlE74nRzwOPAmbCHkQj7czVNgEtJQNzWxSBPP_w,2406
120
- letschatty/models/company/assets/sale.py,sha256=OG9tGesyajvhXNyjSgOPc8EMcAVlqoaqAVflMKBzWa4,1078
119
+ letschatty/models/company/assets/sale.py,sha256=8YiZoRHA0l6-JHX4N0jDe8PDu5Kkw1O2tZLDNOGL8p8,1143
121
120
  letschatty/models/company/assets/tag.py,sha256=P1jRAvaebEtdAUs-07sRbCK25vmS6Q5NNtH7UX7bK-0,1008
122
121
  letschatty/models/company/assets/users/agent_chats_snapshot.py,sha256=CTNRN8p9HE57bvxI8MbO2krg8KD3yIo3PmFjIV0iVWg,568
123
122
  letschatty/models/company/assets/users/user.py,sha256=JWABDnvc9qhFnFcqBWSH2OAmVny37pUMBxo2CJGOMtA,9019
@@ -126,15 +125,19 @@ letschatty/models/company/assets/workflow_execution.py,sha256=CKlT9JTryKC8kNniRX
126
125
  letschatty/models/company/company_chats_snapshot.py,sha256=Mg9Wmu3pfE-t5Sf57FCj-psvc5TkDkFfma-hdh6nE0Q,668
127
126
  letschatty/models/company/company_messaging_settgins.py,sha256=7isXt7gmqw-FKSUSZwdctdXDFMfPi2OyPuWqB7WpC6c,957
128
127
  letschatty/models/company/conversation_topic.py,sha256=__IinJ3YcUsiApF4Em5uAgd01ydRUrlCVxaat-pCCRg,1704
129
- letschatty/models/company/empresa.py,sha256=2INPC8YSZJcT10Gny_zXV_PujeqUGccsZHV31ZSywyw,5961
128
+ letschatty/models/company/empresa.py,sha256=o3IgQqMjQmyDjmR9je3bSF4EiIlJk7BnafiCO5c3pVE,6205
130
129
  letschatty/models/company/form_field.py,sha256=LGyMLybwvfEPG3hMmwsoP_4wnMaPJbVFpG6c1HdVC8E,9802
131
130
  letschatty/models/company/insight.py,sha256=B7BL07E4Z1b9aJHi3PXC1atln4-7fSo9JeqgQoeB_ao,7459
132
- letschatty/models/company/integrations/shopify/shopify_product_sync_status.py,sha256=uKAsgnYckedKsY4Exi8VQY57WL41tB0kmt0TtiaVtXk,1301
131
+ letschatty/models/company/integrations/product_sync_status.py,sha256=115zOvkaeXpHIUQftXe6dJsOUki3ru8hG3c75e2v4ag,814
132
+ letschatty/models/company/integrations/shopify/company_shopify_integration.py,sha256=PbxgIOG0Qp9Bz0WDrQffuSWrbEiV93JjX7PtHeYsqa0,2496
133
+ letschatty/models/company/integrations/shopify/shopify_product_sync_status.py,sha256=FhsmtFIf82pO9a1_OwV3MyKiJ6CGzlw-SCANZoV2M2g,588
134
+ letschatty/models/company/integrations/shopify/shopify_webhook_topics.py,sha256=HlSm0JHH6G3NPug8tbx9PQaC9yO3cwXJPTuU3qkWdDk,1263
135
+ letschatty/models/company/integrations/sync_status_enum.py,sha256=gh5kkKgLRqhygFFUPhITksp0Z-ImFEpGpzVABr7JiFM,154
133
136
  letschatty/models/company/notifications/notification.py,sha256=wE7rIi21nZno6jjIxajMz4e7OJbzrDHjH1KdkNzJiF8,1907
134
137
  letschatty/models/copilot/links.py,sha256=mcddNR6WdWOoOr3NgDl_FElxF15SiZZXw9wmIV08HRw,185
135
138
  letschatty/models/data_base/__init__.py,sha256=cUTj-TBUYJn1iAofztCr3VUJFF9qg1vmaQlOuoKb1MM,45
136
- letschatty/models/data_base/collection_interface.py,sha256=CpmP2cZzJomHNQjS00Gq8GvHe6ac1ycRaiVecVxrchc,8768
137
- letschatty/models/data_base/mongo_connection.py,sha256=Uj70b8ad2ngRWh5Ju4X77n_d5QSdyhXlMbppGvJ1yW0,5066
139
+ letschatty/models/data_base/collection_interface.py,sha256=CeRx8T5spSdbEh3rD15yWesggbFFosuaCE5FFwObOZs,5962
140
+ letschatty/models/data_base/mongo_connection.py,sha256=M1Qhk3AYCBiTV9tp-P6Ef92n7_ZundMIXzdC0GYTrk0,1302
138
141
  letschatty/models/execution/__init__.py,sha256=-XMgns_gpDuqibgcpsBU63oiLfzf4Ms0xMOyiAJoMLg,70
139
142
  letschatty/models/execution/execution.py,sha256=L4kwZfXaGHTb8j6qPNWMVQFNbaoG0dMCg1THvsBRmJM,4049
140
143
  letschatty/models/execution/executor.py,sha256=KarlbDFgv6DpG4nQMGB8Yuogh2_ZCznBhpWv8baiaTA,1188
@@ -160,11 +163,11 @@ letschatty/models/messages/chatty_messages/schema/chatty_content/content_audio.p
160
163
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_button.py,sha256=jdk9QFBN-SaAV6_fnBqkXwl0AFXJLbBNatikhUXLobo,181
161
164
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_central.py,sha256=k7J1G4GlfRX5J4ZJIoviOHiekioaLbAc-76In_ZfiIo,712
162
165
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_contacts.py,sha256=I1f_NNaT7QYriruMJdWT6K_8JjaU7XVaTSXctNB-_9o,985
163
- letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py,sha256=cxQXOFFZ_kCPs5M7QBAye8_HIPReWgNZPPxayHCCSGY,508
166
+ letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py,sha256=sy25r2a2eVxHoJoy_4ZiGSBXz7gYxErXvsq-JWSMLL0,604
164
167
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_image.py,sha256=AmILz3zm1HFUh5hjSxjBxLg4AR2DoY9NrBU9NIjjjvk,102
165
168
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_interactive.py,sha256=zIdk_-RlTQIAGh9AifnY7Yqs3C7ukyX2RPb-VyhIJ0w,164
166
169
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_location.py,sha256=GLk7-QtkksY7G53swRKRiZo481GuhBXA-bsCEBf3B3A,217
167
- letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py,sha256=-K10IU5Snt9TMU9qiuR9uRrLhF0HUEZ0vZRHP25jKSo,775
170
+ letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py,sha256=Y_jm1HkGFORZAr3uxz-cNo4nGGuwdHS6cC0KHu5-9e0,865
168
171
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_reaction.py,sha256=ZRCrWXJxUYCnpMikPO6JGj1eeZvQGcj8nKMQkVXw0KA,155
169
172
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_sticker.py,sha256=hmV6LQZXorn3iM-tzVk_kxA9BxW4jEiopRjNFY9xcFA,254
170
173
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_text.py,sha256=A_gw5WNCcStpSzHC_jzszDvxtv-ChVOJA2po5EHnccs,416
@@ -205,7 +208,7 @@ letschatty/models/messages/meta_message_model/schema/values/value_messages.py,sh
205
208
  letschatty/models/messages/meta_message_model/schema/values/value_statuses.py,sha256=SGibpHxdWy6DbzGfJjlrHIxrviqxXbRj54k4rz-fDQM,1966
206
209
  letschatty/models/utils/__init__.py,sha256=ziz1DfISJPfq5dE9xjNiwBlwsscHfOks1s0BWD7c1cI,20
207
210
  letschatty/models/utils/custom_exceptions/__init__.py,sha256=FrZBwS0o2TuTJcJFRnreRT5v_tv8EY2_EhKL2cAr7PI,32
208
- letschatty/models/utils/custom_exceptions/custom_exceptions.py,sha256=IrNv2Uuc6U9vnnt9hOqLK0ouNuyLG4_jZ5QJGorynS4,12398
211
+ letschatty/models/utils/custom_exceptions/custom_exceptions.py,sha256=mX7AGWsl3qj76lub3wpe8HCUgZEOwnKDYPOw0_3YYOY,11665
209
212
  letschatty/models/utils/definitions.py,sha256=ylyTOyDVYpE6UcViTSpxnzoxic4VzPVHE45k2Vc1U6A,826
210
213
  letschatty/models/utils/types/CRUD_operations.py,sha256=bRagXYtzeIzM4JSY8mD-4tTaqviUmq_0tY9H74nSS5I,139
211
214
  letschatty/models/utils/types/__init__.py,sha256=2z69a0c4s5fWiA9I3thv4P_SbehlvF3e-t757L0vcK4,419
@@ -225,64 +228,29 @@ letschatty/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
225
228
  letschatty/services/ai_agents/context_builder_v2.py,sha256=WoUZj5NASARBmweSkKU-T9VfkmsJdTV09CVvPb5bK_A,7438
226
229
  letschatty/services/ai_agents/cot_follow_up_examples.py,sha256=_syeGIUdpZZ9yfmARc6-Rjgdp6xDaImVZwNpvMPOkaU,10702
227
230
  letschatty/services/ai_agents/followup_schema.json,sha256=H0NaPmfjsiQGE8jcdkVZbHNmRSTnq7GXJm49SXBMe18,2932
228
- letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py,sha256=Syeogf-t35uQ_Z7MD9HfySw9PlRJ7CDyApmGpUlKLAY,11481
231
+ letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py,sha256=ULh1THzcMdlpbncshD54ZkE3atxoPmA1aao5JabV3ig,11245
229
232
  letschatty/services/ai_agents/smart_follow_up_service_v2.py,sha256=GqOmEKoomSUvduTAjl9Dmj7_XItItTQpzjT73JMywGw,7982
230
233
  letschatty/services/ai_agents/tool_descriptions/assign_chat_to_ai_agent_itself.json,sha256=Nc24Z-cHenadv-8C_tufKeZMOwIanDJ-j1ffW8z_GI0,802
231
234
  letschatty/services/ai_agents/tool_descriptions/human_handover.json,sha256=-b3l_SyFARq4XHZx26SU63bl0aul_g4Q7vet4E8GqAM,995
232
235
  letschatty/services/ai_agents/tool_descriptions.py,sha256=MMFhcgEl6Z7k8BUv3Yx1pCxHzIjc8HD93S0uM5OPj8Y,105
233
236
  letschatty/services/ai_components_service.py,sha256=QUb-NdzHj4nPmnceVSQ9Pe3swFWUrkUFKzDZeuP0b5o,3762
234
237
  letschatty/services/chat/chat_extractors.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
235
- letschatty/services/chat/chat_service.py,sha256=DsnjSYmOXGSRQPtnYEx2O4NPdEXpG1GBOjk53M-jYM8,47832
238
+ letschatty/services/chat/chat_service.py,sha256=UKmFpLJaoK7SHC2neNgGFnP9PYjUa03H2cVkplfSI9A,50209
236
239
  letschatty/services/chat/client_service.py,sha256=TtlG0GJDqx6YemfueiJzAtMNk_udnPhg0MJG0bKwnk8,1097
237
240
  letschatty/services/chat/conversation_topics_service.py,sha256=jvIkpHTCz0JKXui3n_BRs6UQ-TB3x7DrQsnX2zUVFVw,2461
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
+ letschatty/services/chatty_assets/__init__.py,sha256=quOXMGvcDVRkbeaGfCQliFfZzis5m1wrfJkHqDkWRx8,132
242
+ letschatty/services/chatty_assets/asset_service.py,sha256=9EbtqSjTdil9kz7GZMmGYOkF3m4vZpAxyDPt4t-8zhc,3675
243
+ letschatty/services/chatty_assets/base_container.py,sha256=p1fdwBEJZpE-Y_NRNSKH4as4KvU8tl8hUouVUP-U_W0,5781
244
+ letschatty/services/chatty_assets/base_container_with_collection.py,sha256=0fF7uadzVCm3Rc9M-vH44twTpuOpOx9kRNvu-uggZi4,15836
259
245
  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
261
246
  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
277
247
  letschatty/services/concurrent/concurrent.py,sha256=ZLNeCENCKlR3_CGMthggklOplNkJB7YX9IcD9H-aU1A,2868
278
248
  letschatty/services/contact_points/contact_point_service.py,sha256=bNkZWFSHVSV8tR84OdUYMvoIA74-NkBckmrFerXnwDI,7623
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
249
+ letschatty/services/continuous_conversation_service/continuous_conversation_helper.py,sha256=Tnd_1wSjW6moufmrR51gdGrPDDSxR-qcYmVoz1DXPL8,16734
250
+ letschatty/services/events/events_manager.py,sha256=z2CAc-TqpXkyX9pPHImFXMIDRipLp7e-mN1gRvaM04E,67
282
251
  letschatty/services/factories/__init__.py,sha256=cDAQ_0M5xKqZAui5ijHvbtHxn3jFFM4kBcXIXc_Bv38,161
283
- letschatty/services/factories/analytics/ai_agent_event_factory.py,sha256=m4apDnq0Oy9f2LId8f0ytHofQOwDVN09sqZFZ1MO_Wk,7356
284
252
  letschatty/services/factories/analytics/contact_point_factory.py,sha256=5YXkoIwd43gtoYpFUACIXJGCJYyUEqS97XxpR_dBrt4,441
285
- letschatty/services/factories/analytics/events_factory.py,sha256=In0IgLrJHzEINohLvli9pRE81I9iN1pl1L7oAm_FcN8,37858
253
+ letschatty/services/factories/analytics/events_factory.py,sha256=o_ojRvzM5X8U3zSzbWqqA2bAWk6TP0YH3CZzPzxC7lY,35384
286
254
  letschatty/services/factories/analytics/smart_messages/topics_factory.py,sha256=nJRlOtQFiosafXakZoJj8UCVoiNovjDiOoO52vIh4ok,682
287
255
  letschatty/services/factories/analytics/sources/helpers.py,sha256=_2lsaTEhNFqr2ZyO8clMCD-t3MCPTQMyVoSUo5Fio_Y,868
288
256
  letschatty/services/factories/analytics/sources/source_factory.py,sha256=kvpS9dLoCsIVnV_wMQzBpFXoN3AyjyphX-IFRg5sO5c,7877
@@ -292,7 +260,7 @@ letschatty/services/factories/chatty_fast_answers/chatty_fast_answers_factory.py
292
260
  letschatty/services/factories/clients/client_factory.py,sha256=WIFUksJlnMSSLeHEVTAorpelEvpJMQg_mxg66wZfLcQ,1567
293
261
  letschatty/services/factories/company/__init__.py,sha256=Zd3Zo21bQ1Lk9mQNpNaaTZ5EyjttWXi9AthgV5GnSb4,43
294
262
  letschatty/services/factories/company/empresa_factory.py,sha256=tJ5Y9WhvYTEvPZXzREGHi2X-aNnW1_B49K12fAo290w,1710
295
- letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py,sha256=tCY77uqvOoTlXwtepjwagIIk1id8ci7eb1WwZ4CXrzo,5796
263
+ letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py,sha256=AtEAjgmix9mlW1Tn-4wacfwBCoqDCcf0aZyXegL73e4,4475
296
264
  letschatty/services/factories/messages/__init__.py,sha256=Qm02DTwopP5WKXt4hMB5j-Y2ytfAUfMqztX5_pPJnxI,122
297
265
  letschatty/services/factories/messages/central_notification_factory.py,sha256=P8rrBw-Ew0AMqL31YsHH9dXAMQALiLzh6BH618eX_EU,2815
298
266
  letschatty/services/factories/messages/chatty_message_factory.py,sha256=kFYkkrZ1x-njavcqcSkRY30DIj5cFHLCo5Iixd63JR4,2234
@@ -306,13 +274,13 @@ letschatty/services/factories/meta_notifications/meta_notification_factory.py,sh
306
274
  letschatty/services/factories/product_factory.py,sha256=PwSeZjp0OOM-_Dl7om8DjLKc0NZN_fEK4QLe9ElmYsk,2360
307
275
  letschatty/services/filter_criteria_service.py,sha256=4ZA3Na6wF2zWHQk65YiYQogR2Y25G2-U9maJZxAh_H0,4429
308
276
  letschatty/services/messages_helpers/__init__.py,sha256=3LQssKlikjOPP32u1OQ5CHWYdmJsrQiEq1F14MzHt8A,73
309
- letschatty/services/messages_helpers/get_caption_or_body_or_preview.py,sha256=21l3RgwUIROC8hoIggFl0YVyzX10uOwr7QNZG2pGNok,2010
277
+ letschatty/services/messages_helpers/get_caption_or_body_or_preview.py,sha256=Bdz8lduHma7XuEt2tcru-ASVFcGtXKbxyOh6DqJ2FdA,1662
310
278
  letschatty/services/scheduled_messages_service/scheduled_messages_helpers.py,sha256=RM_lx_RZvxkEscvpYsWOqWpNCXg4ar_6TI8q-BaX92M,13042
311
279
  letschatty/services/template_campaigns/template_campaign_service.py,sha256=jORgDncuXJ5ZV4fr_KsfKBHOz_lypIy6lcNMWMw8OPw,4038
312
280
  letschatty/services/users/agent_service.py,sha256=hIkUUJ1SpkKbh5_uo4i2CeqGtuMTjU7tSV8k5J7WPG4,279
313
281
  letschatty/services/users/user_factory.py,sha256=FCB9uiAfjMeYfh4kMdx5h8VDHJ8MCsD-uaxW3X3KaWM,6681
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,,
282
+ letschatty/services/validators/analytics_validator.py,sha256=6ejecLcif2i1C5trUo1qQgp8vKr9WchdljFZ5GzB2i4,7239
283
+ letschatty-0.4.344.dist-info/LICENSE,sha256=EClLu_bO2HBLDcThowIwfaIg5EOwIYhpRsBJjVEk92A,1197
284
+ letschatty-0.4.344.dist-info/METADATA,sha256=0T1C22R5z3sxTuB3BCpuH5RAJBM81I4Ih0UWjKct3LY,3283
285
+ letschatty-0.4.344.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
286
+ letschatty-0.4.344.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
-