AppRequest

AppRequest adalah permintaan yang dikirim oleh Asisten Google ke fulfillment untuk berinteraksi dengan Action. Versi API ditetapkan di header HTTP. Untuk API versi 1, header-nya berisi: Google-Assistant-API-Version: v1. Untuk API versi 2, header-nya berisi: Google-actions-API-Version: 2. Untuk contoh cara penggunaannya dalam tindakan di Google, lihat https://developers.google.com/assistant/df-asdk/reference/conversation-webhook-json .

Representasi JSON
{
  "user": {
    object (User)
  },
  "device": {
    object (Device)
  },
  "surface": {
    object (Surface)
  },
  "conversation": {
    object (Conversation)
  },
  "inputs": [
    {
      object (Input)
    }
  ],
  "isInSandbox": boolean,
  "availableSurfaces": [
    {
      object (Surface)
    }
  ]
}
Kolom
user

object (User)

Pengguna yang memulai percakapan.

device

object (Device)

Informasi tentang perangkat yang digunakan pengguna untuk berinteraksi dengan Action.

surface

object (Surface)

Informasi tentang platform yang berinteraksi dengan pengguna, mis. apakah perangkat dapat menghasilkan audio atau memiliki layar.

conversation

object (Conversation)

Menyimpan data sesi seperti ID percakapan dan token percakapan.

inputs[]

object (Input)

Daftar input yang sesuai dengan input yang diharapkan yang ditentukan oleh Action. Untuk pemicu percakapan awal, input berisi informasi tentang cara pengguna memicu percakapan.

isInSandbox

boolean

Menunjukkan apakah permintaan harus ditangani dalam mode sandbox.

availableSurfaces[]

object (Surface)

Permukaan yang tersedia untuk handoff lintas permukaan.

Pengguna

Representasi JSON
{
  "idToken": string,
  "profile": {
    object (UserProfile)
  },
  "accessToken": string,
  "permissions": [
    enum (Permission)
  ],
  "locale": string,
  "lastSeen": string,
  "userStorage": string,
  "packageEntitlements": [
    {
      object (PackageEntitlement)
    }
  ],
  "userVerificationStatus": enum (UserVerificationStatus)
}
Kolom
idToken

string

token yang mewakili identitas pengguna. Ini adalah token web Json termasuk profil yang dienkode. Definisinya ada di https://developers.google.com/identity/protocols/OpenIDConnect#obtainuserinfo.

profile

object (UserProfile)

Informasi tentang pengguna akhir. Beberapa kolom hanya tersedia jika pengguna telah memberikan izin untuk memberikan informasi ini ke Action.

accessToken

string

Token OAuth2 yang mengidentifikasi pengguna di sistem Anda. Hanya tersedia jika pengguna menautkan akunnya.

permissions[]

enum (Permission)

Berisi izin yang diberikan oleh pengguna untuk Action ini.

locale

string

Setelan lokalitas utama pengguna yang membuat permintaan. Mengikuti kode bahasa IETF BCP-47 http://www.rfc-editor.org/rfc/bcp/bcp47.txt Namun, subtag skrip tidak disertakan.

lastSeen

string (Timestamp format)

Stempel waktu interaksi terakhir dengan pengguna ini. Kolom ini akan dihilangkan jika pengguna belum pernah berinteraksi dengan agen sebelumnya.

Stempel waktu dalam format RFC3339 UTC "Zulu", akurat hingga nanodetik. Contoh: "2014-10-02T15:01:23.045123456Z".

userStorage

string

Token buram yang disediakan oleh aplikasi yang dipertahankan di seluruh percakapan untuk pengguna tertentu. Ukuran maksimum string adalah 10 ribu karakter.

packageEntitlements[]

object (PackageEntitlement)

Daftar hak pengguna untuk setiap nama paket yang tercantum dalam paket Action, jika ada.

userVerificationStatus

enum (UserVerificationStatus)

Menunjukkan status verifikasi pengguna.

UserProfile

Berisi info pribadi pengguna. Kolom hanya diisi jika pengguna memberikan izin kepada Action untuk kolom tertentu.

Representasi JSON
{
  "displayName": string,
  "givenName": string,
  "familyName": string
}
Kolom
displayName

string

Nama lengkap pengguna seperti yang ditentukan di Akun Google mereka. Memerlukan izin NAME.

givenName

string

Nama depan pengguna seperti yang ditentukan di Akun Google mereka. Memerlukan izin NAME.

familyName

string

Nama belakang pengguna seperti yang ditentukan di Akun Google mereka. Perhatikan bahwa kolom ini boleh kosong. Memerlukan izin NAME.

PackageEntitlement

Daftar hak yang terkait dengan nama paket

Representasi JSON
{
  "packageName": string,
  "entitlements": [
    {
      object (Entitlement)
    }
  ]
}
Kolom
packageName

