Board, Masa ve Oda Serisi aygıtlarından HTTP isteği gönderme
list-menuGeri Bildirim?
Bu özellik Board, Masa veya Oda Serisi aygıtlarının bir HTTPs sunucusuyla HTTPs istekleri başlatmasına ve almasına olanak verir. Bu aygıtlar POST, PUT, Yaması, Al ve Sil gibi yöntemleri destekleyerek sunucuyla farklı etkileşimlere olanak sağlar.

Makrolar ile, gerektiğinde bir HTTPs sunucusuna veri gönderebilirsiniz. Hangi verilerin gönderildiğini ve nasıl düzenlendiğinden siz sorumlu olursunuz ve bu da verileri mevcut hizmetlerle kullanmak üzere basit hale getirir.

Güvenlik önlemleri:

  • HTTPs istemci isteği özelliği varsayılan olarak devre dışıdır. Bir sistem yöneticisinin HttpClient >Mode değerini Açık ( xConfiguration HttpClient Mode: On ) olarak ayarlayarak özelliği özellikle etkinleştirmesi gerekir.

  • Sistem yöneticisi HttpClient >AllowHTTP değerini False ( xConfiguration HttpClient AllowHTTP: False ) olarak ayarlayarak HTTP kullanımını engelleyebilir.

  • Sistem yöneticisi, aygıtın veri göndermesine izin verilen HTTPs sunucularının listesini belirtebilir. (Bkz. xCommand HttpClient İzin Ver Ana Bilgisayar Adı komutları.)

  • İşkener HTTP'lerinin isteği sayısı sınırlanmıştır.

Bu makalede başvurulan yapılandırmalar, hem aygıtın web arabiriminden hem de API içinde kullanılabilir. Komutlar API aracılığıyla kullanılabilir. Web arabirimine erişme ve API kullanma hakkında bilgi için Gelişmiş Ayarlar makalesini okuyun.

İzin Verilen HTTP Sunucuları Listesi

Sistem yöneticisi, izin verilen on adede kadar HTTP sunucusu (ana bilgisayar) oluşturmak ve listesini tutmak için bu komutları kullanabilir:

  • xCommand HttpClient Ana Bilgisayar Adı Eklemeye İzin Ver İfadesi: <HTTPs sunucusunun ana bilgisayar adı veya IP adresiyle eşleşenregular ifadesi>

  • xCommand HttpClient Ana Bilgisayar Adı Temizlemeye İzin Ver

  • xCommand HttpClient Ana Bilgisayar Adı Listesine İzin Ver

  • xCommand HttpClient Ana Bilgisayar Adının Kaldırılmasına İzin Ver ID: listedeki bir girişin <ID>

Listede sunucu girişleri varsa, yalnızca bu sunuculara HTTP istekleri gönderebilirsiniz. Ancak, liste boşsa, istekleri herhangi bir HTTPs sunucusuna gönderebilirsiniz.

İzin verilen sunucular listesi ile ilgili kontrol, verilerin güvenli (HTTP) ve güvenli (HTTPS) aktarımı kullanılırken gerçekleştirilir.

Sertifika doğrulaması olmayan HTTPS

HTTPS üzerinden istek gönderirken, cihaz varsayılan olarak HTTPS sunucusunun sertifikasını denetler. HTTPS sunucu sertifikasının geçerli olmadığı takdirde bir hata mesajı alırsınız. Aygıt o sunucuya hiçbir veri göndermez.

Sertifika doğrulamalı HTTPS kullanmanızı öneririz. Sertifika doğrulaması mümkün değilse, sistem yöneticisi HttpClient>AllowInsecureHTTPS değerini Açık ( xConfiguration HttpClient AllowInsecureHTTPS: On ) olarak ayarlayabilir . Bu, sunucunun sertifikasını doğrulamadan HTTPS kullanımına olanak verir.

HTTP istekleri gönderiliyor

HTTPs istemci isteği özelliği etkinleştirildiğinde, bir HTTPs sunucusuna istek göndermek için aşağıdaki komutları kullanabilirsiniz. <ayrılı> POST , PUT,Yama , Al veya Sil'tir.

  • xCommand HttpClient <Method> [AllowInsecureHTTPS: <True/False>] [Üstbilgi: <Header metni>] [ResponseSizeLimit: <Maxim yanıt boyutu>] [ResultMicrosoft: <None/PlainText/Base64>] [Zaman Aşımı: <Timeout süresi>] Url: isteğin gönderilecek <URL>

