AppRequest

AppRequest هو طلب يتم إرساله من خلال "مساعد Google" لتنفيذ عملية معيّنة من أجل التفاعل مع إجراء معيّن. يتم تحديد إصدار واجهة برمجة التطبيقات في عنوان HTTP. بالنسبة إلى واجهة برمجة التطبيقات للإصدار 1، يحتوي العنوان على: Google-Assistant-API-Version: v1. بالنسبة إلى واجهة برمجة التطبيقات للإصدار 2، يحتوي العنوان على: Google-actions-API-Version: 2. للاطّلاع على أمثلة حول كيفية استخدام ذلك في الإجراءات على Google، يمكنك الانتقال إلى https://developers.google.com/assistant/df-asdk/reference/conversation-webblogspot-json .

تمثيل JSON
{
  "user": {
    object (User)
  },
  "device": {
    object (Device)
  },
  "surface": {
    object (Surface)
  },
  "conversation": {
    object (Conversation)
  },
  "inputs": [
    {
      object (Input)
    }
  ],
  "isInSandbox": boolean,
  "availableSurfaces": [
    {
      object (Surface)
    }
  ]
}
الحقول
user

object (User)

المستخدم الذي بدأ المحادثة.

device

object (Device)

معلومات عن الجهاز الذي يستخدمه المستخدم للتفاعل مع "الإجراء"

surface

object (Surface)

معلومات عن مساحة التفاعل التي يتفاعل معها المستخدم، مثل ما إذا كان يمكنه إخراج الصوت أو شاشة

conversation

object (Conversation)

يحتوي على بيانات الجلسة مثل رقم تعريف المحادثة والرمز المميز للمحادثة.

inputs[]

object (Input)

قائمة المدخلات المقابلة للمدخلات المتوقعة التي يتم تحديدها من خلال الإجراء. بالنسبة إلى مشغِّل المحادثة الأولي، يحتوي الإدخال على معلومات عن كيفية بدء المستخدم للمحادثة.

isInSandbox

boolean

تحدِّد هذه السياسة ما إذا كان يجب التعامل مع الطلب في وضع الحماية.

availableSurfaces[]

object (Surface)

الأسطح المتوفرة للتسليم على أسطح مختلفة

المستخدِم

تمثيل JSON
{
  "idToken": string,
  "profile": {
    object (UserProfile)
  },
  "accessToken": string,
  "permissions": [
    enum (Permission)
  ],
  "locale": string,
  "lastSeen": string,
  "userStorage": string,
  "packageEntitlements": [
    {
      object (PackageEntitlement)
    }
  ],
  "userVerificationStatus": enum (UserVerificationStatus)
}
الحقول
idToken

string

الرمز المميّز الذي يمثل هوية المستخدم هذا رمز مميّز للويب مع Json، بما في ذلك الملف الشخصي المشفَّر. يتوفّر التعريف على الرابط https://developers.google.com/identity/protocols/OpenIDConnect#obtainuserinfo.

profile

object (UserProfile)

معلومات عن المستخدم النهائي لن تكون بعض الحقول متاحة إلا إذا منحت المستخدم إذنًا بتقديم هذه المعلومات إلى "الإجراء".

accessToken

string

رمز مميز لبروتوكول OAuth2 يعرّف المستخدم في نظامك. متاح فقط إذا ربط المستخدم حسابه.

permissions[]

enum (Permission)

يحتوي على أذونات منحها المستخدم لهذا الإجراء.

locale

string

إعداد اللغة الأساسية للمستخدم الذي يقدّم الطلب يتبع رمز اللغة IETF BCP-47 http://www.rfc-editor.org/rfc/bcp/bcp47.txt. ومع ذلك، لا يتم تضمين العلامة الفرعية للنص البرمجي.

lastSeen

string (Timestamp format)

الطابع الزمني للتفاعل الأخير مع هذا المستخدم. سيتم حذف هذا الحقل إذا لم يسبق للمستخدم التفاعل مع الوكيل.

يجب أن يكون طابعًا زمنيًا بالتنسيق RFC3339 UTC "Zulu"‎ وبدقّة تصل إلى نانوثانية. مثال: "2014-10-02T15:01:23.045123456Z"

userStorage

string

رمز مميز ومبهم يوفّره التطبيق ويستمر في إجراء محادثات لمستخدم معيّن. الحد الأقصى لحجم السلسلة هو 10 آلاف حرف.

packageEntitlements[]

object (PackageEntitlement)

قائمة بتخويلات المستخدمين لكل اسم حزمة مُدرَج في حزمة الإجراءات، إن وجدت.

userVerificationStatus

enum (UserVerificationStatus)

يشير إلى حالة إثبات هوية المستخدم.

الملف الشخصي للمستخدم

تحتوي على المعلومات الشخصية للمستخدم. لا تتم تعبئة الحقول إلا إذا منح المستخدم الإذن بالإجراء في حقل معيّن.

تمثيل JSON
{
  "displayName": string,
  "givenName": string,
  "familyName": string
}
الحقول
displayName

string

الاسم الكامل للمستخدم كما هو محدّد في حسابه على Google يجب الحصول على إذن NAME.

givenName

string

الاسم الأول للمستخدم على النحو المحدّد في حسابه على Google. يجب الحصول على إذن NAME.

familyName

string

اسم العائلة للمستخدم على النحو المحدّد في حسابه على Google. أن يكون هذا الحقل فارغًا. يجب الحصول على إذن NAME.

التخويل

قائمة الاستحقاقات ذات الصلة باسم الحزمة

تمثيل JSON
{
  "packageName": string,
  "entitlements": [
    {
      object (Entitlement)
    }
  ]
}
الحقول
packageName

string

يجب أن يتطابق اسم الحزمة في حزمة الإجراءات.

