كيانات التصفية والترتيب والترحيل
تحذير
سيتم إيقاف Azure Media Services في 30 يونيو 2024. لمزيد من المعلومات، راجع دليل إيقاف AMS.
يناقش هذا الموضوع خيارات استعلام OData ودعم ترقيم الصفحات المتاح عندما تقوم بإدراج كيانات Azure Media Services الإصدار الثالث.
الاعتبارات
- تكون خصائص الكيانات من النوع
Datetime
دائمًا بتنسيق UTC. - يجب ترميز المسافة البيضاء في سلسلة الاستعلام بعنوان URL قبل إرسال الطلب.
عوامل المقارنة
يمكنك استخدام عوامل التشغيل التالية لمقارنة حقل بقيمة ثابتة:
عوامل المساواة:
eq
: اختبر ما إذا كان الحقل يساوي قيمة ثابتة.ne
: اختبر ما إذا كان الحقل لا يساوي قيمة ثابتة.
مشغلي الميدان:
gt
: اختبر ما إذا كان الحقل أكبر من قيمة ثابتة.lt
: اختبر ما إذا كان الحقل أقل من قيمة ثابتة.ge
: اختبر ما إذا كان الحقل أكبر من أو يساوي قيمة ثابتة.le
: اختبر ما إذا كان الحقل أقل من أو يساوي قيمة ثابتة.
عامل التصفية
استخدم $filter
لتوفير معلمة عامل تصفية OData للعثور على الكائنات التي تهتم بها فقط.
يقوم مثال REST التالي بتصفية alternateId
قيمة الأصل:
GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mediaresources/providers/Microsoft.Media/mediaServices/amstestaccount/assets?api-version=2018-07-01&$filter=properties/alternateId%20eq%20'unique identifier'
مثال #C التالي يقوم بالتصفية في تاريخ إنشاء الأصل:
var odataQuery = new ODataQuery<Asset>("properties/created lt 2018-05-11T17:39:08.387Z");
var firstPage = await MediaServicesArmClient.Assets.ListAsync(CustomerResourceGroup, CustomerAccountName, odataQuery);
ترتيب حسب
استخدم $orderby
لفرز الكائنات التي تم إرجاعها بواسطة المعلمة المحددة. على سبيل المثال:
GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mediaresources/providers/Microsoft.Media/mediaServices/amstestaccount/assets?api-version=2018-07-01$orderby=properties/created%20gt%202018-05-11T17:39:08.387Z
لفرز النتائج بترتيب تصاعدي أو تنازلي، قم بإلحاق إما asc
أو desc
باسم الحقل، مفصولة بمسافة. على سبيل المثال: $orderby properties/created desc
.
تخطي الرمز المميز
إذا احتوت استجابة الاستعلام على العديد من العناصر، فتُرجع الخدمة قيمة $skiptoken
(@odata.nextLink
) التي تستخدمها للحصول على الصفحة التالية من النتائج. استخدمه لتصفح مجموعة النتائج بأكملها.
في Media Services الإصدار الثالث، لا يمكنك تكوين حجم الصفحة. يختلف حجم الصفحة حسب نوع الكيان. اقرأ الأقسام الفردية التالية للحصول على التفاصيل.
إذا تم إنشاء الكيانات أو حذفها في أثناء قيامك بالترحيل عبر المجموعة، فإن التغييرات تنعكس في النتائج التي تم إرجاعها (إذا كانت هذه التغييرات في جزء المجموعة الذي لم يتم تنزيله).
تلميح
استخدم دائمًا nextLink
لتعداد المجموعة ولا تعتمد على حجم صفحة معين.
ستكون قيمة nextLink
موجودة فقط في حالة وجود أكثر من صفحة كيانات واحدة.
ضع في اعتبارك المثال التالي حيث يتم استخدام $skiptoken
. تأكد من استبدال amstestaccount باسم حسابك وتعيين قيمة api-version على أحدث إصدار.
إذا طلبت قائمة أصول مثل هذا:
GET https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mediaresources/providers/Microsoft.Media/mediaServices/amstestaccount/assets?api-version=2018-07-01 HTTP/1.1
x-ms-client-request-id: dd57fe5d-f3be-4724-8553-4ceb1dbe5aab
Content-Type: application/json; charset=utf-8
ستحصل على رد مشابه لهذا الرد:
HTTP/1.1 200 OK
{
"value":[
{
"name":"Asset 0","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mediaresources/providers/Microsoft.Media/mediaservices/amstestaccount/assets/Asset 0","type":"Microsoft.Media/mediaservices/assets","properties":{
"assetId":"00000000-0000-0000-0000-000000000000","created":"2018-12-11T22:12:44.98Z","lastModified":"2018-12-11T22:15:48.003Z","container":"asset-00000000-0000-0000-0000-0000000000000","storageAccountName":"amsacctname","storageEncryptionFormat":"None"
}
},
// lots more assets
{
"name":"Asset 517","id":"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mediaresources/providers/Microsoft.Media/mediaservices/amstestaccount/assets/Asset 517","type":"Microsoft.Media/mediaservices/assets","properties":{
"assetId":"00000000-0000-0000-0000-000000000000","created":"2018-12-11T22:14:08.473Z","lastModified":"2018-12-11T22:19:29.657Z","container":"asset-00000000-0000-0000-0000-000000000000","storageAccountName":"amsacctname","storageEncryptionFormat":"None"
}
}
],"@odata.nextLink":"https:// management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mediaresources/providers/Microsoft.Media/mediaServices/amstestaccount/assets?api-version=2018-07-01&$skiptoken=Asset+517"
}
يمكنك بعد ذلك طلب الصفحة التالية عن طريق إرسال طلب الحصول على:
https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mediaresources/providers/Microsoft.Media/mediaServices/amstestaccount/assets?api-version=2018-07-01&$skiptoken=Asset+517
يوضح مثال C # التالي كيفية التعداد من خلال جميع محددات مواقع البث في الحساب.
var firstPage = await MediaServicesArmClient.StreamingLocators.ListAsync(CustomerResourceGroup, CustomerAccountName);
var currentPage = firstPage;
while (currentPage.NextPageLink != null)
{
currentPage = await MediaServicesArmClient.StreamingLocators.ListNextAsync(currentPage.NextPageLink);
}
استخدام العوامل المنطقية لتكوين خيارات الاستعلام
تدعم Media Services الإصدار الثالث عوامل التشغيل المنطقية OR وAND.
يتحقق مثال REST التالي من حالة الوظيفة:
https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/qbtest/providers/Microsoft.Media/mediaServices/qbtest/transforms/VideoAnalyzerTransform/jobs?$filter=properties/state%20eq%20Microsoft.Media.JobState'Scheduled'%20or%20properties/state%20eq%20Microsoft.Media.JobState'Processing'&api-version=2018-07-01
يمكنك إنشاء نفس الاستعلام في #C مثل هذا:
var odataQuery = new ODataQuery<Job>("properties/state eq Microsoft.Media.JobState'Scheduled' or properties/state eq Microsoft.Media.JobState'Processing'");
client.Jobs.List(config.ResourceGroup, config.AccountName, VideoAnalyzerTransformName, odataQuery);
خيارات التصفية وترتيب الكيانات
يوضح الجدول التالي كيف يمكنك تطبيق خيارات التصفية والترتيب على كيانات مختلفة:
اسم الكيان | اسم الخاصية | عامل التصفية | الطلب |
---|---|---|---|
الأصول | الاسم | eq , gt , lt , ge , le |
asc وdesc |
properties/alternateId | eq |
||
properties/assetId | eq |
||
خصائص/تم إنشاؤها | eq , gt , lt |
asc وdesc |
|
نُهج مفتاح المحتوى | الاسم | eq , ne , ge , le , gt , lt |
asc وdesc |
خصائص/تم إنشاؤها | eq , ne , ge , le , gt , lt |
asc وdesc |
|
خصائص/وصف | eq , ne , ge , le , gt , lt |
||
خصائص/آخر تعديل | eq , ne , ge , le , gt , lt |
asc وdesc |
|
properties/policyId | eq , ne |
||
الوظائف | الاسم | eq |
asc وdesc |
الخصائص/الحالة | eq , ne |
||
خصائص/تم إنشاؤها | gt , ge , lt , le |
asc وdesc |
|
خصائص/آخر تعديل | gt , ge , lt , le |
asc وdesc |
|
Streaming locators | الاسم | eq , ne , ge , le , gt , lt |
asc وdesc |
خصائص/تم إنشاؤها | eq , ne , ge , le , gt , lt |
asc وdesc |
|
خصائص/وقت الانتهاء | eq , ne , ge , le , gt , lt |
asc وdesc |
|
Streaming policies | الاسم | eq , ne , ge , le , gt , lt |
asc وdesc |
خصائص/تم إنشاؤها | eq , ne , ge , le , gt , lt |
asc وdesc |
|
التحويلات | الاسم | eq |
asc وdesc |
خصائص/تم إنشاؤها | gt , ge , lt , le |
asc وdesc |
|
خصائص/آخر تعديل | gt , ge , lt , le |
asc وdesc |
الحصول على التعليمات والدعم
يمكنك الاتصال بخدمات الوسائط بأسئلة أو اتباع تحديثاتنا بإحدى الطرق التالية:
- س & أ
- موقع Stack Overflow. وضع علامة على الأسئلة باستخدام
azure-media-services
. - @MSFTAzureMediaأو استخدم @AzureSupport لطلب الدعم.
- افتح تذكرة دعم من خلال مدخل Microsoft Azure.