string

Harus cocok dengan nama paket dalam paket tindakan

entitlements[]

object (Entitlement)

Daftar hak untuk aplikasi tertentu

Hak

Menentukan hak digital pengguna. Jenis kemungkinan hak: aplikasi berbayar,pembelian dalam aplikasi, langganan dalam aplikasi.

Representasi JSON
{
  "sku": string,
  "skuType": enum (SkuType),
  "inAppDetails": {
    object (SignedData)
  }
}
Kolom
sku

string

SKU produk. Nama paket untuk aplikasi berbayar, akhiran Finsky docid untuk pembelian dalam aplikasi, dan langganan dalam aplikasi. Cocokkan getSku() di API Penagihan InApp Play.

skuType

enum (SkuType)

inAppDetails

object (SignedData)

Hanya ada untuk pembelian dalam aplikasi dan pelanggan dalam aplikasi.

SignedData

Representasi JSON
{
  "inAppPurchaseData": {
    object
  },
  "inAppDataSignature": string
}
Kolom
inAppPurchaseData

object (Struct format)

Cocokkan INAPP_PURCHASE_DATA dari metode getPurchases(). Berisi semua data pembelian dalam aplikasi dalam format JSON Lihat detail dalam tabel 6 di https://developer.android.com/google/play/billing/billing_reference.html.

inAppDataSignature

string

Mencocokkan IN_APP_DATA_SIGNATURE dari metode getPurchases() di Play InApp Billing API.

Perangkat

Informasi tentang perangkat yang digunakan pengguna untuk berinteraksi dengan Action.

Representasi JSON
{
  "location": {
    object (Location)
  }
}
Kolom
location

object (Location)

Mewakili lokasi perangkat sebenarnya seperti lintang, bujur, dan alamat berformat. Memerlukan izin DEVICE_COARSE_LOCATION atau DEVICE_PRECISE_LOCATION.

Platform

Informasi khusus untuk klien Asisten Google menunjukkan pengguna yang berinteraksi. Platform dibedakan dengan perangkat karena beberapa platform Asisten mungkin berada di perangkat yang sama.

Representasi JSON
{
  "capabilities": [
    {
      object (Capability)
    }
  ]
}
Kolom
capabilities[]

object (Capability)

Daftar kemampuan yang didukung platform pada saat permintaan, misalnya actions.capability.AUDIO_OUTPUT

Kemampuan

Mewakili unit fungsionalitas yang dapat didukung oleh platform.

Representasi JSON
{
  "name": string
}
Kolom
name

string

Nama kemampuan, misalnya actions.capability.AUDIO_OUTPUT

Percakapan

Representasi JSON
{
  "conversationId": string,
  "type": enum (ConversationType),
  "conversationToken": string
}
Kolom
conversationId

string

ID unik untuk percakapan multi-giliran. Ditugaskan untuk belokan pertama. Setelah itu, tampilan jam akan tetap sama untuk percakapan berikutnya hingga percakapan dihentikan.

type

enum (ConversationType)

menunjukkan status percakapan dalam siklus hidupnya.

conversationToken

string

Token tidak transparan yang ditentukan oleh Action di belokan percakapan terakhir. Ini dapat digunakan oleh Action untuk melacak percakapan atau menyimpan data terkait percakapan.

Input

Representasi JSON
{
  "rawInputs": [
    {
      object (RawInput)
    }
  ],
  "intent": string,
  "arguments": [
    {
      object (Argument)
    }
  ]
}
Kolom
rawInputs[]

object (RawInput)

Transkripsi input mentah dari setiap percakapan. Beberapa perubahan percakapan mungkin diperlukan agar Action di Google dapat memberikan beberapa jenis input ke Action.

intent

string

Menunjukkan intent pengguna. Untuk giliran percakapan pertama, intent akan merujuk pada intent pemicu untuk Action tersebut. Untuk percakapan berikutnya, intent akan berupa tindakan umum pada intent Google (dimulai dengan 'actions'). Misalnya, jika input yang diharapkan adalah actions.intent.OPTION, intent yang ditentukan di sini akan menjadi actions.intent.OPTION jika Asisten Google dapat memenuhi intent tersebut, atau actions.intent.TEXT jika pengguna memberikan informasi lain. Lihat https://developers.google.com/assistant/df-asdk/reference/intents.

arguments[]

object (Argument)

Daftar nilai argumen yang diberikan untuk input yang diminta oleh Action.

RawInput

Representasi 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.
}
Kolom
inputType

enum (InputType)

Menunjukkan cara pengguna memberikan input ini: respons yang diketik, respons suara, tidak ditentukan, dll.

Kolom union input. Nilai input sebenarnya input hanya dapat berupa salah satu dari yang berikut:
query

string

Input lisan atau yang diketik dari pengguna akhir.

url

string

URL pemicu.