letschatty 0.4.413__tar.gz → 0.4.415__tar.gz
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-0.4.413 → letschatty-0.4.415}/PKG-INFO +1 -1
- {letschatty-0.4.413 → letschatty-0.4.415}/pyproject.toml +1 -1
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/__init__.py +2 -1
- letschatty-0.4.415/src/letschatty/models/analytics/sources/contact_import_source.py +38 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/helpers.py +2 -1
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/pure_ad.py +14 -1
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/chat.py +1 -1
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/source_types.py +10 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/analytics/sources/helpers.py +3 -2
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/analytics/sources/source_factory.py +9 -1
- {letschatty-0.4.413 → letschatty-0.4.415}/LICENSE +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/README.md +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/ai_microservices/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/ai_microservices/expected_output.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/ai_microservices/lambda_events.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/ai_microservices/lambda_invokation_types.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/ai_microservices/n8n_ai_agents_payload.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/ai_microservices/openai_payloads.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/base.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/ai_agent_chat.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/ai_agent_escalate_event.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/ai_agent_execution_event.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/business_area.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/chat_based_event.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/chat_client.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/chat_context.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/chat_funnel.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/chat_reset.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/chat_status.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/contact_point.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/continuous_conversation.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/highlight.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/message.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/messages_intent_context.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/product_chat.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/quality_scoring.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/sale.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/tag_chat.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/chat_based_events/workflow.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/company_based_events/asset_events.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/company_based_events/company_events.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/company_based_events/user_events.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/event_type_to_classes.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/event_types.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/user_notification_intent/HOW-TO-ADD.md +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/user_notification_intent/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/user_notification_intent/builders.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/user_notification_intent/event.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/user_notification_intent/metadata.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/metrics/__init_.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/metrics/daily_contact_points.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/metrics/daily_new_chats.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/metrics/daily_sent_templates_grouped.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/metrics/sales_roadmap.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/metrics/sent_templates.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/smart_messages/friendly_code_for_source.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/smart_messages/topic.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/smart_messages/topic_message.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/google_ad_utm_source.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/other_source.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/pure_ad_utm_source.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/source_base.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/template_source.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/topic_default_source.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/utm_source.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/utms/referer_info.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/utms/utm_query_params.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/whatsapp_default_source.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/auth/jwt.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/base_models/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/base_models/ai_agent_component.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/base_models/chatty_asset_model.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/base_models/helpers.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/base_models/related_asset_usage_example.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/base_models/singleton.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/base_models/update_model_interface.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/base_models/validate_timestamps_and_id.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/cache/README.md +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/cache/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/cache/cache_protocol.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/cache/no_cache.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/cache/redis_cache.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/cache/redis_connection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/channels/channel.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/assets_assigned_to_chat.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/chat_status_modifications.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/chat_with_assets.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/client.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/continuous_conversation.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/filter_parameters.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/flow_link_state.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/highlight.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/preview.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/quality_scoring.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/scheduled_messages.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/temporary_chat.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/time_left.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/CRM/business_area.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/CRM/funnel.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/cintia_execution.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/events/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/events/cintia_event_type.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/chat_vector.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/chatty_asset_embedding.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/chatty_trigger.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/cintia_feedback.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/cintia_trigger.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/lambda_trigger_events.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/outputs/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/outputs/cintia_assistant_output.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/outputs/cintia_audio_transcriber_output.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/outputs/cintia_customer_success_output.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/outputs/cintia_decision_output.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/outputs/cintia_responder_output.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/outputs/cintia_smart_follow_output.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/models/outputs/cintia_tagger_output.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/ai_agent_message_draft.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/ai_agents_decision_output.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/ai_specific_instruction.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/chain_of_thought_in_chat.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/chat_example.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/chat_example_test.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_config_for_automation.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/chatty_ai_agent_in_chat.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/chatty_ai_mode.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/context_item.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/cs_scenario.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/data_collection_config.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/faq.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/fast_answer_reference.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/follow_up_strategy.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/get_chat_with_prompt_response.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/instruction.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/knowleadge_base_components.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/n8n_agents_info.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/n8n_schema_incoming_message_output.json +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/n8n_schema_smart_follow_up_output.json +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/pre_qualify_config.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/tag_reference.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/asset_model_registry.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/assignment/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/assignment/assignment_assets.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/automation.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/chat_assets.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/chatty_fast_answers/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/chatty_fast_answers/chatty_fast_answer.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/company_assets.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/contact_point.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/embeddable.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/filter_criteria.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/flow.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/launch/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/launch/launch.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/launch/scheduled_communication.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/launch/subscription.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/media/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/media/file.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/notification.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/product.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/product_parameter_embed_config.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/sale.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/tag.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/users/agent_chats_snapshot.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/users/user.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/users/user_asset_permission.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/workflow_execution.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/company_chats_snapshot.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/company_messaging_settgins.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/conversation_topic.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/empresa.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/form_field.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/insight.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/integrations/product_sync_status.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/integrations/shopify/company_shopify_integration.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/integrations/shopify/shopify_product_sync_status.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/integrations/shopify/shopify_webhook_topics.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/integrations/sync_status_enum.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/integrations/tienda_nube/company_tienda_nube_integration.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/integrations/tienda_nube/tienda_nube_product_sync_status.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/integrations/tienda_nube/tienda_nube_webhook_topics.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/notifications/notification.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/copilot/links.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/data_base/README.md +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/data_base/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/data_base/collection_interface.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/data_base/mongo_connection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/execution/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/execution/execution.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/execution/executor.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/forms/company/auth0_company_registration_form.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/forms/company/meta_register.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/audio.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/base/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/base/chatty_message_json.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/base/message_base.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/base/message_draft.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/button.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/central_notification.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/contact.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/document.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/image.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/interactive.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/location.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/reaction.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_audio.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_button.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_central.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_contacts.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_document.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_image.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_interactive.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_location.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_media.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_reaction.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_sticker.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_text.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_content/content_video.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_context/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_context/chatty_context.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_referal/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/schema/chatty_referal/chatty_referal.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/sticker.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/text.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/chatty_messages/video.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/message_templates/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/message_templates/chatty_template_campaign.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/message_templates/filled_data_from_frontend.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/message_templates/payload_for_sending_template.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/message_templates/raw_meta_template.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/message_templates/recipient_of_template_campaign.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/message_templates/required_for_frontend_templates.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/meta_base_notification_json.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/meta_error_json.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/meta_inexistent_json.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/meta_message_json.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/meta_status_json.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/meta_unknown_json.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/content_messages/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/content_messages/button_content.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/content_messages/contacts_content.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/content_messages/interactive_content.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/content_messages/location_content.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/content_messages/multimedia_content.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/content_messages/order_content.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/content_messages/reaction_content.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/content_messages/system_content.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/content_messages/text_content.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/values/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/values/value_errors.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/values/value_messages.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/messages/meta_message_model/schema/values/value_statuses.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/push_notifications/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/push_notifications/enums.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/push_notifications/user_device.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/custom_exceptions/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/custom_exceptions/custom_exceptions.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/definitions.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/CRUD_operations.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/channel_types.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/chats_actions.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/country.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/deletion_type.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/executor_types.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/identifier.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/message_status_types.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/message_types.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/phone_number.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/serializer_type.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/utils/types/typealiases.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/ai_agents/context_builder_v2.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/ai_agents/cot_follow_up_examples.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/ai_agents/followup_schema.json +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/ai_agents/smart_follow_up_context_builder_v2.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/ai_agents/smart_follow_up_service_v2.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/ai_agents/tool_descriptions/assign_chat_to_ai_agent_itself.json +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/ai_agents/tool_descriptions/human_handover.json +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/ai_agents/tool_descriptions.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/ai_components_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chat/chat_extractors.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chat/chat_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chat/client_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chat/conversation_topics_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chat/whatsapp_apb_mode_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/asset_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/assets_collections.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/base_container_with_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/ai_agent_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/ai_agent_in_chat_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/ai_component_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/chain_of_thought_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/chat_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/contact_point_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/fast_answer_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/filter_criteria_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/flow_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/form_field_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/product_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/sale_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/source_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/tag_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/topic_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/collections/user_collection.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/documentation_diagram.png +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/example_usage.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/readme.md +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/ai_agent_in_chat_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/ai_agent_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/chain_of_thought_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/chat_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/contact_point_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/fast_answer_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/filter_criteria_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/flow_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/product_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/sale_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/source_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/tag_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/topic_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/chatty_assets/services/user_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/concurrent/concurrent.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/contact_points/contact_point_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/continuous_conversation_service/continuous_conversation_helper.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/events/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/events/events_manager.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/analytics/ai_agent_event_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/analytics/contact_point_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/analytics/events_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/analytics/smart_messages/topics_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/chats/chat_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/chatty_fast_answers/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/chatty_fast_answers/chatty_fast_answers_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/clients/client_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/company/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/company/empresa_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/lambda_ai_orchestrartor/lambda_events_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/messages/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/messages/central_notification_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/messages/chatty_message_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/messages/child_db_message_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/messages/child_request_message.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/messages/from_template_hot_fix.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/messages/message_templates/template_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/messages/message_templates/test.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/meta_notifications/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/meta_notifications/meta_notification_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/factories/product_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/filter_criteria_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/messages_helpers/__init__.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/messages_helpers/get_caption_or_body_or_preview.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/scheduled_messages_service/scheduled_messages_helpers.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/template_campaigns/template_campaign_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/users/agent_service.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/users/user_factory.py +0 -0
- {letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/services/validators/analytics_validator.py +0 -0
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/__init__.py
RENAMED
|
@@ -9,4 +9,5 @@ from .source_base import SourceBase
|
|
|
9
9
|
from .pure_ad_utm_source import PureAdUtmSource
|
|
10
10
|
from .google_ad_utm_source import GoogleAdUtmSource
|
|
11
11
|
from .template_source import TemplateSource
|
|
12
|
-
|
|
12
|
+
from .contact_import_source import ContactImportSource
|
|
13
|
+
Source = Union[OtherSource, PureAd, WhatsAppDefaultSource, TopicDefaultSource, UTMSource, PureAdUtmSource, GoogleAdUtmSource, TemplateSource, ContactImportSource]
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
from pydantic import Field
|
|
3
|
+
|
|
4
|
+
from .source_base import SourceBase
|
|
5
|
+
from ...utils.types.source_types import SourceType, SourceCheckerType
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class ContactImportSource(SourceBase):
|
|
9
|
+
"""Internal source for contacts created via bulk import (no inbound message).
|
|
10
|
+
|
|
11
|
+
Contact points on imported chats are created already-matched to this source,
|
|
12
|
+
so it is never run through the inbound message source-checker rotation.
|
|
13
|
+
"""
|
|
14
|
+
name: str = Field(default="Contactos importados", frozen=True)
|
|
15
|
+
description: str = Field(
|
|
16
|
+
default="Contacto creado mediante importación masiva, sin mensaje entrante.",
|
|
17
|
+
frozen=True
|
|
18
|
+
)
|
|
19
|
+
category: str = Field(default="Contactos importados", frozen=True)
|
|
20
|
+
source_checker: SourceCheckerType = Field(
|
|
21
|
+
default=SourceCheckerType.CONTACT_IMPORT,
|
|
22
|
+
frozen=True
|
|
23
|
+
)
|
|
24
|
+
|
|
25
|
+
@property
|
|
26
|
+
def default_category(self) -> str:
|
|
27
|
+
return "Contactos importados"
|
|
28
|
+
|
|
29
|
+
@property
|
|
30
|
+
def type(self) -> SourceType:
|
|
31
|
+
return SourceType.CONTACT_IMPORT
|
|
32
|
+
|
|
33
|
+
def __eq__(self, other: object) -> bool:
|
|
34
|
+
"""Contact-import sources are unique per company, so they're equal if they're the same type"""
|
|
35
|
+
return isinstance(other, ContactImportSource)
|
|
36
|
+
|
|
37
|
+
def __hash__(self) -> int:
|
|
38
|
+
return hash(self.type)
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/helpers.py
RENAMED
|
@@ -9,7 +9,8 @@ SOURCE_CHECKER_MAPPING = {
|
|
|
9
9
|
SourceType.UTM_SOURCE: [SourceCheckerType.CHATTY_PIXEL],
|
|
10
10
|
SourceType.PURE_AD_UTM_SOURCE: [SourceCheckerType.AD_ID_IN_UTM_PARAMS],
|
|
11
11
|
SourceType.GOOGLE_AD_UTM_SOURCE: [SourceCheckerType.AD_ID_IN_UTM_PARAMS],
|
|
12
|
-
SourceType.TEMPLATE_SOURCE: [SourceCheckerType.TEMPLATE]
|
|
12
|
+
SourceType.TEMPLATE_SOURCE: [SourceCheckerType.TEMPLATE],
|
|
13
|
+
SourceType.CONTACT_IMPORT: [SourceCheckerType.CONTACT_IMPORT]
|
|
13
14
|
}
|
|
14
15
|
|
|
15
16
|
class SourceHelpers:
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/pure_ad.py
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
|
-
from pydantic import Field, ConfigDict
|
|
2
|
+
from pydantic import Field, ConfigDict, field_validator
|
|
3
3
|
from typing import Optional
|
|
4
4
|
from .source_base import SourceBase
|
|
5
5
|
from ...utils.types.source_types import SourceType, SourceCheckerType
|
|
@@ -16,6 +16,19 @@ class PureAd(SourceBase):
|
|
|
16
16
|
meta_image_url: Optional[str] = Field(default=None)
|
|
17
17
|
meta_thumbnail_url: Optional[str] = Field(default=None)
|
|
18
18
|
|
|
19
|
+
@field_validator("meta_ad_url", "meta_referral_type", "meta_body",
|
|
20
|
+
"meta_headline", "meta_media_type", mode="before")
|
|
21
|
+
@classmethod
|
|
22
|
+
def _coerce_none_to_empty(cls, v: object) -> object:
|
|
23
|
+
# Meta sends these Click-to-WhatsApp referral fields as null for ads that
|
|
24
|
+
# lack that element (e.g. image-only ads have no body/headline, some
|
|
25
|
+
# formats have no media_type). ChattyReferral types them Optional, but
|
|
26
|
+
# these PureAd fields are `str`, and pydantic v2 rejects an explicit None
|
|
27
|
+
# for a `str` field even when default="" — the default only applies when
|
|
28
|
+
# the key is ABSENT, not when it's present-but-null. Coerce None -> "" so
|
|
29
|
+
# a legitimate ad with missing text doesn't 500 the webhook.
|
|
30
|
+
return "" if v is None else v
|
|
31
|
+
|
|
19
32
|
exclude_fields = {
|
|
20
33
|
SerializerType.FRONTEND_ASSET_PREVIEW: {"meta_ad_url", "meta_referral_type", "meta_body", "meta_headline", "meta_media_type", "meta_video_url", "meta_image_url", "meta_thumbnail_url"}
|
|
21
34
|
}
|
|
@@ -358,7 +358,7 @@ class Chat(CompanyAssetModel):
|
|
|
358
358
|
dump = super().model_dump_json(*args, **kwargs)
|
|
359
359
|
serializer = kwargs.get('serializer', SerializerType.API)
|
|
360
360
|
if serializer == SerializerType.DATABASE:
|
|
361
|
-
dump["last_message_timestamp"]= self.last_message_timestamp
|
|
361
|
+
dump["last_message_timestamp"]= self.last_message_timestamp or self.created_at
|
|
362
362
|
dump["free_conversation_expire_date"] = self.free_conversation_expire_date
|
|
363
363
|
dump["free_template_window_expire_date"] = self.free_template_window_expire_date
|
|
364
364
|
dump["last_message"] = self.last_message.model_dump_json(serializer=SerializerType.DATABASE) if self.last_message else None
|
|
@@ -10,6 +10,7 @@ class SourceType(StrEnum):
|
|
|
10
10
|
PURE_AD_UTM_SOURCE = "pure_ad_utm_source"
|
|
11
11
|
GOOGLE_AD_UTM_SOURCE = "google_ad_utm_source"
|
|
12
12
|
TEMPLATE_SOURCE = "template_source"
|
|
13
|
+
CONTACT_IMPORT = "contact_import"
|
|
13
14
|
@classmethod
|
|
14
15
|
def list(cls):
|
|
15
16
|
return [member.value for member in cls]
|
|
@@ -23,6 +24,7 @@ class SourceCheckerType(StrEnum):
|
|
|
23
24
|
AD_ID_IN_UTM_PARAMS = "ad_id_in_utm_params"
|
|
24
25
|
CHATTY_PIXEL = "chatty_pixel"
|
|
25
26
|
TEMPLATE = "template"
|
|
27
|
+
CONTACT_IMPORT = "contact_import"
|
|
26
28
|
|
|
27
29
|
source_checker_types_schema = {
|
|
28
30
|
SourceCheckerType.SMART_MESSAGES: {
|
|
@@ -56,6 +58,10 @@ source_checker_types_schema = {
|
|
|
56
58
|
SourceCheckerType.TEMPLATE: {
|
|
57
59
|
"label": "Plantilla de mensaje",
|
|
58
60
|
"description": "Chatty reconoce directamente las plantillas de mensaje como fuentes de origen, identificando el nombre de la plantilla."
|
|
61
|
+
},
|
|
62
|
+
SourceCheckerType.CONTACT_IMPORT: {
|
|
63
|
+
"label": "Contacto importado",
|
|
64
|
+
"description": "Método interno de Chatty para atribuir contactos creados mediante importación masiva. No matchea mensajes entrantes."
|
|
59
65
|
}
|
|
60
66
|
}
|
|
61
67
|
|
|
@@ -87,6 +93,10 @@ source_types_schema = {
|
|
|
87
93
|
SourceType.TOPIC_DEFAULT_SOURCE: {
|
|
88
94
|
"label": "Fuente para mensajes de topics sin fuente de origen",
|
|
89
95
|
"description": "Fuente predeterminada de Chatty para usuarios que envían un smart message de un topic, sin que tengan una fuente de origen específica."
|
|
96
|
+
},
|
|
97
|
+
SourceType.CONTACT_IMPORT: {
|
|
98
|
+
"label": "Contactos importados",
|
|
99
|
+
"description": "Fuente interna de Chatty para contactos creados mediante importación masiva (sin mensaje entrante)."
|
|
90
100
|
}
|
|
91
101
|
}
|
|
92
102
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from typing import Type
|
|
2
2
|
from .....models.utils.types.source_types import SourceType
|
|
3
|
-
from .....models.analytics.sources import OtherSource, PureAd, WhatsAppDefaultSource, TopicDefaultSource, UTMSource, Source, PureAdUtmSource, GoogleAdUtmSource, TemplateSource
|
|
3
|
+
from .....models.analytics.sources import OtherSource, PureAd, WhatsAppDefaultSource, TopicDefaultSource, UTMSource, Source, PureAdUtmSource, GoogleAdUtmSource, TemplateSource, ContactImportSource
|
|
4
4
|
|
|
5
5
|
class SourceFactoryHelpers:
|
|
6
6
|
@staticmethod
|
|
@@ -13,5 +13,6 @@ class SourceFactoryHelpers:
|
|
|
13
13
|
SourceType.UTM_SOURCE: UTMSource,
|
|
14
14
|
SourceType.PURE_AD_UTM_SOURCE: PureAdUtmSource,
|
|
15
15
|
SourceType.GOOGLE_AD_UTM_SOURCE: GoogleAdUtmSource,
|
|
16
|
-
SourceType.TEMPLATE_SOURCE: TemplateSource
|
|
16
|
+
SourceType.TEMPLATE_SOURCE: TemplateSource,
|
|
17
|
+
SourceType.CONTACT_IMPORT: ContactImportSource
|
|
17
18
|
}[source_type]
|
|
@@ -4,7 +4,7 @@ import logging
|
|
|
4
4
|
|
|
5
5
|
from letschatty.models.company.empresa import EmpresaModel
|
|
6
6
|
|
|
7
|
-
from .....models.analytics.sources import GoogleAdUtmSource, PureAdUtmSource, SourceBase, WhatsAppDefaultSource, TopicDefaultSource, PureAd, Source, TemplateSource, OtherSource
|
|
7
|
+
from .....models.analytics.sources import GoogleAdUtmSource, PureAdUtmSource, SourceBase, WhatsAppDefaultSource, TopicDefaultSource, PureAd, Source, TemplateSource, OtherSource, ContactImportSource
|
|
8
8
|
from .....models.company.assets.ai_agents_v2.chatty_ai_agent_config_for_automation import ChattyAIConfigForAutomation
|
|
9
9
|
from .....models.company.assets.ai_agents_v2.chatty_ai_agent_config_for_automation import ChattyAIMode
|
|
10
10
|
from .....models.utils.types.identifier import StrObjectId
|
|
@@ -50,6 +50,14 @@ class SourceFactory:
|
|
|
50
50
|
updated_at=datetime.now(ZoneInfo("UTC")),
|
|
51
51
|
)
|
|
52
52
|
|
|
53
|
+
@staticmethod
|
|
54
|
+
def create_contact_import_source(company_id: str) -> ContactImportSource:
|
|
55
|
+
return ContactImportSource(
|
|
56
|
+
company_id=company_id,
|
|
57
|
+
created_at=datetime.now(ZoneInfo("UTC")),
|
|
58
|
+
updated_at=datetime.now(ZoneInfo("UTC")),
|
|
59
|
+
)
|
|
60
|
+
|
|
53
61
|
@staticmethod
|
|
54
62
|
def create_topic_default_source(topic: Topic, company_id: str, whatsapp_default_source: WhatsAppDefaultSource) -> TopicDefaultSource:
|
|
55
63
|
return TopicDefaultSource(
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/ai_microservices/__init__.py
RENAMED
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/ai_microservices/expected_output.py
RENAMED
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/ai_microservices/lambda_events.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/ai_microservices/openai_payloads.py
RENAMED
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/events/event_types.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/metrics/__init_.py
RENAMED
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/metrics/daily_new_chats.py
RENAMED
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/metrics/sales_roadmap.py
RENAMED
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/metrics/sent_templates.py
RENAMED
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/smart_messages/topic.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/other_source.py
RENAMED
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/source_base.py
RENAMED
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/template_source.py
RENAMED
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/analytics/sources/utm_source.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/base_models/ai_agent_component.py
RENAMED
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/base_models/chatty_asset_model.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/assets_assigned_to_chat.py
RENAMED
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/chat_status_modifications.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/chat/continuous_conversation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/CRM/business_area.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/CINTIA/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/ai_agents_v2/faq.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/automation.py
RENAMED
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/chat_assets.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/company_assets.py
RENAMED
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/contact_point.py
RENAMED
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/embeddable.py
RENAMED
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/filter_criteria.py
RENAMED
|
File without changes
|
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/launch/__init__.py
RENAMED
|
File without changes
|
{letschatty-0.4.413 → letschatty-0.4.415}/src/letschatty/models/company/assets/launch/launch.py
RENAMED
|
File without changes
|