Google Assistant Library

החבילה google.assistant.library.

class google.assistant.library.Assistant(פרטי כניסה, device_model_id)

הלקוח עבור ספריית Google Assistant.

מספק פונקציונליות בסיסית של טיפול וטיפול במחזור החיים של Google Assistant. מומלץ להשתמש ב-Assistant בתור ContextManager:

with Assistant(credentials, device_model_id) as assistant:

כך, תוכלו להטמיע את ממשק המשתמש המקורי כדי להתמודד היטב עם ניהול הזיכרון.

לאחר הקריאה ל-start(), Assistant יוצרת זרם של אירועים שמעבירים את המצבים השונים שבהם Assistant נמצאת כרגע, לדוגמה:

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}

בקטע EventType מופיעים פרטים על כל האירועים והארגומנטים שלהם.

מילון מונחים:

  • מילת הפעלה: הביטוי ש-Assistant מאזינה לו כשהוא לא מושתק:

    "OK Google" OR "Hey Google"
    
  • הפעלה: בקשה יחידה למשתמש ואחריה תגובה מ-Assistant.

  • שיחה: פנייה אחת או יותר שיובילו לתוצאה הסופית הרצויה מ-Assistant:

    "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!"
    
פרמטרים:
  • credentials (פרטי הכניסה של google.oauth2.credentials) – פרטי הכניסה של המשתמש ל-OAuth2 של Google.
  • device_model_id (str) – ה-device_model_id הרשום לפרויקט שלכם ב-Google. המחרוזת לא יכולה להיות מחרוזת ריקה.
עולה:

ValueError – אם device_model_id נשארה 'ללא' או ריקה.

device_idדואר נכנס

מחזירה את מזהה המכשיר שנוצר על ידי Assistant.

הערך הזה מזהה את המכשיר שלכם בשרת כשאתם משתמשים בשירותים כמו Google Device Actions. מילוי השדה של הנכס הזה מתבצע רק אחרי קריאה ל-start().

החזרות:מזהה המכשיר נקרא start(), אחרת המחרוזת תהיה ריקה.
סוג החזרה:str
send_text_query(שאילתה)ζ

נשלחת |שאילתה| ל-Assistant כאילו היא נאמרה על ידי המשתמש.

הפעולה תהיה זהה לזו של משתמש שמדבר את מילת ההפעלה ומבצע שאילתה או אמירת התשובה לשאילתת מעקב.

פרמטרים:query (str) – שאילתת הטקסט לשליחה אל Assistant.
set_mic_mute(is_muted)ζ

Assistant תזהה את מילת ההפעלה.

מאפשרת להשבית את Assistant כדי להאזין למילת ההפעלה. כך פועלת פונקציונליות דומה ללחצן הפרטיות בחלק האחורי של Google Home.

השיטה הזו לא מתאימה אם Assistant עדיין לא הופעלה.

פרמטרים:is_muted (bool) – True מפסיקה ל-Assistant להאזין ו-False מאפשרת להתחיל מחדש.
start()הפרויקט;

Assistant מופעלת, כולל האזנה למילת הפעלה.

לאחר ההפעלה של start(), Assistant תתחיל לעבד נתונים ממקור האודיו של 'ALSA' המוגדר כברירת מחדל, כדי להאזין למילת ההפעלה. הפעולה הזו תגרום להפעלת שירותים נוספים ש-Assistant מספקת, כמו טיימרים/התראות. אפשר לקרוא לשיטה הזו רק פעם אחת. לאחר הקריאה, Assistant תמשיך לפעול עד ש__exit__ יופעל.

החזרות:תור של אירועים המודיע על שינויים במצב Assistant.
סוג החזרה:google.assistant.event.IterableEventQueue
start_conversation()הפרויקט;

מתחיל שיחה חדשה עם Assistant באופן ידני.

מתחיל להקליט את הדיבור של המשתמש ולשלוח אותו ל-Google, בדומה למה שקורה כש-Assistant שומעת את מילת ההפעלה.

השיטה הזו לא מתאימה אם Assistant לא הופעלה או הושתקה.

stop_conversation()הפרויקט;

הפסקת כל שיחה פעילה עם Assistant.

Assistant יכולה להקשיב לשאילתה של המשתמש או להגיב לו. אם אין אף שיחה פעילה, זה לא משהו.

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

מרחיב את האירוע כדי להוסיף ניתוח של 'alert_type'.

כיתה google.assistant.library.event.AlertType

סוגי התראות.

בשיחה עם ON_ALERT_STARTED ו-ON_ALERT_FINISHED אירועים.

ALARM = 0

אירוע שמוגדר לזמן מוחלט, כגון '03:00 ביום שני'

TIMER = 1הפרויקט שלי

אירוע שמוגדר לזמן יחסי, כמו '30 שניות מעכשיו'

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

מרחיב את האירוע כדי להוסיף מאפיין 'פעולות'.

actionsדואר נכנס

מחולל פקודות להפעלה במכשיר הנוכחי.

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

