XML feed projektekhez és alaprajzokhoz

1. Feed Purpose

Az XML feed strukturált adatokat továbbít az ingatlanprojektekhez és a tipikus alaprajzokhoz. Célja, hogy a fogadó rendszer automatikusan létrehozhassa és frissíthesse a projektkártyákat, megjelenítse az árakat, státuszokat, galériákat, szolgáltatásokat, fizetési feltételeket, EOI-t és a fejlesztők marketing promóciós anyagait.

A feed az alaprajzokat összesített formában továbbítja: egy alaprajz-rekord egy tipikus elrendezést és az adott típusból elérhető egységek számát írja le. Ez nem konkrét lakások, irodák vagy telkek listája.

  • realty-feed: az egész XML feed gyökér konténere. Fő ID: —
  • offers: egy projekt vagy komplexum. Fő ID: complex-id
  • layouts: tipikus alaprajz a projekten belül. Fő ID: id
  • payment_plans: egy projekt fizetési opciója. Fő ID: id
  • eoi_item: egy EOI feltétel. Fő ID: —
  • stock: marketingkampány, hír vagy promóciós üzenet a fejlesztőtől. Fő ID: —

1.1 Mi az XML feed

Az XML feed egy strukturált fájl, amely ingatlanprojektek és tipikus alaprajzok adatait tartalmazza. Leírásokat, fotókat, árakat, címeket, státuszokat, műszaki adatokat, szolgáltatásokat és egyéb, az ingatlanok ügynökségi weboldalon vagy katalógusban történő megjelenítéséhez szükséges információkat tartalmaz.

Egyszerűen fogalmazva, az XML feed egy ingatlanadat-folyam, amelyet a fogadó rendszer rendszeresen letölt, beolvas és automatikusan frissíti belőle az ingatlankártyákat.

Az Alnair biztosítja az adatokat. A weboldal fejlesztését, a katalógus fejlesztését, a CRM integrációt és az import logikát az ügyfél vagy az ügyfél technikai csapata kezeli.

1.2 Amire az ügynökségnek szüksége van

Az XML feed használatához az ügynökségnek saját technikai infrastruktúrára van szüksége, amely képes rendszeresen letölteni az XML-t, feldolgozni annak szerkezetét és frissíteni az adatokat a saját rendszerében.

  • Weboldal vagy ingatlankatalógus: az a felület, ahol a feedből érkező projektek és alaprajzok megjelennek.
  • Technikai csapat vagy fejlesztő: az XML letöltésének, feldolgozásának és importálásának beállítása.
  • XML parser: az XML szerkezetének beolvasása és belső adatmodellre alakítása.
  • Import modul: projektek és alaprajzok létrehozása, frissítése és inaktiválása.
  • Ütemező: az import rendszeres futtatása ütemezés szerint, például cron vagy scheduler segítségével.
  • Hibanaplózás: ismeretlen enum értékek, üres mezők és betöltési hibák figyelése.

1.3 Hogyan használja az ügynökség az XML feedet

Egy tipikus munkafolyamat így néz ki:

  1. Az ügynökségi rendszer letölti az XML-t egy személyes webes linkről.
  2. Az XML nyers pillanatképként mentésre kerül diagnosztikához és újrafeldolgozáshoz.
  3. A parser beolvassa a realty-feed, offers, layouts szerkezetet és a beágyazott blokkokat.
  4. Az import modul új projekteket és alaprajzokat hoz létre, vagy frissíti a meglévőket.
  5. Az új feedből eltűnő objektumok inaktívként kerülnek megjelölésre.
  6. Az ügynökségi weboldal naprakész projektkártyákat, árakat, galériákat és státuszokat jelenít meg.

Fő integrációs lehetőségek:

  • Automatikus frissítések: a projektek és alaprajzok manuális beavatkozás nélkül frissülnek.
  • Ingatlanoldal létrehozása: a feed adatait projekt- és alaprajzkártyákhoz használja a rendszer.
  • Naprakész árak és státuszok: a weboldal ütemezetten kapja az XML frissítéseket.
  • Szűrők és keresés: kerület, ár, ingatlantípus, szobaszám és terület mezők használhatók szűrésre.
  • Média galériák: projektfotók, tematikus galériák és alaprajzok képei jeleníthetők meg a felületen.