Üstbilgi alanları eklemek isteğe bağlıdır ve en fazla 20 alan ekleyebilirsiniz.

allowInsecureHTTPS parametresinin etkisi ancak sistem yöneticisi sunucunun sertifikasını doğrulamadan HTTPS kullanımına izin verdiyse geçerlidir. Bu durumda, parametre Doğru olarak ayarlanmışsa sunucu sertifikasını doğrulamadan sunucuya veri gönderebilirsiniz. Parametreyi dışarıda bırakırsanız veya False olarak ayarlarsanız , sertifika doğrulaması başarısız olursa veriler gönderilmez.

ResposenSizeLimit parametresi, aygıtın sunucudan yanıt olarak kabuldığı maksimum yük boyutudur (bayt). Yanıt yükü bu maksimum boyuttan daha büyükse, komut bir durum hatası döndürür. Hata mesajı maksimum dosya boyutunun aşıldığını söylüyor. Ancak, bunun sunucu tarafında bir etkisi yoktur; sunucu isteği düzgün bir şekilde aldı ve işledi.

Http yanıtının sunucudan gelen gövdesinin komut sonucu olarak nasıl biçimlendirilmesine karar vermek için Result<<c1/>parametresini kullanın. Üç seçeneğiniz vardır:

  • Yok : HTTP yanıtının gövdesini komut sonucuna eklemeyin.

  • Temel64 : Base64 gövdeyi sonuca dahil etmeden önce kodlar.

  • Düz Metin : Gövdeyi sonuç içinde düz metin olarak ekleyin. Yanıtta yazdırılamayan harfler varsa, komut, yazdırılamaz verilerle karşılaşıldığını belirten bir ileti ile birlikte bir durum hatası döndürür.

Zaman aşımı süresi (saniye) ayarlamak için Zaman Aşımı parametresini kullanın. İstek bu süre zarfında tamamlanmazsa, API bir hata döndürür.

Komutu verdikten sonra yükü (verileri) doğrudan girin. Hat kesmeleri de dahil olmak üzere girdiğiniz her şey yükün parçasıdır. Bittiğinde, bir hat sonu ("\n") ve ardından yalnızca bir nokta içeren ayrı bir satır sonu (".\n") ile bitirin. Şimdi komut yürütülür ve veriler sunucuya gönderilir.

Örnekler

Bu iki örnekte de mesajın gövdesi JSON'dır. Mesajları alan hizmetin beklenen biçimine bağlı olarak herhangi bir biçim olabilir.

Örnek 1: HTTP POST kullanılarak IoT cihaz kontrolü

Philips Hue Köprüsü'ne bağlı bir ışığın yandığı makro işlevi şunlardır:

 işlev hue_command(veri) { var url = 'http://192.0.2.10/api/'ZXlU4tUtQ23Pjbdyl-kiyCjTs0i5ANDEu1ypJq0-/lights/1/state'; var üstbilgileri = 'Content-Type: application/json'; var command = '{"on":true}'; xapi.command('HttpClient PUT', { 'Url': url, 'Üstbilgi': üstbilgiler }, komut); } 

Komut satırında API kullanarak aynını yapabilirsiniz:

 xcommand HttpClient PUT Üstbilgisi: "content-Type: application/json" URL: "http://192.0.2.10/api/'ZXlU4tUtQ23Pjbdyl-kiyCjTs0i5ANDEu1ypJq0-/lights/1/state" {"on":true} . 

Örnek 2: HTTP POST kullanılarak bir izleme aracına veri gönderimi

 xcommand HttpClient POST Üstbilgi: "content-Type: application/json" URL: "https://mymonitoringserver.com/service/devicemonitoring" {"Message":"Bir kullanıcı bu sistemde sorun olduğunu bildirdi","systemName":"BoardRoom 4. kat","softwareVersion":"ce9.6.0","softwareReleaseDate":"2018-12-13","videoMonitors":"Dual"} . 

Daha Fazla Bilgi

HTTP istemci isteklerinin nasıl kullanılacağı hakkında daha fazla ayrıntıya Özelleştirme kılavuzundan bakın. En son sürümü seçin.

Cisco desteği (TAC), makrolar dahil olmak üzere üçüncü taraf kodun hata ayıklamasını desteklemez. Makrolar ve üçüncü taraf kodu ile ilgili yardıma ihtiyacınız varsa lütfen https://roomos.cisco.com onay kutusunu işaretleyin .

Bu makale yararlı oldu mu?
Bu makale yararlı oldu mu?