אירוע שנוצר על ידי Assistant.

typeדואר נכנס

EventType – סוג האירוע שנוצר.

argsדואר נכנס

script – ארגומנטי מפתח/ערך שמשויכים לאירוע הזה.

סטנדרט New(event_type, args, **kwargs)✔;"

אם צריך, יוצרים אירוע חדש עם מחלקת אירועים.

פרמטרים:
  • event_type (int) – מזהה מספרי שתואם לאירוע ב-google.assistant.event.EventType.
  • args (script) – ארגומנטי מפתח/ערך המשויכים לאירוע הזה.
  • kwargs (וורקס) – צמדי מפתח/ערך אופציונליים וספציפיים לסיווג הכיתה של אירוע (TypeType)
כיתה google.assistant.library.event.EventType

סוגי אירועים.

ON_ALERT_FINISHED = 11הפרויקט;

צליל ההתראה של alert_type הסתיים.

פרמטרים:alert_type (AlertType) – המזהה של Enum שמייצג את סוג ההתראה שהושלמה.
ON_ALERT_STARTED = 10

מציין שהתראת התראה התחילה.

ההתראה הזו תימשך עד לקבלת ON_ALERT_FINISHED עם אותה alert_type. רק התראה אחת צריכה להיות פעילה בכל רגע נתון.

פרמטרים:alert_type (AlertType) – המזהה של ה-Enum שמייצג את סוג הצליל שנשמע כרגע.
ON_ASSISTANT_ERROR = 12הפרויקט;

העמודה מציינת אם ספריית Assistant נתקלה בשגיאה.

פרמטרים:is_fatal (bool) – אם הערך הוא True, Assistant לא תוכל לשחזר וצריך להפעיל אותו מחדש.
ON_CONVERSATION_TURN_FINISHED = 9

Assistant סיימה את הפנייה הנוכחית.

כולל עיבוד של שאילתת משתמש ואמירת התגובה המלאה, אם יש כזו.

פרמטרים:with_tracking_on_turn (bool) – אם הערך הוא True, Assistant מצפה לאינטראקציה נוספת מצד המשתמש. המיקרופון ייפתח מחדש כדי לאפשר למשתמש לענות על שאלת המשך.
ON_CONVERSATION_TURN_STARTED = 1הפרויקט שלי

סמל של פנייה חדשה.

Assistant מקשיבה עכשיו, מחכה לשאילתה של המשתמש. יכול להיות שבעקבות ההפעלה הזו שומעים את מילת ההפעלה או start_conversation() ממתקשרים ל-Assistant.

ON_CONVERSATION_TURN_TIMEOUT = 2

תם הזמן הקצוב לתפוגה של Assistant בהמתנה לשאילתה שאפשר להבחין בה.

המצב הזה יכול להיגרם כתוצאה מטריגר של מילת ההפעלה, או ש-Assistant לא יכולה להבין את מה שהמשתמש אמר.

ON_DEVICE_ACTION = 14הפרויקט

מציין שבקשה לפעולת המכשיר נשלחה למכשיר.

ההודעה הזו נשלחת אם מופעל תחביר של מכשיר כלשהו בתכונות הנתמכות במכשיר. לסוג האירוע הזה יש מאפיין 'פעולות' מיוחד שיחזיר איטרציות או פקודות של פעולות במכשיר ואת הפרמטרים המשויכים להם (אם רלוונטי).

פרמטרים:dict – מטען ייעודי (payload) של JSON מקודד לבקשה של פעולת מכשיר.
ON_END_OF_UTTERANCE = 3הפרויקט שלי

Assistant הפסיקה להאזין לשאילתת משתמש.

יכול להיות ש-Assistant לא הסתיימה כדי להבין מה אמרה המשתמשת, אבל היא הפסיקה להאזין לנתוני אודיו נוספים.

ON_MEDIA_STATE_ERROR = 20

מציין שאירעה שגיאה במהלך ההפעלה של טראק.

נגן המדיה המובנה ינסה לדלג לטראק הבא או לחזור אל ON_MEDIA_STATE_IDLE אם לא נותר דבר להפעלה.

ON_MEDIA_STATE_IDLE = 16

מציין שלא מושמע שום דבר ולא מופעל תור כלשהו להפעלה.

האירוע הזה משודר מנגן המדיה המובנה של ספריית Google Assistant לחדשות ולפודקאסטים בזמן ההפעלה, ובכל פעם שהנגן עובר למצב ללא פעילות כי המשתמש הפסיק את המדיה או השהה אותה, והזמן הקצוב לתפוגה הסתיים.

ON_MEDIA_TRACK_LOAD = 17הפרויקט;

מציין שהטראק נטען אבל לא התחיל לפעול.

יכול להיות שהנתונים יישלחו מספר פעמים אם המטא-נתונים החדשים ייטענו באופן אסינכרוני. אחריו מופיע בדרך כלל האירוע ON_MEDIA_TRACK_PLAY