2. Általános XML szerkezet

<realty-feed>
  <generation-date>2026-06-17T12:06:39+04:00</generation-date>
  <offers>...</offers>
  <offers>...</offers>
</realty-feed>

  • realty-feed: objektum. A feed gyökérblokkja.
  • generation-date: dátum és idő. Az XML generálásának dátuma és ideje. Az adatok frissességének ellenőrzésére szolgál.
  • offers: objektum[]. Projektek vagy komplexumok listája. Minden offers blokk tartalmazza a projekt adatait és az alaprajzait.

2.1 Feed hozzáférés és letöltési korlátok

A feedet az ügyfél személyes webes linken keresztül kapja meg. A link egyedi az ügyfél számára, és a fogadó rendszer ezt használja az XML automatikus letöltésére.

A személyes link az Alnair fiókban érhető el az adminisztrátor számára. Az adminisztrátor továbbíthatja ezt a linket az ügyfél technikai csapatának az import beállításához.

  • Hozzáférés típusa: személyes webes link. Egyedi XML feed URL az ügyfél számára.
  • Hol érhető el a link: Alnair fiók. A link az ügyfél adminisztrátora számára elérhető.
  • Feed frissítési gyakorisága: 4 óránként. Az XML adatok az Alnair oldalon 4 óránként frissülnek.
  • Minimális letöltési intervallum: óránként legfeljebb egyszer. A fogadó rendszer nem kérheti le a feedet óránál gyakrabban.
  • Korlát túllépése: hozzáférés blokkolása. Túl gyakori kérések esetén a feed hozzáférés ideiglenesen blokkolható.

Javasolt integrációs logika: ütemezett letöltés cron vagy scheduler segítségével, az utoljára kapott XML mentése, és a feed ne minden oldalbetöltéskor kerüljön lekérésre. Az optimális működés az, ha a feedet legfeljebb óránként egyszer tölti le a rendszer, figyelembe véve, hogy az új adatok körülbelül 4 óránként jelennek meg.

3. Projekt: <offers>

Az offers a feed fő eleme. Tartalmazza a projekt leírását, a fejlesztőt, a helyszínt, az építési és értékesítési státuszt, az árakat, a médiát, a szolgáltatásokat, a fizetési terveket, az EOI-t, a marketingpromóciókat és a tipikus alaprajzokat.

<offers>
  <complex-id>5646</complex-id>
  <type>project</type>
  <logo>https://...</logo>
  <photo>https://...</photo>
  <title>...</title>
  <description>...</description>
  <price_on_request>1</price_on_request>
  <status>...</status>
  <construction_start_at>2025-01-01T00:00:00+04:00</construction_start_at>
  <construction_progress>15</construction_progress>
  <planned_completion_at>2027-12-31T00:00:00+04:00</planned_completion_at>
  <predicted_completion_at>2027-12-31T00:00:00+04:00</predicted_completion_at>
  <amenities>...</amenities>
  <developer>...</developer>
  <city>Dubai</city>
  <address>...</address>
  <latitude>25.000000</latitude>
  <longitude>55.000000</longitude>
  <districts>...</districts>
  <album>...</album>
  <albums>...</albums>
  <constructions_count>1</constructions_count>
  <for_sale_count>10</for_sale_count>
  <price>...</price>
  <br_prices>...</br_prices>
  <updated_at>2026-06-17T10:53:20+04:00</updated_at>
  <is_sold_out>0</is_sold_out>
  <payment_plans>...</payment_plans>
  <sales_status>...</sales_status>
  <stocks>...</stocks>
  <eoi>...</eoi>
  <service_charge>...</service_charge>
  <assignment>...</assignment>
  <is_limited_publication>0</is_limited_publication>
  <layouts>...</layouts>
