בעזרת Customer Experience Insights (תובנות לגבי חוויית הלקוח, CX Insights) אתם יכולים לייצא את נתוני השיחות והניתוחים של CX Insights אל BigQuery כדי להריץ שאילתות גולמיות משלכם. תהליך הייצוא כותב סכימה שדומה למסגרת של ניתוח הדיבור. במדריך הזה מוסבר תהליך הייצוא.
יצירת טבלה ב-BigQuery ומערך נתונים חדשים
כדי שהייצוא של CX Insights יתבצע בהצלחה, צריך טבלה ב-BigQuery. אם אין לכם טבלת יעד, תוכלו להשתמש בדוגמה הזו כדי ליצור טבלה וערכת נתונים חדשות באמצעות כלי שורת הפקודה של bq.
אין צורך לציין סכימה לטבלה כי תהליך הייצוא יוצר אותה. עם זאת, אם מציינים סכימה, חובה להגדיר במפורש את הגרסה. הפקודה EXPORT_VERSION_LATEST_AVAILABLE לא מספקת באופן מהימן את הגרסה העדכנית ביותר, ויכול להיות שהיא תסיר עמודות מהטבלה. שליחת שאילתה עם סכימה אבל ללא גרסה מספקת גרסה מוקדמת כברירת מחדל. אפשר לעיין במסמכי התיעוד של סכימת BigQuery כדי לראות את סכימת הפלט והגדרות העמודות.
יש הגבלות מסוימות על המיקום של מקור הנתונים ב-BigQuery.
שיקולים בקשר למיקום
ההגבלות שחלות על קטגוריות של Cloud Storage חלות גם על CX Insights. לדוגמה, אם מערך הנתונים ב-BigQuery נמצא במיקום EU במספר אזורים, אפשר לייצא נתונים מ-CX Insights רק מאחד ממיקומי europe-*.
bq mk --dataset --location=LOCATION PROJECT:DATASET bq mk --table PROJECT:DATASET.TABLE
ייצוא נתוני שיחות ל-BigQuery
הכלי לייצוא תומך בסינון ובכתיבת נתונים לטבלאות שמוגנות באמצעות מפתחות הצפנה בניהול הלקוח (CMEK). אם לא רוצים להפעיל את התכונה הזו, אפשר לדלג קדימה ולייצא את הנתונים ל-BigQuery.
הוספת סינון לבקשה (אופציונלי)
הייצוא ל-BigQuery תואם לכל השילובים של מסננים שאפשר להחיל על שאילתות שיחה.
לדוגמה, הדוגמה הבאה מייצאת את כל השיחות עם 10 תורות או יותר שטופלו על ידי agent_id "007" בין 1 בינואר 2021 ל-2 בינואר 2021 לפי שעון PST:
FILTER='create_time>"2021-01-01T00:00:00-08:00" create_time<"2021-01-02T00:00:00-08:00" agent_id="007" turn_count>="10"'
ייצוא נתונים לטבלה שמוגנת באמצעות CMEK (אופציונלי)
צריך להקצות לחשבון השירות של CX Insights את התפקיד Cloud KMS CryptoKey Encrypter/Decrypter. במסמכי העזרה בנושא בעיות ידועות יש מידע על הפורמט של חשבון שירות. אחרי שמקצים את התפקיד הנכון לחשבון השירות, מוסיפים לבקשת הייצוא את השם המלא של מפתח ה-KMS שמגן על הטבלה:
KMS_KEY='projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<key_name>'
ציון אפשרות של פעולת כתיבה בבקשה (אופציונלי)
ייצוא של נתוני CCAI Insights תומך באפשרויות הבאות של העברת נתונים מ-BigQuery:
-
WRITE_TRUNCATE: אם הטבלה כבר קיימת, BigQuery מחליף את נתוני הטבלה ומשתמש בסכימה מתוצאת השאילתה. זו האפשרות שמוגדרת כברירת המחדל. -
WRITE_APPEND: אם הטבלה כבר קיימת, אפליקציית BigQuery מוסיפה את הנתונים לטבלה.
לדוגמה, בדוגמה הבאה הנתונים המיוצאים יצורפו לטבלת יעד קיימת:
WRITE_DISPOSITION='WRITE_APPEND'
ייצוא הנתונים ל-BigQuery
בדוגמת הקוד הבאה אפשר לראות איך לייצא את הנתונים. פרטים מלאים מופיעים במאמרי העזרה בנושא ייצוא.
הייצוא יוצר אובייקט Operation שפועל לאורך זמן. תוכלו לדגום את הפעולה כדי לבדוק את הסטטוס שלה.
REST
לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:
- PROJECT_ID: מזהה הפרויקט ב-Google Cloud.
- DATASET: השם של מערך הנתונים ב-BigQuery שאליו רוצים לייצא את הנתונים.
- TABLE: שם הטבלה ב-BigQuery שאליה ייכתבו הנתונים של CX Insights.
- FILTER_QUERY: שאילתה שמשמשת את CX Insights לייצוא רק של שיחות עם מאפיינים ספציפיים. לדוגמה, אם מזינים את הערך agent_id=\"007\" , רק שיחות שמשויכות לסוכן 007 ייצאו.
ה-method של ה-HTTP וכתובת ה-URL:
POST https://contactcenterinsights.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/insightsdata:export
תוכן בקשת JSON:
{
"bigQueryDestination": {
"projectId": "PROJECT_ID",
"dataset": "DATASET",
"table": "TABLE",
},
"filter": "FILTER_QUERY"
}
כדי לשלוח את הבקשה צריך להרחיב אחת מהאפשרויות הבאות:
אתם אמורים לקבל תגובת JSON שדומה לזו:
{
"name": "projects/PROJECT_ID/locations/us-central1/operations/OPERATION_ID"
}
Python
כדי לבצע אימות ב-CX Insights, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Java
כדי לבצע אימות ב-CX Insights, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Node.js
כדי לבצע אימות ב-CX Insights, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
ייצוא נתונים לפרויקט אחר (אופציונלי)
כברירת מחדל, נתוני הייצוא של CX Insights ל-BigQuery נכתבים לאותו פרויקט שבו נמצאים נתוני CX Insights. עם זאת, אפשר גם לייצא ל-BigQuery בפרויקט אחר.
מוודאים שלחשבון השירות של CX Insights יש גישה ל-BigQuery בפרויקט של הנמען באמצעות מסוף ניהול הזהויות והרשאות הגישה (IAM) או באמצעות gcloud:
gcloud projects add-iam-policy-binding RECEIVER_PROJECT \
--member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-contactcenterinsights.iam.gserviceaccount.com \
--role=roles/bigquery.admin
כדי לייצא את הנתונים לפרויקט ספציפי, מזינים את מספר המזהה של פרויקט הנמען בשדה project_id באובייקט BigQueryDestination.
הרצת שאילתות על הנתונים ב-BigQuery
מריצים את הפקודה הזו כדי לשלוח שאילתה לנתונים ב-BigQuery. אפשרויות נוספות לשאילתות מפורטות במאמר BigQuery Quickstart.
gcloud config set project PROJECT bq show DATASET.TABLE
שאילתות לגבי שיחות שיוצאו:
bq query --use_legacy_sql=false \ "SELECT conversationName FROM DATASET.TABLE"