פרמטרים:
  • metadata (הכתבה) –

    מטא-נתונים של הטראק שנטען. חלק מהשדות לא ימולאו – אם שדה מסוים לא ידוע, הוא לא ייכלל. שדות המטא-נתונים כוללים:

    אלבום(str): שם האלבום שאליו הטראק שייך.
  • track_type (MediaTrackType) – סוג הטראק שנטען.
ON_MEDIA_TRACK_PLAY = 18

התנאי מציין שהטראק מושמע כרגע.

המצב הזה יופעל רק כשעוברים ממדינה אחת לאחרת, כמו ON_MEDIA_TRACK_LOAD או ON_MEDIA_TRACK_STOP

פרמטרים:
  • metadata (הכתבה) –

    מטא-נתונים של טראק ההפעלה. אם שדה לא ידוע, הוא לא ייכלל. שדות המטא-נתונים כוללים:

    אלבום(str): שם האלבום שאליו הטראק שייך.
  • position_ms (double) – המיקום הנוכחי בטראק מופעל, באלפיות השנייה, מתחילתו. אם הערך 'metadata.duration_ms' לא ידוע (מוגדר ל-0), השדה הזה לא יוגדר.
  • track_type (MediaTrackType) – סוג הטראק שמופעל.
ON_MEDIA_TRACK_STOP = 19

מציין שרצועה שהושמעה בעבר מופסקת.

זה קורה בדרך כלל כתוצאה מהשהיה של המשתמש. אם המסלול יופעל על ידי המשתמש, הטראק יכול לחזור ל-ON_MEDIA_TRACK_PLAY.

פרמטרים:
  • metadata (הכתבה) –

    מטא-נתונים של הטראק שהופסק. אם שדה לא ידוע, הוא לא ייכלל. שדות המטא-נתונים כוללים:

    אלבום(str): שם האלבום שאליו הטראק שייך.
  • position_ms (double) – המיקום הנוכחי בטראק (באלפיות השנייה) מתחילתו. אם הערך 'metadata.duration_ms' לא ידוע (מוגדר ל-0), השדה הזה לא יוגדר.
  • track_type (MediaTrackType) – סוג הטראק הופסק.
ON_MUTED_CHANGED = 13הפרויקט;

מציין שה-Assistant מאזין או לא מאזין.

באפשרות start() תמיד ייווצר ON_MUTED_CHANGED כדי לדווח על הערך הראשוני.

פרמטרים:is_muted (bool) – אם הערך הוא True, Assistant לא מאזינה למילת ההפעלה שלה ולא תגיב לשאילתות של משתמשים.
ON_NO_RESPONSE = 8הפרויקט;

Assistant סיימה את התור שלה אבל אין מה להגיד.

ON_RECOGNIZING_SPEECH_FINISHED = 5

Assistant קבעה את הדיבור הסופי שזוהה.

פרמטרים:text (str) – הפרשנות הסופית לטקסט של שאילתת המשתמש.
ON_RENDER_RESPONSE = 15

מציין של-Assistant יש פלט טקסט לעיבוד של תגובה.

פרמטרים:
  • type (RenderResponseType) – סוג התגובה שרוצים לעבד.
  • text (str) – המחרוזת שצריך לעבד עבור RenderResponseType.TEXT.
ON_RESPONDING_FINISHED = 7

Assistant סיימה להגיב באמצעות הקול.

ON_RESPONDING_STARTED = 6

Assistant מתחילה להגיב באמצעות הקול.

Assistant תגיב עד שON_RESPONDING_FINISHED תתקבל.

פרמטרים:is_error_response (bool) – True – מוצגת הודעת השגיאה המקומית TTS, אחרת Assistant מגיבה בתגובה לשרת.
ON_START_FINISHED = 0

ההפעלה של ספריית Assistant הסתיימה.

class google.assistant.library.event.IterableEventQueue(timeout=3600)הפרויקט;

מרחיב את התור.יש להוסיף תור של __iter__.

offer(אירוע)

הצעת אירוע להוספה לתור.

אם התור מלא כרגע, האירוע יתועד אך לא יתווסף.

פרמטרים:event (אירוע) – האירוע שרוצים להוסיף לתור.
class google.assistant.library.event.MediaStateChangeEvent(event_type, args, **_)

הרחבת האירוע כדי להוסיף ניתוח של ה'מצב'.

כיתה google.assistant.library.event.MediaTrackType

סוגי הטראקים לאירועים ON_MEDIA_TRACK_X.

בשימוש עם ON_MEDIA_TRACK_LOAD, ON_MEDIA_TRACK_PLAY, ו-ON_MEDIA_TRACK_STOP

CONTENT = 2

התוכן עצמו של פריט (חדשות/פודקאסט).

TTS = 1הפרויקט שלי

טקסט מבוא או מסלול ביניים הקשורים לפריט.

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

מרחיב את האירוע כדי להוסיף ניתוח של 'response_type'.

כיתה google.assistant.library.event.RenderResponseType

סוגי התוכן לעיבוד.

בשימוש עם ON_RENDER_RESPONSE