</offers>

  • complex-id: egész szám. Egyedi projektazonosító az Alnairban. Külső projektazonosítóként használandó upserthez.
  • type: enum. A felső szintű entitás típusa: project vagy compound. A nyers értéket tárolja, és felső szintű projektként importálja.
  • logo: url. Projektlogó. Brandinghez jelenítse meg, ne borítóképként használja.
  • photo: url. Fő projektkép / borítókép. Borítóképként és hero képként használható.
  • title: lokalizált objektum. A projekt neve en/ru/ar nyelven. Az interfész nyelvének megfelelően jelenítendő meg.
  • description: lokalizált HTML. A projekt leírása en/ru/ar nyelven. Biztonságosan jelenítendő meg; a HTML CDATA-n belül van.
  • price_on_request: 0/1. Ár-elrejtési jelző. Ha 1, „Ár kérésre” jelenjen meg.
  • status: objektum. Építési státusz. Ne keverje össze a sales_status-szal.
  • construction_start_at: dátum és idő. Az építkezés kezdete. Jelenítse meg, ha ki van töltve.
  • construction_progress: tizedes szám. Az építkezés készültségi százaléka. Százalékként jelenítendő meg.
  • planned_completion_at: dátum és idő. A projekt tervezett befejezési dátuma. Átadási dátumként használható.
  • predicted_completion_at: dátum és idő. Várható befejezési dátum. Frissített befejezési dátumként használható.
  • amenities: objektum. Projekt szolgáltatásai és jellemzői. Kulcs szerint leképezendő.
  • developer: objektum. Projektfejlesztő. A nevet és logót tárolja.
  • city / address: szöveg. A projekt városa és címe. Helyadatokhoz használandó.
  • latitude / longitude: tizedes szám. Koordináták. Térképen használandó.
  • districts: objektum. Projektkerületek. Szűrőkhöz és a projektkártyához használandó.
  • album: objektum. Fő, nem kategorizált projektgaléria. Általános galériaként jelenítendő meg.
  • albums: objektum. Tematikus projektgalériák. Cím szerint csoportosítandó.
  • for_sale_count: egész szám. Az elérhető egységek száma a projektben. Elérhetőségként megjeleníthető.
  • price: objektum. Általános projekt ársáv. Elrejtendő, ha price_on_request=1.
  • br_prices: objektum[]. Árlista hálószobaszám vagy kategória szerint. Szűrőkhöz és listázáshoz használandó.
  • updated_at: dátum és idő. A projekt frissítésének dátuma. Szinkronizáláshoz használandó.
  • is_sold_out: 0/1. Eladva jelző. A sales_status-szal együtt használandó.
  • payment_plans: objektum[]. A fejlesztő fizetési opciói. Fizetési lehetőségként jelenítendő meg.
  • sales_status: lokalizált objektum. A projekt értékesítési státusza. Meghatározza az értékesítési szakaszt.
  • stocks: objektum. Marketingkampányok és promóciós üzenetek a fejlesztőtől. Promóciós blokkként jelenítendő meg.
  • eoi: objektum. Érdeklődési nyilatkozat. Csak Presale (EOI) esetén jelenítendő meg.
  • service_charge: objektum. Közös költség / szolgáltatási díj. Akkor jelenítendő meg, ha az érték ki van töltve.
  • assignment: tizedes szám. Átruházási feltétel. Az üres érték azt jelenti, hogy nincs megadva.
  • is_limited_publication: 0/1. Közzétételi korlátozás. Ha 1, ne jelenjen meg nyilvánosan engedély nélkül.
  • layouts: objektum[]. Tipikus projektalaprajzok. Gyermek entitásként importálandó a projekthez.

4. Lokalizált mezők

A lokalizált mezők szerkezete azonos: az angol, orosz és arab értékek a tagen belül érkeznek.

<title>
  <en>Project Name</en>
  <ru>Название проекта</ru>
  <ar>اسم المشروع</ar>
</title>

  • en: angol érték. Ajánlott tartalék nyelv.
  • ru: orosz érték.
  • ar: arab érték.

Tartalék szabály:

  1. Az interfész nyelvét használja, ha ki van töltve.
  2. Ha a szükséges nyelv üres, használja az en értéket.
  3. Ha az en üres, használja a ru értéket.
  4. Ha a ru üres, használja az ar értéket.
  5. Ha minden érték üres, ne jelenítse meg a mezőt.

5. Státuszok

5.1 Építési státusz: <status>

Az építési státusz a projekt fizikai állapotát mutatja. Nem jelzi az értékesíthetőséget.

<status>
  <key>development_stage_progress</key>
  <en>In Progress</en>
  <ru>Строится</ru>
  <ar>قيد الإنشاء</ar>