entitlements[]

object (Entitlement)

قائمة الاستحقاقات الخاصة بتطبيق معيّن

الاستحقاق

تحديد الاستحقاق الرقمي للمستخدم. أنواع التخويلات المحتملة: عمليات الشراء المدفوعة داخل التطبيقات وعمليات الشراء داخل التطبيقات والاشتراكات داخل التطبيق.

تمثيل JSON
{
  "sku": string,
  "skuType": enum (SkuType),
  "inAppDetails": {
    object (SignedData)
  }
}
الحقول
sku

string

رمز التخزين التعريفي للمنتج. اسم حزمة التطبيق المدفوع، ولاحقة Finsky docid للشراء داخل التطبيق والاشتراك داخل التطبيق. مطابقة getSku() في واجهة برمجة التطبيقات Play InApp Billing API

skuType

enum (SkuType)

inAppDetails

object (SignedData)

ولا يتوفّر هذا العرض إلا لعمليات الشراء داخل التطبيق والمشتركين داخل التطبيق.

البيانات الموقَّعة

تمثيل JSON
{
  "inAppPurchaseData": {
    object
  },
  "inAppDataSignature": string
}
الحقول
inAppPurchaseData

object (Struct format)

مطابقة INAPP_PURCHASE_DATA من طريقة getPurchases(). يحتوي على جميع بيانات الشراء داخل التطبيق بتنسيق JSON. يمكنك الاطّلاع على التفاصيل في الجدول 6 من https://developer.android.com/google/play/billing/billing_reference.html.

inAppDataSignature

string

يطابق IN_APP_DATA_SIGNATURE من طريقة getPurchases() في Play InApp Billing API.

الجهاز

معلومات عن الجهاز الذي يستخدمه المستخدم للتفاعل مع "الإجراء"

تمثيل JSON
{
  "location": {
    object (Location)
  }
}
الحقول
location

object (Location)

تمثل الموقع الجغرافي الفعلي للجهاز، مثل خط العرض وخط الطول والعنوان المنسَّق. يجب الحصول على إذن من DEVICE_COARSE_LOCATION أو DEVICE_PRECISE_LOCATION.

سطح

تظهر معلومات خاصة بعميل "مساعد Google" للمستخدم يتفاعل معها. يمكن تمييز هذا السطح عن الأجهزة لأنّ مساحات متعدّدة على "مساعد Google" يمكن أن تتوفّر على الجهاز نفسه.

تمثيل JSON
{
  "capabilities": [
    {
      object (Capability)
    }
  ]
}
الحقول
capabilities[]

object (Capability)

قائمة بالإمكانيات التي تتيحها الواجهة في وقت الطلب، على سبيل المثال actions.capability.AUDIO_OUTPUT

الإمكانية

تمثل وحدة من الوظائف التي يمكن أن تدعمها المساحة.

تمثيل JSON
{
  "name": string
}
الحقول
name

string

اسم الإمكانية، مثل actions.capability.AUDIO_OUTPUT

محادثة

تمثيل JSON
{
  "conversationId": string,
  "type": enum (ConversationType),
  "conversationToken": string
}
الحقول
conversationId

string

معرِّف فريد للمحادثة المتعدّدة المراحل. ويتم إسناده للدور الأول. بعد ذلك، يظل كما هو عند تبادل المحادثة اللاحقة حتى يتم إنهاء المحادثة.

type

enum (ConversationType)

يشير النوع إلى حالة المحادثة في مراحلها.

conversationToken

string

رمز مميز مبهم يحدّده الإجراء في المنعطف الأخير على المحادثة يمكن استخدامه بواسطة إجراء لتتبّع المحادثة أو لتخزين البيانات المتعلقة بالمحادثة.

إدخال

تمثيل JSON
{
  "rawInputs": [
    {
      object (RawInput)
    }
  ],
  "intent": string,
  "arguments": [
    {
      object (Argument)
    }
  ]
}
الحقول
rawInputs[]

object (RawInput)

يتم تحويل الصوت إلى نص بشكل مبدئي من كل مرحلة من المحادثات. قد تكون الأدوار المتعددة في المحادثة مطلوبة لتنفيذ إجراءات على Google لتقديم بعض أنواع الإدخال إلى الإجراء.

intent

string

تشير إلى هدف المستخدم. بالنسبة إلى أول محادثة، ستتم الإشارة إلى الغرض من بدء الإجراء. بالنسبة إلى تبادلات المحادثات اللاحقة، سيكون intent هو إجراء شائع على نية Google (يبدأ بـ "الإجراءات"). على سبيل المثال، إذا كان الإدخال المتوقّع هو actions.intent.OPTION، سيكون الغرض من الأهداف المحدّد هنا إما actions.intent.OPTION إذا كان "مساعد Google" قادرًا على تنفيذ هذا الهدف، أو actions.intent.TEXT إذا قدّم المستخدم معلومات أخرى. يُرجى الاطّلاع على https://developers.google.com/assistant/df-asdk/reference/intents.

arguments[]

object (Argument)

قائمة بقيم الوسيطة المقدَّمة للإدخال المطلوب من خلال الإجراء.

الإدخال الأوّلي

تمثيل JSON
{
  "inputType": enum (InputType),

  // Union field input can be only one of the following:
  "query": string,
  "url": string
  // End of list of possible types for union field input.
}
الحقول
inputType

enum (InputType)

يشير إلى كيفية تقديم المستخدم لهذا الإدخال: ردّ مكتوب أو ردّ صوتي غير محدّد، وغير ذلك.

حقل الاتحاد input. يمكن أن تكون قيمة الإدخال الفعلية input واحدة فقط من القيم التالية:
query

string

الإدخال المكتوب أو المنطوق من المستخدم النهائي

url

string

عنوان URL المُشغِّل.