Share via


Özel Komut uygulamaları geliştirme

Önemli

Özel Komutlar 30 Nisan 2026'da kullanımdan kaldırılacaktır. 30 Ekim 2023 itibarıyla Speech Studio'da yeni Özel Komutlar uygulaması oluşturamazsınız. Bu değişiklikle ilgili olarak LUIS, 1 Ekim 2025'te kullanımdan kaldırılacaktır. 1 Nisan 2023 itibarıyla yeni LUIS kaynakları oluşturamazsınız.

Bu nasıl yapılır makalesinde Özel Komutlar uygulamaları geliştirmeyi ve yapılandırmayı öğreneceksiniz. Özel Komutlar özelliği, ses öncelikli etkileşim deneyimleri için iyileştirilmiş zengin sesli komut uygulamaları oluşturmanıza yardımcı olur. Bu özellik, görev tamamlama veya komut ve denetim senaryolarına en uygun özelliktir. Nesnelerin İnterneti (IoT) cihazları ve ortam ve başsız cihazlar için çok uygundur.

Bu makalede TV'yi açıp kapatabilen, sıcaklığı ayarlayabilen ve alarm ayarlayan bir uygulama oluşturacaksınız. Bu temel komutları oluşturduktan sonra, komutları özelleştirmek için aşağıdaki seçenekler hakkında bilgi edineceksiniz:

  • Komutlara parametre ekleme
  • Komut parametrelerine yapılandırma ekleme
  • Etkileşim kuralları oluşturma
  • Konuşma yanıtları için dil oluşturma şablonları oluşturma
  • Özel ses araçlarını kullanma

Basit komutları kullanarak uygulama oluşturma

Boş bir Özel Komutlar uygulaması oluşturarak başlayın. Ayrıntılar için hızlı başlangıç bölümüne bakın. Bu uygulamada, bir projeyi içeri aktarmak yerine boş bir proje oluşturursunuz.

  1. Ad kutusuna Smart-Room-Lite proje adını (veya seçtiğiniz başka bir adı) girin.

  2. Dil listesinde İngilizce (Birleşik Devletler) öğesini seçin.

  3. LUIS kaynağı seçin veya oluşturun.

    Screenshot showing the

LUIS kaynaklarını güncelleştirme (isteğe bağlı)

Yeni proje penceresinde seçtiğiniz yazma kaynağını güncelleştirebilirsiniz. Ayrıca bir tahmin kaynağı da ayarlayabilirsiniz.

Özel Komutlar uygulamanız yayımlandığında tanıma için bir tahmin kaynağı kullanılır. Geliştirme ve test aşamalarında tahmin kaynağına ihtiyacınız yoktur.

TurnOn komutu ekleme

Oluşturduğunuz boş Smart-Room-Lite Özel Komutlar uygulamasına bir komut ekleyin. komutu bir ifade Turn on the tvişler. iletisiyle Ok, turning the tv onyanıt verir.

  1. Sol bölmenin üst kısmındaki Yeni komut'u seçerek yeni bir komut oluşturun. Yeni komut penceresi açılır.
  2. Ad alanı için değerini TurnOnbelirtin.
  3. Oluştur'u belirleyin.

Orta bölmede komutun özellikleri listelenir.

Aşağıdaki tabloda komutun yapılandırma özellikleri açıklanmaktadır. Daha fazla bilgi için bkz . Özel Komutlar kavramları ve tanımları.

Yapılandırma Açıklama
Örnek cümleler Kullanıcının bu komutu tetiklemek için söyleyebileceği örnek konuşmalar.
Parametreler Komutu tamamlamak için gereken bilgiler.
Tamamlama kuralları Komutu yerine getirmek için gerçekleştirilecek eylemler. Örnekler: kullanıcıya yanıt verme veya bir web hizmetiyle iletişim kurma.
Etkileşim kuralları Daha belirli veya karmaşık durumları işlemek için diğer kurallar.

Screenshot showing where to create a command.

Örnek cümleler ekleme

Örnek cümleler bölümünde, kullanıcının neler söyleyebileceğine ilişkin bir örnek sağlarsınız.

  1. Orta bölmede Örnek cümleler'i seçin.

  2. Sağdaki bölmeye örnekler ekleyin:

    Turn on the tv
    
  3. Bölmenin üst kısmında Kaydet'i seçin.

Henüz parametreleriniz olmadığından Tamamlama kuralları bölümüne geçebilirsiniz.

Tamamlama kuralı ekleme