</status>

  • Scheduled: a projekt tervezés alatt áll.
  • In Progress: az építkezés folyamatban van.
  • Ready: a projekt elkészült.
  • Stopped: az építkezés leállt.

5.2 Értékesítési státusz: <sales_status>

Az értékesítési státusz a projekt kereskedelmi szakaszát mutatja: bejelentés, előértékesítés, indulás, aktív értékesítés vagy teljesen elkelt állapot.

  • Preliminary Info: korai projektinformációk.
  • Announcement: a projekt bejelentésre került.
  • Presale (EOI): EOI gyűjtés folyamatban van.
  • Launch: értékesítés indulása.
  • On Sale: a projekt megvásárolható.
  • Sold Out: a projekt elkelt.
  • Pending: a státusz frissítésre vár.

6. Fejlesztő és helyszín

Ezek a blokkok a fejlesztő márkájának és a projekt földrajzi elhelyezkedésének megjelenítéséhez szükségesek.

<developer>
  <title>
    <en>Developer Name</en>
    <ru>Developer Name</ru>
    <ar>Developer Name</ar>
  </title>
  <logo>https://...</logo>
</developer>
<city>Dubai</city>
<address>Project Address, Dubai</address>
<latitude>25.01809076</latitude>
<longitude>55.13354525</longitude>
<districts>
  <district>Jumeirah Village Triangle (JVT)</district>
</districts>

  • developer.title: lokalizált objektum. A fejlesztő neve.
  • developer.logo: url. A fejlesztő logója.
  • city: szöveg. Város.
  • address: szöveg. Cím.
  • latitude / longitude: tizedes szám. Koordináták a térképen.
  • districts.district: szöveg[]. Projektkerületek.

7. Árakkal kapcsolatos adatok

7.1 Projektár: <price>

A projekt szintű ár az adott projekten belüli elérhető ajánlatok általános ársávját mutatja.

<price>
  <min>815462</min>
  <max>2089780</max>
  <min_usd>222009</min_usd>
  <max_usd>568942</max_usd>
  <currency>AED</currency>
</price>

  • min: tizedes szám. Minimális ár.
  • max: tizedes szám. Maximális ár.
  • min_usd: tizedes szám. Minimális ár USD-ben.
  • max_usd: tizedes szám. Maximális ár USD-ben.
  • currency: enum. Fő pénznem, általában AED.

Ha a price_on_request = 1, a pontos árak nyilvánosan nem jelennek meg, még akkor sem, ha az ár ki van töltve.

7.2 Ár kategóriánként: <br_prices>

A br_prices a hálószobaszám vagy az ingatlantípus szerint csoportosítja az árakat és területeket. Ez hasznos a szűrőknél és a rövid projektkártyáknál.

<br_prices>
  <key>1</key>
  <count>7</count>
  <min_price>1070564</min_price>
  <max_price>1289674</max_price>
  <min_price_m2>17204</min_price_m2>
  <max_price_m2>18483</max_price_m2>
  <currency>AED</currency>
  <min_area><m2>57.92</m2><ft2>623.45</ft2></min_area>
  <max_area><m2>74.17</m2><ft2>798.36</ft2></max_area>
</br_prices>

  • studio: stúdiók.
  • 1-6: hálószobák száma.
  • villa: villák.
  • townhouse: sorházak.
  • n: nem alkalmazható / nem lakóingatlan kategória / egyéb.

8. Média

A feedben szereplő média több típusra oszlik. Ezeket nem szabad egyetlen galériába összemosni a céljuk figyelmen kívül hagyásával: az egyik kép lehet a projekt borítóképe, a másik a logó, a harmadik promóciós kép, a negyedik pedig alaprajz.

  • logo: offers.logo. Projektlogó. A projekt brandingjében jelenítendő meg; ne használja borítóképként.
  • photo: offers.photo. Fő projektkép / borítókép. A kártyán borítóképként és a projektoldalon hero képként használandó.
  • album.image: offers.album.image. Fő, nem kategorizált projektgaléria. Az általános projektgalériában jelenítendő meg.
  • albums.album.images.image: offers.albums.album.images.image. Tematikus projektgaléria. Az albums.album.title alapján csoportosítandó.
  • developer.logo: offers.developer.logo. Fejlesztő logója. A fejlesztő blokkban jelenítendő meg.
  • stocks.stock.logo: offers.stocks.stock.logo. Marketingkampány kép. A promóciós blokkban jelenítendő meg.
  • layouts.album.image: offers.layouts.album.image. Egy adott tipikus alaprajz galériája. Alaprajz szinten jelenítendő meg.
  • levels_photos.level_photo.image: offers.layouts.levels_photos.level_photo.image. Alaprajz képe szintenként. Alaprajzként használandó.

