File Transfer Service
SFTP bilgilerini tanımlamak için,

Servis Kullanımı:
URL: https://fts.elektraweb.com/${dosyadıveuzantı}loginToken=${token}&hotelId=${hotelId}
Method: POST
*Gönderilecek olan dosya binary olarak body’ den gönderilmelidir
Parametreler:
loginToken: kullanıcının nodejs tokenı
hotelId: SFTP bilgilerini sorgulamak için
Parametreler query params olarak URL’den gönderilmelidir
Örnek İstek URL:
https://fts.elektraweb.com/test.txt?loginToken=123&hotelId=123
Angus içerisinde örnek kullanım:
(() => {
//dosyamızı oluşturmak için datayı çekiyoruz. gelen data csv formatında
const respSubscribe = this.api
.func({
Object: 'FN_REVIEWPRO_CHECKOUTGUEST_CSV',
Parameters: {
STARTDATE: this.filterPanels.first.panelService.formGroup.controls
.STARTDATE.value,
ENDDATE: this.filterPanels.first.panelService.formGroup.controls.ENDDATE
.value,
},
})
.pipe(
rxjs.map((resp) => {
if (!resp?.[0]?.[0]?.DATA) {
return null;
}
//dosya ismini oluşturuyoruz
let fname = this.filterPanels.first.panelService.formGroup.controls
.STARTDATE.value;
let fileName = 'GUESTS_' + fname + '.csv';
return {
fileName: fileName,
data: resp[0][0].DATA,
};
}),
//oluşturalan dosyayı sunucuya yüklüyoruz.
rxjs.switchMap((file) => {
return angus.api.http
.post(
'https://fts.elektraweb.com/' +
file.fileName +
`?hotelId=${angus.api.tenant.HOTELID}
&loginToken=${angus.api.loginToken}
`,
file.data,
{}
)
.pipe(rxjs.timeout(120000));
}),
rxjs.tap((res) => {
// Eğer başarılıysa
if (res?.status == 'OK') {
let successMsg = angus.languageService.dynamicTranslator.translate(
'SFTP sending success'
);
angus.serviceWorkerService.snackBar.open(successMsg, '(x)', {
duration: 10e3,
});
}
})
)
.subscribe();
})();
Last updated