Ardından, komutun bir tamamlama kuralına ihtiyacı vardır. Bu kural kullanıcıya bir yerine getirme eylemi gerçekleştirildiğini bildirir.

Kurallar ve tamamlama kuralları hakkında daha fazla bilgi için bkz . Özel Komut kavramları ve tanımları.

  1. Varsayılan tamamlama kuralını Bitti'yi seçin. Ardından aşağıdaki gibi düzenleyin:

    Ayar Önerilen değer Veri Akışı Açıklaması
    Adı ConfirmationResponse Kuralın amacını açıklayan ad
    Koşullar Hiçbiri Kuralın ne zaman çalışabileceğini belirleyen koşullar
    Eylemler Konuşma yanıtı>gönder Basit düzenleyici>Ok, turning the tv on Kural koşulu doğru olduğunda gerçekleştirecek eylem

    Screenshot showing where to create a speech response.

  2. Eylemi kaydetmek için Kaydet'i seçin.

  3. Tamamlama kuralları bölümüne geri dönüp Kaydet'i seçerek tüm değişiklikleri kaydedin.

    Not

    komutuyla birlikte gelen varsayılan tamamlama kuralını kullanmanız gerekmez. Varsayılan tamamlama kuralını silebilir ve kendi kuralınızı ekleyebilirsiniz.

SetTemperature komutu ekleme

Şimdi bir komut daha ekleyin: SetTemperature. Bu komut tek bir konuşma Set the temperature to 40 degreesalır ve iletisiyle Ok, setting temperature to 40 degreesyanıt verir.

Yeni komutu oluşturmak için, komut için TurnOn kullandığınız adımları izleyin, ancak örnek cümleyi Set the temperature to 40 degreeskullanın.

Ardından mevcut Bitti tamamlama kurallarını aşağıdaki gibi düzenleyin:

Ayar Önerilen değer
Ad ConfirmationResponse
Koşullar Hiçbiri
Eylemler Konuşma yanıtı>gönder Basit düzenleyici>İlk çeşitleme>Ok, setting temperature to 40 degrees

Tüm değişiklikleri komutta kaydetmek için Kaydet'i seçin.

SetAlarm komutu ekleme

Yeni SetAlarm bir komut oluşturun. Örnek cümleyi Set an alarm for 9 am tomorrowkullanın. Ardından mevcut Bitti tamamlama kurallarını aşağıdaki gibi düzenleyin:

Ayar Önerilen değer
Ad ConfirmationResponse
Koşullar Hiçbiri
Eylemler Konuşma yanıtı>gönder Basit düzenleyici>İlk çeşitleme>Ok, setting an alarm for 9 am tomorrow

Tüm değişiklikleri komutta kaydetmek için Kaydet'i seçin.

Deneyin

Test bölmesini kullanarak uygulamanın davranışını test edin:

  1. Bölmenin sağ üst köşesindeKi Eğit simgesini seçin.
  2. Eğitim tamamlandığında Test'i seçin.

Ses veya metin kullanarak aşağıdaki konuşma örneklerini deneyin:

  • Şunu yazarsınız: sıcaklığı 40 dereceye ayarlayın
  • Beklenen yanıt: Tamam, sıcaklığı 40 dereceye ayarlama
  • Yazarsınız: tv'yi açın
  • Beklenen yanıt: Tamam, tv'yi açma
  • Yazacaksınız: yarın sabah 9 için bir alarm ayarlayın
  • Beklenen yanıt: Tamam, yarın 09:00 için alarm ayarlama

Screenshot showing the test in a web-chat interface.

İpucu

Test bölmesinde, bu ses girişinin veya metin girişinin nasıl işlendiği hakkında bilgi için Ayrıntıları aç'ı seçebilirsiniz.

Komutlara parametre ekleme

Bu bölümde, komutlarınıza parametre eklemeyi öğreneceksiniz. Komutlar, bir görevi tamamlamak için parametreleri gerektirir. Karmaşık senaryolarda parametreler, özel eylemleri tetikleyen koşulları tanımlamak için kullanılabilir.

TurnOn komutu için parametreleri yapılandırma