<photo>https://...</photo>
<album>
  <image>https://...</image>
</album>
<albums>
  <album>
    <title><en>Infrastructure</en><ru>Инфраструктура</ru><ar>...</ar></title>
    <images>
      <image>https://...</image>
    </images>
  </album>
</albums>

  • Project presentation: projektbemutató képek.
  • Construction progress: az építkezés előrehaladását bemutató fotók.
  • Finishing examples: befejezési / kivitelezési minták.
  • Infrastructure: a projekt infrastruktúrája.
  • View: kilátás és környezet.

Nem minden kategóriának kell minden projektben szerepelnie. Ha a kategória címe üres, a képek importálhatók nem kategorizáltként vagy az általános galériába helyezhetők.

A jelenlegi szerkezetben nincs külön history/story XML tag. A hírek, promóciós üzenetek és a projekt marketinganyagai a stocks blokkban érkeznek. Az építési történethez az Construction progress kategória használható, ha az albums-ben megtalálható.

9. Szolgáltatások

Az amenities a projekt szolgáltatásait és jellemzőit írja le. Integrációhoz célszerű a key mezőt használni, a megjelenítéshez pedig a lokalizált értékeket.

<amenities>
  <amenity>
    <key>project_facilities_gym</key>
    <en>Gym</en>
    <ru>Тренажёрный зал</ru>
    <ar>صالة رياضية</ar>
  </amenity>
</amenities>

  • amenities: objektum. Szolgáltatások konténere.
  • amenity: objektum. Egy szolgáltatás.
  • key: enum. Technikai kulcs.
  • en / ru / ar: szöveg. A szolgáltatás neve három nyelven.

A projecet_hotel_license kulcs elírást tartalmaz, de Hotel License-ként kell leképezni. Ajánlott az alias támogatása, és az import ne törjön meg.

10. Marketing promóciók: <stocks>

A stocks marketingkampányok, hírek és promóciós üzenetek a fejlesztőktől. Tartalmazhatnak speciális árakat, kedvezményeket, indulási feltételeket, EOI bejelentéseket, ideiglenes fizetési ajánlatokat és reklámanyagokat. Ez a blokk nem készlet-állomány, és nem határozza meg az egységek elérhetőségét.

<stocks>
  <stock>
    <title>...</title>
    <description>...</description>
    <start_at>2025-06-26T00:00:00+04:00</start_at>
    <end_at/>
    <logo>https://...</logo>
  </stock>
</stocks>

  • stocks: objektum. Marketingüzenetek konténere.
  • stock: objektum. Egy kampány, hírelem vagy promóciós bejelentés.
  • title: lokalizált objektum. Promóció címe.
  • description: lokalizált HTML. Promóció leírása.
  • start_at: dátum és idő. Kezdési dátum.
  • end_at: dátum és idő. Befejezési dátum; lehet üres.
  • logo: url. Promóció képe.

A for_sale_count, layouts.sale_units_count és sales_status mezőket használja az elérhetőség megjelenítésére, ne a stocks blokkot.

11. EOI

Az EOI az Expression of Interest rövidítése. A blokk az előzetes érdeklődés vagy befizetési feltételek leírására szolgál Presale (EOI) státuszú projektek esetén.

<eoi>
  <is_eoi_return>0</is_eoi_return>
  <eoi_items>
    <eoi_item>
      <price>100000</price>
      <percent/>
      <description>
        <en>EOI amount for 2 Bedrooms</en>
        <ru>Сумма EOI для 2-комнатных</ru>
        <ar>...</ar>
      </description>
    </eoi_item>
  </eoi_items>
