Statik bir güncelleme toplu işi oluşturur.
Kullanım notları
CreateOTAFirmware işlemiyle bir güncelleme paketinin doğrulanmasına gerek olmadığını belirtirseniz, CreateOTAStaticUpgradeJob işlemiyle bir güncelleme toplu işi oluşturmadan önce güncelleme paketinin doğrulandığından emin olun. Güncelleme paketini doğrulamak için görev oluşturma hakkında daha fazla bilgi için bkz. CreateOTAVerifyJob.
Her çağrıda en fazla 200 cihaz için güncelleme görevi başlatabilirsiniz. Bir cihaz listesi dosyası kullanırsanız en fazla 1.000.000 cihaz için güncelleme görevi başlatabilirsiniz. Ancak öncelikle GenerateDeviceNameListURL işlemini çağırarak cihaz listesi dosyası için bir URL oluşturmanız gerekir. Ardından ekrandaki yönergeleri izleyerek cihaz listesi dosyasını yükleyebilirsiniz.
Birden çok cihaz için güncelleme görevi başlattığınızda, hedef yazılım sürümüne zaten sahip olan cihazlar atlanır.
Bir cihaz aynı anda yalnızca bir güncelleme görevinde bekleyen veya güncelleniyor durumunda olabilir. Bekleyen veya güncelleniyor durumundaki bir cihaz için başka bir güncelleme görevi başlatırsanız görev başarısız olur.
Tek bir güncelleme paketi kullanarak birden çok statik güncelleme toplu işi oluşturabilirsiniz.
-
MQTT protokolü üzerinden güncelleme paketlerinin indirilmesi yalnızca Çin (Şanghay), Çin (Pekin) ve Çin (Shenzhen) bölgelerinde desteklenir.
、华北2(北京)和华南1(深圳)
Sınırlamalar
Her Alibaba Cloud hesabı saniyede en fazla 20 sorgu (QPS) çalıştırabilir.
Bir Alibaba Cloud hesabının RAM kullanıcıları, hesabın kotasını paylaşır.
Hata ayıklama
İstek parametreleri
| Parametre | Tür | Zorunlu | Örnek | Açıklama |
| Action | String | Evet | CreateOTAStaticUpgradeJob | Gerçekleştirmek istediğiniz işlem. Değeri CreateOTAStaticUpgradeJob olarak ayarlayın. |
| FirmwareId | String | Evet | nx3xxVvFdwvn6dim50PY03**** | Güncelleme paketinin ID değeri. Güncelleme paketi ID değeri, paketi oluşturmak için CreateOTAFirmware işlemini çağırdığınızda döndürülür. ID değerini almak için ListOTAFirmware işlemini de kullanabilirsiniz. |
| ProductKey | String | Evet | a1Le6d0**** | Güncelleme paketinin ait olduğu ürünün ProductKey değeri. ProductKey, IoT Platform'da bir ürünün benzersiz tanımlayıcısıdır. Mevcut Alibaba Cloud hesabınız kapsamındaki tüm ürünlerin bilgilerini IoT Platform konsolunda görüntüleyebilir veya QueryProductList işlemiyle listeleyebilirsiniz. |
| Tag.N.Key | String | Evet | key1 | Güncelleme toplu işi etiketinin anahtarı. Anahtar 1 ila 30 karakter uzunluğunda olmalı ve harf, rakam ile nokta (.) içerebilir. Her güncelleme toplu işine en fazla 10 etiket ekleyebilirsiniz. IoT Platform güncelleme bildirimlerini cihazlara ittiğinde, güncelleme toplu işi etiketleri de cihazlara gönderilir. Not Güncelleme toplu işi etiketleri isteğe bağlıdır. Bir etiket belirtmek istiyorsanız Tag.N.Value ve Tag.N.Key parametrelerini çift halinde belirtmelisiniz. |
| Tag.N.Value | String | Evet | value1 | Güncelleme toplu işi etiketinin değeri. Değer 1 ila 1.024 karakter uzunluğunda olmalıdır. Her güncelleme toplu işine en fazla 10 etiket ekleyebilirsiniz. Tüm güncelleme toplu işlerinin etiket anahtarlarının ve değerlerinin toplam uzunluğu 4.096 karakteri aşamaz. Not Güncelleme toplu işi etiketleri isteğe bağlıdır. Bir etiket belirtmek istiyorsanız Tag.N.Value ve Tag.N.Key parametrelerini çift halinde belirtmelisiniz. |
| TargetSelection | String | Evet | ALL | Güncelleme toplu işinin kapsamı. Geçerli değerler:
|
| IotInstanceId | String | Hayır | iot-cn-0pp1n8t**** | Örneğin ID değeri. Örnek ID değerini IoT Platform konsolundaki Overview sayfasında görüntüleyebilirsiniz. Önemli
Daha fazla bilgi için bkz. Overview. |
| SrcVersion.N | RepeatList | Hayır | V1.0.1 | Güncellenecek yazılım sürümlerinin listesi. Not
|
| ScheduleTime | Long | Hayır | 1577808000000 | Kablosuz (OTA) güncellemeyi başlatma zamanı. Zamanlanmış süre, mevcut zamandan 5 dakika ila 7 gün sonra arasında olmalıdır. Değer 13 basamaklı bir zaman damgası olmalıdır. Bu parametreyi belirtmezseniz güncelleme hemen başlar. |
| RetryInterval | Integer | Hayır | 60 | Bir cihaz güncellenemediğinde uygulanacak otomatik yeniden deneme aralığı. Birim: dakika. Geçerli değerler:
Önemli RetryInterval parametresinin değeri TimeoutInMinutes parametresinin değerinden küçük olmalıdır. Örnekler:
RetryInterval parametresinin değeri 1440 ise TimeoutInMinutes parametresini belirtmemenizi öneririz. Bir güncelleme zaman aşımına uğrarsa yeniden deneme yapılmaz. Bu parametreyi belirtmezseniz yeniden deneme yapılmaz. |
| RetryCount | Integer | Hayır | 1 | Otomatik yeniden deneme sayısı. RetryInterval parametresini belirtirseniz bu parametreyi de belirtmelisiniz. Geçerli değerler:
|
| TimeoutInMinutes | Integer | Hayır | 1440 | Güncelleme için zaman aşımı süresi. Cihaz belirtilen süre içinde güncellenmezse zaman aşımı hatası oluşur. Birim: dakika. Geçerli değerler: 1 ila 1440. Not
Bu parametreyi belirtmezseniz zaman aşımı hataları oluşmaz. |
| MaximumPerMinute | Integer | Hayır | 1000 | Güncelleme paketinin indirme URL'sinin dakika başında itildiği maksimum cihaz sayısı. Geçerli değerler: 10 ila 10000. Varsayılan değer: 10000. |
| GrayPercent | String | Hayır | 33,33 | Aşamalı güncelleme oranı. Değer, string formatında bir yüzde ifadesidir. En fazla üç ondalık basamak içerebilir. Hesaplanan cihaz sayısı aşağıya doğru en yakın tam sayıya yuvarlanır. Aşamalı güncelleme için en az bir cihaz belirtmeniz gerekir. Örneğin, 100 cihaz için aşamalı güncelleme oranını %33,33 olarak ayarlarsanız güncellenecek cihaz sayısı 33 olur. TargetSelection parametresini |
| TargetDeviceName.N | RepeatList | Hayır | deviceName1 | Cihaz adlarının listesi. Not
|
| ScheduleFinishTime | Long | Hayır | 1577909000000 | Güncellemeyi sonlandırma zamanı. Bitiş zamanı, ScheduleTime parametresiyle belirtilen başlangıç zamanından 1 saat ila 30 gün sonra olmalıdır. Değer 13 basamaklı bir zaman damgası olmalıdır. Bu parametreyi belirtmezseniz güncelleme zorla sonlandırılmaz. |
| OverwriteMode | Integer | Hayır | 1 | Önceki güncelleme görevinin üzerine yazılıp yazılmayacağını belirtir. Varsayılan değer: 1. Geçerli değerler:
Not Devam eden güncelleme görevinin üzerine yazılmaz. |
| DnListFileUrl | String | Hayır | https://iotx-ota.oss-cn-shanghai.aliyuncs.com/ota/65dfcda0473be29836dfde585472****/ck2nfzljo00023g7kysg0****.bin | Belirli bir güncelleme gerçekleştirmek için kullanılan cihaz listesi dosyasının URL değeri. Not
|
| NeedPush | Boolean | Hayır | true | Güncelleme görevlerinin IoT Platform'dan cihazlara otomatik olarak itilip itilmeyeceğini belirtir. Varsayılan değer: true. Geçerli değerler:
|
| NeedConfirm | Boolean | Hayır | false | Güncellemenin bir mobil uygulama kullanılarak kontrol edilip edilmeyeceğini belirtir. Mobil uygulamayı ihtiyaca göre geliştirmeniz gerekir. Varsayılan false: true. Geçerli değerler:
|
| GroupId | String | Hayır | CtjzCkNuOx*** | Grubun ID değeri. TargetSelection parametresini GroupId parametresini sorgulamak için QueryDeviceGroupList işlemini kullanabilirsiniz. |
| GroupType | String | Hayır | LINK_PLATFORM | Grubun türü. Geçerli değer: LINK_PLATFORM. TargetSelection parametresini |
| DownloadProtocol | String | Hayır | HTTPS | Güncelleme paketinin indirme protokolü. Geçerli değerler: HTTPS ve MQTT. Varsayılan değer: HTTPS. Cihaz, IoT Platform tarafından itilen güncelleme paketi bilgilerini aldıktan sonra güncelleme paketini indirmek için bu protokolü kullanır. Önemli Güncelleme paketini MQTT üzerinden indirmeniz gerekiyorsa aşağıdaki hususlara dikkat edin:
|
| MultiModuleMode | Boolean | Hayır | false | Cihazın birden çok modülün eşzamanlı güncellemelerini destekleyip desteklemediğini belirtir. Varsayılan değer: false. Geçerli değerler:
Önemli
Daha fazla bilgi için bkz. Overview. |
Yukarıdaki işleme özel istek parametrelerine ek olarak, bu işlemi çağırırken ortak istek parametrelerini de belirtmeniz gerekir. Daha fazla bilgi için bkz. Common parameters.
Yanıt parametreleri
| Parametre | Tür | Örnek | Açıklama |
| Code | String | MissingFirmwareId | Çağrı başarısız olursa döndürülen hata kodu. Daha fazla bilgi için bkz. Error codes. |
| Data | Struct | Çağrı başarılı olursa döndürülen güncelleme toplu işi bilgileri. Daha fazla bilgi için bkz. Data. |
|
| JobId | String | wahVIzGkCMuAUE2gDERM02**** | Güncelleme toplu işinin benzersiz tanımlayıcısı. |
| UtcCreate | String | 2019-11-04T06:22:19.566Z | Güncelleme toplu işinin oluşturulma zamanı. Zaman UTC olarak gösterilir. |
| ErrorMessage | String | FirmwareId is mandatory for this action. | Çağrı başarısız olursa döndürülen hata mesajı. |
| RequestId | String | 29EC7245-0FA4-4BB6-B4F5-5F04818FDFB1 | İsteğin ID değeri. |
| Success | Boolean | true | Çağrının başarılı olup olmadığını gösterir. Geçerli değerler:
|
Örnekler
Örnek istekler
http(s)://iot.cn-shanghai.aliyuncs.com/?Action=CreateOTAStaticUpgradeJob
&FirmwareId=nx3xxVvFdwvn6dim50PY03****
&ProductKey=a1Le6d0****
&Tag.1.Key=key1
&Tag.1.Value=value1
&TargetSelection=ALL
&MaximumPerMinute=1000
&RetryCount=1
&RetryInterval=60
&TimeoutInMinutes=1440
&SrcVersion.1=V1.0.1
&<Common request parameters>
Örnek başarılı yanıtlar
XML formatı
<CreateOTAStaticUpgradeJobResponse>
<Data>
<JobId>wahVIzGkCMuAUE2gDERM02****</JobId>
<UtcCreate>2019-11-04T06:22:19.566Z</UtcCreate>
</Data>
<RequestId>29EC7245-0FA4-4BB6-B4F5-5F04818FDFB1</RequestId>
<Success>true</Success>
</CreateOTAStaticUpgradeJobResponse>
JSON formatı
{
"Data": {
"JobId": "wahVIzGkCMuAUE2gDERM02****",
"UtcCreate": "2019-11-04T06:22:19.566Z"
},
"RequestId": "29EC7245-0FA4-4BB6-B4F5-5F04818FDFB1",
"Success": true
}
Hata kodları
Hata kodlarının listesi için bkz. IoT Platform hata kodları.