Birden çok cihazı açmak ve kapatmak için mevcut TurnOn komutu düzenleyerek başlayın.

  1. Artık komut hem açık hem de kapalı senaryolarını işlediğine göre komutu TurnOnOff olarak yeniden adlandırın.

    1. Soldaki bölmede TurnOn komutunu seçin. Ardından bölmenin üst kısmındaki Yeni komutunun yanında düzenle düğmesini seçin.

    2. Yeniden Adlandır komut penceresinde adı TurnOnOff olarak değiştirin.

  2. Komutuna yeni bir parametre ekleyin. parametresi, kullanıcının cihazı açmak mı yoksa kapatmak mı istediğini gösterir.

    1. Orta bölmenin üst kısmında Ekle'yi seçin. Açılan menüden Parametre'yi seçin.

    2. Sağdaki bölmede, Parametreler bölümünde, Ad kutusuna ekleyin OnOff.

    3. Gerekli'yi seçin. Gerekli parametre için yanıt ekle penceresinde Basit düzenleyici'yi seçin. İlk çeşitleme alanına Açık veya Kapalı'yı ekleyin.

    4. Güncelleştir'i seçin.

      Screenshot that shows the 'Add response for a required parameter' section with the 'Simple editor' tab selected.

    5. Aşağıdaki tabloyu kullanarak parametrenin özelliklerini yapılandırın. Bir komutun tüm yapılandırma özellikleri hakkında bilgi için bkz . Özel Komutlar kavramları ve tanımları.

      Yapılandırma Önerilen değer Veri Akışı Açıklaması
      Adı OnOff Parametresi için açıklayıcı bir ad
      Required Seçili Komut tamamlanmadan önce bu parametre için bir değerin gerekli olup olmadığını gösteren onay kutusu.
      Gerekli parametre için yanıt Basit düzenleyici>On or Off? Bilinmediğinde bu parametrenin değerini soran bir istem.
      Tür Dize Sayı, Dize, Tarih Saat veya Coğrafya gibi parametre türü.
      Yapılandırma İç katalogdan önceden tanımlanmış giriş değerlerini kabul etme Dizeler için bu ayar girişleri bir dizi olası değerle sınırlar.
      Önceden tanımlanmış giriş değerleri on, off Olası değerler ve bunların diğer adları kümesi.
    6. Önceden tanımlanmış giriş değerleri eklemek için Önceden tanımlanmış giriş ekle'yi seçin. Yeni Öğe penceresinde, önceki tabloda gösterildiği gibi Ad yazın. Bu durumda, diğer adları kullanmadığınız için bu alanı boş bırakabilirsiniz.

      Screenshot showing how to create a parameter.

    7. Parametrenin tüm yapılandırmalarını kaydetmek için Kaydet'i seçin.

SubjectDevice parametresi ekleme

  1. Bu komut kullanılarak denetlenebilecek cihazların adını temsil eden ikinci bir parametre eklemek için Ekle'yi seçin. Aşağıdaki yapılandırmayı kullanın.

    Ayar Önerilen değer
    Ad SubjectDevice
    Required Seçili
    Gerekli parametre için yanıt Basit düzenleyici>Which device do you want to control?
    Tür Dize
    Yapılandırma İç katalogdan önceden tanımlanmış giriş değerlerini kabul etme
    Önceden tanımlanmış giriş değerleri tv, fan
    Diğer Adlar (tv) television, telly
  2. Kaydet'i seçin.

Örnek cümleleri değiştirme

Parametreleri kullanan komutlar için, olası tüm birleşimleri kapsayan örnek cümleler eklemek yararlı olur. Örneğin:

  • Tam parametre bilgileri: turn {OnOff} the {SubjectDevice}
  • Kısmi parametre bilgileri: turn it {OnOff}
  • Parametre bilgisi yok: turn something

Farklı bilgi dereceleri kullanan örnek cümleler, Özel Komutlar uygulamasının kısmi bilgileri kullanarak hem tek seferlik çözünürlükleri hem de birden çok dönüşlü çözünürlükleri çözümlemesine olanak sağlar.

Bu bilgileri göz önünde bulundurarak aşağıdaki önerilen parametreleri kullanmak için örnek cümleleri düzenleyin:

turn {OnOff} the {SubjectDevice}
{SubjectDevice} {OnOff}
turn it {OnOff}
turn something {OnOff}
turn something

Kaydet'i seçin.

İpucu

Örnek cümleler düzenleyicisinde, parametrelerinize başvurmak için küme ayraçlarını kullanın. Örneğin, turn {OnOff} the {SubjectDevice}. Daha önce oluşturulan parametreler tarafından yedeklenen otomatik tamamlama için bir sekme kullanın.

Tamamlama kurallarını parametreleri içerecek şekilde değiştirme

