تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
تُرسِل رسائل المعاملات بيانات عن الغرف والأسعار والحزم إلى Google.
هناك نوعان أساسيان من رسائل المعاملات:
بيانات برنامج الرحلة: حدِّد بيانات حزمة الغرف وبرنامج الرحلة، بما في ذلك:
أسعار الفنادق والمستودع: يمكنك ضبط الحد الأدنى لسعر برنامج رحلة يستوفي متطلبات معيّنة. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة تعديل الأسعار.
يمكنك أيضًا إزالة غرفة من المستودع. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة
إزالة المستودع الإعلاني.
حِزم الغرف: يمكنك ضبط أسعار برنامج الرحلة لتشمل هُندسة ملف شخصي
غرفة وحزمة من الخدمات الإضافية. لمزيد من المعلومات، يُرجى الاطّلاع على حِزم الغرف.
تحتفظ Google بنسخة مؤقتة من محتوى رسائل المعاملات لكي تكون الأسعار متوفرة في جميع الأوقات. في بعض الحالات، تحدّد Google أنّ القيم
في ذاكرة التخزين المؤقت غير محدّثة، لذا قد ترسل رسائل <Query>
إضافية (أو في بعض الحالات، طلبات بحث عن الأسعار في الوقت الفعلي)
للحصول على أسعار محدّثة. تتغيّر هذه البيانات عادةً بشكلٍ متكرّر جدًا. لتحديد أسعار رسائل المعاملات ومدى توفّرها، استخدِم <Result>.
البيانات الوصفية للغرف والحزم: تحدّد تفاصيل عن الغرف والحزم،
مثل الأوصاف والصور والحد الأقصى لعدد النزلاء. لا تتغيّر هذه البيانات
كثيرًا. لتحديد البيانات الوصفية لرسائل المعاملات، استخدِم
<PropertyDataSet>. تخزّن Google هذه البيانات الوصفية لكي تتمكّن من الرجوع إليها
من رسائل الأسعار بدلاً من تضمين معلومات متكرّرة عن
الغرف والحزم في كل رسالة. لمزيد من المعلومات، يُرجى الاطّلاع على
تحديد البيانات الوصفية للغرفة والحزمة.
العنصر الجذر لرسالة المعاملات هو <Transaction>. إنّ الرسائل التي تستخدِم العنصر
<Transaction> كعنصر الجذر تتطلّب عنصرًا فرعيًا واحدًا على الأقل. يمكن أن تحتوي رسائل المعاملات على أي عدد من العناصر الفرعية، ما دام إجمالي حجم الرسالة لا يتجاوز 100 ميغابايت.
بغض النظر عن وضع العرض، قد ترسل إليك Google أيضًا طلبات تُعرف باسم
طلبات البحث عن الأسعار في الوقت الفعلي. تبحث رسائل طلبات البحث هذه عن الأسعار استجابةً لبحث
حالي. إذا رددت في الإطار الزمني المحدّد الذي يتراوح عادةً بين بضع مئات من المللي ثانية، يمكن أن يظهر إعلانك في المزاد.
يمكن أن تتطابق نتائجك أيضًا بشكل أفضل مع العميل، بما في ذلك بلده و
نوع جهازه وعدد النزلاء الذين حدّدهم. لمزيد من المعلومات، يمكنك الاطّلاع على
طلبات البحث عن الأسعار المباشرة.
حجم الرسالة
يمكنك تضمين أي مجموعة من تعديلات البيانات في رسالة معاملة واحدة،
ولكن هناك حد أقصى يبلغ 100 ميغابايت لحجم كل رسالة. عادةً ما يكون الحدّ الأقصى لمدة الردّ على جميع طلبات Pull و
Hint هو 100 ثانية. مهلة الانتظار هي حقل
قابل للضبط يمكن لشركة Google تعديله حسب الطلب. تنصح Google بتحديد مهلة 10 دقائق للرسائل الكبيرة جدًا.
لتقليل حجم الرسائل بشكل كبير وتجنُّب المشاكل المحتملة المتعلّقة بحجم الرسائل والوقت المنقضي، استخدِم رسائل المعاملات لتحديد
البيانات الوصفية للغرفة والحزمة مسبقًا.
يمكنك أيضًا إضافة محتوى مضغوط بتنسيق GNU إلى الرسائل من خلال إضافة
Content-Encoding: gzip إلى رؤوس الرسائل.
جميع الحقوق محفوظة. إنّ Java علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eTransaction messages relay data about rooms, prices, and packages to Google, encompassing itinerary details (like pricing and inventory) and room/package metadata (descriptions, photos, etc.).\u003c/p\u003e\n"],["\u003cp\u003eThese messages are delivered via Pull or Changed Pricing modes, with Google occasionally requesting live pricing for real-time search results (except for EEA users due to the new search experience).\u003c/p\u003e\n"],["\u003cp\u003eTransaction messages can combine various data updates, but they're limited to 100MB; pre-defining room/package metadata and using gzip compression can help manage size.\u003c/p\u003e\n"],["\u003cp\u003eGoogle might request updated pricing through additional Query or Live Pricing Queries if its cached data is deemed outdated, ensuring accurate information is displayed.\u003c/p\u003e\n"],["\u003cp\u003eWhen defining pricing and availability within Transaction messages, either \u003ccode\u003e<AllowablePackageIDs>\u003c/code\u003e or \u003ccode\u003e<AllowableRoomIDs>\u003c/code\u003e should be used, but not both, to specify room type and rate plan combinations.\u003c/p\u003e\n"]]],[],null,["# Overview of Transaction messages\n\nTransaction messages send data about rooms, prices, and packages to Google.\nThere are two primary types of Transaction messages:\n\n1. **Itinerary data**: Define Room Bundle and itinerary data including:\n\n - *Hotel prices and inventory* : Set the minimum price for an itinerary that\n meets certain requirements. For more information, see\n [Updating Prices](/hotels/hotel-prices/dev-guide/updating-prices).\n You can also remove a room from inventory. For more information, see\n [Remove inventory](/hotels/hotel-prices/dev-guide/removing-inventory).\n\n - *Room Bundles* : Set the itinerary prices for a combination of a physical\n room and a package of additional services. For more information,\n [Room Bundles](/hotels/hotel-prices/dev-guide/room-bundles).\n Google caches the contents of your Transaction messages so that the prices\n are available at all times. In some cases, Google determines that the values\n in its cache are not up to date, so it might send additional [`\u003cQuery\u003e`](../xml-reference/queries#Query)\n messages (or in some cases, [Live Pricing Queries](/hotels/hotel-prices/dev-guide/query-messages#live_pricing_queries))\n to get updated prices. This data typically changes very frequently. To\n define pricing and availability of Transaction messages, use [`\u003cResult\u003e`](../xml-reference/transaction-messages#Result).\n\n2. **Room and package metadata** : Specifies details about rooms and packages,\n such as a descriptions, photos, and maximum occupancy. This data does not\n change very often. To define metadata Transaction messages, use\n [`\u003cPropertyDataSet\u003e`](../xml-reference/transaction-messages#PropertyDataSet). Google stores this metadata so that you can refer to it\n from your pricing messages rather than include repetitive information about\n rooms and packages in every one. For more information, see\n [Define room and package metadata](/hotels/hotel-prices/dev-guide/room-bundles#metadata).\n\nThe root element of a Transaction message is [`\u003cTransaction\u003e`](../xml-reference/transaction-messages#Transaction). Messages that use\nthe `\u003cTransaction\u003e` element as the root element require at least one of the\nchild elements. Transaction messages can have any number of child elements, as\nlong as the total message size does not exceed 100MB.\n| **Key Point:** Use either `\u003cAllowablePackageIDs\u003e` or `\u003cAllowableRoomIDs\u003e`, but not both. If neither of these elements are defined in the Transaction message, room types can be combined with any rate plan.\n\nFor examples of Transaction messages responding to requests by Google, see\n[Pricing \\& Room Inventory (Transactions) XML Reference](/hotels/hotel-prices/xml-reference/transaction-messages).\n\nDelivery modes\n--------------\n\nThe type and frequency with which you send Transaction messages depends on your\ndelivery mode:\n\n- For the Pull delivery mode, you send Transaction messages when you receive a [`\u003cQuery\u003e`](../xml-reference/queries#Query) from Google.\n- For the Changed Pricing delivery mode, you send a Transaction message after receiving and responding to a [`\u003cHintRequest\u003e`](../xml-reference/queries#hintrequest) and `\u003cQuery\u003e`.\n\nFor more information, see [Pricing Delivery modes](/hotels/hotel-prices/dev-guide/delivery-mode).\n\nLive pricing queries\n--------------------\n\nRegardless of your delivery mode, Google might also send you requests known as\n*Live pricing queries* . These Query messages seek prices in response to a\n*current* search. If you respond within the specified timeframe which is\nusually a few hundred milliseconds, then your ad can appear in the auction.\nYour results can also better match the customer, including their country and\ndevice type, and the number of guests they specified. For more information, see\n[Live pricing queries](/hotels/hotel-prices/dev-guide/query-messages#live_pricing_queries).\n| **Key Point:** Due to the [New Search experience](/search/blog/2024/02/search-experiences-in-eea), Live Query has limited availability for EEA users.\n\nMessage size\n------------\n\nYou can include any combination of data updates in a single Transaction message,\nbut there is a 100MB limit on the size of each message. Typically, all Pull and\nHint Requests have a response time limit of 100 seconds. The timeout is a\nconfigurable field adjustable by Google as requested. Google recommends that you\nset the time-out to 10 minutes for very large messages.\n\nTo greatly reduce message size and potentially avoid issues with message\nsizes and time-outs, use Transaction messages to pre-define your\n[room and package metadata](/hotels/hotel-prices/dev-guide/room-bundles#metadata).\nYou can also add GNU zipped content to messages by adding\n`Content-Encoding: gzip` to the message headers."]]