Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu hızlı başlangıçta, IoT hub'ınıza bağlı bir simülasyon cihazını denetlemek için doğrudan bir yöntem kullanacaksınız. IoT Hub, IoT cihazlarınızı buluttan yönetmenize ve depolama veya işleme için buluta yüksek hacimli cihaz telemetrisi almanızı sağlayan bir Azure hizmetidir. IoT hub'ınıza bağlı cihazların davranışını uzaktan değiştirmek için doğrudan yöntemleri kullanabilirsiniz.
Hızlı başlangıçta önceden yazılmış iki .NET uygulaması kullanılır:
Bir hizmet uygulamasından çağrılan doğrudan yöntemlere yanıt veren bir sanal cihaz uygulaması. Doğrudan yöntem çağrılarını almak için bu uygulama IoT hub'ınızdaki cihaza özgü bir uç noktaya bağlanır.
Simülasyon cihazında doğrudan yöntemleri çağıran bir hizmet uygulaması. Bir cihazda doğrudan yöntem çağırmak için bu uygulama IoT hub'ınızdaki hizmet tarafı uç noktasına bağlanır.
Önkoşullar
Etkin aboneliği olan bir Azure hesabı. Ücretsiz bir tane oluşturun.
Bu hızlı başlangıçta çalıştırdığınız iki örnek uygulama C# kullanılarak yazılır. Geliştirme makinenizde .NET SDK 6.0 veya üzeri gerekir.
.NET’ten birden fazla platform için .NET Core SDK’sını indirebilirsiniz.
Aşağıdaki komutu kullanarak geliştirme makinenizde geçerli C# sürümünü doğrulayabilirsiniz:
dotnet --versionGitHub'dan .NET için Microsoft Azure IoT SDK'sını kopyalayın veya indirin. Bu hızlı başlangıç tarafından kullanılan örnek uygulamalar SDK'ya dahil edilmiştir.
Güvenlik duvarınızda 8883 numaralı bağlantı noktasının açık olduğundan emin olun. Bu hızlı başlangıçtaki cihaz örneği, 8883 numaralı bağlantı noktası üzerinden iletişim kuran MQTT protokollerini kullanır. Bu bağlantı noktası bazı kurumsal ve eğitim ağı ortamlarında engellenebilir. Daha fazla bilgi ve bu sorunu geçici olarak çözmenin yolları için MQTT protokolünü kullanarak bir IoT hub'a nasıl iletişim kurulur konusunun IoT Hub'a Bağlanma bölümüne bakın.
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz . Azure Cloud Shell'i kullanmaya başlama.
CLI başvuru komutlarını yerel olarak çalıştırmayı tercih ediyorsanız Azure CLI'yı yükleyin . Windows veya macOS üzerinde çalışıyorsanız Azure CLI’yi bir Docker kapsayıcısında çalıştırmayı değerlendirin. Daha fazla bilgi için bkz. Azure CLI'yi docker kapsayıcısında çalıştırma.
Yerel yükleme kullanıyorsanız az login komutunu kullanarak Azure CLI ile oturum açın. Kimlik doğrulama işlemini tamamlamak için terminalinizde görüntülenen adımları izleyin. Diğer oturum açma seçenekleri için bkz. Azure CLI kullanarak Azure'da kimlik doğrulaması.
İstendiğinde, ilk kullanımda Azure CLI uzantısını yükleyin. Uzantılar hakkında daha fazla bilgi için bkz . Azure CLI ile uzantıları kullanma ve yönetme.
Sürümü ve yüklü bağımlı kütüphaneleri bulmak için az version komutunu çalıştırın. En son sürüme yükseltmek için az upgrade komutunu çalıştırın.
Uyarı
Bu makalede Azure IoT uzantısının azure-iotadlı en yeni sürümü kullanılır. Eski sürüm olarak adlandırılır azure-cli-iot-ext. Bir kerede yalnızca bir sürümünüz yüklü olmalıdır. Şu anda yüklü olan uzantıları doğrulamak için komut az extension list kullanabilirsiniz.
Uzantının eski sürümünü kaldırmak için az extension remove --name azure-cli-iot-ext kullanın.
Uzantının yeni sürümünü eklemek için az extension add --name azure-iot kullanın.
Şu anda hangi uzantıların yüklü olduğunu görmek için kullanın az extension list.
Bu bölümde, IoT hub'ı ve kaynak grubu oluşturmak için Azure CLI'yi kullanacaksınız. Azure kaynak grubu, Azure kaynaklarının dağıtıldığı ve yönetildiği bir mantıksal kapsayıcıdır. IoT hub'ı, IoT uygulamanızla cihazlar arasında çift yönlü iletişim için merkezi bir ileti hub'ı işlevi görür.
Azure aboneliğinizde zaten bir IoT hub'ınız varsa bu bölümü atlayabilirsiniz.
IoT hub'ı ve kaynak grubu oluşturmak için:
CLI uygulamanızı başlatın. Bu makalenin geri kalanında CLI komutlarını çalıştırmak için komut söz dizimini kopyalayın, CLI uygulamanıza yapıştırın, değişken değerlerini düzenleyin ve tuşuna basın
Enter.- Cloud Shell kullanıyorsanız Cloud Shell'i bölünmüş bir tarayıcı penceresinde başlatmak için CLI komutlarında Deneyin düğmesini seçin. Veya Cloud Shell'i ayrı bir tarayıcı sekmesinde açabilirsiniz.
- Azure CLI'yi yerel olarak kullanıyorsanız CLI konsol uygulamanızı başlatın ve Azure CLI'da oturum açın.
azure-iot uzantısını yüklemek veya geçerli sürüme yükseltmek için az extension add komutunu çalıştırın.
az extension add --upgrade --name azure-iotCLI uygulamanızda, bir kaynak grubu oluşturmak için az group create komutunu çalıştırın. Aşağıdaki komut eastus konumunda MyResourceGroup adlı bir kaynak grubu oluşturur.
Uyarı
İsteğe bağlı olarak, farklı bir konum ayarlayabilirsiniz. Kullanılabilir konumları görmek için komutunu çalıştırın
az account list-locations. Bu hızlı başlangıçta örnek komutta gösterildiği gibi eastus kullanılmıştır.az group create --name MyResourceGroup --location eastusIoT hub'ı oluşturmak için az iot hub create komutunu çalıştırın. IoT hub'ı oluşturmak birkaç dakika sürebilir.
YourIoTHubName. Aşağıdaki komutta IoT hub'ınız için seçtiğiniz adı kullanarak bu yer tutucuyu ve çevresindeki köşeli parantezleri değiştirin. IoT hub adı Azure'da genel olarak benzersiz olmalıdır. Bu hızlı başlangıcın geri kalanında yer tutucuyu gördüğünüz her yerde IoT hub'ınızın adını kullanın.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
Hizmet bağlantı dizesini alma
Hizmet uygulamasının hub'a bağlanıp iletileri almasını sağlamak için IoT hub'ınızın hizmet bağlantı dizesine de ihtiyacınız vardır. Hizmet bağlantı dizesi, IoT hub'ınızın tamamına yöneliktir ve önceki bölümde aldığınız cihaz bağlantı dizesinden farklıdır.
Aşağıdaki komut IoT hub'ınız için hizmet bağlantı dizesini alır:
az iot hub connection-string show --policy-name service --hub-name {YourIoTHubName} --output table
Aşağıdaki gibi görünen hizmet bağlantı dizesini not edin:
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
Bu değeri hızlı başlangıcın ilerleyen bölümlerinde kullanacaksınız.
Cihaz benzetimi
Sanal cihaz uygulaması IoT hub'ınızdaki cihaza özgü bir uç noktaya bağlanır, sanal telemetri gönderir ve hub'ınızdan doğrudan yöntem çağrılarını dinler. Bu hızlı başlangıçta, hub'dan doğrudan yöntem çağrısı cihaza telemetri gönderme aralığını değiştirmesini söyler. Simülasyon cihazı, doğrudan yöntemi yürüttükten sonra hub'ınıza bir bildirim gönderir.
Yerel terminal penceresinde SDK'nın kök klasörüne gidin. Ardından iothub\device\samples\getting started\SimulatedDeviceWithCommand klasörüne gidin.
Simülasyon cihazı uygulaması için gerekli paketleri yüklemek için aşağıdaki komutu çalıştırın:
dotnet restoreSimülasyon cihazı uygulamasını derlemek ve çalıştırmak için aşağıdaki komutu çalıştırın.
{DeviceConnectionString}: Bu yer tutucuyu daha önce not ettiğiniz cihaz bağlantı dizesiyle değiştirin.dotnet run -- -c "{DeviceConnectionString}"Aşağıdaki ekran görüntüsünde, simülasyon cihazı uygulaması, IoT hub’ınıza telemetri gönderdiğinde oluşan çıktı gösterilmektedir:
Doğrudan yöntemi çağırma
Hizmet uygulaması, IoT Hub'ınızdaki bir hizmet tarafı uç noktasına bağlanır. Uygulama, IoT hub'ınız aracılığıyla bir cihaza doğrudan yöntem çağrıları yapar ve bildirimleri dinler. IoT Hub hizmet uygulaması genellikle bulutta çalışır.
Başka bir yerel terminal penceresinde SDK'nın kök klasörüne gidin. Ardından iothub\service\samples\getting started\InvokeDeviceMethod klasörüne gidin.
Yerel terminal penceresinde, hizmet uygulaması için gerekli kitaplıkları yüklemek için aşağıdaki komutları çalıştırın:
dotnet buildHizmet uygulamasını derlemek ve çalıştırmak için yerel terminal penceresinde aşağıdaki komutları çalıştırın.
{ServiceConnectionString}: Bu yer tutucuyu daha önce not ettiğiniz IoT Hub hizmeti bağlantı dizesiyle değiştirin.{DeviceName}: Bu yer tutucuyu kaydettiğiniz cihazın adıyla değiştirin.dotnet run -- -c "{ServiceConnectionString}" -d {DeviceName}Aşağıdaki ekran görüntüsü, uygulamanın cihaza doğrudan bir yöntem çağrısı yaparak ve onay alarak elde ettiği sonucu göstermektedir.
Hizmet uygulamasını çalıştırdıktan sonra, sanal cihazı çalıştıran yerel terminal penceresinde bir ileti görürsünüz ve ileti gönderme hızı değişir:
Bu hızlı başlangıçta iki Java uygulaması kullanılır:
- Arka uç uygulamasından çağrılan doğrudan yöntemlere yanıt veren bir sanal cihaz uygulaması.
- Simülasyon cihazında doğrudan yöntemi çağıran bir hizmet uygulaması.
Önkoşullar
Etkin aboneliği olan bir Azure hesabı. Ücretsiz bir tane oluşturun.
Java SE Geliştirme Seti 8. Azure ve Azure Stack için Java uzun vadeli desteği bölümünde Uzun süreli destek bölümünde Java 8'i seçin.
Aşağıdaki komutu kullanarak geliştirme makinenizde java'nın geçerli sürümünü doğrulayabilirsiniz:
java -version-
Aşağıdaki komutu kullanarak geliştirme makinenizde maven'in geçerli sürümünü doğrulayabilirsiniz:
mvn --version GitHub'dan Java için Azure IoT Örnekleri'ni kopyalayın veya indirin.
Güvenlik duvarınızda 8883 numaralı bağlantı noktasının açık olduğundan emin olun. Bu hızlı başlangıçtaki cihaz örneği, 8883 numaralı bağlantı noktası üzerinden iletişim kuran MQTT protokollerini kullanır. Bu bağlantı noktası bazı kurumsal ve eğitim ağı ortamlarında engellenebilir. Daha fazla bilgi ve bu sorunu geçici olarak çözmenin yolları için MQTT protokolünü kullanarak bir IoT hub'a nasıl iletişim kurulur konusunun IoT Hub'a Bağlanma bölümüne bakın.
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz . Azure Cloud Shell'i kullanmaya başlama.
CLI başvuru komutlarını yerel olarak çalıştırmayı tercih ediyorsanız Azure CLI'yı yükleyin . Windows veya macOS üzerinde çalışıyorsanız Azure CLI’yi bir Docker kapsayıcısında çalıştırmayı değerlendirin. Daha fazla bilgi için bkz. Azure CLI'yi docker kapsayıcısında çalıştırma.
Yerel yükleme kullanıyorsanız az login komutunu kullanarak Azure CLI ile oturum açın. Kimlik doğrulama işlemini tamamlamak için terminalinizde görüntülenen adımları izleyin. Diğer oturum açma seçenekleri için bkz. Azure CLI kullanarak Azure'da kimlik doğrulaması.
İstendiğinde, ilk kullanımda Azure CLI uzantısını yükleyin. Uzantılar hakkında daha fazla bilgi için bkz . Azure CLI ile uzantıları kullanma ve yönetme.
Sürümü ve yüklü bağımlı kütüphaneleri bulmak için az version komutunu çalıştırın. En son sürüme yükseltmek için az upgrade komutunu çalıştırın.
Uyarı
Bu makalede Azure IoT uzantısının azure-iotadlı en yeni sürümü kullanılır. Eski sürüm olarak adlandırılır azure-cli-iot-ext. Bir kerede yalnızca bir sürümünüz yüklü olmalıdır. Şu anda yüklü olan uzantıları doğrulamak için komut az extension list kullanabilirsiniz.
Uzantının eski sürümünü kaldırmak için az extension remove --name azure-cli-iot-ext kullanın.
Uzantının yeni sürümünü eklemek için az extension add --name azure-iot kullanın.
Şu anda hangi uzantıların yüklü olduğunu görmek için kullanın az extension list.
IoT hub'ı oluşturma
Bu bölümde, IoT hub'ı ve kaynak grubu oluşturmak için Azure CLI'yi kullanacaksınız. Azure kaynak grubu, Azure kaynaklarının dağıtıldığı ve yönetildiği bir mantıksal kapsayıcıdır. IoT hub'ı, IoT uygulamanızla cihazlar arasında çift yönlü iletişim için merkezi bir ileti hub'ı işlevi görür.
Azure aboneliğinizde zaten bir IoT hub'ınız varsa bu bölümü atlayabilirsiniz.
IoT hub'ı ve kaynak grubu oluşturmak için:
CLI uygulamanızı başlatın. Bu makalenin geri kalanında CLI komutlarını çalıştırmak için komut söz dizimini kopyalayın, CLI uygulamanıza yapıştırın, değişken değerlerini düzenleyin ve tuşuna basın
Enter.- Cloud Shell kullanıyorsanız Cloud Shell'i bölünmüş bir tarayıcı penceresinde başlatmak için CLI komutlarında Deneyin düğmesini seçin. Veya Cloud Shell'i ayrı bir tarayıcı sekmesinde açabilirsiniz.
- Azure CLI'yi yerel olarak kullanıyorsanız CLI konsol uygulamanızı başlatın ve Azure CLI'da oturum açın.
azure-iot uzantısını yüklemek veya geçerli sürüme yükseltmek için az extension add komutunu çalıştırın.
az extension add --upgrade --name azure-iotCLI uygulamanızda, bir kaynak grubu oluşturmak için az group create komutunu çalıştırın. Aşağıdaki komut eastus konumunda MyResourceGroup adlı bir kaynak grubu oluşturur.
Uyarı
İsteğe bağlı olarak, farklı bir konum ayarlayabilirsiniz. Kullanılabilir konumları görmek için komutunu çalıştırın
az account list-locations. Bu hızlı başlangıçta örnek komutta gösterildiği gibi eastus kullanılmıştır.az group create --name MyResourceGroup --location eastusIoT hub'ı oluşturmak için az iot hub create komutunu çalıştırın. IoT hub'ı oluşturmak birkaç dakika sürebilir.
YourIoTHubName. Aşağıdaki komutta IoT hub'ınız için seçtiğiniz adı kullanarak bu yer tutucuyu ve çevresindeki köşeli parantezleri değiştirin. IoT hub adı Azure'da genel olarak benzersiz olmalıdır. Bu hızlı başlangıcın geri kalanında yer tutucuyu gördüğünüz her yerde IoT hub'ınızın adını kullanın.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
Cihaz kaydetme
Bir cihazın bağlanabilmesi için IoT hub’ınıza kaydedilmesi gerekir. Bu bölümde, cihaz kimliği oluşturmak için Azure CLI'yi kullanacaksınız.
IoT hub'ınıza kayıtlı bir cihazınız varsa bu bölümü atlayabilirsiniz.
Cihaz kimliği oluşturmak için:
CLI kabuğunuzda az iot hub device-identity create komutunu çalıştırın. Bu komut cihaz kimliğini oluşturur.
YourIoTHubName. Aşağıdaki komutta IoT hub'ınız için seçtiğiniz adı kullanarak bu yer tutucuyu ve çevresindeki köşeli parantezleri değiştirin. IoT hub adı Azure'da genel olarak benzersiz olmalıdır.
myDevice. Bu makalenin tamamında cihaz kimliği için bu adı kullanabilir veya farklı bir cihaz adı belirtebilirsiniz.
az iot hub device-identity create --device-id myDevice --hub-name {YourIoTHubName}az iot hub device-identity connection-string show komutunu çalıştırın.
az iot hub device-identity connection-string show --device-id myDevice --hub-name {YourIoTHubName}bağlantı dizesi çıktısı aşağıdaki biçimdedir:
HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>bağlantı dizesi güvenli bir konuma kaydedin.
Uyarı
CLI uygulamanızı açık tutun. Bunu sonraki adımlarda kullanacaksınız.
Hizmet bağlantı dizesini alma
Arka uç uygulamasının IoT hub'ınıza bağlanıp iletileri almasını sağlamak için bir hizmet bağlantı dizesine de ihtiyacınız vardır. Aşağıdaki komut IoT hub'ınız için hizmet bağlantı dizesini alır:
YourIoTHubName: Aşağıdaki komuttaki bu yer tutucuyu IoT hub'ınız için seçtiğiniz adla değiştirin.
az iot hub connection-string show --policy-name service --hub-name {YourIoTHubName} --output table
Aşağıdaki gibi görünen hizmet bağlantı dizesini not edin:
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
Bu değeri hızlı başlangıcın ilerleyen bölümlerinde kullanacaksınız. Bu hizmet bağlantı dizesi, önceki adımda not ettiğiniz cihaz bağlantı dizesinden farklıdır.
Cihaz benzetimi
Sanal cihaz uygulaması IoT hub'ınızdaki cihaza özgü bir uç noktaya bağlanır, sanal telemetri gönderir ve hub'ınızdan doğrudan yöntem çağrılarını dinler. Bu hızlı başlangıçta, hub'dan doğrudan yöntem çağrısı cihaza telemetri gönderme aralığını değiştirmesini söyler. Simülasyon cihazı, doğrudan yöntemi yürüttükten sonra hub'ınıza bir bildirim gönderir.
Yerel terminal penceresinde, örnek Java projesinin kök klasörüne gidin. Ardından iot-hub\Quickstarts\simulated-device-2 klasörüne gidin.
src/main/java/com/microsoft/docs/iothub/samples/SimulatedDevice.java dosyasını istediğiniz bir metin düzenleyicisinde açın.
değişkeninin
connStringdeğerini, daha önce not ettiğiniz cihaz bağlantı dizesiyle değiştirin. Ardından değişikliklerinizi SimulatedDevice.java kaydedin.Yerel terminal penceresinde aşağıdaki komutları çalıştırarak gerekli kitaplıkları yükleyin ve simülasyon cihazı uygulamasını oluşturun:
mvn clean packageYerel terminal penceresinde aşağıdaki komutları çalıştırarak simülasyon cihazı uygulamasını çalıştırın:
java -jar target/simulated-device-2-1.0.0-with-deps.jarAşağıdaki ekran görüntüsünde, simülasyon cihazı uygulaması, IoT hub’ınıza telemetri gönderdiğinde oluşan çıktı gösterilmektedir:
Doğrudan yöntemi çağırma
Arka uç uygulaması, IoT Hub'ınızdaki bir hizmet tarafı uç noktasına bağlanır. Uygulama, IoT hub'ınız aracılığıyla bir cihaza doğrudan yöntem çağrıları yapar ve bildirimleri dinler. IoT Hub arka uç uygulaması genellikle bulutta çalışır.
Başka bir yerel terminal penceresinde, örnek Java projesinin kök klasörüne gidin. Ardından iot-hub\Quickstarts\back-end-application klasörüne gidin.
src/main/java/com/microsoft/docs/iothub/samples/BackEndApplication.java dosyasını istediğiniz bir metin düzenleyicisinde açın.
değişkeninin
iotHubConnectionStringdeğerini, daha önce not ettiğiniz hizmet bağlantı dizesiyle değiştirin. Ardından değişikliklerinizi BackEndApplication.java kaydedin.Yerel terminal penceresinde aşağıdaki komutları çalıştırarak gerekli kitaplıkları yükleyin ve arka uç uygulamasını oluşturun:
mvn clean packageYerel terminal penceresinde, arka uç uygulamasını çalıştırmak için aşağıdaki komutları çalıştırın:
java -jar target/back-end-application-1.0.0-with-deps.jarAşağıdaki ekran görüntüsü, uygulamanın cihaza doğrudan bir yöntem çağrısı yaparak ve onay alarak elde ettiği sonucu göstermektedir.
Arka uç uygulamasını çalıştırdıktan sonra, yerel terminal penceresinde simülasyon cihazını çalıştıran bir ileti görürsünüz ve ileti gönderme hızı değişir:
Bu hızlı başlangıçta iki Node.js uygulaması kullanılır:
- Arka uç uygulamasından çağrılan doğrudan yöntemlere yanıt veren bir sanal cihaz uygulaması. Doğrudan yöntem çağrılarını almak için bu uygulama IoT hub'ınızdaki cihaza özgü bir uç noktaya bağlanır.
- Sanal cihazda doğrudan yöntemleri çağıran bir arka uç uygulaması. Bir cihazda doğrudan yöntem çağırmak için bu uygulama IoT hub'ınızdaki hizmete özgü bir uç noktaya bağlanır.
Önkoşullar
Etkin aboneliği olan bir Azure hesabı. Ücretsiz bir tane oluşturun.
-
Aşağıdaki komutu kullanarak geliştirme makinenizde geçerli Node.js sürümünü doğrulayabilirsiniz:
node --version GitHub'dan Azure IoT Node.js örneklerini kopyalayın veya indirin.
Güvenlik duvarınızda 8883 numaralı bağlantı noktasının açık olduğundan emin olun. Bu hızlı başlangıçtaki cihaz örneği, 8883 numaralı bağlantı noktası üzerinden iletişim kuran MQTT protokollerini kullanır. Bu bağlantı noktası bazı kurumsal ve eğitim ağı ortamlarında engellenebilir. Daha fazla bilgi ve bu sorunu geçici olarak çözmenin yolları için MQTT protokolünü kullanarak bir IoT hub'a nasıl iletişim kurulur konusunun IoT Hub'a Bağlanma bölümüne bakın.
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz . Azure Cloud Shell'i kullanmaya başlama.
CLI başvuru komutlarını yerel olarak çalıştırmayı tercih ediyorsanız Azure CLI'yı yükleyin . Windows veya macOS üzerinde çalışıyorsanız Azure CLI’yi bir Docker kapsayıcısında çalıştırmayı değerlendirin. Daha fazla bilgi için bkz. Azure CLI'yi docker kapsayıcısında çalıştırma.
Yerel yükleme kullanıyorsanız az login komutunu kullanarak Azure CLI ile oturum açın. Kimlik doğrulama işlemini tamamlamak için terminalinizde görüntülenen adımları izleyin. Diğer oturum açma seçenekleri için bkz. Azure CLI kullanarak Azure'da kimlik doğrulaması.
İstendiğinde, ilk kullanımda Azure CLI uzantısını yükleyin. Uzantılar hakkında daha fazla bilgi için bkz . Azure CLI ile uzantıları kullanma ve yönetme.
Sürümü ve yüklü bağımlı kütüphaneleri bulmak için az version komutunu çalıştırın. En son sürüme yükseltmek için az upgrade komutunu çalıştırın.
Uyarı
Bu makalede Azure IoT uzantısının azure-iotadlı en yeni sürümü kullanılır. Eski sürüm olarak adlandırılır azure-cli-iot-ext. Bir kerede yalnızca bir sürümünüz yüklü olmalıdır. Şu anda yüklü olan uzantıları doğrulamak için komut az extension list kullanabilirsiniz.
Uzantının eski sürümünü kaldırmak için az extension remove --name azure-cli-iot-ext kullanın.
Uzantının yeni sürümünü eklemek için az extension add --name azure-iot kullanın.
Şu anda hangi uzantıların yüklü olduğunu görmek için kullanın az extension list.
IoT hub'ı oluşturma
Bu bölümde, IoT hub'ı ve kaynak grubu oluşturmak için Azure CLI'yi kullanacaksınız. Azure kaynak grubu, Azure kaynaklarının dağıtıldığı ve yönetildiği bir mantıksal kapsayıcıdır. IoT hub'ı, IoT uygulamanızla cihazlar arasında çift yönlü iletişim için merkezi bir ileti hub'ı işlevi görür.
Azure aboneliğinizde zaten bir IoT hub'ınız varsa bu bölümü atlayabilirsiniz.
IoT hub'ı ve kaynak grubu oluşturmak için:
CLI uygulamanızı başlatın. Bu makalenin geri kalanında CLI komutlarını çalıştırmak için komut söz dizimini kopyalayın, CLI uygulamanıza yapıştırın, değişken değerlerini düzenleyin ve tuşuna basın
Enter.- Cloud Shell kullanıyorsanız Cloud Shell'i bölünmüş bir tarayıcı penceresinde başlatmak için CLI komutlarında Deneyin düğmesini seçin. Veya Cloud Shell'i ayrı bir tarayıcı sekmesinde açabilirsiniz.
- Azure CLI'yi yerel olarak kullanıyorsanız CLI konsol uygulamanızı başlatın ve Azure CLI'da oturum açın.
azure-iot uzantısını yüklemek veya geçerli sürüme yükseltmek için az extension add komutunu çalıştırın.
az extension add --upgrade --name azure-iotCLI uygulamanızda, bir kaynak grubu oluşturmak için az group create komutunu çalıştırın. Aşağıdaki komut eastus konumunda MyResourceGroup adlı bir kaynak grubu oluşturur.
Uyarı
İsteğe bağlı olarak, farklı bir konum ayarlayabilirsiniz. Kullanılabilir konumları görmek için komutunu çalıştırın
az account list-locations. Bu hızlı başlangıçta örnek komutta gösterildiği gibi eastus kullanılmıştır.az group create --name MyResourceGroup --location eastusIoT hub'ı oluşturmak için az iot hub create komutunu çalıştırın. IoT hub'ı oluşturmak birkaç dakika sürebilir.
YourIoTHubName. Aşağıdaki komutta IoT hub'ınız için seçtiğiniz adı kullanarak bu yer tutucuyu ve çevresindeki köşeli parantezleri değiştirin. IoT hub adı Azure'da genel olarak benzersiz olmalıdır. Bu hızlı başlangıcın geri kalanında yer tutucuyu gördüğünüz her yerde IoT hub'ınızın adını kullanın.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
Cihaz kaydetme
Bir cihazın bağlanabilmesi için IoT hub’ınıza kaydedilmesi gerekir. Bu bölümde, cihaz kimliği oluşturmak için Azure CLI'yi kullanacaksınız.
IoT hub'ınıza kayıtlı bir cihazınız varsa bu bölümü atlayabilirsiniz.
Cihaz kimliği oluşturmak için:
CLI kabuğunuzda az iot hub device-identity create komutunu çalıştırın. Bu komut cihaz kimliğini oluşturur.
YourIoTHubName. Aşağıdaki komutta IoT hub'ınız için seçtiğiniz adı kullanarak bu yer tutucuyu ve çevresindeki köşeli parantezleri değiştirin. IoT hub adı Azure'da genel olarak benzersiz olmalıdır.
myDevice. Bu makalenin tamamında cihaz kimliği için bu adı kullanabilir veya farklı bir cihaz adı belirtebilirsiniz.
az iot hub device-identity create --device-id myDevice --hub-name {YourIoTHubName}az iot hub device-identity connection-string show komutunu çalıştırın.
az iot hub device-identity connection-string show --device-id myDevice --hub-name {YourIoTHubName}bağlantı dizesi çıktısı aşağıdaki biçimdedir:
HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>bağlantı dizesi güvenli bir konuma kaydedin.
Uyarı
CLI uygulamanızı açık tutun. Bunu sonraki adımlarda kullanacaksınız.
Hizmet bağlantı dizesini alma
Arka uç uygulamasının IoT hub'ınıza bağlanıp iletileri almasını sağlamak için IoT hub'ınızın hizmet bağlantı dizesine de ihtiyacınız vardır. Aşağıdaki komut IoT hub'ınız için hizmet bağlantı dizesini alır:
YourIoTHubName: Aşağıdaki komuttaki bu yer tutucuyu IoT hub'ınız için seçtiğiniz adla değiştirin.
az iot hub connection-string show \
--policy-name service --hub-name {YourIoTHubName} --output table
Aşağıdaki gibi görünen hizmet bağlantı dizesini not edin:
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
Bu değeri hızlı başlangıcın ilerleyen bölümlerinde kullanacaksınız. Bu hizmet bağlantı dizesi, önceki adımda not ettiğiniz cihaz bağlantı dizesinden farklıdır.
Cihaz benzetimi
Sanal cihaz uygulaması IoT hub'ınızdaki cihaza özgü bir uç noktaya bağlanır, sanal telemetri gönderir ve hub'ınızdan doğrudan yöntem çağrılarını dinler. Bu hızlı başlangıçta, hub'dan doğrudan yöntem çağrısı cihaza telemetri gönderme aralığını değiştirmesini söyler. Simülasyon cihazı, doğrudan yöntemi yürüttükten sonra hub'ınıza bir bildirim gönderir.
Yerel terminal penceresinde, örnek Node.js projesinin kök klasörüne gidin. Ardından iot-hub\Quickstarts\simulated-device-2 klasörüne gidin.
SimulatedDevice.js dosyasını istediğiniz bir metin düzenleyicisinde açın.
değişkeninin
connectionStringdeğerini, daha önce not ettiğiniz cihaz bağlantı dizesiyle değiştirin. Ardından değişikliklerinizi SimulatedDevice.jsolarak kaydedin.Yerel terminal penceresinde aşağıdaki komutları çalıştırarak gerekli kitaplıkları yükleyin ve simülasyon cihazı uygulamasını çalıştırın:
npm install node SimulatedDevice.jsAşağıdaki ekran görüntüsünde, simülasyon cihazı uygulaması, IoT hub’ınıza telemetri gönderdiğinde oluşan çıktı gösterilmektedir:
Doğrudan yöntemi çağırma
Arka uç uygulaması, IoT hub'ınızdaki bir hizmet tarafı uç noktasına bağlanır. Uygulama, IoT hub'ınız aracılığıyla bir cihaza doğrudan yöntem çağrıları yapar ve bildirimleri dinler. IoT Hub arka uç uygulaması genellikle bulutta çalışır.
Başka bir yerel terminal penceresinde, örnek Node.js projesinin kök klasörüne gidin. Ardından iot-hub\Quickstarts\back-end-application klasörüne gidin.
BackEndApplication.js dosyasını istediğiniz bir metin düzenleyicisinde açın.
değişkeninin
connectionStringdeğerini, daha önce not ettiğiniz hizmet bağlantı dizesiyle değiştirin. Ardından değişikliklerinizi BackEndApplication.jsolarak kaydedin.Yerel terminal penceresinde aşağıdaki komutları çalıştırarak gerekli kitaplıkları yükleyin ve arka uç uygulamasını çalıştırın:
npm install node BackEndApplication.jsAşağıdaki ekran görüntüsü, uygulamanın cihaza doğrudan bir yöntem çağrısı yaparak ve onay alarak elde ettiği sonucu göstermektedir.
Arka uç uygulamasını çalıştırdıktan sonra, yerel terminal penceresinde simülasyon cihazını çalıştıran bir ileti görürsünüz ve ileti gönderme hızı değişir:
Bu hızlı başlangıçta iki Python uygulaması kullanılır:
- Arka uç uygulamasından çağrılan doğrudan yöntemlere yanıt veren bir sanal cihaz uygulaması.
- Sanal cihazda doğrudan yöntemleri çağıran bir arka uç uygulaması.
Önkoşullar
Etkin aboneliği olan bir Azure hesabı. Ücretsiz bir tane oluşturun.
Python 3.7+. Desteklenen diğer Python sürümleri için bkz. Azure IoT Cihaz Özellikleri.
GitHub'dan Azure IoT Python örneklerini kopyalayın veya indirin.
Güvenlik duvarınızda 8883 numaralı bağlantı noktasının açık olduğundan emin olun. Bu hızlı başlangıçtaki cihaz örneği, 8883 numaralı bağlantı noktası üzerinden iletişim kuran MQTT protokollerini kullanır. Bu bağlantı noktası bazı kurumsal ve eğitim ağı ortamlarında engellenebilir. Daha fazla bilgi ve bu sorunu geçici olarak çözmenin yolları için MQTT protokolünü kullanarak bir IoT hub'a nasıl iletişim kurulur konusunun IoT Hub'a Bağlanma bölümüne bakın.
Azure Cloud Shell'de Bash ortamını kullanın. Daha fazla bilgi için bkz . Azure Cloud Shell'i kullanmaya başlama.
CLI başvuru komutlarını yerel olarak çalıştırmayı tercih ediyorsanız Azure CLI'yı yükleyin . Windows veya macOS üzerinde çalışıyorsanız Azure CLI’yi bir Docker kapsayıcısında çalıştırmayı değerlendirin. Daha fazla bilgi için bkz. Azure CLI'yi docker kapsayıcısında çalıştırma.
Yerel yükleme kullanıyorsanız az login komutunu kullanarak Azure CLI ile oturum açın. Kimlik doğrulama işlemini tamamlamak için terminalinizde görüntülenen adımları izleyin. Diğer oturum açma seçenekleri için bkz. Azure CLI kullanarak Azure'da kimlik doğrulaması.
İstendiğinde, ilk kullanımda Azure CLI uzantısını yükleyin. Uzantılar hakkında daha fazla bilgi için bkz . Azure CLI ile uzantıları kullanma ve yönetme.
Sürümü ve yüklü bağımlı kütüphaneleri bulmak için az version komutunu çalıştırın. En son sürüme yükseltmek için az upgrade komutunu çalıştırın.
Uyarı
Bu makalede Azure IoT uzantısının azure-iotadlı en yeni sürümü kullanılır. Eski sürüm olarak adlandırılır azure-cli-iot-ext. Bir kerede yalnızca bir sürümünüz yüklü olmalıdır. Şu anda yüklü olan uzantıları doğrulamak için komut az extension list kullanabilirsiniz.
Uzantının eski sürümünü kaldırmak için az extension remove --name azure-cli-iot-ext kullanın.
Uzantının yeni sürümünü eklemek için az extension add --name azure-iot kullanın.
Şu anda hangi uzantıların yüklü olduğunu görmek için kullanın az extension list.
IoT hub'ı oluşturma
Bu bölümde, IoT hub'ı ve kaynak grubu oluşturmak için Azure CLI'yi kullanacaksınız. Azure kaynak grubu, Azure kaynaklarının dağıtıldığı ve yönetildiği bir mantıksal kapsayıcıdır. IoT hub'ı, IoT uygulamanızla cihazlar arasında çift yönlü iletişim için merkezi bir ileti hub'ı işlevi görür.
Azure aboneliğinizde zaten bir IoT hub'ınız varsa bu bölümü atlayabilirsiniz.
IoT hub'ı ve kaynak grubu oluşturmak için:
CLI uygulamanızı başlatın. Bu makalenin geri kalanında CLI komutlarını çalıştırmak için komut söz dizimini kopyalayın, CLI uygulamanıza yapıştırın, değişken değerlerini düzenleyin ve tuşuna basın
Enter.- Cloud Shell kullanıyorsanız Cloud Shell'i bölünmüş bir tarayıcı penceresinde başlatmak için CLI komutlarında Deneyin düğmesini seçin. Veya Cloud Shell'i ayrı bir tarayıcı sekmesinde açabilirsiniz.
- Azure CLI'yi yerel olarak kullanıyorsanız CLI konsol uygulamanızı başlatın ve Azure CLI'da oturum açın.
azure-iot uzantısını yüklemek veya geçerli sürüme yükseltmek için az extension add komutunu çalıştırın.
az extension add --upgrade --name azure-iotCLI uygulamanızda, bir kaynak grubu oluşturmak için az group create komutunu çalıştırın. Aşağıdaki komut eastus konumunda MyResourceGroup adlı bir kaynak grubu oluşturur.
Uyarı
İsteğe bağlı olarak, farklı bir konum ayarlayabilirsiniz. Kullanılabilir konumları görmek için komutunu çalıştırın
az account list-locations. Bu hızlı başlangıçta örnek komutta gösterildiği gibi eastus kullanılmıştır.az group create --name MyResourceGroup --location eastusIoT hub'ı oluşturmak için az iot hub create komutunu çalıştırın. IoT hub'ı oluşturmak birkaç dakika sürebilir.
YourIoTHubName. Aşağıdaki komutta IoT hub'ınız için seçtiğiniz adı kullanarak bu yer tutucuyu ve çevresindeki köşeli parantezleri değiştirin. IoT hub adı Azure'da genel olarak benzersiz olmalıdır. Bu hızlı başlangıcın geri kalanında yer tutucuyu gördüğünüz her yerde IoT hub'ınızın adını kullanın.
az iot hub create --resource-group MyResourceGroup --name {YourIoTHubName}
Cihaz kaydetme
Bir cihazın bağlanabilmesi için IoT hub’ınıza kaydedilmesi gerekir. Bu bölümde, cihaz kimliği oluşturmak için Azure CLI'yi kullanacaksınız.
IoT hub'ınıza kayıtlı bir cihazınız varsa bu bölümü atlayabilirsiniz.
Cihaz kimliği oluşturmak için:
CLI kabuğunuzda az iot hub device-identity create komutunu çalıştırın. Bu komut cihaz kimliğini oluşturur.
YourIoTHubName. Aşağıdaki komutta IoT hub'ınız için seçtiğiniz adı kullanarak bu yer tutucuyu ve çevresindeki köşeli parantezleri değiştirin. IoT hub adı Azure'da genel olarak benzersiz olmalıdır.
myDevice. Bu makalenin tamamında cihaz kimliği için bu adı kullanabilir veya farklı bir cihaz adı belirtebilirsiniz.
az iot hub device-identity create --device-id myDevice --hub-name {YourIoTHubName}az iot hub device-identity connection-string show komutunu çalıştırın.
az iot hub device-identity connection-string show --device-id myDevice --hub-name {YourIoTHubName}bağlantı dizesi çıktısı aşağıdaki biçimdedir:
HostName=<your IoT Hub name>.azure-devices.net;DeviceId=<your device id>;SharedAccessKey=<some value>bağlantı dizesi güvenli bir konuma kaydedin.
Uyarı
CLI uygulamanızı açık tutun. Bunu sonraki adımlarda kullanacaksınız.
Hizmet bağlantı dizesini alma
Arka uç uygulamasının IoT hub'ınıza bağlanıp iletileri almasını sağlamak için bir hizmet bağlantı dizesine de ihtiyacınız vardır. Aşağıdaki komut IoT hub'ınız için hizmet bağlantı dizesini alır:
YourIoTHubName: Aşağıdaki komuttaki bu yer tutucuyu IoT hub'ınız için seçtiğiniz adla değiştirin.
az iot hub connection-string show \
--policy-name service \
--hub-name {YourIoTHubName} \
--output table
Aşağıdaki gibi görünen hizmet bağlantı dizesini not edin:
HostName={YourIoTHubName}.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey={YourSharedAccessKey}
Bu değeri hızlı başlangıcın ilerleyen bölümlerinde kullanacaksınız. Bu hizmet bağlantı dizesi, önceki adımda not ettiğiniz cihaz bağlantı dizesinden farklıdır.
Cihaz benzetimi
Sanal cihaz uygulaması IoT hub'ınızdaki cihaza özgü bir uç noktaya bağlanır, sanal telemetri gönderir ve hub'ınızdan doğrudan yöntem çağrılarını dinler. Bu hızlı başlangıçta, hub'dan doğrudan yöntem çağrısı cihaza telemetri gönderme aralığını değiştirmesini söyler. Simülasyon cihazı, doğrudan yöntemi yürüttükten sonra hub'ınıza bir bildirim gönderir.
Yerel terminal penceresinde örnek Python projesinin kök klasörüne gidin. Ardından iot-hub\Quickstarts\simulated-device-2 klasörüne gidin.
SimulatedDeviceSync.py dosyasını istediğiniz bir metin düzenleyicisinde açın.
değişkeninin
CONNECTION_STRINGdeğerini, daha önce not ettiğiniz cihaz bağlantı dizesiyle değiştirin. Ardından değişikliklerinizi SimulatedDeviceSync.py kaydedin.Yerel terminal penceresinde aşağıdaki komutları çalıştırarak simülasyon cihazı uygulaması için gerekli kitaplıkları yükleyin:
pip install azure-iot-deviceYerel terminal penceresinde aşağıdaki komutları çalıştırarak simülasyon cihazı uygulamasını çalıştırın:
python SimulatedDeviceSync.pyAşağıdaki ekran görüntüsünde, simülasyon cihazı uygulaması, IoT hub’ınıza telemetri gönderdiğinde oluşan çıktı gösterilmektedir:
Doğrudan yöntemi çağırma
Arka uç uygulaması, IoT Hub'ınızdaki bir hizmet tarafı uç noktasına bağlanır. Uygulama, IoT hub'ınız aracılığıyla bir cihaza doğrudan yöntem çağrıları yapar ve bildirimleri dinler. IoT Hub arka uç uygulaması genellikle bulutta çalışır.
Başka bir yerel terminal penceresinde, örnek Python projesinin kök klasörüne gidin. Ardından iot-hub\Quickstarts\back-end-application klasörüne gidin.
BackEndApplication.py dosyasını istediğiniz bir metin düzenleyicisinde açın.
değişkeninin
CONNECTION_STRINGdeğerini, daha önce not ettiğiniz hizmet bağlantı dizesiyle değiştirin. Ardından değişikliklerinizi BackEndApplication.py kaydedin.Yerel terminal penceresinde aşağıdaki komutları çalıştırarak simülasyon cihazı uygulaması için gerekli kitaplıkları yükleyin:
pip install azure-iot-hubYerel terminal penceresinde, arka uç uygulamasını çalıştırmak için aşağıdaki komutları çalıştırın:
python BackEndApplication.pyAşağıdaki ekran görüntüsü, uygulamanın cihaza doğrudan bir yöntem çağrısı yaparak ve onay alarak elde ettiği sonucu göstermektedir.
Arka uç uygulamasını çalıştırdıktan sonra, konsol penceresinde simülasyon cihazını çalıştıran bir ileti görürsünüz ve ileti gönderme hızı değişir:
Kaynakları temizleme
Bir sonraki önerilen makaleye devam ediyorsanız, önceden oluşturduğunuz kaynakları tutabilir ve yeniden kullanabilirsiniz.
Aksi takdirde, ücretlerden kaçınmak için bu makalede oluşturulan Azure kaynaklarını silebilirsiniz.
Önemli
Silinen kaynak grupları geri alınamaz. Kaynak grubu ve içindeki tüm kaynaklar kalıcı olarak silinir. Yanlış kaynak grubunu veya kaynakları yanlışlıkla silmediğinizden emin olun. IoT hub'ını tutmak istediğiniz kaynakları içeren mevcut bir kaynak grubunda oluşturduysanız, kaynak grubunu silmek yerine yalnızca IoT Hub kaynağını silin.
Bir kaynak grubunu adıyla silmek için:
Azure portalında oturum açın ve Kaynak grupları’nı seçin.
Herhangi bir alan için filtre uygula metin kutusuna IoT hub'ınızı içeren kaynak grubunun adını yazın.
Sonuç listesinde IoT hub'ınızı içeren kaynak grubunu seçin.
Kaynak grubunun çalışma bölmesinde, komut çubuğundan Kaynak grubunu sil'i seçin.
Kaynak grubunun silinmesini onaylamanız istenir. Onaylamak için kaynak grubunuzun adını yeniden yazın ve sil'i seçin. Birkaç dakika sonra kaynak grubu ve içerdiği kaynakların tümü silinir.
Sonraki adımlar
Bu hızlı başlangıçta, bir hizmet uygulamasından bir cihazda doğrudan yöntem çağırdınız ve sanal cihaz uygulamasındaki doğrudan yöntem çağrısına yanıt verdiniz.
Cihazdan buluta iletileri buluttaki farklı hedeflere yönlendirmeyi öğrenmek için sonraki öğreticiye geçin.