letschatty 0.4.333__py3-none-any.whl → 0.4.334__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 (78) 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 +2 -0
  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 +2 -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 +1 -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/company_assets.py +2 -0
  24. letschatty/models/data_base/collection_interface.py +29 -101
  25. letschatty/models/data_base/mongo_connection.py +9 -92
  26. letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py +4 -2
  27. letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py +4 -3
  28. letschatty/models/utils/custom_exceptions/custom_exceptions.py +1 -14
  29. letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py +2 -5
  30. letschatty/services/chatty_assets/__init__.py +0 -12
  31. letschatty/services/chatty_assets/asset_service.py +13 -190
  32. letschatty/services/chatty_assets/base_container.py +2 -3
  33. letschatty/services/chatty_assets/base_container_with_collection.py +26 -35
  34. letschatty/services/continuous_conversation_service/continuous_conversation_helper.py +0 -11
  35. letschatty/services/events/events_manager.py +1 -218
  36. letschatty/services/factories/analytics/events_factory.py +6 -66
  37. letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py +8 -25
  38. letschatty/services/messages_helpers/get_caption_or_body_or_preview.py +4 -6
  39. {letschatty-0.4.333.dist-info → letschatty-0.4.334.dist-info}/METADATA +1 -1
  40. {letschatty-0.4.333.dist-info → letschatty-0.4.334.dist-info}/RECORD +42 -78
  41. letschatty/models/analytics/events/chat_based_events/ai_agent_execution_event.py +0 -71
  42. letschatty/services/chatty_assets/assets_collections.py +0 -137
  43. letschatty/services/chatty_assets/collections/__init__.py +0 -38
  44. letschatty/services/chatty_assets/collections/ai_agent_collection.py +0 -19
  45. letschatty/services/chatty_assets/collections/ai_agent_in_chat_collection.py +0 -32
  46. letschatty/services/chatty_assets/collections/ai_component_collection.py +0 -21
  47. letschatty/services/chatty_assets/collections/chain_of_thought_collection.py +0 -30
  48. letschatty/services/chatty_assets/collections/chat_collection.py +0 -21
  49. letschatty/services/chatty_assets/collections/contact_point_collection.py +0 -21
  50. letschatty/services/chatty_assets/collections/fast_answer_collection.py +0 -21
  51. letschatty/services/chatty_assets/collections/filter_criteria_collection.py +0 -18
  52. letschatty/services/chatty_assets/collections/flow_collection.py +0 -20
  53. letschatty/services/chatty_assets/collections/product_collection.py +0 -20
  54. letschatty/services/chatty_assets/collections/sale_collection.py +0 -20
  55. letschatty/services/chatty_assets/collections/source_collection.py +0 -21
  56. letschatty/services/chatty_assets/collections/tag_collection.py +0 -19
  57. letschatty/services/chatty_assets/collections/topic_collection.py +0 -21
  58. letschatty/services/chatty_assets/collections/user_collection.py +0 -20
  59. letschatty/services/chatty_assets/example_usage.py +0 -44
  60. letschatty/services/chatty_assets/services/__init__.py +0 -37
  61. letschatty/services/chatty_assets/services/ai_agent_in_chat_service.py +0 -73
  62. letschatty/services/chatty_assets/services/ai_agent_service.py +0 -23
  63. letschatty/services/chatty_assets/services/chain_of_thought_service.py +0 -70
  64. letschatty/services/chatty_assets/services/chat_service.py +0 -25
  65. letschatty/services/chatty_assets/services/contact_point_service.py +0 -29
  66. letschatty/services/chatty_assets/services/fast_answer_service.py +0 -32
  67. letschatty/services/chatty_assets/services/filter_criteria_service.py +0 -30
  68. letschatty/services/chatty_assets/services/flow_service.py +0 -25
  69. letschatty/services/chatty_assets/services/product_service.py +0 -30
  70. letschatty/services/chatty_assets/services/sale_service.py +0 -25
  71. letschatty/services/chatty_assets/services/source_service.py +0 -28
  72. letschatty/services/chatty_assets/services/tag_service.py +0 -32
  73. letschatty/services/chatty_assets/services/topic_service.py +0 -31
  74. letschatty/services/chatty_assets/services/user_service.py +0 -32
  75. letschatty/services/events/__init__.py +0 -6
  76. letschatty/services/factories/analytics/ai_agent_event_factory.py +0 -161
  77. {letschatty-0.4.333.dist-info → letschatty-0.4.334.dist-info}/LICENSE +0 -0
  78. {letschatty-0.4.333.dist-info → letschatty-0.4.334.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=Ti5E_qEV1kKFH1VnnIiPpmJp7D0sv_-Iryh-IgQBbkQ,18142
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=aazW8g6M7b7Lk-KZbx0R4AoV5oMjgXEpAcnsIwQ7Jf4,14319
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=8kAQvtH_ccrhk6lnPDdmRvBwvV_iBYsA2h7Q9NcdNOA,16298
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,34 +77,34 @@ 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=N_I-kRMHrtnp00c_bbFSiYYM47HJRS-d5slgtbexsl4,229
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=LJqtSl1A1V0frPLYwW-5cMZxaGx7-0x1HvujRXsZsNU,5877
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=IsySLBUYzkYVwbd7ms1HFlB0riOtc9lMvP5verPcpCU,15653
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=uVmD4FqGP5Tc8noxMBuRYGbkOXrtYlH2w6SAYwQZlLo,15494
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/assignment/__init__.py,sha256=eWYZfaDQde5OJNIDed8D-LNRXOa5O_O4mGMToNFtaW8,239
103
102
  letschatty/models/company/assets/assignment/assignment_assets.py,sha256=phIJqNh4UGTU-Hux_kaOYhJm2GCqv37AnCGePSDVKmM,2245
104
- letschatty/models/company/assets/automation.py,sha256=QDMCHm--85tEGUwddjWGeUSxmCT27HiH8lRm4w4DJLE,1871
103
+ letschatty/models/company/assets/automation.py,sha256=RQFOvM-lipBdalfsRSZ8K5opytVgq_GS6YSR0Mz5Qs8,1639
105
104
  letschatty/models/company/assets/chat_assets.py,sha256=OV33LPOBOaK02Va0yH7rCH5ufmEyOploQPTEefjlsdk,7524
106
105
  letschatty/models/company/assets/chatty_fast_answers/__init__.py,sha256=tbgWS0n1i0nVi9f79U44GPRnrW25NKcjl6Port92alk,48
107
106
  letschatty/models/company/assets/chatty_fast_answers/chatty_fast_answer.py,sha256=PxW3eStHXo0BY7Z9hMDqBTHmgO7XcwtOvEpwXi-rA5g,1076
108
- letschatty/models/company/assets/company_assets.py,sha256=YKRo_uXhQYRQ8HvMf4HhrHTBC2zp7xlE_B0nqSMfMFY,726
107
+ letschatty/models/company/assets/company_assets.py,sha256=9Or3hdUsWO0YCLqlwUb0Zcm_c5OerJqDx7rrrUK4_-E,800
109
108
  letschatty/models/company/assets/contact_point.py,sha256=2-C00CwQTAQkofQ4ufr5_nJPoxauOXZSDtyL-nj-hF8,2916
110
109
  letschatty/models/company/assets/filter_criteria.py,sha256=5hYhHWz5hoMyIURHML2XPZo_Bl66Cyvbh8caVPgdAvE,2283
111
110
  letschatty/models/company/assets/flow.py,sha256=mYKB6DG_DHSJymoTpeXm15OWsWI1OP4rkzvMg8AeYzY,1198
@@ -131,8 +130,8 @@ letschatty/models/company/insight.py,sha256=B7BL07E4Z1b9aJHi3PXC1atln4-7fSo9Jeqg
131
130
  letschatty/models/company/notifications/notification.py,sha256=wE7rIi21nZno6jjIxajMz4e7OJbzrDHjH1KdkNzJiF8,1907
132
131
  letschatty/models/copilot/links.py,sha256=mcddNR6WdWOoOr3NgDl_FElxF15SiZZXw9wmIV08HRw,185
133
132
  letschatty/models/data_base/__init__.py,sha256=cUTj-TBUYJn1iAofztCr3VUJFF9qg1vmaQlOuoKb1MM,45
134
- letschatty/models/data_base/collection_interface.py,sha256=CpmP2cZzJomHNQjS00Gq8GvHe6ac1ycRaiVecVxrchc,8768
135
- letschatty/models/data_base/mongo_connection.py,sha256=Uj70b8ad2ngRWh5Ju4X77n_d5QSdyhXlMbppGvJ1yW0,5066
133
+ letschatty/models/data_base/collection_interface.py,sha256=CeRx8T5spSdbEh3rD15yWesggbFFosuaCE5FFwObOZs,5962
134
+ letschatty/models/data_base/mongo_connection.py,sha256=M1Qhk3AYCBiTV9tp-P6Ef92n7_ZundMIXzdC0GYTrk0,1302
136
135
  letschatty/models/execution/__init__.py,sha256=-XMgns_gpDuqibgcpsBU63oiLfzf4Ms0xMOyiAJoMLg,70
137
136
  letschatty/models/execution/execution.py,sha256=L4kwZfXaGHTb8j6qPNWMVQFNbaoG0dMCg1THvsBRmJM,4049
138
137
  letschatty/models/execution/executor.py,sha256=KarlbDFgv6DpG4nQMGB8Yuogh2_ZCznBhpWv8baiaTA,1188
@@ -158,11 +157,11 @@ letschatty/models/messages/chatty_messages/schema/chatty_content/content_audio.p
158
157
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_button.py,sha256=jdk9QFBN-SaAV6_fnBqkXwl0AFXJLbBNatikhUXLobo,181
159
158
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_central.py,sha256=k7J1G4GlfRX5J4ZJIoviOHiekioaLbAc-76In_ZfiIo,712
160
159
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_contacts.py,sha256=I1f_NNaT7QYriruMJdWT6K_8JjaU7XVaTSXctNB-_9o,985
161
- letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py,sha256=cxQXOFFZ_kCPs5M7QBAye8_HIPReWgNZPPxayHCCSGY,508
160
+ letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py,sha256=sy25r2a2eVxHoJoy_4ZiGSBXz7gYxErXvsq-JWSMLL0,604
162
161
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_image.py,sha256=AmILz3zm1HFUh5hjSxjBxLg4AR2DoY9NrBU9NIjjjvk,102
163
162
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_interactive.py,sha256=zIdk_-RlTQIAGh9AifnY7Yqs3C7ukyX2RPb-VyhIJ0w,164
164
163
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_location.py,sha256=GLk7-QtkksY7G53swRKRiZo481GuhBXA-bsCEBf3B3A,217
165
- letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py,sha256=-K10IU5Snt9TMU9qiuR9uRrLhF0HUEZ0vZRHP25jKSo,775
164
+ letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py,sha256=Y_jm1HkGFORZAr3uxz-cNo4nGGuwdHS6cC0KHu5-9e0,865
166
165
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_reaction.py,sha256=ZRCrWXJxUYCnpMikPO6JGj1eeZvQGcj8nKMQkVXw0KA,155
167
166
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_sticker.py,sha256=hmV6LQZXorn3iM-tzVk_kxA9BxW4jEiopRjNFY9xcFA,254
168
167
  letschatty/models/messages/chatty_messages/schema/chatty_content/content_text.py,sha256=A_gw5WNCcStpSzHC_jzszDvxtv-ChVOJA2po5EHnccs,416
@@ -203,7 +202,7 @@ letschatty/models/messages/meta_message_model/schema/values/value_messages.py,sh
203
202
  letschatty/models/messages/meta_message_model/schema/values/value_statuses.py,sha256=SGibpHxdWy6DbzGfJjlrHIxrviqxXbRj54k4rz-fDQM,1966
204
203
  letschatty/models/utils/__init__.py,sha256=ziz1DfISJPfq5dE9xjNiwBlwsscHfOks1s0BWD7c1cI,20
205
204
  letschatty/models/utils/custom_exceptions/__init__.py,sha256=FrZBwS0o2TuTJcJFRnreRT5v_tv8EY2_EhKL2cAr7PI,32
206
- letschatty/models/utils/custom_exceptions/custom_exceptions.py,sha256=IrNv2Uuc6U9vnnt9hOqLK0ouNuyLG4_jZ5QJGorynS4,12398
205
+ letschatty/models/utils/custom_exceptions/custom_exceptions.py,sha256=mX7AGWsl3qj76lub3wpe8HCUgZEOwnKDYPOw0_3YYOY,11665
207
206
  letschatty/models/utils/definitions.py,sha256=ylyTOyDVYpE6UcViTSpxnzoxic4VzPVHE45k2Vc1U6A,826
208
207
  letschatty/models/utils/types/CRUD_operations.py,sha256=bRagXYtzeIzM4JSY8mD-4tTaqviUmq_0tY9H74nSS5I,139
209
208
  letschatty/models/utils/types/__init__.py,sha256=2z69a0c4s5fWiA9I3thv4P_SbehlvF3e-t757L0vcK4,419
@@ -223,7 +222,7 @@ letschatty/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
223
222
  letschatty/services/ai_agents/context_builder_v2.py,sha256=WoUZj5NASARBmweSkKU-T9VfkmsJdTV09CVvPb5bK_A,7438
224
223
  letschatty/services/ai_agents/cot_follow_up_examples.py,sha256=_syeGIUdpZZ9yfmARc6-Rjgdp6xDaImVZwNpvMPOkaU,10702
225
224
  letschatty/services/ai_agents/followup_schema.json,sha256=H0NaPmfjsiQGE8jcdkVZbHNmRSTnq7GXJm49SXBMe18,2932
226
- letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py,sha256=Syeogf-t35uQ_Z7MD9HfySw9PlRJ7CDyApmGpUlKLAY,11481
225
+ letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py,sha256=ULh1THzcMdlpbncshD54ZkE3atxoPmA1aao5JabV3ig,11245
227
226
  letschatty/services/ai_agents/smart_follow_up_service_v2.py,sha256=GqOmEKoomSUvduTAjl9Dmj7_XItItTQpzjT73JMywGw,7982
228
227
  letschatty/services/ai_agents/tool_descriptions/assign_chat_to_ai_agent_itself.json,sha256=Nc24Z-cHenadv-8C_tufKeZMOwIanDJ-j1ffW8z_GI0,802
229
228
  letschatty/services/ai_agents/tool_descriptions/human_handover.json,sha256=-b3l_SyFARq4XHZx26SU63bl0aul_g4Q7vet4E8GqAM,995
@@ -233,54 +232,19 @@ letschatty/services/chat/chat_extractors.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm
233
232
  letschatty/services/chat/chat_service.py,sha256=h1AkzLDA7PSKXIuol18a5-lXq48ODfBPPLtHog0fzzE,47496
234
233
  letschatty/services/chat/client_service.py,sha256=TtlG0GJDqx6YemfueiJzAtMNk_udnPhg0MJG0bKwnk8,1097
235
234
  letschatty/services/chat/conversation_topics_service.py,sha256=jvIkpHTCz0JKXui3n_BRs6UQ-TB3x7DrQsnX2zUVFVw,2461
236
- letschatty/services/chatty_assets/__init__.py,sha256=yNe0X8N86OBgrUagYVexX8u8wxoqeepNiCSUwa0OnNo,375
237
- letschatty/services/chatty_assets/asset_service.py,sha256=8fcPAvH2c5sNBmQruiRXtGSoZYiP69GIlKFVj6RkR1A,12226
238
- letschatty/services/chatty_assets/assets_collections.py,sha256=QcoDSnBIinDaw1TqiYkWA-3QowEhK0eI7tzSMhE-JCo,5103
239
- letschatty/services/chatty_assets/base_container.py,sha256=IXOQ9ttlIk0U8ghzwGR3DpjF4_6pd4-FZiyTqxK-Cpo,5815
240
- letschatty/services/chatty_assets/base_container_with_collection.py,sha256=3n145X8UuJAeyMn_jc6Z853_bLXYCbYB0R7QdMWe9_E,16360
241
- letschatty/services/chatty_assets/collections/__init__.py,sha256=tIPckK4mVZkGx6ZUO7NnGbbBj5040ifnztbcac60Gwg,1292
242
- letschatty/services/chatty_assets/collections/ai_agent_collection.py,sha256=nmufhb_DDJ1HC2AxN19eu9DYYyyTqPMVzL6Z_D8v5jo,751
243
- letschatty/services/chatty_assets/collections/ai_agent_in_chat_collection.py,sha256=UwCiOkoGxizxKfXLZ3s8__Ep-W0fgrk284NB8oQMFRI,1360
244
- letschatty/services/chatty_assets/collections/ai_component_collection.py,sha256=zB3GGmUNyfyrJ83VUCU4sfwqL_cM4XENc0Iv2NAMujU,863
245
- letschatty/services/chatty_assets/collections/chain_of_thought_collection.py,sha256=FIQMGFmENNZ9KKU11hSrh0rfvCpqrnDx2wnRtboJTIc,1470
246
- letschatty/services/chatty_assets/collections/chat_collection.py,sha256=DZgBPah83i6D5Ni5vleTtbpdY58fkhY8wZRqZjgPf44,728
247
- letschatty/services/chatty_assets/collections/contact_point_collection.py,sha256=KTiJ2ZrzWxlyNPxY4MG2bkpB2rhcy5u3ndHAmdSA8SI,859
248
- letschatty/services/chatty_assets/collections/fast_answer_collection.py,sha256=jlbEu8I_F4dLnPD14ZkhadXB-zmPL6RCUosdCjLmUw8,858
249
- letschatty/services/chatty_assets/collections/filter_criteria_collection.py,sha256=Jt2Llvg_JRFrx4D98RpgEnTj0gG-6m6p6Crpc_uGpAo,779
250
- letschatty/services/chatty_assets/collections/flow_collection.py,sha256=qHlDzO0tzddhkdGoywdu_XGQ-NtwfZiy1oOPcpcyKus,714
251
- letschatty/services/chatty_assets/collections/product_collection.py,sha256=_1ag0MNF0Qsugqmnu3663MJg5afnfXU1kwaFsS3_wGQ,741
252
- letschatty/services/chatty_assets/collections/sale_collection.py,sha256=ct-qF5nsQeZUEo7JJG1CRqAgyh7nbGPgO-oiFYF-eT4,686
253
- letschatty/services/chatty_assets/collections/source_collection.py,sha256=-NvseN4Y0PN9iSsiwpAy4ffeMh5a4yX44ghnZPJ4DbU,791
254
- letschatty/services/chatty_assets/collections/tag_collection.py,sha256=dCnudX0cPFbXrMpBBiKOw5r6JjxNGhFWG3fTpRzm7rk,632
255
- letschatty/services/chatty_assets/collections/topic_collection.py,sha256=D4xcVlmuAFL_5yufkPB78lEbwmZ84uMEsI1u7bHysv8,792
256
- letschatty/services/chatty_assets/collections/user_collection.py,sha256=zQI2yLCwYY5upYT5gveOWJz7xiu2yCVVGp4de_dD9eI,700
235
+ letschatty/services/chatty_assets/__init__.py,sha256=quOXMGvcDVRkbeaGfCQliFfZzis5m1wrfJkHqDkWRx8,132
236
+ letschatty/services/chatty_assets/asset_service.py,sha256=9EbtqSjTdil9kz7GZMmGYOkF3m4vZpAxyDPt4t-8zhc,3675
237
+ letschatty/services/chatty_assets/base_container.py,sha256=p1fdwBEJZpE-Y_NRNSKH4as4KvU8tl8hUouVUP-U_W0,5781
238
+ letschatty/services/chatty_assets/base_container_with_collection.py,sha256=0fF7uadzVCm3Rc9M-vH44twTpuOpOx9kRNvu-uggZi4,15836
257
239
  letschatty/services/chatty_assets/documentation_diagram.png,sha256=JrmxqqZ5S93kIA-1A1_ipXTnA-TG6ZM1cpR1aCoAR4g,252644
258
- letschatty/services/chatty_assets/example_usage.py,sha256=5ixfxBQp11s4TQb2-DCcLPyVCJ3P5cH_7rPwl0ExX5A,1606
259
240
  letschatty/services/chatty_assets/readme.md,sha256=X-bXFaB7MH5E0bVMiDH7qY0-yDBG71K-iLsPykYPkL4,1638
260
- letschatty/services/chatty_assets/services/__init__.py,sha256=DlEH-RMWpV3R4DoWPbFGUHDDccr3fsh2b29xvG8VdIc,1086
261
- letschatty/services/chatty_assets/services/ai_agent_in_chat_service.py,sha256=yEBJ9C-1OHHic1wksjM19D8XzpPzS02oISovcht2q1Y,3081
262
- letschatty/services/chatty_assets/services/ai_agent_service.py,sha256=HDJ2feazeqZFMqDf4LrV7B29pmUC9yYpIMqJqFLwwq8,909
263
- letschatty/services/chatty_assets/services/chain_of_thought_service.py,sha256=uxh6sZg1EUzOotdy2gGR8P_safViE5a2VPgIHKBzpdU,2903
264
- letschatty/services/chatty_assets/services/chat_service.py,sha256=Ws4ruj7mKOa7T4T-LjPqN29OOeJ-ijgA24dhnjgxABs,848
265
- letschatty/services/chatty_assets/services/contact_point_service.py,sha256=U07F1EPpm0uiRdsmxfDoM2P5YNsWuB0-DHfXJTdxicw,1118
266
- letschatty/services/chatty_assets/services/fast_answer_service.py,sha256=QoVAoJ6n7KLHgjFPDzNVHFsSv5ferqg7aswPLUHRf4Y,1375
267
- letschatty/services/chatty_assets/services/filter_criteria_service.py,sha256=r9f5T2-pjNGtvEMKH4N94EcydtKwl_HQfgX_Qm0W8Jo,1311
268
- letschatty/services/chatty_assets/services/flow_service.py,sha256=ppPl9HIxq9TM4EHJ_r5U7SScPXfu0emmxaz8kBPOBjQ,897
269
- letschatty/services/chatty_assets/services/product_service.py,sha256=uoktDFNNV7StCHrrPpplo770-oKSnxb8_Ugb-RjWKPM,1199
270
- letschatty/services/chatty_assets/services/sale_service.py,sha256=cP6smx6cFVN0naytMW4kNxHZoVuaspGsbBGtoITqpmk,863
271
- letschatty/services/chatty_assets/services/source_service.py,sha256=N1wWK5gqHD4A0itqYw9R20fTZi64VQtobHXFovAMTkY,1133
272
- letschatty/services/chatty_assets/services/tag_service.py,sha256=HOee-8GEU4y6Rxa5T1j53epAx3EtF4xTixvrZc4R_CY,1229
273
- letschatty/services/chatty_assets/services/topic_service.py,sha256=tRsWVURtvNYZwJZX4scvyQJ3L4CJ5hySnA-wju6NR-I,1241
274
- letschatty/services/chatty_assets/services/user_service.py,sha256=C1HbBBqfR2sFL8lCy1ufAbBnCVybGX-WVji-tC5IvWQ,1276
275
241
  letschatty/services/concurrent/concurrent.py,sha256=ZLNeCENCKlR3_CGMthggklOplNkJB7YX9IcD9H-aU1A,2868
276
242
  letschatty/services/contact_points/contact_point_service.py,sha256=bNkZWFSHVSV8tR84OdUYMvoIA74-NkBckmrFerXnwDI,7623
277
- letschatty/services/continuous_conversation_service/continuous_conversation_helper.py,sha256=ynYW1Whqw6IGoPifCvyyXh0BYdcIP3HvYKNZONp4Lpc,17574
278
- letschatty/services/events/__init__.py,sha256=vdSYpBO19Z9GmbXueOcjZ9pv2E0HOqpHObGYl8xkNxw,140
279
- letschatty/services/events/events_manager.py,sha256=bfSmNSV2UqQ3pXQFariXOsXrSiSlc-pI1zfB-xg6Blo,9080
243
+ letschatty/services/continuous_conversation_service/continuous_conversation_helper.py,sha256=Tnd_1wSjW6moufmrR51gdGrPDDSxR-qcYmVoz1DXPL8,16734
244
+ letschatty/services/events/events_manager.py,sha256=z2CAc-TqpXkyX9pPHImFXMIDRipLp7e-mN1gRvaM04E,67
280
245
  letschatty/services/factories/__init__.py,sha256=cDAQ_0M5xKqZAui5ijHvbtHxn3jFFM4kBcXIXc_Bv38,161
281
- letschatty/services/factories/analytics/ai_agent_event_factory.py,sha256=m4apDnq0Oy9f2LId8f0ytHofQOwDVN09sqZFZ1MO_Wk,7356
282
246
  letschatty/services/factories/analytics/contact_point_factory.py,sha256=5YXkoIwd43gtoYpFUACIXJGCJYyUEqS97XxpR_dBrt4,441
283
- letschatty/services/factories/analytics/events_factory.py,sha256=In0IgLrJHzEINohLvli9pRE81I9iN1pl1L7oAm_FcN8,37858
247
+ letschatty/services/factories/analytics/events_factory.py,sha256=o_ojRvzM5X8U3zSzbWqqA2bAWk6TP0YH3CZzPzxC7lY,35384
284
248
  letschatty/services/factories/analytics/smart_messages/topics_factory.py,sha256=nJRlOtQFiosafXakZoJj8UCVoiNovjDiOoO52vIh4ok,682
285
249
  letschatty/services/factories/analytics/sources/helpers.py,sha256=_2lsaTEhNFqr2ZyO8clMCD-t3MCPTQMyVoSUo5Fio_Y,868
286
250
  letschatty/services/factories/analytics/sources/source_factory.py,sha256=kvpS9dLoCsIVnV_wMQzBpFXoN3AyjyphX-IFRg5sO5c,7877
@@ -290,7 +254,7 @@ letschatty/services/factories/chatty_fast_answers/chatty_fast_answers_factory.py
290
254
  letschatty/services/factories/clients/client_factory.py,sha256=WIFUksJlnMSSLeHEVTAorpelEvpJMQg_mxg66wZfLcQ,1567
291
255
  letschatty/services/factories/company/__init__.py,sha256=Zd3Zo21bQ1Lk9mQNpNaaTZ5EyjttWXi9AthgV5GnSb4,43
292
256
  letschatty/services/factories/company/empresa_factory.py,sha256=tJ5Y9WhvYTEvPZXzREGHi2X-aNnW1_B49K12fAo290w,1710
293
- letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py,sha256=tCY77uqvOoTlXwtepjwagIIk1id8ci7eb1WwZ4CXrzo,5796
257
+ letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py,sha256=AtEAjgmix9mlW1Tn-4wacfwBCoqDCcf0aZyXegL73e4,4475
294
258
  letschatty/services/factories/messages/__init__.py,sha256=Qm02DTwopP5WKXt4hMB5j-Y2ytfAUfMqztX5_pPJnxI,122
295
259
  letschatty/services/factories/messages/central_notification_factory.py,sha256=P8rrBw-Ew0AMqL31YsHH9dXAMQALiLzh6BH618eX_EU,2815
296
260
  letschatty/services/factories/messages/chatty_message_factory.py,sha256=kFYkkrZ1x-njavcqcSkRY30DIj5cFHLCo5Iixd63JR4,2234
@@ -304,13 +268,13 @@ letschatty/services/factories/meta_notifications/meta_notification_factory.py,sh
304
268
  letschatty/services/factories/product_factory.py,sha256=PwSeZjp0OOM-_Dl7om8DjLKc0NZN_fEK4QLe9ElmYsk,2360
305
269
  letschatty/services/filter_criteria_service.py,sha256=4ZA3Na6wF2zWHQk65YiYQogR2Y25G2-U9maJZxAh_H0,4429
306
270
  letschatty/services/messages_helpers/__init__.py,sha256=3LQssKlikjOPP32u1OQ5CHWYdmJsrQiEq1F14MzHt8A,73
307
- letschatty/services/messages_helpers/get_caption_or_body_or_preview.py,sha256=21l3RgwUIROC8hoIggFl0YVyzX10uOwr7QNZG2pGNok,2010
271
+ letschatty/services/messages_helpers/get_caption_or_body_or_preview.py,sha256=Bdz8lduHma7XuEt2tcru-ASVFcGtXKbxyOh6DqJ2FdA,1662
308
272
  letschatty/services/scheduled_messages_service/scheduled_messages_helpers.py,sha256=RM_lx_RZvxkEscvpYsWOqWpNCXg4ar_6TI8q-BaX92M,13042
309
273
  letschatty/services/template_campaigns/template_campaign_service.py,sha256=jORgDncuXJ5ZV4fr_KsfKBHOz_lypIy6lcNMWMw8OPw,4038
310
274
  letschatty/services/users/agent_service.py,sha256=hIkUUJ1SpkKbh5_uo4i2CeqGtuMTjU7tSV8k5J7WPG4,279
311
275
  letschatty/services/users/user_factory.py,sha256=FCB9uiAfjMeYfh4kMdx5h8VDHJ8MCsD-uaxW3X3KaWM,6681
312
276
  letschatty/services/validators/analytics_validator.py,sha256=-QBR6XIqEv2qw3stcBQehkwui1EcfWUM6M9DRQODykY,6335
313
- letschatty-0.4.333.dist-info/LICENSE,sha256=EClLu_bO2HBLDcThowIwfaIg5EOwIYhpRsBJjVEk92A,1197
314
- letschatty-0.4.333.dist-info/METADATA,sha256=GEeLizc04jQokEcaFGbswe80_NyHKekrNOBFIIoMzy0,3283
315
- letschatty-0.4.333.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
316
- letschatty-0.4.333.dist-info/RECORD,,
277
+ letschatty-0.4.334.dist-info/LICENSE,sha256=EClLu_bO2HBLDcThowIwfaIg5EOwIYhpRsBJjVEk92A,1197
278
+ letschatty-0.4.334.dist-info/METADATA,sha256=1ufTW9UjstNL0GU3fIc9h6Z6e71jgE93skR5bFoxqjc,3283
279
+ letschatty-0.4.334.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
280
+ letschatty-0.4.334.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
-
@@ -1,30 +0,0 @@
1
- """Chain of Thought Collection - Pre-configured AssetCollection for Chain of Thoughts"""
2
-
3
- from typing import Any, List, Dict
4
-
5
- from letschatty.models.utils.types.serializer_type import SerializerType
6
- from ..asset_service import AssetCollection, StrObjectId
7
- from ....models.company.assets.ai_agents_v2.chain_of_thought_in_chat import (
8
- ChainOfThoughtInChat,
9
- ChainOfThoughtInChatPreview
10
- )
11
- from ....models.data_base.mongo_connection import MongoConnection
12
-
13
-
14
- class ChainOfThoughtCollection(AssetCollection[ChainOfThoughtInChat, ChainOfThoughtInChatPreview]):
15
- """Pre-configured collection for Chain of Thought"""
16
-
17
- def __init__(self, connection: MongoConnection):
18
- super().__init__(
19
- collection="chain_of_thoughts",
20
- asset_type=ChainOfThoughtInChat,
21
- connection=connection,
22
- create_instance_method=lambda doc: ChainOfThoughtInChat(**doc),
23
- preview_type=ChainOfThoughtInChatPreview
24
- )
25
-
26
- async def get_by_chat_id(self, chat_id: StrObjectId, skip: int = 0, limit: int = 10) -> List[Dict[str, Any]]:
27
- """Get chain of thoughts by chat ID, sorted by created_at (newest first)"""
28
- cursor = self.async_collection.find({"chat_id": chat_id, "deleted_at": None}).sort("created_at", -1).skip(skip).limit(limit)
29
- cot_docs = await cursor.to_list(length=None)
30
- return [self.create_instance(cot_doc).model_dump_json(serializer=SerializerType.FRONTEND) for cot_doc in cot_docs]
@@ -1,21 +0,0 @@
1
- """Chat Collection - Pre-configured AssetCollection for Chats"""
2
-
3
- from ..asset_service import AssetCollection
4
- from ....models.chat.chat import Chat
5
- from ....models.base_models import ChattyAssetPreview
6
- from ....models.data_base.mongo_connection import MongoConnection
7
- from ....services.factories.chats.chat_factory import ChatFactory
8
-
9
-
10
- class ChatCollection(AssetCollection[Chat, ChattyAssetPreview]):
11
- """Pre-configured collection for Chat assets"""
12
-
13
- def __init__(self, connection: MongoConnection):
14
- super().__init__(
15
- collection="chats",
16
- asset_type=Chat,
17
- connection=connection,
18
- create_instance_method=ChatFactory.from_json,
19
- preview_type=None
20
- )
21
-