Ausgangskanal XML-Feed

IN PROGRESS

Oft ist es wichtig, auf die in der Clearing Station gepflegten Daten zugreifen zu können, um sie anderweitig zu verarbeiten. Hier bietet vioma die Daten auch als "XML-Feed" an, welches alle benötigten Informationen eines Ausgangskanals enthält.

Abfragbar sind die 

  • Hotel Stammdaten
  • Hotel Pauschalen
  • Hotel Zusatzleistungen
  • Hotel Discounts (Bonusprogramm)

Bitte beachten Sie:

Diese Dokumentation behandelt den XML-Feed für die CST 5. Die Dokumentation für den XML-Feed der CST PRO finden Sie hier.

Aufruf

Das XML kann über eine URL aufgerufen werden. Es ist ratsam, das Ergebnis mit (GET-) Parametern einzuschränken um ein schnell zu verarbeitendes Ergebnis zu erhalten.

URL Aufbau

https:// [ Client Subdomain des Hotels ] . [ SSL-Domain ] /xml.php?  [ gewünschte Parameter ]

Das XML ist nur über SSL verfügbar. Wird ein eigenes SSL-Zertifikat werwendet, wird die SSL-Domain mit der Domain ersetzt, bei allen anderen Hotels ist das "viomassl.com".
 

Aufbau

Wenn die "xml.php"-Datei ohne Parameter aufgerufen wird, werden alle Hotels, die auf dem Ausgangskanal publiziert sind, ausgegeben. Bitte beachten Sie, dass je nach Anzahl der Hotels/Pauschalen und Zusatzleistungen das XML sehr groß werden kann (>100MB). Pro Hotel sind die Inhalte in folgender Struktur vorhanden:

<hotels>
	<hotel> 				  	  	  <!-- Hotel node -->
		<data>...</data>			<!-- Hotel Stammdaten -->
  		<packages>...</packages>	<!-- Pauschalen des Hotels -->
		<programs>...</programs> 	<!-- Zusatzleistungen des Hotels -->
		<discounts>...</discounts>	<!-- Discounts des Hotels -->
	</hotel>
</hotels>

Beschreibung der einzelnen Nodes:

Packages

Der Packages-Node erhält alle Informationen über die Pauschalen. Es werden hier nicht alle Nodes beschrieben, viele sind aber selbst erklärend. Benötigen Sie weitere Informationen oder sind Ihnen Nodes unklar, wenden Sie sich bitte an den vioma-Kundenservice.

<package id="1234" url="angebot-1234-time-out-mit-ayurveda.html">
	<info>...</info>
	<timeframe_from>0000-00-00</timeframe_from>
	<timeframe_to>0000-00-00</timeframe_to>
	<avail_from>0000-00-00</avail_from>
	<avail_to>0000-00-00</avail_to>
	<package_name>Time out mit Ayurveda</package_name>
	<package_teaser>Machen Sie doch mal "Time out" und lassen sich mit Ayurveda verwöhnen. Genießen Sie Ihre Zeit im Wellnessbereich mit Badanwendungen und Massagen.</package_teaser>
	<package_description>Machen Sie doch mal "Time out" und lassen sich mit Ayurveda verwöhnen. Genießen Sie Ihre Zeit im Wellnessbereich mit Badanwendungen und Massagen.</package_description>
	<package_image>https://cst-media3.viomassl.com/3353/12345</package_image>
	<package_price>100</package_price>
	<package_default_room_type>12345</package_default_room_type>
	<timeframes-avail>...</timeframes-avail>
	<timeframes-public>...</timeframes-public>
	<indicators/>
	<roomtypes>...</roomtypes>
	<prices>...</prices>
</package>

Auszug aus dem Packages-Node

info/hpa_typePauschalentyp: 1 = Normale Pauschale, 2 = Last-Minute, 3 = Intranet, 4 = Gutscheine, 5 = Day Spa
package_namePauschalenname
package_teaserKurze Beschreibung
package_descriptionLange Beschreibung
package_imageURL zum Bild
package_default_room_typeStandard Zimmertyp
timeframes-availht_from, ht_to: Buchbare Zeiträume
timeframes-publicht_from, ht_to: Anzeigenzeitraum

Roomtypes

Der Roomtypes-Node erhält alle Informationen über die Zimmertypen eines Hotels. Es werden hier nicht alle Nodes beschrieben, viele sind aber selbst erklärend. Benötigen Sie weitere Informationen oder sind Ihnen Nodes unklar, wenden Sie sich bitte an den vioma-Kundenservice.