Var olan tamamlanma kuralını ConfirmationResponsedeğiştirin.

  1. Koşullar bölümünde Koşul ekle'yi seçin.

  2. Yeni Koşul penceresindeki Tür listesinde Gerekli parametreler'i seçin. Aşağıdaki listede hem OnOff hem de SubjectDevice'i seçin.

  3. Oluştur'u belirleyin.

  4. Eylemler bölümünde, Konuşma yanıtı gönder eylemini, üzerine gelip düzenle düğmesini seçerek düzenleyin. Bu kez, yeni oluşturulan OnOff ve SubjectDevice parametrelerini kullanın:

    Ok, turning the {SubjectDevice} {OnOff}
    
  5. Kaydet'i seçin.

Sağ taraftaki bölmenin üst kısmındaki Eğit simgesini seçerek değişiklikleri deneyin.

Eğitim tamamlandığında Test'i seçin. Uygulamanızı test edin penceresi görüntülenir. Aşağıdaki etkileşimleri deneyin:

  • Giriş: tv'yi kapatın
  • Çıkış: Tamam, tv kapatılır
  • Giriş: Televizyonu kapatın
  • Çıkış: Tamam, tv kapatılır
  • Giriş: Kapatın
  • Çıkış: Hangi cihazı denetlemek istiyorsunuz?
  • Giriş: tv
  • Çıkış: Tamam, tv kapatılır

SetTemperature komutu için parametreleri yapılandırma

Kullanıcı tarafından yönlendirildikçe SetTemperature sıcaklığı ayarlamasını sağlamak için komutunu değiştirin.

Parametre TemperatureValue ekleyin. Aşağıdaki yapılandırmayı kullanın:

Yapılandırma Önerilen değer
Ad TemperatureValue
Required Seçili
Gerekli parametre için yanıt Basit düzenleyici>What temperature would you like?
Tür Number

Aşağıdaki değerleri kullanmak için örnek konuşmaları düzenleyin.

set the temperature to {TemperatureValue} degrees
change the temperature to {TemperatureValue}
set the temperature
change the temperature

Var olan tamamlama kurallarını düzenleyin. Aşağıdaki yapılandırmayı kullanın.

Yapılandırma Önerilen değer
Koşullar Gerekli TemperatureValue parametresi>
Eylemler Konuşma yanıtı gönderme>Ok, setting temperature to {TemperatureValue} degrees

SetAlarm komutu için parametreleri yapılandırma

adlı DateTimebir parametre ekleyin. Aşağıdaki yapılandırmayı kullanın.

Ayar Önerilen değer
Ad DateTime
Required Seçili
Gerekli parametre için yanıt Basit düzenleyici>For what time?
Tür Tarih Saat
Tarih Varsayılanları Tarih eksikse bugün kullanın.
Saat Varsayılanları Saat eksikse, günün başlangıcını kullanın.

Not

Bu makalede çoğunlukla String, Number ve DateTime parametre türleri kullanılır. Desteklenen tüm parametre türlerinin ve özelliklerinin listesi için bkz . Özel Komutlar kavramları ve tanımları.

Örnek konuşmaları düzenleyin. Aşağıdaki değerleri kullanın.

set an alarm for {DateTime}
set alarm {DateTime}
alarm for {DateTime}

Var olan tamamlama kurallarını düzenleyin. Aşağıdaki yapılandırmayı kullanın.

Ayar Önerilen değer
Eylemler Konuşma yanıtı gönderme>Ok, alarm set for {DateTime}

Farklı komutlarla ilgili konuşmaları kullanarak üç komutu birlikte test edin. (Farklı komutlar arasında geçiş yapabilirsiniz.)

  • Giriş: Alarm ayarlama
  • Çıkış: Hangi saat için?
  • Giriş: Tv'yi açma
  • Çıkış: Tamam, tv'yi açma
  • Giriş: Alarm ayarlama
  • Çıkış: Hangi saat için?
  • Giriş: 17:00
  • Çıkış: Tamam, için alarm kümesi 2020-05-01 17:00:00

Komut parametrelerine yapılandırma ekleme

Bu bölümde, aşağıdakiler dahil olmak üzere gelişmiş parametre yapılandırması hakkında daha fazla bilgi edinebilirsiniz:

  • Parametre değerlerinin Özel Komutlar uygulamasının dışında tanımlanan bir kümeye nasıl ait olabileceği.
  • Parametre değerlerine doğrulama yan tümceleri ekleme.

Parametreyi dış katalog varlığı olarak yapılandırma

Özel Komutlar özelliği, bir web uç noktası üzerinde barındırılan dış kataloglara başvurmak için dize türü parametreleri yapılandırmanıza olanak tanır. Böylece Özel Komutlar uygulamasını düzenlemeden dış kataloğu bağımsız olarak güncelleştirebilirsiniz. Bu yaklaşım, katalog girdilerinin çok sayıda olduğu durumlarda kullanışlıdır.

