আপনার ব্যাচ ফিডে, একটি সত্তার সংস্করণ ফিডের খামে dateModified
ক্ষেত্রের মাধ্যমে নির্ধারিত হয়:
{
"@context": "http://schema.googleapis.com",
"dateModified": "2018-12-28T06:30:00:123-07:00",
"@type": "DataFeed",
"dataFeedElement": [
/* All the items that are part of this feed go here */
]
}
ফিল্ড dataFeedElement
এলিমেন্টে তালিকাভুক্ত সমস্ত সত্তার একই টাইমস্ট্যাম্প থাকবে, যেমন খামে তালিকাভুক্ত করা হয়েছে।
উদাহরণস্বরূপ, আপনার দুটি সত্তার সাথে নিম্নলিখিত ফিড থাকতে পারে:
{
"@context": "http://schema.googleapis.com",
"@type": "DataFeed",
"dateModified": "2018-12-28T06:30:00:123-07:00",
"dataFeedElement": [
{
"@type": "Restaurant",
"@id": "http://www.provider.com/somerestaurant",
...
},
{
"@type": "Menu",
"@id": "http://www.provider.com/somerestaurant/menu/1"
...
}
]
}
উভয় মেনু এবং রেস্তোরাঁ সত্তা, একবার প্রাপ্ত এবং প্রক্রিয়া করা হলে, পৃথকভাবে "2018-12-28T06:30:00:123-07:00" হিসাবে সংস্করণ করা হবে৷
ক্রমবর্ধমান আপডেট সহ সংস্করণ
ইনভেন্টরি আপডেট ব্যবহার করে একটি সত্তা পাঠানোর সময়, সংস্করণটি update_time
ক্ষেত্র (একটি যোগ/আপডেট কলের ক্ষেত্রে) বা delete_time
ক্ষেত্র (একটি মুছে ফেলা কলের ক্ষেত্রে) মাধ্যমে সেট করা হয়। যেহেতু এই ক্ষেত্রগুলি ঐচ্ছিক, তাই ডিফল্ট টাইমস্ট্যাম্প সেট করা হয় যখন Google কলটি গ্রহণ করে।
উদাহরণ 1: আপডেট_টাইম স্পষ্টভাবে সেট করা হয়েছে
ধরুন একটি সম্পূর্ণ নতুন রেস্তোরাঁর জন্য 2018-12-28T06:30:10:123-07:00-এ নিম্নলিখিত ক্রমবর্ধমান কলটি গৃহীত হয়েছে৷ "http://www.provider.com/somerestaurant" আইডি সহ সেই সত্তার জন্য এখানে HTTP POST অনুরোধ রয়েছে, ধরে নিলাম যে ডেটা ফিড v1 ইনভেন্টরি স্কিমা ব্যবহার করে:
POST v2/apps/provider-project/entities/http%3A%2F%2Fwww.provider.com%2Fnewrestaurant:push
Host: actions.googleapis.com
Content-Type: application/ld+json
নীচে, JSON পেলোড বডিতে update_time
ক্ষেত্র রয়েছে। "http://www.provider.com/somerestaurant" আইডি সহ সত্তাটির ফলে এই সত্তাটি 6:30:00 হিসাবে সংস্করণ করা হয়েছে এবং এটি প্রাপ্ত হওয়ার সময় নয় (দশ সেকেন্ড পরে 6:30:10 এ):
{
// This envelope is to be used for incremental.
"entity": {
// Note: "data" is not serialized as a string in our example for readability.
"data": "[entity in JSON format serialized as a string]",
"vertical": "FOODORDERING"
},
"update_time":"2018-12-28T06:30:00:123-07:00"
}
উদাহরণ 2: আপডেট_টাইম স্পষ্টভাবে সেট করা হয়েছে
ধরুন একটি সম্পূর্ণ নতুন রেস্তোরাঁর জন্য 2018-12-28T06:30:10:123-07:00-এ নিম্নলিখিত ক্রমবর্ধমান কলটি গৃহীত হয়েছে৷ "http://www.provider.com/somerestaurant" আইডি সহ সেই সত্তার জন্য এখানে HTTP POST অনুরোধ রয়েছে, ধরে নিই যে ফিডটি v1 ইনভেন্টরি স্কিমা ব্যবহার করে:
POST v2/apps/provider-project/entities/http%3A%2F%2Fwww.provider.com%2Fnewrestaurant:push
Host: actions.googleapis.com
Content-Type: application/ld+json
নীচে, JSON পেলোড বডিতে ফিল্ড update_time
নেই । "http://www.provider.com/somerestaurant" আইডি সহ সত্তার ফলে এই সত্তাটিকে 6:30:10 হিসাবে সংস্করণ করা হয়েছে:
{
// This envelope is to be used for incremental.
"entity": {
//Note: "data" is not serialized as a string in our example for readability.
"data": "[entity in JSON format serialized as a string]",
"vertical": "FOODORDERING"
}
}
ব্যাচ এবং ক্রমবর্ধমান মধ্যে সংস্করণ
Google-এ প্রেরিত কোনো সত্তার সর্বশেষ সংস্করণ থাকলেই তা প্রক্রিয়া করা হয় এবং পরিবেশন করা হয়। নোট করুন যে ব্যাচের মাধ্যমে প্রেরিত সত্তাগুলি সাধারণত প্রক্রিয়াকরণের জন্য কয়েক দিন সময় নেয়, যেখানে বর্ধিত API-এর মাধ্যমে প্রেরিত সত্তাগুলি অবিলম্বে প্রক্রিয়া করা হয়৷
সর্বোত্তম অনুশীলন
- আপনার সিস্টেমে সত্তাটি কখন পরিবর্তিত হয়েছিল সেই অনুসারে যথাক্রমে ক্রমবর্ধমান এবং ব্যাচে
update_time
এবংdateModified
ক্ষেত্রগুলি সেট করুন। - যদি একটি ব্যাচ ফিড (ফাইল) একাধিক শীর্ষ-স্তরের সত্তার তালিকা করে (উদাহরণস্বরূপ, আপনি পরিষেবা এবং মেনুগুলির সাথে আপনার রেস্তোরাঁগুলিকে যুক্ত করেন), তাহলে একটি সত্তার ডেটা আপডেট হওয়ার সাথে সাথে টাইমস্ট্যাম্প আপডেট করুন৷
- ক্রমবর্ধমান কলগুলিতে, আমরা দৃঢ়ভাবে সুপারিশ করি যে আপনি স্পষ্টভাবে
update_time
ক্ষেত্র সেট করুন৷ - এটি অপরিহার্য যে একবার একটি বর্ধিত কল করা হলে, সংশ্লিষ্ট ফিড টাইমস্ট্যাম্প (
dateModified
) এছাড়াও আপডেট করা হয় Google এটিকে আবার আনার আগে৷
উদাহরণ
Google একটি সম্পূর্ণ নতুন রেস্তোরাঁর জন্য 2018-12-28 তারিখে সকাল 11 টায় নিম্নলিখিত ফাইলটি নিয়ে আসে:
{
"@context": "http://schema.googleapis.com",
"@type": "DataFeed",
"dateModified": "2018-12-28T06:30:00-07:00",
"dataFeedElement": [
{
"@type": "Restaurant",
"@id": "http://www.provider.com/newrestaurant",
...
},
{
"@type": "Menu",
"@id": "http://www.provider.com/newrestaurant/menu/1"
...
}
{
"@type": "Service",
"@id": "http://www.provider.com/newrestaurant/service/1"
...
}
]
}
এই সত্তাগুলি সফলভাবে প্রক্রিয়া করা হয় এবং "2018-12-28T06:30:00-07:00" হিসাবে সংস্করণ করা হয়। যেহেতু ব্যাচ ফিডগুলি প্রক্রিয়া করতে সময় নেয়, সেগুলি সাধারণত 2 দিন পরে পরিবেশন করা হয়।
তবে 1 PM-এ, অংশীদারের সিস্টেমে রেস্তোরাঁর ফোন নম্বরে একটি আপডেট থাকে, যার ফলে নিম্নলিখিত ক্রমবর্ধমান কল হয়, যা Google 13:05 এ (5 সেকেন্ড পরে) গ্রহণ করে:
POST v2/apps/provider-project/entities/http%3A%2F%2Fwww.provider.com%2Fnewrestaurant:push
Host: actions.googleapis.com
Content-Type: application/ld+json
{
// This envelope is to be used for incremental.
"entity": {
//Note: "data" is not serialized as a string in our example for readability.
"data": "[entity in JSON format serialized as a string]",
"vertical": "FOODORDERING"
},
"update_time":"2018-12-28T13:00:00-07:00"
}
update_time
স্পষ্টভাবে দেওয়া হয়েছে এবং এটি আগের সংস্করণের (একই দিনের 6:30 AM) থেকে বড় (আরও সাম্প্রতিক) তাই রেস্তোরাঁর সত্তাটি এখন "2018-12-28T13:00:00-07:00" হিসাবে সংস্করণ করা হয়েছে " যাইহোক, মেনু এবং পরিষেবা সংস্থাগুলি এখনও "2018-12-28T06:30:00-07:00" হিসাবে সংস্করণ করা হয়েছে৷
একটি ক্রমবর্ধমান কল ছিল, তাই ব্যাচ ফিড নতুন সংশ্লিষ্ট টাইমস্ট্যাম্পের সাথে আপডেট করা হয়। এছাড়াও, সংশ্লিষ্ট পরিবর্তনগুলি প্রাসঙ্গিক সংস্থাগুলিতে প্রয়োগ করা হয় (রেস্তোরাঁর সত্তাটির ফোন নম্বর আপডেট করা আছে)।
{
"@context": "http://schema.googleapis.com",
"@type": "DataFeed",
"dateModified": "2018-12-28T13:00:00-07:00",
"dataFeedElement": [
{
"@type": "Restaurant",
"@id": "http://www.provider.com/newrestaurant",
...
},
{
"@type": "Menu",
"@id": "http://www.provider.com/newrestaurant/menu/1"
...
}
{
"@type": "Service",
"@id": "http://www.provider.com/newrestaurant/service/1"
...
}
]
}
পরের দিন (2018-12-29) রাত 11 টায়, ফিড আবার আনা হয়। রেস্তোরাঁটির এখনও একই সংস্করণ রয়েছে (28 ডিসেম্বরের 1 PM), তাই এই সত্তাটি বাদ দেওয়া হয়েছে এবং বর্তমান সংস্করণটি রাখা হয়েছে। যাইহোক, মেনু এবং পরিষেবা সংস্থাগুলি একটি নতুন সংস্করণের সাথে আপডেট করা হয়েছে।
সাইটম্যাপ টাইমস্ট্যাম্প
সাইটম্যাপে last-modified
প্রতিক্রিয়া শিরোনাম কোনো সত্তার সংস্করণকে প্রভাবিত করে না । Google দ্বারা ফিড আনা হলে এটি প্রভাবিত করে।
সর্বোত্তম অনুশীলন
- সমস্ত ফাইল আপ-টু-ডেট এবং আনার জন্য প্রস্তুত হলেই প্রতিক্রিয়া শিরোনাম আপডেট করুন।
- স্পষ্টভাবে
update_time
এবংdelete_time
ইনক্রিমেন্টাল ব্যবহার করুন। -
update_time
,delete_time
, এবংdateModified
সেট করুন যখন আপনার প্রান্তে ডেটা পরিবর্তন হয়।