<roomtypes>
	<roomtype id="12345">
		<data>
			<hrt_alloc_min>1</hrt_alloc_min>
			<hrt_image_panorama>0</hrt_image_panorama>
			<hrt_alloc_max>4</hrt_alloc_max>
			<hrt_alloc_max_childs>6</hrt_alloc_max_childs>
			<hrt_name>Juniorsuite Birke</hrt_name>
			<hrt_hotel>3353</hrt_hotel>
			<hrt_room_allocate>0</hrt_room_allocate>
			<hrt_desc_cms>Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtexte. Abgeschieden wohnen Sie in Buchstabhausen an der Küste des Semantik, eines großen Sprachozeans. Ein kleines Bächlein namens Duden fließt durch ihren Ort und versorgt sie mit den nötigen Regelialien. Es ist ein paradiesmatisches Land, in dem einem gebratene Satzteile in den Mund fliegen. Nicht einmal von der allmächtigen Interpunktion werden die Blindtexte beherrscht - ein geradezu unorthographi...</hrt_desc_cms>
			<hrt_bookable>1</hrt_bookable>
			<hrt_pms_reference>JSBIRK</hrt_pms_reference>
			<hrt_weekdays_arrival>127</hrt_weekdays_arrival>
			<hrt_group>956</hrt_group>
			<hrt_alloc_min_persons>0</hrt_alloc_min_persons>
			<hrt_room_size>0</hrt_room_size>
			<hrt_catering>20</hrt_catering>
			<hrt_price_from>0</hrt_price_from>
			<hrt_desc_teaser_str>Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtext...</hrt_desc_teaser_str>
			<hrt_public_to>0000-00-00 00:00:00</hrt_public_to>
			<indicators/>
			<hrt_id>14138</hrt_id>
			<hrt_image>https://cst-media2.viomassl.com/3353/12345</hrt_image>
			<hrt_desc_teaser>Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtext...</hrt_desc_teaser>
			<hrt_price_type>1</hrt_price_type>
			<hrt_desc_cms_str>Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtexte. Abgeschieden wohnen Sie in Buchstabhausen an der Küste des Semantik, eines großen Sprachozeans. Ein kleines Bächlein namens Duden fließt durch ihren Ort und versorgt sie mit den nötigen Regelialien. Es ist ein paradiesmatisches Land, in dem einem gebratene Satzteile in den Mund fliegen. Nicht einmal von der allmächtigen Interpunktion werden die Blindtexte beherrscht - ein geradezu unorthographi...</hrt_desc_cms_str>
			<hrt_group_name>Suiten</hrt_group_name>
			<hrt_children_prices>2</hrt_children_prices>
			<hrt_image_plan>0</hrt_image_plan>
			<hrt_price_deposit>0</hrt_price_deposit>
			<hrt_usage_includes_children>0</hrt_usage_includes_children>
			<hrt_quota>1</hrt_quota>
			<hrt_name_str>Juniorsuite Birke</hrt_name_str>
			<hrt_price_cleaning>0</hrt_price_cleaning>
			<hrt_alloc_def>2</hrt_alloc_def>
			<hrt_pms_sync_avail_last_updated>0000-00-00 00:00:00</hrt_pms_sync_avail_last_updated>
			<hrt_rooms>1</hrt_rooms>
			<hrt_shard>1</hrt_shard>
			<hrt_alt_reference/><hrt_least_stays>0
			</hrt_least_stays>
			<hrt_beds>0</hrt_beds>
			<hrt_public_from>0000-00-00 00:00:00</hrt_public_from>
			<hrt_estate_size>0</hrt_estate_size>
			<hrt_order>0</hrt_order>
			<hrt_pms_sync_rate_last_updated>0000-00-00 00:00:00</hrt_pms_sync_rate_last_updated>
		</data>
		<media>...</media>
		<prices>...</prices>
		<pension-prices>...</pension-prices>
	</roomtype>
</roomtypes>

Auszug aus dem Roomtype Node

data/hrt_nameZimmername
data/hrt_desc_teaserKurze Beschreibung
data/hrt_desc_cmsLange Beschreibung
data/hrt_imageURL zum Bild

Programs

Der Programs-Node erhält alle Informationen über die Zusatzleistungen eines Hotels. Es werden hier nicht alle Nodes beschrieben, viele sind aber selbst erklärend. Benötigen Sie weitere Informationen oder sind Ihnen Nodes unklar, wenden Sie sich bitte an den vioma-Kundenservice.