komutundan SubjectDevice parametresini TurnOnOff yeniden kullanın. Bu parametrenin geçerli yapılandırması, iç katalogdan önceden tanımlanmış girişleri kabul et'dir. Bu yapılandırma, parametre yapılandırmasındaki cihazların statik bir listesini ifade eder. Bu içeriği bağımsız olarak güncelleştirilebilecek bir dış veri kaynağına taşıyın.

İçeriği taşımak için yeni bir web uç noktası ekleyerek başlayın. Soldaki bölmede Web uç noktaları bölümüne gidin. Yeni bir web uç noktası URL'si ekleyin. Aşağıdaki yapılandırmayı kullanın.

Ayar Önerilen değer
Ad getDevices
URL <Your endpoint of getDevices.json>
Yöntem GET

Ardından, denetlenebilecek cihazları listeleyen bir JSON dosyası döndüren bir web uç noktasını yapılandırın ve barındırın. Web uç noktası aşağıdaki gibi biçimlendirilmiş bir JSON dosyası döndürmelidir:

{
    "fan" : [],
    "refrigerator" : [
        "fridge"
    ],
    "lights" : [
        "bulb",
        "bulbs",
        "light",
        "light bulb"
    ],
    "tv" : [
        "telly",
        "television"
        ]
}

Ardından SubjectDevice parametre ayarları sayfasına gidin. Aşağıdaki özellikleri ayarlayın.

Ayar Önerilen değer
Yapılandırma Dış katalogdan önceden tanımlanmış girişleri kabul etme
Katalog uç noktası getDevices
Yöntem GET

Ardından Kaydet'i seçin.

Önemli

Soldaki bölmedeki Web uç noktası bölümünde web uç noktası ayarlanmadığı sürece, bir parametreyi dış katalogdaki girişleri kabul etmek üzere yapılandırma seçeneğini görmezsiniz.

Eğit'i seçerek deneyin. Eğitim tamamlandıktan sonra Test'i seçin ve birkaç etkileşim deneyin.

  • Giriş:
  • Çıkış: Hangi cihazı denetlemek istiyorsunuz?
  • Giriş: ışıklar
  • Çıkış: Tamam, ışıkları açma

Not

Artık web uç noktasında barındırılan tüm cihazları denetleyebilirsiniz. Ancak yine de uygulamayı yeni değişiklikleri test etmek ve sonra uygulamayı yeniden yayımlamak için eğitmelisiniz.

Parametrelere doğrulama ekleme

Doğrulamalar , parametrenin değerinde kısıtlamaları yapılandırmanıza olanak sağlayan belirli parametre türlerine uygulanan yapılardır. Değerler kısıtlamalara uygun değilse sizden düzeltme isterler. Doğrulama yapısını genişleten parametre türlerinin listesi için bkz . Özel Komutlar kavramları ve tanımları.

komutunu kullanarak doğrulamaları test edin SetTemperature . Parametresi için doğrulama eklemek için Temperature aşağıdaki adımları kullanın.

  1. Soldaki bölmede SetTemperature komutunu seçin.

  2. Orta bölmede Sıcaklık'ı seçin.

  3. Sağdaki bölmede Doğrulama ekle'yi seçin.

  4. Yeni doğrulama penceresinde, doğrulamayı aşağıdaki tabloda gösterildiği gibi yapılandırın. Daha sonra, Oluştur'u seçin.

    Parametre yapılandırması Önerilen değer Açıklama
    En Düşük Değer 60 Sayı parametreleri için, bu parametrenin varsayabileceği en düşük değer
    En Büyük Değer 80 Sayı parametreleri için, bu parametrenin varsayabileceği maksimum değer
    Hata yanıtı Basit düzenleyici>İlk varyasyon>Sorry, I can only set temperature between 60 and 80 degrees. What temperature do you want? Doğrulama başarısız olursa yeni bir değer isteme istemi

    Screenshot showing how to add a range validation.

Sağ taraftaki bölmenin üst kısmındaki Eğit simgesini seçerek deneyin. Eğitim tamamlandıktan sonra Test'i seçin. Birkaç etkileşim deneyin:

  • Giriş: Sıcaklığı 72 dereceye ayarlayın
  • Çıkış: Tamam, sıcaklığı 72 dereceye ayarlama
  • Giriş: Sıcaklığı 45 dereceye ayarlayın
  • Çıkış: Maalesef sıcaklığı yalnızca 60 derece ile 80 derece arasında ayarlayabilirim
  • Giriş: bunun yerine 72 derece yapın
  • Çıkış: Tamam, sıcaklığı 72 dereceye ayarlama