</eoi>

  • is_eoi_return: 0/1/üres. 0 = nem visszatéríthető, 1 = visszatéríthető, üres = nincs megadva.
  • eoi_items: objektum. EOI feltételek konténere.
  • eoi_item: objektum. Egy EOI feltétel.
  • price: tizedes szám. Fix EOI összeg.
  • percent: tizedes szám. EOI százalék, ha használatos.
  • description: lokalizált objektum. A feltétel leírása.
  • sales_status.en = Presale (EOI) és eoi_items ki van töltve: az EOI jelenjen meg.
  • Minden más sales_status esetén: az EOI legyen elrejtve.

12. Szolgáltatási díj és átruházás

<service_charge>
  <value>172.22</value>
  <unit>sq. m</unit>
  <currency>AED</currency>
</service_charge>
<assignment>40.00</assignment>

  • service_charge.value: a szolgáltatási díj összege. Ha üres, a blokk ne jelenjen meg.
  • service_charge.unit: számítási egység, általában sq. m. Lehet üres.
  • service_charge.currency: pénznem, általában AED. Lehet üres.
  • assignment: az a százalék, amely után az átruházás lehetséges. Üres = az információ nincs megadva, nem korlátozás.

13. Fizetési tervek: <payment_plans>

A payment_plans a fejlesztő által kínált ingatlan fizetési lehetőségeit írja le. Egy projektnek több fizetési terve is lehet. Minden terv a fizetést szakaszokra bontja: foglalás, építés, átadás és átadás utáni időszak. A díjak és további költségek külön kerülnek átadásra, ezért a teljes százalék meghaladhatja a 100%-ot. Például a 104% jelentheti az ingatlan árának 100%-át + 4% DLD díjat.

  • Alapadatok: id, title, currency. A terv azonosítója, címe és pénzneme. A title szabad szöveg, nem enum.
  • Foglalás: on_booking_percent, on_booking_fix, on_booking_payments_count, on_booking_fees. Fizetések és díjak a foglalási szakaszban.
  • Építés: on_construction_percent, on_construction_fix, on_construction_payments_count, on_construction_fees. Fizetések az építés alatt.
  • Átadás: on_handover_percent, on_handover_fix, on_handover_payments_count, on_handover_fees. Fizetések az ingatlan átadásakor.
  • Átadás után: post_handover_percent, post_handover_fix, on_post_handover_payments_count, on_post_handover_fees. Fizetések az átadás után.
  • ROI: roi_percent, roi_fix, roi_payments_count, roi_fees. Mezők ROI vagy garantált jövedelem konstrukciókhoz.
  • Extra díjak: additional, additional_percent, additional_fix, additional_fix_m2. Kiegészítő befizetések, például DLD Fee.
  • Időszakok: period_after_handover, period_after_roi. Ismétlődő fizetések gyakorisága.
  • Összesen: price_total, fees_included_total. A terv teljes összegei és a benne foglalt díjak.

14. Alaprajzok: <layouts>

A layouts egy projekt tipikus alaprajzát írja le. Ez összesített egységtípus, nem konkrét lakás vagy iroda.

  • id: egész szám. Egyedi alaprajzazonosító. Külső alaprajzazonosítóként használandó.
  • title: lokalizált objektum. Az alaprajz neve. Az interfész nyelvének megfelelően jelenítendő meg.
  • project_id: egész szám. Szülő projektazonosító. Kapcsolat az offers.complex-id mezővel.
  • building_name: lokalizált objektum. Az épület neve. Üresen ne jelenítse meg.
  • price_on_request: 0/1. Ár-elrejtési jelző. Ha 1, az ár ne jelenjen meg.
  • area_min / area_max: objektum. Terület tartomány. m2 és ft2.
  • area_balcony_min / area_balcony_max: objektum. Erkély terület tartomány. Lehet üres.
  • type: lokalizált objektum. Ingatlantípus. Lásd az egységtípus referenciát.
  • sale_units_count: egész szám. Az adott típusból elérhető egységek száma. Nem telkek listája.
  • album: objektum. Alaprajzgaléria. Alaprajz szinten jelenítendő meg.
  • levels_photos: objektum. Szintenkénti képek. Alaprajzként használandó.
  • floors_count: egész szám. Szintek száma. 1, 2, 3 stb.
  • rooms_count: lokalizált objektum. Szobaszám. Lásd a szobaszám referenciát.
  • price: objektum. Alaprajz ársáv. Elrejtendő, ha price_on_request=1.
  • is_limited_publication: 0/1. Közzétételi korlátozás. Ha 1, nyilvánosan rejtendő.

