Skip to content

IAV-591/feat(customer-care): Implement credential validation system and Meta platform integration

salaheddine zidani a demandé de fusionner feature/IAV-591 vers develop

Summary

This MR introduces a comprehensive credential validation system and adds full support for Meta platform integrations (Facebook Messenger and Instagram) in the customer care agent wizard.

Changes

New Features

Credential Validation System

  • New API Service: agent-credential-validation.service.api.ts - Validates credentials for Freshdesk, Shopify, Telegram, WhatsApp, and WooCommerce
  • New Store: agent-credential-validation.store.ts - Manages validation state with platform-specific methods
  • New Types: agent-credential-validation.types.ts - TypeScript definitions for all credential types

Meta Platform Integration

  • New API Service: agent-meta-integration.service.api.ts - Handles Meta API calls for token validation, page retrieval, and Instagram account management
  • New Store: agent-meta-integration-store.ts - Manages Meta integration state including pages, tokens, and validation results
  • New Types: agent-meta-integration.types.ts - Full type definitions including webhook validation
  • New Config: agent-meta-integration-api-service.config.ts - Meta API endpoints configuration

UI Components

  • PermissionsDisplay: Shows granted and missing permissions with visual feedback
  • WebhookDisplay: Displays webhook configuration status with subscribed fields

Error Handling

  • New Utility: error-handler.ts - Centralized error handling with snackbar notifications
  • Error Dictionary: iavia-agent-service-customer-care.ts - 150+ French error messages mapped to error codes

Refactoring

Step Integration Config (step-integration-config.tsx)

  • Replaced mock data with real API integration
  • Added Meta platform detection and specific UI flow
  • Added App ID and App Secret fields for Meta platforms
  • Added page selection dropdown for Messenger
  • Added connection test with detailed feedback (permissions, webhook status, account info)
  • Conditional save button (only visible after successful connection test)

Stores Standardization

  • Added getUserUid() helper function to all stores
  • Integrated handleStoreError() and showSuccessMessage() for consistent UX
  • Updated error handling pattern across:
    • agent-custom-instructions.store.ts
    • agent-standard-instructions.store.ts
    • agent.store.ts
    • main-agent-wizard.store.ts

API Config Updates

  • Added CREDENTIALS section with validation endpoints
  • Added META section for Meta platform endpoints

Related Issues

Closes IAV-591

Rapports de requête de fusion