letschatty 0.4.351__py3-none-any.whl → 0.4.353__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.
- letschatty/models/ai_microservices/__init__.py +4 -4
- letschatty/models/ai_microservices/expected_output.py +2 -29
- letschatty/models/ai_microservices/lambda_events.py +28 -155
- letschatty/models/ai_microservices/lambda_invokation_types.py +1 -4
- letschatty/models/ai_microservices/n8n_ai_agents_payload.py +1 -3
- letschatty/models/analytics/events/__init__.py +3 -3
- letschatty/models/analytics/events/chat_based_events/chat_client.py +19 -0
- letschatty/models/analytics/events/chat_based_events/chat_funnel.py +69 -13
- letschatty/models/analytics/events/company_based_events/asset_events.py +9 -2
- letschatty/models/analytics/events/event_type_to_classes.py +7 -3
- letschatty/models/analytics/events/event_types.py +11 -50
- letschatty/models/chat/chat.py +13 -2
- letschatty/models/chat/chat_with_assets.py +6 -1
- letschatty/models/chat/client.py +0 -2
- letschatty/models/chat/continuous_conversation.py +1 -1
- letschatty/models/company/CRM/funnel.py +365 -33
- letschatty/models/company/__init__.py +10 -1
- letschatty/models/company/assets/ai_agents_v2/ai_agents_decision_output.py +1 -1
- letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_in_chat.py +0 -4
- letschatty/models/company/assets/ai_agents_v2/chatty_ai_mode.py +2 -2
- letschatty/models/company/assets/ai_agents_v2/get_chat_with_prompt_response.py +0 -1
- letschatty/models/company/assets/ai_agents_v2/pre_qualify_config.py +1 -28
- letschatty/models/company/assets/automation.py +10 -19
- letschatty/models/company/assets/chat_assets.py +3 -2
- letschatty/models/company/assets/company_assets.py +2 -0
- letschatty/models/company/assets/sale.py +3 -3
- letschatty/models/company/empresa.py +4 -1
- letschatty/models/company/integrations/product_sync_status.py +28 -0
- letschatty/models/company/integrations/shopify/company_shopify_integration.py +62 -0
- letschatty/models/company/integrations/shopify/shopify_product_sync_status.py +18 -0
- letschatty/models/company/integrations/shopify/shopify_webhook_topics.py +40 -0
- letschatty/models/company/integrations/sync_status_enum.py +9 -0
- letschatty/models/company/integrations/tienda_nube/company_tienda_nube_integration.py +62 -0
- letschatty/models/company/integrations/tienda_nube/tienda_nube_product_sync_status.py +18 -0
- letschatty/models/company/integrations/tienda_nube/tienda_nube_webhook_topics.py +46 -0
- letschatty/models/data_base/collection_interface.py +29 -101
- letschatty/models/data_base/mongo_connection.py +9 -92
- letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py +4 -2
- letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py +4 -3
- letschatty/models/utils/custom_exceptions/custom_exceptions.py +1 -14
- letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py +2 -5
- letschatty/services/chat/chat_service.py +47 -11
- letschatty/services/chatty_assets/__init__.py +0 -12
- letschatty/services/chatty_assets/asset_service.py +13 -190
- letschatty/services/chatty_assets/base_container.py +2 -3
- letschatty/services/chatty_assets/base_container_with_collection.py +26 -35
- letschatty/services/continuous_conversation_service/continuous_conversation_helper.py +0 -11
- letschatty/services/events/events_manager.py +1 -218
- letschatty/services/factories/analytics/events_factory.py +30 -66
- letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py +8 -46
- letschatty/services/messages_helpers/get_caption_or_body_or_preview.py +4 -6
- letschatty/services/validators/analytics_validator.py +11 -0
- {letschatty-0.4.351.dist-info → letschatty-0.4.353.dist-info}/METADATA +1 -1
- {letschatty-0.4.351.dist-info → letschatty-0.4.353.dist-info}/RECORD +56 -83
- letschatty/models/analytics/events/chat_based_events/ai_agent_execution_event.py +0 -71
- letschatty/services/chatty_assets/assets_collections.py +0 -137
- letschatty/services/chatty_assets/collections/__init__.py +0 -38
- letschatty/services/chatty_assets/collections/ai_agent_collection.py +0 -19
- letschatty/services/chatty_assets/collections/ai_agent_in_chat_collection.py +0 -32
- letschatty/services/chatty_assets/collections/ai_component_collection.py +0 -21
- letschatty/services/chatty_assets/collections/chain_of_thought_collection.py +0 -30
- letschatty/services/chatty_assets/collections/chat_collection.py +0 -21
- letschatty/services/chatty_assets/collections/contact_point_collection.py +0 -21
- letschatty/services/chatty_assets/collections/fast_answer_collection.py +0 -21
- letschatty/services/chatty_assets/collections/filter_criteria_collection.py +0 -18
- letschatty/services/chatty_assets/collections/flow_collection.py +0 -20
- letschatty/services/chatty_assets/collections/product_collection.py +0 -20
- letschatty/services/chatty_assets/collections/sale_collection.py +0 -20
- letschatty/services/chatty_assets/collections/source_collection.py +0 -21
- letschatty/services/chatty_assets/collections/tag_collection.py +0 -19
- letschatty/services/chatty_assets/collections/topic_collection.py +0 -21
- letschatty/services/chatty_assets/collections/user_collection.py +0 -20
- letschatty/services/chatty_assets/example_usage.py +0 -44
- letschatty/services/chatty_assets/services/__init__.py +0 -37
- letschatty/services/chatty_assets/services/ai_agent_in_chat_service.py +0 -73
- letschatty/services/chatty_assets/services/ai_agent_service.py +0 -23
- letschatty/services/chatty_assets/services/chain_of_thought_service.py +0 -70
- letschatty/services/chatty_assets/services/chat_service.py +0 -25
- letschatty/services/chatty_assets/services/contact_point_service.py +0 -29
- letschatty/services/chatty_assets/services/fast_answer_service.py +0 -32
- letschatty/services/chatty_assets/services/filter_criteria_service.py +0 -30
- letschatty/services/chatty_assets/services/flow_service.py +0 -25
- letschatty/services/chatty_assets/services/product_service.py +0 -30
- letschatty/services/chatty_assets/services/sale_service.py +0 -25
- letschatty/services/chatty_assets/services/source_service.py +0 -28
- letschatty/services/chatty_assets/services/tag_service.py +0 -32
- letschatty/services/chatty_assets/services/topic_service.py +0 -31
- letschatty/services/chatty_assets/services/user_service.py +0 -32
- letschatty/services/events/__init__.py +0 -6
- letschatty/services/factories/analytics/ai_agent_event_factory.py +0 -161
- {letschatty-0.4.351.dist-info → letschatty-0.4.353.dist-info}/LICENSE +0 -0
- {letschatty-0.4.351.dist-info → letschatty-0.4.353.dist-info}/WHEEL +0 -0
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
letschatty/__init__.py,sha256=6dGYdy5edB1dHdgvpqUpENZ347CpIyWgR1CsGYwPSk8,45
|
|
2
2
|
letschatty/models/__init__.py,sha256=obWHa796C-O1mqo_lk22KhUC2ODVvG7cICY3Lo-AqJg,126
|
|
3
|
-
letschatty/models/ai_microservices/__init__.py,sha256=
|
|
4
|
-
letschatty/models/ai_microservices/expected_output.py,sha256=
|
|
5
|
-
letschatty/models/ai_microservices/lambda_events.py,sha256=
|
|
6
|
-
letschatty/models/ai_microservices/lambda_invokation_types.py,sha256=
|
|
7
|
-
letschatty/models/ai_microservices/n8n_ai_agents_payload.py,sha256=
|
|
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=
|
|
10
|
+
letschatty/models/analytics/events/__init__.py,sha256=7meuINSyULnUSRSVAWZWlFVNuBh9e0OtoH8FbzHKMr4,2155
|
|
11
11
|
letschatty/models/analytics/events/base.py,sha256=vmRnowUYot4OjYyqVjevGY9kF3Kb47IDkMJgJRwvcfU,1793
|
|
12
12
|
letschatty/models/analytics/events/chat_based_events/ai_agent_chat.py,sha256=Ac6Llg2IFM0lftCkAErThjd283f_AEYqg76OkNnihuM,1681
|
|
13
|
-
letschatty/models/analytics/events/chat_based_events/ai_agent_execution_event.py,sha256=Rr8LoVNANDLJJeki3CiD7gOVOlruh-Kjt3L5xBKbST0,2888
|
|
14
13
|
letschatty/models/analytics/events/chat_based_events/business_area.py,sha256=YZgIejCzbryySxolMSgvCFMuRggMcwBJ-jeQKdEshvM,904
|
|
15
14
|
letschatty/models/analytics/events/chat_based_events/chat_based_event.py,sha256=YDXzX78jZgxuPFkTqipXFAo6G0-ajl_RkJISsjM9YJU,1469
|
|
15
|
+
letschatty/models/analytics/events/chat_based_events/chat_client.py,sha256=Zqo9uownFMyu9w7i2pt5y1jRVzqiXGxCCTXIlsPjYsk,558
|
|
16
16
|
letschatty/models/analytics/events/chat_based_events/chat_context.py,sha256=Y6VfYorrKurbUgWtIPOsfNMbGQbuTPR5wQQLrbBxD9Q,2226
|
|
17
|
-
letschatty/models/analytics/events/chat_based_events/chat_funnel.py,sha256=
|
|
17
|
+
letschatty/models/analytics/events/chat_based_events/chat_funnel.py,sha256=LX_lcOn1R2VhdffdZeuc7S87PcoHBhEuppWaBXFP6tY,4184
|
|
18
18
|
letschatty/models/analytics/events/chat_based_events/chat_status.py,sha256=9vt8GP6QnMrUuJF-AbUQm68Nkc0Zgexmnb-T1k8tsD4,2222
|
|
19
19
|
letschatty/models/analytics/events/chat_based_events/contact_point.py,sha256=IIzf0EkgxUJKr7vqnv95LHEy0wQA9sVchHZA7Yi0H88,1944
|
|
20
20
|
letschatty/models/analytics/events/chat_based_events/continuous_conversation.py,sha256=4Tbv83Zk5RIoUu6pKYpQdWMtxz9XZi26V-j5OSBP91U,2305
|
|
@@ -26,11 +26,11 @@ letschatty/models/analytics/events/chat_based_events/quality_scoring.py,sha256=f
|
|
|
26
26
|
letschatty/models/analytics/events/chat_based_events/sale.py,sha256=WqpFp10h8yZwa5S5T4NCWCRLcBgkAAAME_CKmCv6K7M,1738
|
|
27
27
|
letschatty/models/analytics/events/chat_based_events/tag_chat.py,sha256=7f1MaNdst-KN8-aIzgzyc6oBES-y8kkH5jVrsOOcxBs,1418
|
|
28
28
|
letschatty/models/analytics/events/chat_based_events/workflow.py,sha256=BZQN2JDIgCVr2VbdcLg3O0J69SL_yPqGgMXzzNCId4E,1399
|
|
29
|
-
letschatty/models/analytics/events/company_based_events/asset_events.py,sha256=
|
|
29
|
+
letschatty/models/analytics/events/company_based_events/asset_events.py,sha256=EtVhl_W3wxkJhflbyk4NQraxAdpLeuesc9IfyOC5QV8,3490
|
|
30
30
|
letschatty/models/analytics/events/company_based_events/company_events.py,sha256=PZAiw2imo706iM0EaCxnIaiFchMKivbwjKd7gsozA8k,1673
|
|
31
31
|
letschatty/models/analytics/events/company_based_events/user_events.py,sha256=ZUoBaS60s63SoTUOUunLpojP1BQ9Cdl4sl_KdgY6NGI,2466
|
|
32
|
-
letschatty/models/analytics/events/event_type_to_classes.py,sha256=
|
|
33
|
-
letschatty/models/analytics/events/event_types.py,sha256=
|
|
32
|
+
letschatty/models/analytics/events/event_type_to_classes.py,sha256=x5Ai3UZio9DeRcN2ag1ipLwUFFdInIKLZNhYgyYSvcM,4384
|
|
33
|
+
letschatty/models/analytics/events/event_types.py,sha256=h8CH0aXIuMHjd8mCQ2v3KED03cggysIEQvV4f93s-8c,5544
|
|
34
34
|
letschatty/models/analytics/metrics/__init_.py,sha256=DnGDYvEn9S1sSMe56e7mwE5r013nO-Fsf0pgBnf9RjI,276
|
|
35
35
|
letschatty/models/analytics/metrics/daily_contact_points.py,sha256=eWwUmhFpL-Xn5sWQWCcACrulb4xwjMY80jDSAWsTMb4,1524
|
|
36
36
|
letschatty/models/analytics/metrics/daily_new_chats.py,sha256=kTsQFDFwavTq3u7HcHx3RqZ_O517HqTrOD-k8q4JQz0,322
|
|
@@ -64,11 +64,11 @@ letschatty/models/base_models/update_model_interface.py,sha256=80YuvkEM5Rd3Ycysq
|
|
|
64
64
|
letschatty/models/base_models/validate_timestamps_and_id.py,sha256=WRtaoW2EYtItgZjnNOYAffxy9K7M_NMNJ5imRN8Iu80,1971
|
|
65
65
|
letschatty/models/channels/channel.py,sha256=Mgqigm-3uRDozxBIZZYj62PQwtnB0rAKoY2JS4477n8,2029
|
|
66
66
|
letschatty/models/chat/assets_assigned_to_chat.py,sha256=nAdSzRvUSWa8-Plw6KZKnpUxxjCdWs_grml0bhskSis,192
|
|
67
|
-
letschatty/models/chat/chat.py,sha256=
|
|
67
|
+
letschatty/models/chat/chat.py,sha256=P6c8JGutMsk5GF526s0RxnT_F6oBclofPtTzjcnNUrc,16749
|
|
68
68
|
letschatty/models/chat/chat_status_modifications.py,sha256=LcwXNl4WRllPI_ZYKcg5ANRjmSk4Cykkra0naayMAt4,317
|
|
69
|
-
letschatty/models/chat/chat_with_assets.py,sha256=
|
|
70
|
-
letschatty/models/chat/client.py,sha256=
|
|
71
|
-
letschatty/models/chat/continuous_conversation.py,sha256=
|
|
69
|
+
letschatty/models/chat/chat_with_assets.py,sha256=K4UUwdfLw_Q0ZNHdeoqavqyHkZwisAQOi1OPMBYszOU,814
|
|
70
|
+
letschatty/models/chat/client.py,sha256=oa7PM76V-OiBJL4T-IMytPW0WZdtvh9vFZhNtRQvt6Q,2196
|
|
71
|
+
letschatty/models/chat/continuous_conversation.py,sha256=hoRYOMd_vfYglTGVw30yKS5Ogt5mLcsgDySrfHEli6o,4529
|
|
72
72
|
letschatty/models/chat/filter_parameters.py,sha256=X1IHBYCJr_1y4R8syQYEwKhintdUZc-ZiB_8kSnjiYw,4489
|
|
73
73
|
letschatty/models/chat/flow_link_state.py,sha256=RblDBp6uD-P0ZtaQn1-HzL1EpEgtVhN1rT3iBhO0gMw,5458
|
|
74
74
|
letschatty/models/chat/highlight.py,sha256=bUpXSMvwoTKiDa6AWDRKfMYxv5d6sax7soNtc8rAtpo,555
|
|
@@ -78,35 +78,35 @@ letschatty/models/chat/scheduled_messages.py,sha256=6z9XXgXUV6lPW8BalAZ4-MsmT8Zn
|
|
|
78
78
|
letschatty/models/chat/temporary_chat.py,sha256=MR68vYrNvoyf40cLs2p5NnI8BNeN1VGTMAcuQw8j9RA,2303
|
|
79
79
|
letschatty/models/chat/time_left.py,sha256=2uA9dS_0QAVnWn7Q2wIwGe4tMrlYBP9qySC7M8I0jb8,3307
|
|
80
80
|
letschatty/models/company/CRM/business_area.py,sha256=U0F_7Rbq-e5tMSj_MugPqMHm2-IHxbAKbN0PWZ_93-o,296
|
|
81
|
-
letschatty/models/company/CRM/funnel.py,sha256=
|
|
82
|
-
letschatty/models/company/__init__.py,sha256=
|
|
81
|
+
letschatty/models/company/CRM/funnel.py,sha256=gBGZhud060sK5QFI5y9NgmFuhLCOAtzK81TKBhK2gxE,15820
|
|
82
|
+
letschatty/models/company/__init__.py,sha256=Mp0d7wNqkKBp6Ag6d73eAWyhux6jdn4zh8zwWuF1ZHY,996
|
|
83
83
|
letschatty/models/company/assets/__init__.py,sha256=z0xN_lt1D76bXt8DXVdbH3GkofUPQPZU9NioRSLt_lI,244
|
|
84
84
|
letschatty/models/company/assets/ai_agents_v2/ai_agent_message_draft.py,sha256=xbshA34RSjHm2g8J7hW2FkWo-Qm8MH2HTbcRcoYmyvc,2076
|
|
85
|
-
letschatty/models/company/assets/ai_agents_v2/ai_agents_decision_output.py,sha256=
|
|
85
|
+
letschatty/models/company/assets/ai_agents_v2/ai_agents_decision_output.py,sha256=aEKZCOsGiFFPSx23fkS5Khfsxo-r8JGk3O0sxiGs8T0,5876
|
|
86
86
|
letschatty/models/company/assets/ai_agents_v2/chain_of_thought_in_chat.py,sha256=xK7IbM_sEN7_-SZXcgiRyALq6IjYaJ-ivq9BE8B8Bdg,6129
|
|
87
87
|
letschatty/models/company/assets/ai_agents_v2/chat_example.py,sha256=yCKt6ifNYch3C78zAvj8To0_Sb9CPAZ8sC-hyoBPa4s,1816
|
|
88
88
|
letschatty/models/company/assets/ai_agents_v2/chat_example_test.py,sha256=vChD-TkX1ORRD9LMbd2HlpbK4QyrsfhDiJd-LDjIqlk,4618
|
|
89
89
|
letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent.py,sha256=R2rCANri8ZiqnmPP10PWoanGddMImCMxrl78Y6d-194,8204
|
|
90
90
|
letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_config_for_automation.py,sha256=W8orpgp-yG8OHNWGQ16jMv-VgM_Z-Hk0q8PtC0KT2KU,388
|
|
91
|
-
letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_in_chat.py,sha256=
|
|
92
|
-
letschatty/models/company/assets/ai_agents_v2/chatty_ai_mode.py,sha256=
|
|
91
|
+
letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_in_chat.py,sha256=akCa10TtiJ1wsL33z4uxSwhZyyinnJZmdlYJ9csLak8,14470
|
|
92
|
+
letschatty/models/company/assets/ai_agents_v2/chatty_ai_mode.py,sha256=CKlKI3t_D5eWJPn6hRvN4_V8Wu6W8c0x_EFQlpA50F4,2521
|
|
93
93
|
letschatty/models/company/assets/ai_agents_v2/context_item.py,sha256=9629_sJ4vjfF6--KR44E6lqVpc0uOGSlcorKS5ooSXU,438
|
|
94
94
|
letschatty/models/company/assets/ai_agents_v2/faq.py,sha256=qL-sr17ALvJ9PEzpaXpYL91-bQ9Np3C4jCYe-zfot6o,457
|
|
95
95
|
letschatty/models/company/assets/ai_agents_v2/follow_up_strategy.py,sha256=qVWim6qSrwoiWzPg5EqgqiqebXICRikFLx8-YQePLx0,3549
|
|
96
|
-
letschatty/models/company/assets/ai_agents_v2/get_chat_with_prompt_response.py,sha256
|
|
96
|
+
letschatty/models/company/assets/ai_agents_v2/get_chat_with_prompt_response.py,sha256=r4WpTu4ZXdG6qazHWUed0WhWY0L63UZnD6plvHLD0ns,1414
|
|
97
97
|
letschatty/models/company/assets/ai_agents_v2/knowleadge_base_components.py,sha256=ooC-odECa2KkMOqBfiJeLAWCRkLK0EMmc7fcg3YCAbQ,676
|
|
98
98
|
letschatty/models/company/assets/ai_agents_v2/n8n_agents_info.py,sha256=UNsYXznXr2yj9J_zylZTMPrU5hjkkVgHAaIP2etpZRM,383
|
|
99
99
|
letschatty/models/company/assets/ai_agents_v2/n8n_schema_incoming_message_output.json,sha256=_NERM9gJ4Ry8NFVb8mHxRmdv0GfBrHdtmKxVJWmTUrY,2102
|
|
100
100
|
letschatty/models/company/assets/ai_agents_v2/n8n_schema_smart_follow_up_output.json,sha256=QAPRJXin-sE9NxQBHmmErSYHL6dQzmu4i0HEFSSXOi4,2350
|
|
101
|
-
letschatty/models/company/assets/ai_agents_v2/pre_qualify_config.py,sha256=
|
|
101
|
+
letschatty/models/company/assets/ai_agents_v2/pre_qualify_config.py,sha256=o9kKywbnm1lEliTTV0G7oSCFroyqp_w0GkypL--sSk4,4181
|
|
102
102
|
letschatty/models/company/assets/ai_agents_v2/statuses.py,sha256=nhIGfeKednLNFZCIMavbZptT_9L-HDDVshAyCLdwPe8,1109
|
|
103
103
|
letschatty/models/company/assets/assignment/__init__.py,sha256=eWYZfaDQde5OJNIDed8D-LNRXOa5O_O4mGMToNFtaW8,239
|
|
104
104
|
letschatty/models/company/assets/assignment/assignment_assets.py,sha256=phIJqNh4UGTU-Hux_kaOYhJm2GCqv37AnCGePSDVKmM,2245
|
|
105
|
-
letschatty/models/company/assets/automation.py,sha256=
|
|
106
|
-
letschatty/models/company/assets/chat_assets.py,sha256=
|
|
105
|
+
letschatty/models/company/assets/automation.py,sha256=RQFOvM-lipBdalfsRSZ8K5opytVgq_GS6YSR0Mz5Qs8,1639
|
|
106
|
+
letschatty/models/company/assets/chat_assets.py,sha256=kUnV1ngN1OA7AgED85ue91TOiFT1Fmf3LDOPbHAf460,8016
|
|
107
107
|
letschatty/models/company/assets/chatty_fast_answers/__init__.py,sha256=tbgWS0n1i0nVi9f79U44GPRnrW25NKcjl6Port92alk,48
|
|
108
108
|
letschatty/models/company/assets/chatty_fast_answers/chatty_fast_answer.py,sha256=PxW3eStHXo0BY7Z9hMDqBTHmgO7XcwtOvEpwXi-rA5g,1076
|
|
109
|
-
letschatty/models/company/assets/company_assets.py,sha256=
|
|
109
|
+
letschatty/models/company/assets/company_assets.py,sha256=9Or3hdUsWO0YCLqlwUb0Zcm_c5OerJqDx7rrrUK4_-E,800
|
|
110
110
|
letschatty/models/company/assets/contact_point.py,sha256=2-C00CwQTAQkofQ4ufr5_nJPoxauOXZSDtyL-nj-hF8,2916
|
|
111
111
|
letschatty/models/company/assets/filter_criteria.py,sha256=5hYhHWz5hoMyIURHML2XPZo_Bl66Cyvbh8caVPgdAvE,2283
|
|
112
112
|
letschatty/models/company/assets/flow.py,sha256=mYKB6DG_DHSJymoTpeXm15OWsWI1OP4rkzvMg8AeYzY,1198
|
|
@@ -117,7 +117,7 @@ letschatty/models/company/assets/launch/subscription.py,sha256=BnZuNK0jMOzn0s9zg
|
|
|
117
117
|
letschatty/models/company/assets/media/__init__.py,sha256=o22MHvoqGBUeG1P383KfBfsu-Fg0YdVh9FYeNB1j14s,38
|
|
118
118
|
letschatty/models/company/assets/media/file.py,sha256=MFhTNe8zsgjR1zMm2UIAznp4vtD4U12UMfu7mjFIGfE,1902
|
|
119
119
|
letschatty/models/company/assets/product.py,sha256=02eAZlE74nRzwOPAmbCHkQj7czVNgEtJQNzWxSBPP_w,2406
|
|
120
|
-
letschatty/models/company/assets/sale.py,sha256=
|
|
120
|
+
letschatty/models/company/assets/sale.py,sha256=8YiZoRHA0l6-JHX4N0jDe8PDu5Kkw1O2tZLDNOGL8p8,1143
|
|
121
121
|
letschatty/models/company/assets/tag.py,sha256=P1jRAvaebEtdAUs-07sRbCK25vmS6Q5NNtH7UX7bK-0,1008
|
|
122
122
|
letschatty/models/company/assets/users/agent_chats_snapshot.py,sha256=CTNRN8p9HE57bvxI8MbO2krg8KD3yIo3PmFjIV0iVWg,568
|
|
123
123
|
letschatty/models/company/assets/users/user.py,sha256=JWABDnvc9qhFnFcqBWSH2OAmVny37pUMBxo2CJGOMtA,9019
|
|
@@ -126,14 +126,22 @@ letschatty/models/company/assets/workflow_execution.py,sha256=CKlT9JTryKC8kNniRX
|
|
|
126
126
|
letschatty/models/company/company_chats_snapshot.py,sha256=Mg9Wmu3pfE-t5Sf57FCj-psvc5TkDkFfma-hdh6nE0Q,668
|
|
127
127
|
letschatty/models/company/company_messaging_settgins.py,sha256=7isXt7gmqw-FKSUSZwdctdXDFMfPi2OyPuWqB7WpC6c,957
|
|
128
128
|
letschatty/models/company/conversation_topic.py,sha256=__IinJ3YcUsiApF4Em5uAgd01ydRUrlCVxaat-pCCRg,1704
|
|
129
|
-
letschatty/models/company/empresa.py,sha256=
|
|
129
|
+
letschatty/models/company/empresa.py,sha256=1WGtjWxBoxxShZ_OFCk7i_hpSX2QJ0DiPB4BoE3A4UU,6475
|
|
130
130
|
letschatty/models/company/form_field.py,sha256=LGyMLybwvfEPG3hMmwsoP_4wnMaPJbVFpG6c1HdVC8E,9802
|
|
131
131
|
letschatty/models/company/insight.py,sha256=B7BL07E4Z1b9aJHi3PXC1atln4-7fSo9JeqgQoeB_ao,7459
|
|
132
|
+
letschatty/models/company/integrations/product_sync_status.py,sha256=115zOvkaeXpHIUQftXe6dJsOUki3ru8hG3c75e2v4ag,814
|
|
133
|
+
letschatty/models/company/integrations/shopify/company_shopify_integration.py,sha256=PbxgIOG0Qp9Bz0WDrQffuSWrbEiV93JjX7PtHeYsqa0,2496
|
|
134
|
+
letschatty/models/company/integrations/shopify/shopify_product_sync_status.py,sha256=FhsmtFIf82pO9a1_OwV3MyKiJ6CGzlw-SCANZoV2M2g,588
|
|
135
|
+
letschatty/models/company/integrations/shopify/shopify_webhook_topics.py,sha256=HlSm0JHH6G3NPug8tbx9PQaC9yO3cwXJPTuU3qkWdDk,1263
|
|
136
|
+
letschatty/models/company/integrations/sync_status_enum.py,sha256=gh5kkKgLRqhygFFUPhITksp0Z-ImFEpGpzVABr7JiFM,154
|
|
137
|
+
letschatty/models/company/integrations/tienda_nube/company_tienda_nube_integration.py,sha256=2uJJax2-KDkYVQRXa7_AQLGbbXwNc28tnc4oSPFDh-k,2487
|
|
138
|
+
letschatty/models/company/integrations/tienda_nube/tienda_nube_product_sync_status.py,sha256=j_c3LFu9djzf96JLaZlQs86yrllIvCghrd5MfsvtcBQ,605
|
|
139
|
+
letschatty/models/company/integrations/tienda_nube/tienda_nube_webhook_topics.py,sha256=CIDK_dD6djqrZtXZg1tjU0EMlTUF0h93KLYK02XnvLo,1435
|
|
132
140
|
letschatty/models/company/notifications/notification.py,sha256=wE7rIi21nZno6jjIxajMz4e7OJbzrDHjH1KdkNzJiF8,1907
|
|
133
141
|
letschatty/models/copilot/links.py,sha256=mcddNR6WdWOoOr3NgDl_FElxF15SiZZXw9wmIV08HRw,185
|
|
134
142
|
letschatty/models/data_base/__init__.py,sha256=cUTj-TBUYJn1iAofztCr3VUJFF9qg1vmaQlOuoKb1MM,45
|
|
135
|
-
letschatty/models/data_base/collection_interface.py,sha256=
|
|
136
|
-
letschatty/models/data_base/mongo_connection.py,sha256=
|
|
143
|
+
letschatty/models/data_base/collection_interface.py,sha256=CeRx8T5spSdbEh3rD15yWesggbFFosuaCE5FFwObOZs,5962
|
|
144
|
+
letschatty/models/data_base/mongo_connection.py,sha256=M1Qhk3AYCBiTV9tp-P6Ef92n7_ZundMIXzdC0GYTrk0,1302
|
|
137
145
|
letschatty/models/execution/__init__.py,sha256=-XMgns_gpDuqibgcpsBU63oiLfzf4Ms0xMOyiAJoMLg,70
|
|
138
146
|
letschatty/models/execution/execution.py,sha256=L4kwZfXaGHTb8j6qPNWMVQFNbaoG0dMCg1THvsBRmJM,4049
|
|
139
147
|
letschatty/models/execution/executor.py,sha256=KarlbDFgv6DpG4nQMGB8Yuogh2_ZCznBhpWv8baiaTA,1188
|
|
@@ -159,11 +167,11 @@ letschatty/models/messages/chatty_messages/schema/chatty_content/content_audio.p
|
|
|
159
167
|
letschatty/models/messages/chatty_messages/schema/chatty_content/content_button.py,sha256=jdk9QFBN-SaAV6_fnBqkXwl0AFXJLbBNatikhUXLobo,181
|
|
160
168
|
letschatty/models/messages/chatty_messages/schema/chatty_content/content_central.py,sha256=k7J1G4GlfRX5J4ZJIoviOHiekioaLbAc-76In_ZfiIo,712
|
|
161
169
|
letschatty/models/messages/chatty_messages/schema/chatty_content/content_contacts.py,sha256=I1f_NNaT7QYriruMJdWT6K_8JjaU7XVaTSXctNB-_9o,985
|
|
162
|
-
letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py,sha256=
|
|
170
|
+
letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py,sha256=sy25r2a2eVxHoJoy_4ZiGSBXz7gYxErXvsq-JWSMLL0,604
|
|
163
171
|
letschatty/models/messages/chatty_messages/schema/chatty_content/content_image.py,sha256=AmILz3zm1HFUh5hjSxjBxLg4AR2DoY9NrBU9NIjjjvk,102
|
|
164
172
|
letschatty/models/messages/chatty_messages/schema/chatty_content/content_interactive.py,sha256=zIdk_-RlTQIAGh9AifnY7Yqs3C7ukyX2RPb-VyhIJ0w,164
|
|
165
173
|
letschatty/models/messages/chatty_messages/schema/chatty_content/content_location.py,sha256=GLk7-QtkksY7G53swRKRiZo481GuhBXA-bsCEBf3B3A,217
|
|
166
|
-
letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py,sha256
|
|
174
|
+
letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py,sha256=Y_jm1HkGFORZAr3uxz-cNo4nGGuwdHS6cC0KHu5-9e0,865
|
|
167
175
|
letschatty/models/messages/chatty_messages/schema/chatty_content/content_reaction.py,sha256=ZRCrWXJxUYCnpMikPO6JGj1eeZvQGcj8nKMQkVXw0KA,155
|
|
168
176
|
letschatty/models/messages/chatty_messages/schema/chatty_content/content_sticker.py,sha256=hmV6LQZXorn3iM-tzVk_kxA9BxW4jEiopRjNFY9xcFA,254
|
|
169
177
|
letschatty/models/messages/chatty_messages/schema/chatty_content/content_text.py,sha256=A_gw5WNCcStpSzHC_jzszDvxtv-ChVOJA2po5EHnccs,416
|
|
@@ -204,7 +212,7 @@ letschatty/models/messages/meta_message_model/schema/values/value_messages.py,sh
|
|
|
204
212
|
letschatty/models/messages/meta_message_model/schema/values/value_statuses.py,sha256=SGibpHxdWy6DbzGfJjlrHIxrviqxXbRj54k4rz-fDQM,1966
|
|
205
213
|
letschatty/models/utils/__init__.py,sha256=ziz1DfISJPfq5dE9xjNiwBlwsscHfOks1s0BWD7c1cI,20
|
|
206
214
|
letschatty/models/utils/custom_exceptions/__init__.py,sha256=FrZBwS0o2TuTJcJFRnreRT5v_tv8EY2_EhKL2cAr7PI,32
|
|
207
|
-
letschatty/models/utils/custom_exceptions/custom_exceptions.py,sha256=
|
|
215
|
+
letschatty/models/utils/custom_exceptions/custom_exceptions.py,sha256=mX7AGWsl3qj76lub3wpe8HCUgZEOwnKDYPOw0_3YYOY,11665
|
|
208
216
|
letschatty/models/utils/definitions.py,sha256=ylyTOyDVYpE6UcViTSpxnzoxic4VzPVHE45k2Vc1U6A,826
|
|
209
217
|
letschatty/models/utils/types/CRUD_operations.py,sha256=bRagXYtzeIzM4JSY8mD-4tTaqviUmq_0tY9H74nSS5I,139
|
|
210
218
|
letschatty/models/utils/types/__init__.py,sha256=2z69a0c4s5fWiA9I3thv4P_SbehlvF3e-t757L0vcK4,419
|
|
@@ -224,64 +232,29 @@ letschatty/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
|
|
|
224
232
|
letschatty/services/ai_agents/context_builder_v2.py,sha256=WoUZj5NASARBmweSkKU-T9VfkmsJdTV09CVvPb5bK_A,7438
|
|
225
233
|
letschatty/services/ai_agents/cot_follow_up_examples.py,sha256=_syeGIUdpZZ9yfmARc6-Rjgdp6xDaImVZwNpvMPOkaU,10702
|
|
226
234
|
letschatty/services/ai_agents/followup_schema.json,sha256=H0NaPmfjsiQGE8jcdkVZbHNmRSTnq7GXJm49SXBMe18,2932
|
|
227
|
-
letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py,sha256=
|
|
235
|
+
letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py,sha256=ULh1THzcMdlpbncshD54ZkE3atxoPmA1aao5JabV3ig,11245
|
|
228
236
|
letschatty/services/ai_agents/smart_follow_up_service_v2.py,sha256=GqOmEKoomSUvduTAjl9Dmj7_XItItTQpzjT73JMywGw,7982
|
|
229
237
|
letschatty/services/ai_agents/tool_descriptions/assign_chat_to_ai_agent_itself.json,sha256=Nc24Z-cHenadv-8C_tufKeZMOwIanDJ-j1ffW8z_GI0,802
|
|
230
238
|
letschatty/services/ai_agents/tool_descriptions/human_handover.json,sha256=-b3l_SyFARq4XHZx26SU63bl0aul_g4Q7vet4E8GqAM,995
|
|
231
239
|
letschatty/services/ai_agents/tool_descriptions.py,sha256=MMFhcgEl6Z7k8BUv3Yx1pCxHzIjc8HD93S0uM5OPj8Y,105
|
|
232
240
|
letschatty/services/ai_components_service.py,sha256=QUb-NdzHj4nPmnceVSQ9Pe3swFWUrkUFKzDZeuP0b5o,3762
|
|
233
241
|
letschatty/services/chat/chat_extractors.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
234
|
-
letschatty/services/chat/chat_service.py,sha256=
|
|
242
|
+
letschatty/services/chat/chat_service.py,sha256=75ebdL9C1k4NU_zfTsGqSi31H0Gv1yqB-IOHJK6GyQY,49439
|
|
235
243
|
letschatty/services/chat/client_service.py,sha256=TtlG0GJDqx6YemfueiJzAtMNk_udnPhg0MJG0bKwnk8,1097
|
|
236
244
|
letschatty/services/chat/conversation_topics_service.py,sha256=jvIkpHTCz0JKXui3n_BRs6UQ-TB3x7DrQsnX2zUVFVw,2461
|
|
237
|
-
letschatty/services/chatty_assets/__init__.py,sha256=
|
|
238
|
-
letschatty/services/chatty_assets/asset_service.py,sha256=
|
|
239
|
-
letschatty/services/chatty_assets/
|
|
240
|
-
letschatty/services/chatty_assets/
|
|
241
|
-
letschatty/services/chatty_assets/base_container_with_collection.py,sha256=3n145X8UuJAeyMn_jc6Z853_bLXYCbYB0R7QdMWe9_E,16360
|
|
242
|
-
letschatty/services/chatty_assets/collections/__init__.py,sha256=tIPckK4mVZkGx6ZUO7NnGbbBj5040ifnztbcac60Gwg,1292
|
|
243
|
-
letschatty/services/chatty_assets/collections/ai_agent_collection.py,sha256=nmufhb_DDJ1HC2AxN19eu9DYYyyTqPMVzL6Z_D8v5jo,751
|
|
244
|
-
letschatty/services/chatty_assets/collections/ai_agent_in_chat_collection.py,sha256=UwCiOkoGxizxKfXLZ3s8__Ep-W0fgrk284NB8oQMFRI,1360
|
|
245
|
-
letschatty/services/chatty_assets/collections/ai_component_collection.py,sha256=zB3GGmUNyfyrJ83VUCU4sfwqL_cM4XENc0Iv2NAMujU,863
|
|
246
|
-
letschatty/services/chatty_assets/collections/chain_of_thought_collection.py,sha256=FIQMGFmENNZ9KKU11hSrh0rfvCpqrnDx2wnRtboJTIc,1470
|
|
247
|
-
letschatty/services/chatty_assets/collections/chat_collection.py,sha256=DZgBPah83i6D5Ni5vleTtbpdY58fkhY8wZRqZjgPf44,728
|
|
248
|
-
letschatty/services/chatty_assets/collections/contact_point_collection.py,sha256=KTiJ2ZrzWxlyNPxY4MG2bkpB2rhcy5u3ndHAmdSA8SI,859
|
|
249
|
-
letschatty/services/chatty_assets/collections/fast_answer_collection.py,sha256=jlbEu8I_F4dLnPD14ZkhadXB-zmPL6RCUosdCjLmUw8,858
|
|
250
|
-
letschatty/services/chatty_assets/collections/filter_criteria_collection.py,sha256=Jt2Llvg_JRFrx4D98RpgEnTj0gG-6m6p6Crpc_uGpAo,779
|
|
251
|
-
letschatty/services/chatty_assets/collections/flow_collection.py,sha256=qHlDzO0tzddhkdGoywdu_XGQ-NtwfZiy1oOPcpcyKus,714
|
|
252
|
-
letschatty/services/chatty_assets/collections/product_collection.py,sha256=_1ag0MNF0Qsugqmnu3663MJg5afnfXU1kwaFsS3_wGQ,741
|
|
253
|
-
letschatty/services/chatty_assets/collections/sale_collection.py,sha256=ct-qF5nsQeZUEo7JJG1CRqAgyh7nbGPgO-oiFYF-eT4,686
|
|
254
|
-
letschatty/services/chatty_assets/collections/source_collection.py,sha256=-NvseN4Y0PN9iSsiwpAy4ffeMh5a4yX44ghnZPJ4DbU,791
|
|
255
|
-
letschatty/services/chatty_assets/collections/tag_collection.py,sha256=dCnudX0cPFbXrMpBBiKOw5r6JjxNGhFWG3fTpRzm7rk,632
|
|
256
|
-
letschatty/services/chatty_assets/collections/topic_collection.py,sha256=D4xcVlmuAFL_5yufkPB78lEbwmZ84uMEsI1u7bHysv8,792
|
|
257
|
-
letschatty/services/chatty_assets/collections/user_collection.py,sha256=zQI2yLCwYY5upYT5gveOWJz7xiu2yCVVGp4de_dD9eI,700
|
|
245
|
+
letschatty/services/chatty_assets/__init__.py,sha256=quOXMGvcDVRkbeaGfCQliFfZzis5m1wrfJkHqDkWRx8,132
|
|
246
|
+
letschatty/services/chatty_assets/asset_service.py,sha256=9EbtqSjTdil9kz7GZMmGYOkF3m4vZpAxyDPt4t-8zhc,3675
|
|
247
|
+
letschatty/services/chatty_assets/base_container.py,sha256=p1fdwBEJZpE-Y_NRNSKH4as4KvU8tl8hUouVUP-U_W0,5781
|
|
248
|
+
letschatty/services/chatty_assets/base_container_with_collection.py,sha256=0fF7uadzVCm3Rc9M-vH44twTpuOpOx9kRNvu-uggZi4,15836
|
|
258
249
|
letschatty/services/chatty_assets/documentation_diagram.png,sha256=JrmxqqZ5S93kIA-1A1_ipXTnA-TG6ZM1cpR1aCoAR4g,252644
|
|
259
|
-
letschatty/services/chatty_assets/example_usage.py,sha256=5ixfxBQp11s4TQb2-DCcLPyVCJ3P5cH_7rPwl0ExX5A,1606
|
|
260
250
|
letschatty/services/chatty_assets/readme.md,sha256=X-bXFaB7MH5E0bVMiDH7qY0-yDBG71K-iLsPykYPkL4,1638
|
|
261
|
-
letschatty/services/chatty_assets/services/__init__.py,sha256=DlEH-RMWpV3R4DoWPbFGUHDDccr3fsh2b29xvG8VdIc,1086
|
|
262
|
-
letschatty/services/chatty_assets/services/ai_agent_in_chat_service.py,sha256=yEBJ9C-1OHHic1wksjM19D8XzpPzS02oISovcht2q1Y,3081
|
|
263
|
-
letschatty/services/chatty_assets/services/ai_agent_service.py,sha256=HDJ2feazeqZFMqDf4LrV7B29pmUC9yYpIMqJqFLwwq8,909
|
|
264
|
-
letschatty/services/chatty_assets/services/chain_of_thought_service.py,sha256=uxh6sZg1EUzOotdy2gGR8P_safViE5a2VPgIHKBzpdU,2903
|
|
265
|
-
letschatty/services/chatty_assets/services/chat_service.py,sha256=Ws4ruj7mKOa7T4T-LjPqN29OOeJ-ijgA24dhnjgxABs,848
|
|
266
|
-
letschatty/services/chatty_assets/services/contact_point_service.py,sha256=U07F1EPpm0uiRdsmxfDoM2P5YNsWuB0-DHfXJTdxicw,1118
|
|
267
|
-
letschatty/services/chatty_assets/services/fast_answer_service.py,sha256=QoVAoJ6n7KLHgjFPDzNVHFsSv5ferqg7aswPLUHRf4Y,1375
|
|
268
|
-
letschatty/services/chatty_assets/services/filter_criteria_service.py,sha256=r9f5T2-pjNGtvEMKH4N94EcydtKwl_HQfgX_Qm0W8Jo,1311
|
|
269
|
-
letschatty/services/chatty_assets/services/flow_service.py,sha256=ppPl9HIxq9TM4EHJ_r5U7SScPXfu0emmxaz8kBPOBjQ,897
|
|
270
|
-
letschatty/services/chatty_assets/services/product_service.py,sha256=uoktDFNNV7StCHrrPpplo770-oKSnxb8_Ugb-RjWKPM,1199
|
|
271
|
-
letschatty/services/chatty_assets/services/sale_service.py,sha256=cP6smx6cFVN0naytMW4kNxHZoVuaspGsbBGtoITqpmk,863
|
|
272
|
-
letschatty/services/chatty_assets/services/source_service.py,sha256=N1wWK5gqHD4A0itqYw9R20fTZi64VQtobHXFovAMTkY,1133
|
|
273
|
-
letschatty/services/chatty_assets/services/tag_service.py,sha256=HOee-8GEU4y6Rxa5T1j53epAx3EtF4xTixvrZc4R_CY,1229
|
|
274
|
-
letschatty/services/chatty_assets/services/topic_service.py,sha256=tRsWVURtvNYZwJZX4scvyQJ3L4CJ5hySnA-wju6NR-I,1241
|
|
275
|
-
letschatty/services/chatty_assets/services/user_service.py,sha256=C1HbBBqfR2sFL8lCy1ufAbBnCVybGX-WVji-tC5IvWQ,1276
|
|
276
251
|
letschatty/services/concurrent/concurrent.py,sha256=ZLNeCENCKlR3_CGMthggklOplNkJB7YX9IcD9H-aU1A,2868
|
|
277
252
|
letschatty/services/contact_points/contact_point_service.py,sha256=bNkZWFSHVSV8tR84OdUYMvoIA74-NkBckmrFerXnwDI,7623
|
|
278
|
-
letschatty/services/continuous_conversation_service/continuous_conversation_helper.py,sha256=
|
|
279
|
-
letschatty/services/events/
|
|
280
|
-
letschatty/services/events/events_manager.py,sha256=bfSmNSV2UqQ3pXQFariXOsXrSiSlc-pI1zfB-xg6Blo,9080
|
|
253
|
+
letschatty/services/continuous_conversation_service/continuous_conversation_helper.py,sha256=Tnd_1wSjW6moufmrR51gdGrPDDSxR-qcYmVoz1DXPL8,16734
|
|
254
|
+
letschatty/services/events/events_manager.py,sha256=z2CAc-TqpXkyX9pPHImFXMIDRipLp7e-mN1gRvaM04E,67
|
|
281
255
|
letschatty/services/factories/__init__.py,sha256=cDAQ_0M5xKqZAui5ijHvbtHxn3jFFM4kBcXIXc_Bv38,161
|
|
282
|
-
letschatty/services/factories/analytics/ai_agent_event_factory.py,sha256=m4apDnq0Oy9f2LId8f0ytHofQOwDVN09sqZFZ1MO_Wk,7356
|
|
283
256
|
letschatty/services/factories/analytics/contact_point_factory.py,sha256=5YXkoIwd43gtoYpFUACIXJGCJYyUEqS97XxpR_dBrt4,441
|
|
284
|
-
letschatty/services/factories/analytics/events_factory.py,sha256=
|
|
257
|
+
letschatty/services/factories/analytics/events_factory.py,sha256=25nrhNkDZat9g3JG73NTN22KNK0sM7B3zUmOzxz_n6A,36483
|
|
285
258
|
letschatty/services/factories/analytics/smart_messages/topics_factory.py,sha256=nJRlOtQFiosafXakZoJj8UCVoiNovjDiOoO52vIh4ok,682
|
|
286
259
|
letschatty/services/factories/analytics/sources/helpers.py,sha256=_2lsaTEhNFqr2ZyO8clMCD-t3MCPTQMyVoSUo5Fio_Y,868
|
|
287
260
|
letschatty/services/factories/analytics/sources/source_factory.py,sha256=kvpS9dLoCsIVnV_wMQzBpFXoN3AyjyphX-IFRg5sO5c,7877
|
|
@@ -291,7 +264,7 @@ letschatty/services/factories/chatty_fast_answers/chatty_fast_answers_factory.py
|
|
|
291
264
|
letschatty/services/factories/clients/client_factory.py,sha256=WIFUksJlnMSSLeHEVTAorpelEvpJMQg_mxg66wZfLcQ,1567
|
|
292
265
|
letschatty/services/factories/company/__init__.py,sha256=Zd3Zo21bQ1Lk9mQNpNaaTZ5EyjttWXi9AthgV5GnSb4,43
|
|
293
266
|
letschatty/services/factories/company/empresa_factory.py,sha256=tJ5Y9WhvYTEvPZXzREGHi2X-aNnW1_B49K12fAo290w,1710
|
|
294
|
-
letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py,sha256=
|
|
267
|
+
letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py,sha256=AtEAjgmix9mlW1Tn-4wacfwBCoqDCcf0aZyXegL73e4,4475
|
|
295
268
|
letschatty/services/factories/messages/__init__.py,sha256=Qm02DTwopP5WKXt4hMB5j-Y2ytfAUfMqztX5_pPJnxI,122
|
|
296
269
|
letschatty/services/factories/messages/central_notification_factory.py,sha256=P8rrBw-Ew0AMqL31YsHH9dXAMQALiLzh6BH618eX_EU,2815
|
|
297
270
|
letschatty/services/factories/messages/chatty_message_factory.py,sha256=kFYkkrZ1x-njavcqcSkRY30DIj5cFHLCo5Iixd63JR4,2234
|
|
@@ -305,13 +278,13 @@ letschatty/services/factories/meta_notifications/meta_notification_factory.py,sh
|
|
|
305
278
|
letschatty/services/factories/product_factory.py,sha256=PwSeZjp0OOM-_Dl7om8DjLKc0NZN_fEK4QLe9ElmYsk,2360
|
|
306
279
|
letschatty/services/filter_criteria_service.py,sha256=4ZA3Na6wF2zWHQk65YiYQogR2Y25G2-U9maJZxAh_H0,4429
|
|
307
280
|
letschatty/services/messages_helpers/__init__.py,sha256=3LQssKlikjOPP32u1OQ5CHWYdmJsrQiEq1F14MzHt8A,73
|
|
308
|
-
letschatty/services/messages_helpers/get_caption_or_body_or_preview.py,sha256=
|
|
281
|
+
letschatty/services/messages_helpers/get_caption_or_body_or_preview.py,sha256=Bdz8lduHma7XuEt2tcru-ASVFcGtXKbxyOh6DqJ2FdA,1662
|
|
309
282
|
letschatty/services/scheduled_messages_service/scheduled_messages_helpers.py,sha256=RM_lx_RZvxkEscvpYsWOqWpNCXg4ar_6TI8q-BaX92M,13042
|
|
310
283
|
letschatty/services/template_campaigns/template_campaign_service.py,sha256=jORgDncuXJ5ZV4fr_KsfKBHOz_lypIy6lcNMWMw8OPw,4038
|
|
311
284
|
letschatty/services/users/agent_service.py,sha256=hIkUUJ1SpkKbh5_uo4i2CeqGtuMTjU7tSV8k5J7WPG4,279
|
|
312
285
|
letschatty/services/users/user_factory.py,sha256=FCB9uiAfjMeYfh4kMdx5h8VDHJ8MCsD-uaxW3X3KaWM,6681
|
|
313
|
-
letschatty/services/validators/analytics_validator.py,sha256
|
|
314
|
-
letschatty-0.4.
|
|
315
|
-
letschatty-0.4.
|
|
316
|
-
letschatty-0.4.
|
|
317
|
-
letschatty-0.4.
|
|
286
|
+
letschatty/services/validators/analytics_validator.py,sha256=6ejecLcif2i1C5trUo1qQgp8vKr9WchdljFZ5GzB2i4,7239
|
|
287
|
+
letschatty-0.4.353.dist-info/LICENSE,sha256=EClLu_bO2HBLDcThowIwfaIg5EOwIYhpRsBJjVEk92A,1197
|
|
288
|
+
letschatty-0.4.353.dist-info/METADATA,sha256=enxIjZaJH3c7BOLyvpQ0CjT1B7FDvoQ5V8WE-keSqdk,3283
|
|
289
|
+
letschatty-0.4.353.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
|
|
290
|
+
letschatty-0.4.353.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
|
-
|