15. Enum érték referenciák

  • Project type: project, compound.
  • Sales status: Preliminary Info, Announcement, Presale (EOI), Launch, On Sale, Sold Out, Pending.
  • Construction status: Scheduled, Ready, Stopped, In Progress.
  • Unit type: Apartment, Villa, Townhouse, Duplex, Triplex, Penthouse, Retail, Office, Suite.
  • Rooms count: Studio, 1 BR, 2 BR, 3 BR, 4 BR, 5 BR, 6 BR, 7 BR, 8 BR, NA.
  • BR price key: studio, 1, 2, 3, 4, 5, 6, villa, townhouse, n.
  • Gallery category: Project presentation, Construction progress, Finishing examples, Infrastructure, View.
  • Currency: AED.
  • Service charge unit: sq. m.
  • Boolean flags: 0, 1; egyes mezőknél az üres érték is megengedett.

Ha a feed olyan értéket tartalmaz, amely nincs a referencia listában, az import nem hibázhat. Az értéket nyers értékként kell tárolni, ismeretlenként kell leképezni, és ellenőrzésre naplózni kell.

16. Üres értékek

Az üres érték azt jelenti, hogy „nincs megadva”, nem pedig 0. Az üres tagek így nézhetnek ki: <field/> vagy <field></field>.

  • assignment: az átruházási feltétel nincs megadva.
  • service_charge.value: a szolgáltatási díj nincs megadva.
  • eoi.is_eoi_return: az EOI visszatéríthetősége nincs megadva.
  • area_balcony_min.m2: az erkély területe nincs megadva.
  • description.en: a leírás hiányzik.

17. Megjelenítési szabályok

  • Ár elrejtve: price_on_request = 1. „Ár kérésre” megjelenítése.
  • Ár látható: price_on_request = 0. Ár minimum/maximum megjelenítése.
  • EOI: sales_status.en = Presale (EOI) és az EOI ki van töltve. EOI megjelenítése.
  • EOI nem releváns: sales_status.en != Presale (EOI). EOI elrejtése.
  • Sold out: is_sold_out = 1 vagy sales_status.en = Sold Out. „Elkelt” megjelenítése vagy elrejtés a listából.
  • Korlátozott publikáció: is_limited_publication = 1. Ne publikálja nyilvánosan.
  • Assignment üres: assignment üres. Az assignment blokk ne jelenjen meg.
  • Service charge üres: service_charge.value üres. A service charge ne jelenjen meg.

18. Import szabályok

  • Projekt: keresés complex-id alapján; ha megtalálható, frissítés; ha nem, létrehozás.
  • Alaprajz: keresés layouts.id alapján; kapcsolás a projekthez a project_id révén.
  • Törlés: ha egy objektum eltűnik az új feedből, inaktívként kell jelölni, nem azonnal törölni.
  • Ismeretlen enum: nyers értékként tárolandó, ismeretlenként leképezendő és naplózandó.
  • Üres értékek: ne alakítsa 0-vá külön mezős szabály nélkül.

Projekt mező → Forrás

  • external_project_id: complex-id.
  • raw_offer_type: type.
  • title_*: title.
  • description_*: description.
  • developer_name: developer.title.
  • developer_logo_url: developer.logo.
  • city/address/coordinates: city, address, latitude, longitude.
  • districts: districts.district.
  • construction_status: status.en.
  • sales_status: sales_status.en.
  • price_min / price_max: price.
  • price_on_request: price_on_request.
  • galleries: photo, album, albums.
  • payment_plans: payment_plans.
  • eoi: eoi.
  • stocks: stocks.
  • source_updated_at: updated_at.

Alaprajz mező → Forrás

  • external_layout_id: layouts.id.
  • external_project_id: layouts.project_id.
  • title_*: layouts.title.
  • building_name_*: building_name.
  • unit_type: type.en.
  • rooms_count: rooms_count.en.
  • sale_units_count: sale_units_count.
  • area_min / area_max: area_min, area_max.
  • balcony_min / balcony_max: area_balcony_min, area_balcony_max.
  • floors_count: floors_count.
  • price_min / price_max: price.
  • layout_gallery: album.
  • levels_photos: levels_photos.
  • is_limited_publication: is_limited_publication.