Etkileşim kuralları ekleme

Etkileşim kuralları, belirli veya karmaşık durumları işleyen ek kurallardır. Kendi etkileşim kurallarınızı yazabilirsiniz ancak bu örnekte aşağıdaki senaryolar için etkileşim kurallarını kullanırsınız:

  • Komutları onaylama
  • Komutlara tek adımlı düzeltme ekleme

Etkileşim kuralları hakkında daha fazla bilgi için bkz . Özel Komutlar kavramları ve tanımları.

Komuta onay ekleme

Onay eklemek için komutunu kullanırsınız SetTemperature . Onay almak için aşağıdaki adımları kullanarak etkileşim kuralları oluşturun:

  1. Soldaki bölmede SetTemperature komutunu seçin.

  2. Orta bölmede Ekle'yi seçerek etkileşim kuralları ekleyin. Ardından Etkileşim kuralları>Onayla komutunu seçin.

    Bu eylem üç etkileşim kuralı ekler. Kurallar, kullanıcıdan alarmın tarih ve saatini onaylamasını ister. Bir sonraki dönüş için bir onay (evet veya hayır) beklerler.

    1. Aşağıdaki yapılandırmayı kullanarak Komut etkileşimini onayla kuralını değiştirin:

      1. Adı Sıcaklığı onayla olarak değiştirin.
      2. Tüm gerekli parametreler zaten ayarlanmış koşulu.
      3. Yeni eylem ekle: Konuşma yanıtı>gönder yazın>Sıcaklığı {TemperatureValue} derece olarak ayarlamak istediğinizden emin misiniz?
      4. Beklentiler bölümünde varsayılan olarak Kullanıcıdan onay bekleniyor değerini bırakın.

      Screenshot showing how to create the required parameter response.

    2. Başarılı bir onayı işlemek için Onay başarılı etkileşim kuralını değiştirin (kullanıcı evet dedi).

      1. Adı Onay sıcaklığı başarılı olarak değiştirin.
      2. Mevcut Onay başarılı oldu koşulunu bırakın.
      3. Yeni bir koşul ekleyin: Gerekli parametreler>TemperatureValue yazın.>
      4. Varsayılan Yürütme sonrası durum değerini Yürütme tamamlama kuralları olarak bırakın.
    3. Onay reddedildiğinde senaryoları işlemek için Onay reddedildi etkileşim kuralını değiştirin (kullanıcı hayır dedi).

      1. Adı Onay sıcaklığı reddedildi olarak değiştirin.
      2. Mevcut Onay reddedildi koşulunu bırakın.
      3. Yeni bir koşul ekleyin: Gerekli parametreler>TemperatureValue yazın.>
      4. Yeni eylem ekle: Konuşma yanıtı>gönder Sorun değil yazın.> Hangi sıcaklık o zaman?.
      5. Varsayılan Yürütme sonrası durum değerini Kullanıcının girişini bekle olarak değiştirin.

Önemli

Bu makalede, yerleşik onay özelliğini kullanacaksınız. Ayrıca etkileşim kurallarını tek tek el ile de ekleyebilirsiniz.

Eğit'i seçerek değişiklikleri deneyin. Eğitim tamamlandığında Test'i seçin.

  • Giriş: Sıcaklığı 80 derece olarak ayarlayın
  • Çıkış: Sıcaklığı 80 derece olarak ayarlamak istediğinizden emin misiniz?
  • Giriş: Hayır
  • Çıkış: Sorun yok. Hangi sıcaklık o zaman?
  • Giriş: 72 derece
  • Çıkış: Sıcaklığı 72 derece olarak ayarlamak istediğinizden emin misiniz?
  • Giriş: Evet
  • Çıkış: Tamam, sıcaklığı 72 dereceye ayarlama

Komutta düzeltmeleri uygulama

Bu bölümde, tek adımlı bir düzeltme yapılandıracaksınız. Bu düzeltme, gerçekleştirme eylemi çalıştırıldıktan sonra kullanılır. Ayrıca, komut henüz yerine getirilmemişse düzeltmenin varsayılan olarak nasıl etkinleştirildiğine ilişkin bir örnek de görürsünüz. Komut tamamlanmadığında düzeltme eklemek için yeni parametresini AlarmToneekleyin.