<programs>
	<program id="12345">
		<hp_price_type>0</hp_price_type>
		<hp_desc_teaser>Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtext...</hp_desc_teaser>
		<hp_desc_cms>Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtexte. Abgeschieden wohnen Sie in Buchstabhausen an der Küste des Semantik, eines großen Sprachozeans. Ein kleines Bächlein namens Duden fließt durch ihren Ort und versorgt sie mit den nötigen Regelialien. Es ist ein paradiesmatisches Land, in dem einem gebratene Satzteile in den Mund fliegen. Nicht einmal von der allmächtigen Interpunktion werden die Blindtexte beherrscht - ein geradezu unorthographi...</hp_desc_cms>
		<hp_name_str>Rückenmassage | 70 min</hp_name_str>
		<hp_pms_reference/>
		<hp_duration>0</hp_duration>
		<hp_order>3</hp_order>
		<hp_price>70</hp_price>
		<indicator_id>24253</indicator_id>
		<hp_name>Rückenmassage | 70 min</hp_name>
		<indicators>...</indicators>
		<hp_roomless>0</hp_roomless>
		<hp_bookable>1</hp_bookable>
		<hp_quota_active>0</hp_quota_active>
		<hp_id>45329</hp_id>
		<hp_hotel>3353</hp_hotel>
		<hp_image_alt/>
		<indicator_name>Massagen</indicator_name>
		<hp_quota>0</hp_quota>
		<hp_treatment_length>70</hp_treatment_length>
		<hp_desc_cms_str>Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtexte. Abgeschieden wohnen Sie in Buchstabhausen an der Küste des Semantik, eines großen Sprachozeans. Ein kleines Bächlein namens Duden fließt durch ihren Ort und versorgt sie mit den nötigen Regelialien. Es ist ein paradiesmatisches Land, in dem einem gebratene Satzteile in den Mund fliegen. Nicht einmal von der allmächtigen Interpunktion werden die Blindtexte beherrscht - ein geradezu unorthographi...</hp_desc_cms_str>
		<hp_image>https://cst-media3.viomassl.com/3353/104002</hp_image>
		<hp_pms_reference_block/>
		<hp_desc_teaser_str>Weit hinten, hinter den Wortbergen, fern der Länder Vokalien und Konsonantien leben die Blindtext...</hp_desc_teaser_str>
		<hp_bookable_package>0</hp_bookable_package>
	</program>
</programs>
 
data/hp_nameProgrammname
data/hp_desc_teaserKurze Beschreibung
data/hp_desc_cmsLange Beschreibung
data/hp_imageURL zum Bild

Discounts

Wird das Modul "Bonusprogramm" verwendet, können durch den Parameter "data_discount=1" die Produkte mit hinterlegten Discount-Punkten ausgegeben werden. Zusätzlich erscheint ein weiterer Node mit Informationen zum Bonusprogramm:

<discounts>
	<discount_providers>
		<int-0>
			<cdp_name>vioma-Discount</cdp_name>
			<cdp_company>5</cdp_company>
			<cdp_points_name>vioma-Punkte</cdp_points_name>
			<cdp_points_max>0</cdp_points_max>
			<cdp_points_calculation>0</cdp_points_calculation>
			<cdp_id>1</cdp_id>
			<cdp_points_lifetime_value>0</cdp_points_lifetime_value>
			<cdp_points_lifetime_unit>0</cdp_points_lifetime_unit>
		</int-0>
	</discount_providers>
	<discount_products>
		<int-0>
			<hpdp_action>0</hpdp_action>
			<hpdp_value>0</hpdp_value>
			<hpdp_hotel>3353</hpdp_hotel>
			<hpdp_provider>0</hpdp_provider>
			<hpdp_type>0</hpdp_type>
			<hpdp_id>6</hpdp_id>
			<hpdp_reference>14143</hpdp_reference>
		</int-0>
		<int-1>...</int-1>
	</discounts_products>
</discounts/>

Discount-Providers

Ein Discount-Provider ist ein Anbieter eines Bonusprogramm

cdp_name

Der Name des Bonusprogramm
cdp_companyDie ID des Anbieters
cdp_points_nameDer Name der Punkte
cdp_points_maxMaximal möglicher Punktestand
cdp_points_calculationGleichzeitiges Einlösen und Gutschreiben von Punkten ermöglichen (1)
cdp_idDie ID des Bonusprogramm
cdp_points_lifetime_valueVerfallzeit der Punkte
cdp_points_lifetime_unitEinheit der Verfallszeit (Tage (0) / Wochen (1) / Monate (2) )

Discount-Products

Ein Discount-Product ist ein Discount für ein bestimmtes Produkt

hpdp_action

