Lowcode do kafki

circle-info

Dostępność funkcjonalności zależy od licencji i może nie być dostępna we wszystkich wdrożeniach.

Cel

Umożliwienie wysyłania wiadomości na wskazaną kafkę i wskazany topic bezpośrednio z poziomu wniosków (skrypty) i procesów bpmn (zadania skryptowe).

Przykłady użycia

  • Aktualizacja danych w hurtowni danych

  • Powiadamianie CRM o zmianach statusu procesu

  • Komunikacja z systemami zewnętrznymi (np. systemami banku)

Użycie w skypcie/zadaniu skryptowym

api.events.v1.publishAsync(
    "kafkaid",                  // nazwa instancji Kafka (skonfigurowanej przez administratora, pisana tylko małymi literami, bez znaków specjalnych)
    "topicName",                // nazwa topica (skonfigurowanego przez administratora)    
    {                           // treść wiadomości – musi być poprawnym JSON-em
      "id": "123",
      "status": {
        "code": "OK",
        "message": "Everything is fine!"
      },
      "list": [1, 2, 3],
      "boolean": true,
      "date": new Date()
    },
    "key",                      // klucz wiadomości (opcjonalny – trzeba go nadawać, jeżeli potrzebujemy zachować kolejność zdarzeń)
    {                           // nagłówki (opcjonalne)
        "header1": "header1-value",
        "header2": "header2-value"
    }
);

Ważne informacje

  • Wysyłka jest asynchroniczna – skrypt nie czeka na potwierdzenie dostarczenia wiadomości

  • Z powyższego wynika brak możliwości przechwytywania błędów podczas wysyłki

  • Treść wiadomości musi być poprawnym JSON-em – przekazywany obiekt jest automatycznie serializowany

  • Klucz jest opcjonalny, ale zalecany gdy zależy Ci na kolejności wiadomości w ramach jednej partycji

  • Timeout wysyłki jest konfigurowany przez administratora – nie można go zmieniać z poziomu skryptu

  • Topic'i są tworzone i zarządzane przez administratorów

  • kafkaId musi odpowiadać nazwie instancji Kafka skonfigurowanej w aplikacji

Last updated

Was this helpful?