Cách phân phối gửi dữ liệu cho giá khách sạn

Nếu hệ thống của bạn có một số hạn chế khiến bạn không sử dụng được cách phân phối Lấy dữ liệu hoặc Lấy dữ liệu có chọn lọc, vui lòng sử dụng biểu mẫu Liên hệ với chúng tôi.

Tổng quan về Chế độ phân phối gửi dữ liệu

Với chế độ phân phối Gửi dữ liệu, bạn có thể gửi thông tin cập nhật gia tăng bất cứ khi nào giá hoặc tình trạng phòng thay đổi.

Hình ảnh sau đây cho thấy quy trình yêu cầu/phản hồi của chế độ phân phối Gửi dữ liệu:

Định cấu hình gửi dữ liệu trong tệp cấu hình của giao thức

Để cập nhật giá bằng chế độ phân phối Gửi dữ liệu, hãy chỉ định các phần tử sau trong Tệp cấu hình giao thức của bạn. Bạn chỉ thực hiện việc này khi lần đầu tiên định cấu hình môi trường của mình để hoạt động với API Giá khách sạn:

  • <Model>: Đặt giá trị của phần tử <Model> thành "push".
  • <WhitelistedIPs>: Liệt kê các địa chỉ IP mà bạn dùng để xác thực thông tin liên lạc giữa bạn và Google. Giá trị của phần tử này có thể là danh sách địa chỉ IP được phân cách bằng dấu chấm phẩy hoặc một dải địa chỉ IP có ký hiệu CIDR. Địa chỉ có dạng xxx.xxx.xxx.xxx/YY.

Ví dụ sau đây hiển thị Tệp cấu hình giao thức cho các đối tác sử dụng tính năng Đẩy:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
  <Model>push</Model>
  <WhiteListedIPs>216.239.32.0/19;64.233.160.0/19</WhiteListedIPs>
</Configuration>

Để biết thêm thông tin, hãy tham khảo Tệp cấu hình giao thức.

Cập nhật giá bằng chế độ Gửi dữ liệu

Để cập nhật dữ liệu bằng chế độ Gửi dữ liệu, hãy gửi thông báo Giao dịch mỗi khi dữ liệu của bạn thay đổi.

Hãy làm theo các nguyên tắc sau khi gửi thông báo Giao dịch:

  • Gửi thông báo đến điểm cuối sau:
    • http://www.google.com/travel/hotels/uploads/price
  • Sử dụng phương thức POST HTTP.
  • Đặt tiêu đề Content-Type là "application/xml".
  • Nội dung của thông báo phải tuân thủ cú pháp của thông báo Giao dịch, như mô tả trong phần Đặt giá (để cập nhật giá) hoặc Xác định siêu dữ liệu về phòng và gói dịch vụ (để cập nhật siêu dữ liệu).
  • Đối với thông tin cập nhật về giá, hãy xác định một phần tử <Result> cho mỗi hành trình bạn muốn cập nhật. Đối với các bản cập nhật siêu dữ liệu, hãy xác định dữ liệu phòng và dữ liệu gói dịch vụ cho từng cơ sở lưu trú đã thay đổi.

Đối với mỗi thông báo Giao dịch nhận được, Google sẽ phản hồi bằng một thông báo HTTP 200 OK từ máy chủ để cho biết thành công. Nếu Google phản hồi bằng mã lỗi HTTP, hãy gửi lại thông báo Giao dịch. Nếu bạn gặp sự cố khi gửi hoặc nhận thông báo, hãy tham khảo bài viết Khắc phục sự cố nguồn cấp dữ liệu.

Bạn nên gửi thông báo Giao dịch cho từng hành trình (tổ hợp cơ sở lưu trú/ngày nhận phòng/thời gian lưu trú) mà giá đã thay đổi. Bạn có thể gửi tối đa 5 thông báo Giao dịch mỗi giây. Google sẽ không chặn tin nhắn được gửi thường xuyên hơn 5 tin nhắn mỗi giây, nhưng tin nhắn của bạn có thể hết thời gian chờ các yêu cầu khác để hoàn tất.

Để giảm lưu lượng truy cập mạng, bạn có thể kết hợp nhiều phần tử <Result> vào một thông báo Giao dịch.

Google thường sẽ xử lý dữ liệu về giá và tình trạng phòng mà bạn cập nhật sau khoảng 5 phút. Giá sẽ bị xóa sau 90 ngày.

Để biết thêm thông tin về cách sử dụng thông báo Giao dịch để cập nhật giá, hãy tham khảo bài viết Đặt giá.

Cập nhật siêu dữ liệu về phòng và gói dịch vụ bằng chế độ gửi dữ liệu

Để cập nhật siêu dữ liệu về phòng và gói dịch vụ, hãy gửi thông tin cập nhật như bình thường. Trong trường hợp này, bạn sẽ gửi một thông báo Giao dịch chứa thông tin mới trong phần tử <RoomData><PackageData>. Các phần tử này là phần tử con của phần tử <PropertyDataSet>.

Để biết thêm thông tin, hãy tham khảo bài viết Xác định siêu dữ liệu về phòng và gói dịch vụ.

Lỗi chế độ phân phối

Nếu bạn gặp lỗi HTTP khi gửi thông báo Giao dịch đến Google, hãy thử gửi lại yêu cầu sau 1, 5 và 20 phút. Nếu sự cố vẫn tiếp diễn sau 3 lần thử lại, hãy ngừng gửi thông báo và liên hệ với người quản lý tài khoản Google của bạn.

Khi bạn liên hệ với người quản lý tài khoản của Google để báo cáo về lỗi HTTP mà bạn nhận được khi gửi thông báo Giao dịch, Google sẽ chạy thử nghiệm cho khoảng 10 khách sạn trong quá trình làm việc với bạn để xác minh rằng nguồn cấp dữ liệu của bạn đã được định cấu hình đúng cách. Nếu thử nghiệm thành công, Google sẽ thu thập dữ liệu của toàn bộ khách sạn được xác định trong Nguồn cấp dữ liệu giá khách sạn. Điều này đảm bảo rằng tải được chấp nhận và giá của bạn vẫn chính xác trong 3 đến 5 ngày. Sau đó, Google sẽ thông báo cho bạn về việc triển khai. Lúc này bạn có thể tham khảo trực tiếp kết quả của mình.

Bạn nên đẩy giá lên theo tần suất nào?

Lý tưởng nhất là gửi mọi thông tin cập nhật ngay khi bạn biết giá đã thay đổi. Nếu không biết thời điểm giá thay đổi, bạn nên cố gắng cập nhật giá thường xuyên nhất có thể. Điều này thường bao gồm nhiều lần gửi một ngày. Thông thường, các hành trình cho ngày và tuần hiện tại được đẩy thường xuyên hơn nhiều.