Sol bölmede SetAlarm komutunu seçin. Ardından yeni AlarmTone parametresini ekleyin.

  • Ad>AlarmTone
  • Tür>Dizesi
  • Varsayılan Değer>Çanları
  • Yapılandırma>İç katalogdan önceden tanımlanmış giriş değerlerini kabul etme
  • Önceden tanımlanmış giriş değerleri Chimes>, Jingle ve Echo (Bu değerler önceden tanımlanmış tek tek girişlerdir.)

Ardından DateTime parametresinin yanıtını Alarm ayarlamaya hazır olarak {AlarmTone} olarak güncelleştirin. Hangi saat için? Ardından tamamlama kuralını aşağıdaki gibi değiştirin:

  1. ConfirmationResponse adlı mevcut tamamlama kuralını seçin.
  2. Sağdaki bölmede, var olan eylemin üzerine gelin ve Düzenle'yi seçin.
  3. Konuşma yanıtını olarak OK, alarm set for {DateTime}. The alarm tone is {AlarmTone}güncelleştirin.

Önemli

Alarm sesi, devam eden bir komutta herhangi bir açık yapılandırma olmadan değişebilir. Örneğin, komut henüz tamamlanmadığında değişebilir. Komut henüz yerine getirilmediyse, dönüş numarasından bağımsız olarak tüm komut parametreleri için bir düzeltme varsayılan olarak etkinleştirilir.

Komut tamamlandığında düzeltme uygulama

Özel Komutlar platformu, komut tamamlandığında bile tek adımlı düzeltmeye olanak tanır. Bu özellik varsayılan olarak etkin değildir. Açıkça yapılandırılması gerekir.

Tek adımlı düzeltmeyi yapılandırmak için aşağıdaki adımları kullanın:

  1. SetAlarm komutunda, önceden ayarlanmış alarmı güncelleştirmek için Öncekini güncelleştir komutu türünde bir etkileşim kuralı ekleyin. Etkileşim kuralını Önceki alarmı güncelleştir olarak yeniden adlandırın.
  2. Varsayılan koşulu değiştirmeyin: Önceki komutun güncelleştirilmesi gerekir.
  3. Yeni bir koşul ekleyin: Gerekli Parametre>DateTime yazın.>
  4. Yeni eylem ekle: Konuşma yanıtı>gönder Basit düzenleyici>Önceki alarm saatini {DateTime} olarak güncelleştiriyor yazın.>
  5. Varsayılan Yürütme sonrası durum değerini Komut tamamlandı olarak bırakın.

Eğit'i seçerek değişiklikleri deneyin. Eğitimin tamamlanmasını bekleyin ve ardından Test'i seçin.

  • Giriş: Bir alarm ayarlayın.
  • Çıkış: Chimes olarak tonlu alarm ayarlamaya hazır. Saat kaçta?
  • Giriş: Yarın sabah 9'da Jingle olarak tonlu bir alarm ayarlayın.
  • Çıkış: Tamam, için 2020-05-21 09:00:00alarm kümesi. Alarm sesi Jingle' dır.
  • Giriş: Hayır, 08:00.
  • Çıkış: Önceki alarm süresi 2020-05-29 08:00 olarak güncelleştiriliyor.

Not

Gerçek bir uygulamada, bu düzeltme kuralının Eylemler bölümünde ayrıca istemciye bir etkinlik göndermeniz veya sisteminizdeki alarm süresini güncelleştirmek için bir HTTP uç noktası çağırmanız gerekir. Bu eylem, alarm zamanının güncelleştirilmesinde tek sorumlu olmalıdır. Komutun diğer özniteliklerinden sorumlu olmamalıdır. Bu durumda, bu öznitelik alarm tonu olacaktır.

Konuşma yanıtları için dil oluşturma şablonları ekleme

Dil oluşturma (LG) şablonları, istemciye gönderilen yanıtları özelleştirmenize olanak sağlar. Yanıtlara varyans ekler. Dil oluşturma işlemine ulaşmak için şunu kullanabilirsiniz:

  • Dil oluşturma şablonları.
  • Uyarlamalı ifadeler.

Özel Komutlar şablonları Bot Framework'ün LG şablonlarını temel alır. Özel Komutlar özelliği gerektiğinde yeni bir LG şablonu oluşturduğundan (parametreler veya eylemlerdeki konuşma yanıtları için), LG şablonunun adını belirtmeniz gerekmez.

Bu nedenle şablonunuzu şu şekilde tanımlamanız gerekmez:

   # CompletionAction
   - Ok, turning {OnOff} the {SubjectDevice}
   - Done, turning {OnOff} the {SubjectDevice}
   - Proceeding to turn {OnOff} {SubjectDevice}

