Integration Endpoint: TROIA sunucusunun dışına açılan kapı

Bir "Integration Endpoint", TROIA sunucusunun dışındaki bir sisteme (mesaj kuyruğu, vektör veritabanı, NoSQL veritabanı gibi) erişmek istediğinizde tanımlamanız gereken bağlantı noktasıdır. FTP ya da HTTP'nin aksine, endpoint'ler daha genel bir bağlantı çerçevesi sunar ve merkezi olarak yönetilir.

Nerede tanımlanır

Endpoint tanımları "SYST51 - Integration Endpoints Configurations" ekranından yapılır; sıfırdan oluşturulabilir ya da mevcut bir tanımdan kopyalanabilir. Kayıtlar SYSENDPOINTS tablosunda tutulur; başlıca kolonlar:

  • ENDPOINTID: benzersiz tanımlayıcı
  • ENDPOINTTYPE: bağlanılan sistemin türü
  • PROTOCOL, HOSTNAME, PORT
  • ENDPOINTUSER, ENDPOINTPASS
  • TIMEOUT: milisaniye cinsinden bağlantı süresi sınırı
  • STATUS: aktif/pasif

Desteklenen türler

Şu an desteklenen başlıca endpoint türleri: Qdrant, RabbitMQ, Kafka, RedPanda, Mongo. Desteklenen tüm türlerin listesini kod içinden GETENDPOINTTYPES() fonksiyonuyla da öğrenebilirsiniz.

Bağlantı açmak ve kapatmak

MAKEENDPOINTCONNECTION BAGLANTI1 ENDPOINTID 'KAFKA01' TIMEOUT 5000;

IF SYS_STATUS == 1 THEN
    /* SYS_STATUSERROR icinde detay olur */
ENDIF;

CLOSEENDPOINTCONNECTION BAGLANTI1;

Her iki komut da SYS_STATUS değişkenini set eder (1 hata anlamına gelir), hata detayı SYS_STATUSERROR'a yazılır — FTP bağlantılarındaki hata yönetimiyle aynı mantık.

Endpoint türüne göre farklı komutlar

Bağlantı kurulduktan sonra çalıştırılacak işlem, endpoint türüne göre değişir — örneğin Qdrant (vektör veritabanı) için VECTORDBACTION, Kafka veya RabbitMQ gibi mesaj kuyrukları için BUSACTION kullanılır.

Sonuç

Integration Endpoint'leri, TROIA'nın FTP/HTTP dışındaki modern sistemlere (mesaj kuyrukları, vektör veritabanları) bağlanmak için sunduğu genel çerçeve olarak düşünebilirsiniz: bağlantıyı SYST51'de tanımlayın, kod içinde MAKEENDPOINTCONNECTION ile açın, türüne uygun action komutuyla (VECTORDBACTION, BUSACTION) işlemi yapın, sonra kapatın.