इस गाइड में, Google Drive Activity API में रिस्पॉन्स के मुख्य कॉम्पोनेंट के बारे में बताया गया है. वीडियो में, उदाहरण के साथ-साथ उन्हें समझने का तरीका भी बताया गया है.
ऑब्जेक्ट
DriveActivity
—यह यह मुख्य संसाधन होता है. इसे Drive Activity API पर क्वेरी के ज़रिए भेजा जाता है. यह ऐसा कॉन्टेंट जिसमें एक या उससे ज़्यादा अभिनेताओं ने एक या एक से ज़्यादा ऐसी गतिविधियां की हों जिनका असर एक या टारगेट के तौर पर सेट करें.Timestamp
औरTimeRange
—ये जब गतिविधि की जानकारी दी जाती है, तो उस समय के लिए एक हुआ या इस अवधि के दौरान गतिविधि के शुरू और खत्म होने का समय समय.Actor
—आम तौर पर,Actor
असली उपयोगकर्ता. हालांकि, कभी-कभी, सिस्टम इवेंट किसीAction
जब कोई एडमिन या खुद के रूप में या किसी ऐसे व्यक्ति ने की हो जिसकी पहचान न की जा सके. कॉन्टेंट बनानेActor
मैसेज में, ये सभी मामले शामिल होते हैं.Target
—Target
ऑब्जेक्ट होता है कोई गतिविधि होती है. जैसे, कोई फ़ाइल, फ़ोल्डर, शेयर की गई ड्राइव या फ़ाइल पर की गई टिप्पणी. ध्यान दें कि कार्रवाई के कई टाइप, एक से ज़्यादा तरह के टारगेट के साथ काम करते हैं. इसके लिए उदाहरण के लिए, हालांकिEdit
आम तौर पर Drive की फ़ाइलों पर लागू होता है,Rename
औरCreate
जैसी कार्रवाइयां, Drive पर भी लागू की जा सकती हैं शेयर की गई ड्राइव और फ़ोल्डर. ऐसे टारगेट जो Drive आइटम नहीं हैं उसमें अब भी फ़ोल्डर का संदर्भ हो सकता है. जैसे, किसी ड्राइव या पैरंट फ़ोल्डर का रूट फ़ोल्डर दस्तावेज़ में फ़ाइल टिप्पणी शामिल है.Action
—हरDriveActivity
संसाधन में एक या उससे ज़्यादा संबंधित कार्रवाइयाँ हैं.Action
में पूरी जानकारी होती है, पसंद है event, क्योंकि इसमें न सिर्फ़ इवेंट का पूरा ब्यौरा और टाइप और कार्रवाई के बारे में है, लेकिन साथ ही एकActor
,Target
औरTimestamp
याTimeRange
. रिडंडंसी से बचने के लिए,Action
अपने-आप जानकारी नहीं भरताTarget
,Actor
या टाइम फ़ील्ड, जब वे सभी कॉलम से मेल खाते होंDriveActivity
.ActionDetail
—यहAction
के बारे में खास तरह की और पूरी जानकारी. उदाहरण के लिए,Move
कार्रवाई की जानकारी में, सोर्स और डेस्टिनेशन की जगह की जानकारी औरPermissionChange
से पता चलता है कि अब दस्तावेज़ को कौन और किस तरह से ऐक्सेस कर सकता है खास अधिकारों को ऐक्सेस करना होगा.
रिस्पॉन्स के उदाहरण
किसी उपयोगकर्ता ने Drive में मौजूद एक फ़ाइल में बदलाव किया:
किसी सामान्य DriveActivity
संसाधन में, सिर्फ़ एक कार्रवाई शामिल हो सकती है, जैसे कि कोई उपयोगकर्ता
एक फ़ाइल में बदलाव करना.
"activities":[{
"primary_action_detail":{ "edit":{} },
"actors":[ { "user":{ "known_user":{ "person_name":"people/ACCOUNT_ID" } } } ],
"targets":[ { "drive_item":{ "name":"items/ITEM_ID", "title":"TITLE", "file":{} } } ],
"timestamp":{ "seconds":"1536794657", "nanos":791000000 },
"actions":[ { "detail":{ "edit":{} } } ]
}]
इस आउटपुट में ये वैल्यू शामिल होती हैं:
- ACCOUNT_ID: उपयोगकर्ता का आईडी. इसका इस्तेमाल People API का इस्तेमाल करके, ज़्यादा जानकारी पाएं.
- ITEM_ID: Drive में मौजूद आइटम का आईडी.
- TITLE: Drive में मौजूद आइटम का टाइटल.
ध्यान दें कि इस जवाब के Action
में Actor
, Target
,
या TimeStamp
क्योंकि वे कुल DriveActivity
के समान हैं.
दो उपयोगकर्ताओं ने एक ही फ़ाइल में एक ही समय पर बदलाव किए हैं:
डेटा इकट्ठा करने की सुविधा चालू होने पर, मिलती-जुलती कार्रवाइयों को एक ग्रुप में रखा जाता है
DriveActivity
. इस उदाहरण में, दो मिलती-जुलती कार्रवाइयों को ग्रुप किया गया है: एक Edit
कार्रवाई टाइप पर क्लिक करें.
"activities":[{
"primary_action_detail":{ "edit":{} },
"actors":[
{ "user":{ "known_user":{ "person_name":"people/ACCOUNT_ID_1" } } },
{ "user":{ "known_user":{ "person_name":"people/ACCOUNT_ID_2" } } }
],
"targets":[
{ "drive_item":{ "name":"items/ITEM_ID", "title":"TITLE", "file":{} } }
],
"time_range":{
"start_time":{ "seconds":"1541089823", "nanos":712000000 },
"end_time":{ "seconds":"1541089830", "nanos":830000000 }
},
"actions":[
{
"detail":{ "edit":{} },
"actor":{ "user":{ "known_user":{ "person_name":"people/ACCOUNT_ID_1" } } },
"timestamp":{ "seconds":"1541089830", "nanos":830000000 }
},
{
"detail":{ "edit":{} },
"actor":{ "user":{ "known_user":{ "person_name":"people/ACCOUNT_ID_2" } } },
"timestamp":{ "seconds":"1541089823", "nanos":712000000 }
}
]
}]
इस आउटपुट में ये वैल्यू शामिल होती हैं:
- ACCOUNT_ID_1: पहले उपयोगकर्ता का आईडी. इसका इस्तेमाल इनके साथ किया जा सकता है People API का इस्तेमाल करके ज़्यादा जानकारी पाएं.
- ACCOUNT_ID_2: दूसरे उपयोगकर्ता का आईडी.
- ITEM_ID: Drive में मौजूद आइटम का आईडी.
- TITLE: Drive में मौजूद आइटम का टाइटल.
ध्यान दें कि इस जवाब की कार्रवाइयों में Target
शामिल नहीं है, क्योंकि यह
कुल DriveActivity
की तरह ही है.
उदाहरण यह भी दिखाता है कि ऐप्लिकेशन,
अलग-अलग कार्रवाइयों को देखे बिना, DriveActivity
. जवाब
यह बताता है कि दो उपयोगकर्ताओं ने दी गई फ़ाइल में लंबे समय तक बदलाव किया है.
किसी उपयोगकर्ता ने दो फ़ाइलों को नई डायरेक्ट्री में ले जाया है:
इस उदाहरण में, इकट्ठा करने की रणनीति में दो मिलती-जुलती Move
कार्रवाइयों को ग्रुप किया गया
क्योंकि फ़ाइलों को उसी स्रोत से एक ही गंतव्य पर ले जाया गया था
एक साथ.
"activities":[{
"primary_action_detail":{
"move":{
"added_parents":[ { ... } ]
"removed_parents":[ { ... } ]
}
},
"actors":[ { "user":{ "known_user":{ "person_name":"people/ACCOUNT_ID" } } } ],
"targets":[
{ "drive_item":{ "name":"items/ITEM_ID_1", "title":"TITLE_1", "file":{} } },
{ "drive_item":{ "name":"items/ITEM_ID_2", "title":"* TITLE_2", "file":{} } }
],
"timestamp":{ "seconds":"1541090960", "nanos":985000000 },
"actions":[
{
"detail":{ "move":{ "added_parents":[ { ... } ] "removed_parents":[ { ... } ] } },
"target":{ "drive_item":{ "name":"items/ITEM_ID_1", "title":"TITLE_1", "file":{} } }
},
{
"detail":{ "move":{ "added_parents":[ { ... } ] "removed_parents":[ { ... } ] } },
"target":{ "drive_item":{ "name":"items/ITEM_ID_2", "title":"* TITLE_2", "file":{} } }
}
]
}]
इस आउटपुट में ये वैल्यू शामिल होती हैं:
- ACCOUNT_ID: उपयोगकर्ता का आईडी. इसका इस्तेमाल People API का इस्तेमाल करके, ज़्यादा जानकारी पाएं.
- ITEM_ID_1: Drive के पहले आइटम का आईडी.
- ITEM_ID_2: Drive के दूसरे आइटम का आईडी.
- TITLE_1: Drive में मौजूद पहले आइटम का टाइटल.
- TITLE_2: Drive के दूसरे आइटम का टाइटल.
ध्यान दें कि इस जवाब की कार्रवाइयों में Actor
या TimeStamp
शामिल नहीं हैं
क्योंकि वे कुल DriveActivity
के समान हैं.