Sincronizare
Acest capitol explică ordinea recomandată a operațiilor pentru publicarea și menținerea ofertelor în Imopedia.ro.
Principii
- Folosește același
ID_LOCALpentru aceeași ofertă din sistemul sursă. - Trimite
AGENTIAîn payload pentru oferta sau fișierul sincronizat. - Actualizează oferta înainte de a sincroniza fișierele asociate.
- Verifică răspunsurile API și tratează separat erorile față de warnings.
Flux pentru creare ofertă
- Apelează
loginși păstreazăsession_id. - Construiește payload-ul ofertei cu
AGENTIA,ID_LOCAL, tipul imobilului, tranzacția, prețul și datele de localizare. - Apelează
saveProperty. - Dacă oferta are imagini, verifică fiecare fișier prin
existsFile. - Încarcă fișierele lipsă prin
addFile. - Apelează
syncFilesdacă vrei ca lista finală de fișiere să rămână exact cea transmisă. - Apelează
syncChannelcând este necesară propagarea sincronizării pentru oferta indicată. - Apelează
logout.
Flux pentru actualizare ofertă
Pentru actualizare, retrimite oferta prin saveProperty folosind același ID_LOCAL. API-ul tratează payload-ul ca actualizare a ofertei existente în contextul agenției.
Actualizează apoi media separat:
- Verifică fișierele existente prin
existsFile. - Încarcă fișierele noi prin
addFile. - Trimite lista finală prin
syncFiles, dacă fișierele eliminate din sistemul sursă trebuie eliminate și din Imopedia.ro.
Flux pentru ștergere ofertă
Pentru eliminarea unei oferte publicate, folosește deleteProperty cu identificatorul ofertei. După ștergere, nu mai trimite fișiere pentru acea ofertă.
Sincronizarea fișierelor
syncFiles păstrează pe ofertă doar fișierele transmise în lista FILE_IDS. Operația este utilă când sistemul sursă este considerat sursa finală de adevăr pentru galeria ofertei.
Folosește syncFiles cu atenție: fișierele care nu apar în lista transmisă pot fi eliminate din galeria ofertei.
Sincronizarea canalului
syncChannel declanșează sincronizarea canalului pentru oferta indicată. Folosește operația după modificări care trebuie propagate explicit către canalul de publicare.
Retrimiterea datelor
Pentru o sincronizare stabilă, retrimiterile trebuie să păstreze aceiași identificatori:
- același
ID_LOCALpentru ofertă; - același
FILE_IDpentru același fișier; - aceeași valoare
AGENTIApentru agenția autorizată.
Dacă identificatorii se schimbă, API-ul poate interpreta datele ca entități noi, nu ca actualizări.
Pentru operațiile disponibile, vezi Operații API. Pentru formatul fișierelor, vezi Fișiere media.