Bunun yerine, şablonun gövdesini adı olmadan tanımlayabilirsiniz, örneğin:

Screenshot showing a template editor example.

Bu değişiklik, istemciye gönderilen konuşma yanıtlarında çeşitleme sağlar. Bir konuşma için, ilgili konuşma yanıtı sağlanan seçeneklerden rastgele seçilir.

LG şablonlarından yararlanarak, uyarlamalı ifadeler kullanarak komutlar için karmaşık konuşma yanıtları da tanımlayabilirsiniz. Daha fazla bilgi için LG şablonları biçimine bakın.

Varsayılan olarak, Özel Komutlar özelliği aşağıdaki küçük farklarla tüm özellikleri destekler:

  • LG şablonlarında varlıklar olarak ${entityName}temsil edilir. Özel Komutlar özelliği varlıkları kullanmaz. Ancak, gösterim veya {parameterName} gösterim ile ${parameterName} değişkenleri değişken olarak kullanabilirsiniz.
  • .lg dosyasını hiçbir zaman doğrudan düzenlemediğiniz için Özel Komutlar özelliği şablon oluşturma ve genişletmeyi desteklemez. Yalnızca otomatik olarak oluşturulan şablonların yanıtlarını düzenlersiniz.
  • Özel Komutlar özelliği, LG tarafından eklenen özel işlevleri desteklemez. Önceden tanımlanmış işlevler desteklenir.
  • Özel Komutlar özelliği , replaceNullve lineBreakStylegibi strictseçenekleri desteklemez.

TurnOnOff komutuna şablon yanıtları ekleme

TurnOnOff Yeni parametre eklemek için komutunu değiştirin. Aşağıdaki yapılandırmayı kullanın.

Ayar Önerilen değer
Ad SubjectContext
Required Seçili değil
Tür Dize
Varsayılan değer all
Yapılandırma İç katalogdan önceden tanımlanmış giriş değerlerini kabul etme
Önceden tanımlanmış giriş değerleri room, bathroom, all

Tamamlanma kuralını değiştirme

ConfirmationResponse var olan tamamlama kuralının Eylemler bölümünü düzenleyin. Düzenleme eylemi penceresinde Şablon Düzenleyicisi'ne geçin. Ardından metni aşağıdaki örnekle değiştirin.

- IF: @{SubjectContext == "all" && SubjectDevice == "lights"}
    - Ok, turning all the lights {OnOff}
- ELSEIF: @{SubjectDevice == "lights"}
    - Ok, turning {OnOff} the {SubjectContext} {SubjectDevice}
- ELSE:
    - Ok, turning the {SubjectDevice} {OnOff}
    - Done, turning {OnOff} the {SubjectDevice}

Aşağıdaki giriş ve çıkışı kullanarak uygulamanızı eğitin ve test edin. Yanıtların varyasyonlarına dikkat edin. Varyasyon, şablon değerinin birden çok alternatifi tarafından ve uyarlamalı ifadeler kullanılarak oluşturulur.

  • Giriş: tv'yi açma
  • Çıkış: Tamam, tv'yi açma
  • Giriş: tv'yi açma
  • Çıkış: Bitti, tv'yi açtı
  • Giriş: Işıkları kapatın
  • Çıkış: Tamam, tüm ışıkları kapat
  • Giriş: Oda ışıklarını kapatma
  • Çıkış: Tamam, oda ışıklarını kapatma

Özel ses kullanma

Özel Komutlar yanıtlarını özelleştirmenin bir diğer yolu da bir çıkış sesi seçmektir. Varsayılan sesi özel bir sese değiştirmek için aşağıdaki adımları kullanın:

  1. Özel Komutlar uygulamanızda, soldaki bölmede Ayarlar'ı seçin.
  2. Orta bölmede Özel ses'i seçin.
  3. Tabloda özel bir ses veya genel ses seçin.
  4. Kaydet'i seçin.

Screenshot showing sample sentences and parameters.

Not

Genel sesler için sinir türleri yalnızca belirli bölgelerde kullanılabilir. Daha fazla bilgi için bkz . Konuşma hizmeti tarafından desteklenen bölgeler.

Özel ses projesi sayfasında özel sesler oluşturabilirsiniz. Daha fazla bilgi için bkz . Özel ses kullanmaya başlama.

Artık uygulama varsayılan ses yerine seçili seste yanıt veriyor.

Sonraki adımlar