Der Aktionstyp: Legt fest, ob Rabatte, bzw. Punkte beim Buchen abgezogen (0) oder gutgeschrieben (1) werden

hpdp_valueAnzahl der Punkte
hpdp_hotelHotel ID des ausgebenden Discount-Produktes
hpdp_providerID des Discount-Providers
hpdp_typeProdukttyp: 0 = Zimmer (<roomtypes>), 1 = Zusatzleistungen (<programs>), 2 = Pauschalen (<packages>)
hpdp_idDie ID des Discount-Products
hpdp_referenceDie dem Produkttyp zugehörige ID (hrt_id, hp_id, hpa_id)

Parameter

IN PROGRESS

Sie können durch Übergabe von Parametern, die Ausgabe filtern.

Hotel

Mit dem Parameter "Hotel" können Sie ein bestimmtes Hotel auswählen. Als Wert müssen Sie die Hotel-ID angeben.

Children

Mit dem Parameter "data_childrens=1" erhalten Sie den data-children-Node, der Informationen über die Kinderalter enthält.

Mit dem Parameter "data_gallery=1" erhalten Sie den data-gallery-Node. Dieser Node enthält URLs zu Impressionen des Hotels

Pension types

Mit dem Parameter "data_pension_types=1" erhalten Sie die im Hotel verfügbaren Raten.

Room types

Mit dem Parameter "data_roomtypes=1" erhalten Sie alle Informationen zu den im Hotel verfügbaren Zimmertypen

Roomtype prices

TODO

  • data_roomtype_prices=1

Rooms

TODO

  • data_rooms=1

Rooms Allocations

TODO

  • data_rooms_alloc=1

Seasons

Mit dem Parameter "data_seasons=1" erhalten Sie Saisonzeiten des Hotels

NodeBeschreibung
hs_weekdays

Anreisbare Tag in Bit-Notation.

(1 = Montag, 2 = Dienstag, 4 = Mittwoch, 8 = Donnerstag, 16 = Freitag, 32 = Samstag, 64 = Sonntag)

Beispiele:

Kann man an allen Tagen anreisen, ist der Wert 127.

Kann man nur Montag und Dienstag anreisen, ist der Wert 3.


Mit dem Parameter "data_programs=1" erhalten Sie Zusatzleistungen des Hotels
Programs

Packages

Mit dem Parameter "data_packages=1" erhalten Sie Pauschalen des Hotels

Info texts

TODO

  • data_info_texts=1

Facts

TODO

  • data_facts=1

Discount

Mit dem Parameter "data_discount=1" erhalten Sie Informationen und Produkte zum Bonusprogramm. Bitte beachten Sie, das dass Bonusprogramm ein Zusatzmodul ist und eine gesonderte Lizenz erforderlich ist.

Sprachen

Abhängig von den gepflegten Sprachen in Ihrem Ausgangskanal können Sie den Feed auch in anderen Sprachen erhalten. Hierzu wird der Parameter "set_language" verwendet. Als Wert wird hier ein zweistelliger String nach ISO 639-1 gesetzt. Nicht unterstützte Sprachen werden ignoriert. Bitte beachten Sie, dass alle Inhalte auch in den gewünschten Sprachen gepflegt sein müssen.

Ausgabe von Bildern und anderen statische Dateien

Bilder und andere statische Dateien werden im XML-Feed als "arbitrary binary data" ausgeliefert. 

Für die Verwendung der Dateien gibt es einen eigenen Artikel

Best Practice

Je nach Anzahl der Hotels/Pauschalen und Zusatzleistungen kann das XML sehr groß werden (>100MB). Um ein schnell zu verarbeitendes Ergebnis zu erhalten, empfehlen wir zuerst eine Liste von Hotels ohne Daten abzufragen:

https://cst-client-hotel-blaue-linde.viomassl.com/xml.php?data_childrens=0&data_gallery=0&data_pension_types=0&data_roomtypes=0&data_roomtype_prices=0&data_rooms=0&data_rooms_alloc=0&data_seasons=0&data_programs=0&data_packages=0&data_info_texts=0&data_facts=0&data_discount=0

Anschließend kann man je Hotel die Hotel-Details gesondert abfragen. Hierzu übergibt man die Hotel-Id als Parameter (hotel=xxx):

https://cst-client-hotel-blaue-linde.viomassl.com/xml.php?hotel=3353&data_childrens=1&data_gallery=1&data_pension_types=1&data_roomtypes=1&data_roomtype_prices=1&data_rooms=1&data_rooms_alloc=1&data_seasons=1&data_programs=1&data_packages=1&data_info_texts=1&data_facts=1&data_discount=1

Inhalt