Ö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.
Ad kutusuna Smart-Room-Lite proje adını (veya seçtiğiniz başka bir adı) girin.
Dil listesinde İngilizce (Birleşik Devletler) öğesini seçin.
LUIS kaynağı seçin veya oluşturun.
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 tv
işler. iletisiyle Ok, turning the tv on
yanıt verir.
- Sol bölmenin üst kısmındaki Yeni komut'u seçerek yeni bir komut oluşturun. Yeni komut penceresi açılır.
- Ad alanı için değerini
TurnOn
belirtin. - 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. |
Ö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.
Orta bölmede Örnek cümleler'i seçin.
Sağdaki bölmeye örnekler ekleyin:
Turn on the tv
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ı.
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 Eylemi kaydetmek için Kaydet'i seçin.
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 degrees
alır ve iletisiyle Ok, setting temperature to 40 degrees
yanı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 degrees
kullanı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 tomorrow
kullanı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:
- Bölmenin sağ üst köşesindeKi Eğit simgesini seçin.
- 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
İ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.
Artık komut hem açık hem de kapalı senaryolarını işlediğine göre komutu TurnOnOff olarak yeniden adlandırın.
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.
Yeniden Adlandır komut penceresinde adı TurnOnOff olarak değiştirin.
Komutuna yeni bir parametre ekleyin. parametresi, kullanıcının cihazı açmak mı yoksa kapatmak mı istediğini gösterir.
Orta bölmenin üst kısmında Ekle'yi seçin. Açılan menüden Parametre'yi seçin.
Sağdaki bölmede, Parametreler bölümünde, Ad kutusuna ekleyin
OnOff
.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.
Güncelleştir'i seçin.
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. Ö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.
Parametrenin tüm yapılandırmalarını kaydetmek için Kaydet'i seçin.
SubjectDevice parametresi ekleme
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
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ı ConfirmationResponse
değiştirin.
Koşullar bölümünde Koşul ekle'yi seçin.
Yeni Koşul penceresindeki Tür listesinde Gerekli parametreler'i seçin. Aşağıdaki listede hem OnOff hem de SubjectDevice'i seçin.
Oluştur'u belirleyin.
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
veSubjectDevice
parametrelerini kullanın:Ok, turning the {SubjectDevice} {OnOff}
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ı DateTime
bir 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ş: aç
- Çı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.
Soldaki bölmede SetTemperature komutunu seçin.
Orta bölmede Sıcaklık'ı seçin.
Sağdaki bölmede Doğrulama ekle'yi seçin.
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
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:
Soldaki bölmede SetTemperature komutunu seçin.
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.
Aşağıdaki yapılandırmayı kullanarak Komut etkileşimini onayla kuralını değiştirin:
- Adı Sıcaklığı onayla olarak değiştirin.
- Tüm gerekli parametreler zaten ayarlanmış koşulu.
- Yeni eylem ekle: Konuşma yanıtı>gönder yazın>Sıcaklığı {TemperatureValue} derece olarak ayarlamak istediğinizden emin misiniz?
- Beklentiler bölümünde varsayılan olarak Kullanıcıdan onay bekleniyor değerini bırakın.
Başarılı bir onayı işlemek için Onay başarılı etkileşim kuralını değiştirin (kullanıcı evet dedi).
- Adı Onay sıcaklığı başarılı olarak değiştirin.
- Mevcut Onay başarılı oldu koşulunu bırakın.
- Yeni bir koşul ekleyin: Gerekli parametreler>TemperatureValue yazın.>
- Varsayılan Yürütme sonrası durum değerini Yürütme tamamlama kuralları olarak bırakın.
Onay reddedildiğinde senaryoları işlemek için Onay reddedildi etkileşim kuralını değiştirin (kullanıcı hayır dedi).
- Adı Onay sıcaklığı reddedildi olarak değiştirin.
- Mevcut Onay reddedildi koşulunu bırakın.
- Yeni bir koşul ekleyin: Gerekli parametreler>TemperatureValue yazın.>
- Yeni eylem ekle: Konuşma yanıtı>gönder Sorun değil yazın.> Hangi sıcaklık o zaman?.
- 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 AlarmTone
ekleyin.
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:
- ConfirmationResponse adlı mevcut tamamlama kuralını seçin.
- Sağdaki bölmede, var olan eylemin üzerine gelin ve Düzenle'yi seçin.
- 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:
- 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.
- Varsayılan koşulu değiştirmeyin: Önceki komutun güncelleştirilmesi gerekir.
- Yeni bir koşul ekleyin: Gerekli Parametre>DateTime yazın.>
- Yeni eylem ekle: Konuşma yanıtı>gönder Basit düzenleyici>Önceki alarm saatini {DateTime} olarak güncelleştiriyor yazın.>
- 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:00
alarm 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:
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 ,
replaceNull
velineBreakStyle
gibistrict
seç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:
- Özel Komutlar uygulamanızda, soldaki bölmede Ayarlar'ı seçin.
- Orta bölmede Özel ses'i seçin.
- Tabloda özel bir ses veya genel ses seçin.
- Kaydet'i seçin.
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
- Konuşma SDK'sını kullanarak Özel Komutlar uygulamanızı bir istemci uygulamasıyla tümleştirmeyi öğrenin.
- Azure DevOps kullanarak Özel Komutlar uygulamanız için sürekli dağıtım ayarlayın.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin