Google Assistant Library

google.assistant.library paketi.

class google.assistant.library.Assistant(credentials, device_model_id)

Google Asistan Kitaplığı için istemci.

Google Asistan için temel kontrol işlevleri ve yaşam döngüsü işlemleri sağlar. Asistan'ı ContextManager olarak kullanmanız önerilir:

with Assistant(credentials, device_model_id) as assistant:

Bu sayede, temel yerel uygulama bellek yönetimini düzgün şekilde yönetebilir.

start() çağrıldıktan sonra Asistan, şu anda bulunduğu çeşitli durumları aktaran bir etkinlik akışı oluşturur. Örneğin:

ON_CONVERSATION_TURN_STARTED
ON_END_OF_UTTERANCE
ON_RECOGNIZING_SPEECH_FINISHED:
    {'text': 'what time is it'}
ON_RESPONDING_STARTED:
    {'is_error_response': False}
ON_RESPONDING_FINISHED
ON_CONVERSATION_TURN_FINISHED:
    {'with_follow_on_turn': False}

Tüm etkinlikler ve bunların bağımsız değişkenleri hakkında ayrıntılı bilgi için EventType bölümüne bakın.

Sözlük:

  • Özel kelime: Asistan, sesi kapatılmadığında dinlediği ifadedir:

    "OK Google" OR "Hey Google"
    
  • Dönüşüm: Tek bir kullanıcı isteği ve ardından Asistan'dan gelen yanıt.

  • Sohbet: Asistan'dan istenen nihai sonuçla sonuçlanan bir veya daha fazla tur:

    "What time is it?" -> "The time is 6:24 PM" OR
    "Set a timer" -> "Okay, for how long?" ->
    "5 minutes" -> "Sure, 5 minutes, starting now!"
    
Parametreler:
  • credentials (google.oauth2.credentials.Credentials): Kullanıcının Google OAuth2 kimlik bilgileri.
  • device_model_id (str): Google'da projeniz için kayıtlı device_model_id. Bu, boş bir dize olmamalıdır.
Artışlar:

ValueError: device_model_id None veya boş olarak bırakıldıysa.

device_id

Asistan tarafından oluşturulan cihaz kimliğini döndürür.

Bu değer, Google cihaz işlemleri gibi hizmetler kullanılırken cihazınızı sunucuya tanımlar. Bu özellik yalnızca start() çağrıldıktan SONRA doldurulur.

Şunu döndürür:start() çağrıldıktan sonra cihaz kimliği, aksi takdirde boş dize.
Dönüş türü:str
send_text_query(query)

|query| parametresini, kullanıcı tarafından söylenmiş gibi Asistan'a gönderir.

Bu, kullanıcının sıcak kelimeyi söyleyip sorgu yapması VEYA takip eden bir sorgunun yanıtını söylemesi gibi davranır.

Parametreler:query (str): Asistan'a gönderilecek metin sorgusu.
set_mic_mute(is_muted)

Asistan'ın özel kelimeyi dinlemesini durdurur.

Asistan'ın özel kelimeyi dinlemesini devre dışı bırakmanıza olanak tanır. Bu, Google Home'un arkasındaki gizlilik düğmesine benzer işlevler sunar.

Asistan henüz başlatılmamışsa bu yöntem hiçbir işlem yapmaz.

Parametreler:is_muted (bool): Doğru olduğunda Asistan'ın dinlemesini durdurur, yanlış olduğunda ise tekrar başlamasına izin verir.
start()

Özel kelimeyi dinleme de dahil olmak üzere Asistan'ı başlatır.

start() çağrıldıktan sonra Asistan, "varsayılan" ALSA ses kaynağından gelen verileri işlemeye başlar ve özel kelimeyi dinlemeye başlar. Bu işlem, zamanlayıcılar/alarmlar gibi Asistan tarafından sağlanan diğer hizmetleri de başlatır. Bu yöntem yalnızca bir kez çağrılabilir. Asistan, çağrıldıktan sonra __exit__ çağrılana kadar çalışmaya devam eder.

Şunu döndürür:Asistan durumundaki değişiklikleri bildiren bir etkinlik kuyruğu.
Dönüş türü:google.assistant.event.IterableEventQueue
start_conversation()

Asistan ile manuel olarak yeni bir görüşme başlatır.

Asistan'ın özel kelimeyi duyduğunda yaptığı gibi, hem kullanıcının konuşmasını kaydetmeye hem de bunu Google'a göndermeye başlar.

Asistan başlatılmamışsa veya sesi kapatılmışsa bu yöntem hiçbir işlem yapmaz.

stop_conversation()

Asistan ile etkin olan tüm görüşmeleri durdurur.

Asistan, kullanıcının sorgusunu dinliyor VEYA yanıt veriyor olabilir. Etkin bir görüşme yoksa bu işlem hiçbir şey yapmaz.

class google.assistant.library.event.AlertEvent(event_type, args, **_)

"alert_type" için ayrıştırma eklemek üzere Etkinlik'i genişletir.

class google.assistant.library.event.AlertType

Uyarı türleri.

ON_ALERT_STARTED ve ON_ALERT_FINISHED etkinlikleriyle kullanılır.

ALARM = 0

"Pazartesi günü saat 03:00" gibi mutlak bir saat için ayarlanmış bir etkinlik

TIMER = 1

"30 saniye sonra" gibi göreli bir zaman için ayarlanmış bir etkinlik

class google.assistant.library.event.DeviceActionEvent(event_type, args, **kwargs)

"actions" özelliğini eklemek için Event'i genişletir.

actions

Mevcut cihaz için çalıştırılacak komutları üreten bir araç.

class google.assistant.library.event.Event(event_type, args, **_)

Asistan tarafından oluşturulan bir etkinlik.

type

EventType: Oluşturulan etkinliğin türü.

args

dict: Bu etkinlikle ilişkili bağımsız değişken anahtar/değer çiftleri.

static New(event_type, args, **kwargs)

Gerekirse özel bir etkinlik sınıfı kullanarak yeni etkinlik oluşturun.

Parametreler:
  • event_type (int): google.assistant.event.EventType öğesindeki bir etkinliğe karşılık gelen sayısal kimlik.
  • args (dict): Bu etkinlikle ilişkili bağımsız değişken anahtar/değer çiftleri.
  • kwargs (dict): Bir EventType için Event sınıfının özelleştirmesine özgü isteğe bağlı bağımsız değişken anahtar/değer çiftleri.
class google.assistant.library.event.EventType

Etkinlik türleri.

ON_ALERT_FINISHED = 11

alert_type uyarısının çalmasının sona erdiğini gösterir.

Parametreler:alert_type (AlertType): Henüz sona eren uyarı türünü temsil eden Enum kimliği.
ON_ALERT_STARTED = 10

Bir uyarının çalmaya başladığını gösterir.

Aynı alert_type ile ON_ALERT_FINISHED alınana kadar bu uyarı devam eder. Herhangi bir zamanda yalnızca bir uyarı etkin olmalıdır.

Parametreler:alert_type (AlertType): Şu anda çalan uyarı türünü temsil eden Enum kimliği.
ON_ASSISTANT_ERROR = 12

Asistan kitaplığının bir hatayla karşılaşıp karşılaşmadığını belirtir.

Parametreler:is_fatal (bool): Doğru ise Asistan kurtarılamaz ve yeniden başlatılmalıdır.
ON_CONVERSATION_TURN_FINISHED = 9

Asistan mevcut hamleyi tamamladı.

Buna hem kullanıcının sorgusunun işlenmesi hem de varsa tam yanıtın sesli okunması dahildir.

Parametreler:with_follow_on_turn (bool): Doğru ise Asistan, kullanıcıdan takip eden bir etkileşim bekler. Kullanıcının takip sorularını yanıtlayabilmesi için mikrofon yeniden açılır.
ON_CONVERSATION_TURN_STARTED = 1

Yeni bir dönüş başladığını gösterir.

Asistan şu anda dinliyor ve kullanıcı sorgusu bekliyor. Bu durum, özel kelimenin duyulması veya Asistan'da start_conversation() çağrılmanın sonucu olabilir.

ON_CONVERSATION_TURN_TIMEOUT = 2

Asistan, anlaşılır bir sorgu beklerken zaman aşımına uğradı.

Bu durum, Akıllı Kelime'nin yanlış tetiklenmesinden veya Asistan'ın kullanıcının ne dediğini anlamamasından kaynaklanabilir.

ON_DEVICE_ACTION = 14

Cihaza bir Cihaz İşlemi isteği gönderildiğini gösterir.

Bu, cihaz tarafından desteklenen özellikler için herhangi bir cihaz dili tetiklenirse gönderilir. Bu etkinlik türünde, bir iteratör veya cihaz işlemi komutlarını ve bunlarla ilişkili parametreleri (varsa) döndürecek özel bir "actions" mülkü bulunur.

Parametreler:dict: Cihaz İşlemi isteğinin kodu çözülmüş JSON yükü.
ON_END_OF_UTTERANCE = 3

Asistan, kullanıcı sorgusunu dinlemeyi durdurdu.

Asistan, kullanıcının ne dediğini anlayamamasına rağmen daha fazla ses verisi dinlemeyi durdurmuş olabilir.

ON_MEDIA_STATE_ERROR = 20

Bir parçayı oynatırken hata oluştuğunu belirtir.

Yerleşik medya oynatıcı, oynatılacak başka bir parça yoksa sonraki parçaya atlamaya veya ON_MEDIA_STATE_IDLE simgesine dönmeye çalışır.

ON_MEDIA_STATE_IDLE = 16

Hiçbir şeyin oynatılmadığını ve oynatılmak üzere sıraya eklenmediğini gösterir.

Bu etkinlik, Google Asistan Kitaplığı'nın haber/podcast için yerleşik medya oynatıcısından açılışta ve kullanıcı medyayı durdurduğu veya duraklattığı ve aktarımın zaman aşımına uğradığı için oynatıcı boşta kaldığında yayınlanır.

ON_MEDIA_TRACK_LOAD = 17

Bir parçanın yüklendiğini ancak oynatılmaya başlamadığını gösterir.

Yeni meta veriler eşzamansız olarak yüklenirse bu işlem birden çok kez gönderilebilir. Bunu genellikle ON_MEDIA_TRACK_PLAY etkinliği izler.

Parametreler:
  • meta veriler (dict) –

    Yüklenen parçanın meta verileri. Bu zamana kadar tüm alanlar doldurulmaz. Bilinmeyen alanlar dahil edilmez. Meta veri alanları şunlardır:

    album(str): Parçanın ait olduğu albümün adı. album_art(str): Albüm kapağının URL'si. artist(str): Parçayı oluşturan sanatçı. duration_ms(double): Bu parçanın milisaniye cinsinden uzunluğu. title(str): Parçanın başlığı.
  • track_type (MediaTrackType): Yüklenen parçanın türü.
ON_MEDIA_TRACK_PLAY = 18

Bir parçanın şu anda ses çıkışı yaptığını gösterir.

Bu yalnızca bir durumdan diğerine geçiş yaptığımızda (ör. ON_MEDIA_TRACK_LOAD veya ON_MEDIA_TRACK_STOP) tetiklenir.

Parametreler:
  • meta veriler (dict) –

    Çalınan parçanın meta verileri. Bilinmeyen alanlar dahil edilmez. Meta veri alanları şunlardır:

    album(str): Parçanın ait olduğu albümün adı. album_art(str): Albüm kapağının URL'si. artist(str): Parçayı oluşturan sanatçı. duration_ms(double): Bu parçanın milisaniye cinsinden uzunluğu. title(str): Parçanın başlığı.
  • position_ms (double): Oynatılan parçanın başlangıcından itibaren milisaniye cinsinden mevcut konumu. "metadata.duration_ms" bilinmiyorsa (0 olarak ayarlanmışsa) bu alan ayarlanmaz.
  • track_type (MediaTrackType): Çalınan parçanın türü.
ON_MEDIA_TRACK_STOP = 19

Daha önce çalan bir parçanın durdurulduğunu gösterir.

Bu durum genellikle kullanıcının duraklatmasından kaynaklanır. Parça, kullanıcı tarafından devam ettirilirse ON_MEDIA_TRACK_PLAY durumuna geri dönebilir.

Parametreler:
  • meta veriler (dict) –

    Durdurulan parçanın meta verileri. Bilinmeyen alanlar dahil edilmez. Meta veri alanları şunlardır:

    album(str): Parçanın ait olduğu albümün adı. album_art(str): Albüm kapağının URL'si. artist(str): Parçayı oluşturan sanatçı. duration_ms(double): Bu parçanın milisaniye cinsinden uzunluğu. title(str): Parçanın başlığı.
  • position_ms (double): Durdurulmuş bir parçadaki mevcut konum (başlangıçtan itibaren milisaniye cinsinden). "metadata.duration_ms" bilinmiyorsa (0 olarak ayarlanmışsa) bu alan ayarlanmaz.
  • track_type (MediaTrackType): Durdurulan parçanın türü.
ON_MUTED_CHANGED = 13

Asistanın şu anda dinliyor olup olmadığını gösterir.

start(), ilk değeri bildirmek için her zaman bir ON_MUTED_CHANGED oluşturur.

Parametreler:is_muted (bool): Doğru ise Asistan şu anda özel kelimesini dinlemiyordur ve kullanıcı sorgularına yanıt vermez.
ON_NO_RESPONSE = 8

Asistan, sırasını başarıyla tamamladı ancak söyleyecek bir şey yok.

ON_RECOGNIZING_SPEECH_FINISHED = 5

Asistan, tanınan nihai konuşmayı belirledi.

Parametreler:metin (str): Kullanıcı sorgusunun nihai metin yorumu.
ON_RENDER_RESPONSE = 15

Asistan'ın bir yanıt için oluşturulacak metin çıkışına sahip olduğunu gösterir.

Parametreler:
  • type (RenderResponseType): Oluşturulacak yanıtın türü.
  • text (str): RenderResponseType.TEXT için oluşturulacak dize.
ON_RESPONDING_FINISHED = 7

Asistan sesli yanıt vermeyi bitirdi.

ON_RESPONDING_STARTED = 6

Asistan sesli olarak yanıt vermeye başlıyor.

Asistan, ON_RESPONDING_FINISHED gelene kadar yanıt verir.

Parametreler:is_error_response (bool): Doğru değerinin döndürülmesi, yerel bir hata TTS'sinin çalındığı anlamına gelir. Aksi takdirde Asistan, sunucu yanıtıyla yanıt verir.
ON_START_FINISHED = 0

Asistan kitaplığı başlatıldı.

class google.assistant.library.event.IterableEventQueue(timeout=3600)

__iter__ arayüzü eklemek için queue.Queue öğesini genişletir.

offer(event)

Sıraya eklenecek bir etkinlik önerin.

Sıra şu anda doluysa etkinlik günlüğe kaydedilir ancak eklenmez.

Parametreler:event (Etkinlik): Sıraya eklenmeye çalışılan etkinlik.
class google.assistant.library.event.MediaStateChangeEvent(event_type, args, **_)

"Durum"un ayrıştırılmasını eklemek için Etkinlik'i genişletir.

class google.assistant.library.event.MediaTrackType

ON_MEDIA_TRACK_X etkinlikleri için parça türleri.

ON_MEDIA_TRACK_LOAD, ON_MEDIA_TRACK_PLAY ve ON_MEDIA_TRACK_STOP ile birlikte kullanılır.

CONTENT = 2

Bir öğenin asıl içeriği (haber/podcast).

TTS = 1

Bir öğeyle ilgili TTS girişi veya geçiş parçası.

class google.assistant.library.event.RenderResponseEvent(event_type, args, **_)

"response_type" için ayrıştırma eklemek üzere etkinliği genişletir.

class google.assistant.library.event.RenderResponseType

Oluşturulacak içerik türleri.

ON_RENDER_RESPONSE ile birlikte kullanılır