UserState class
Membaca dan menulis status pengguna untuk bot Anda ke penyimpanan.
- Memperluas
Keterangan
Setiap pengguna yang berkomunikasi dengan bot Anda akan memiliki objek penyimpanan terisolasi sendiri yang dapat digunakan untuk mempertahankan informasi tentang pengguna di semua percakapan yang Anda miliki dengan pengguna tersebut.
const { UserState, MemoryStorage } = require('botbuilder');
const userState = new UserState(new MemoryStorage());
Konstruktor
| User |
Membuat instans UserState baru. |
Metode
| get |
Mengembalikan kunci penyimpanan untuk status pengguna saat ini. |
Metode yang Diwarisi
| clear(Turn |
Menghapus objek status saat ini untuk giliran. |
| create |
Membuat aksesor properti baru untuk membaca dan menulis properti individual ke objek penyimpanan status bot. |
| delete(Turn |
Hapus objek status pencadangan untuk giliran saat ini. |
| get(Turn |
Mengembalikan objek status singgahan atau tidak terdefinisi jika tidak di-cache. |
| load(Turn |
Membaca dan menyimpan objek status pencadangan untuk giliran. |
| save |
Menyimpan objek status singgahan jika telah diubah. |
Detail Konstruktor
UserState(Storage, string)
Membuat instans UserState baru.
new UserState(storage: Storage, namespace?: string)
Parameter
- storage
- Storage
Penyedia penyimpanan untuk mempertahankan status pengguna.
- namespace
-
string
(Opsional) namespace untuk ditambahkan ke kunci penyimpanan. Default ke string kosong.
Detail Metode
getStorageKey(TurnContext)
Mengembalikan kunci penyimpanan untuk status pengguna saat ini.
function getStorageKey(context: TurnContext): string | undefined
Parameter
- context
- TurnContext
Konteks untuk pergantian percakapan saat ini dengan pengguna.
Mengembalikan
string | undefined
Kunci penyimpanan untuk status pengguna saat ini.
Detail Metode yang Diwarisi
clear(TurnContext)
Menghapus objek status saat ini untuk giliran.
function clear(context: TurnContext): Promise<void>
Parameter
- context
- TurnContext
Konteks untuk pergantian percakapan saat ini dengan pengguna.
Mengembalikan
Promise<void>
Janji yang mewakili operasi asinkron.
Keterangan
Objek status yang dibersihkan tidak akan bertahan sampai saveChanges() telah dipanggil.
await botState.clear(context);
await botState.saveChanges(context);
createProperty<T>(string)
Membuat aksesor properti baru untuk membaca dan menulis properti individual ke objek penyimpanan status bot.
function createProperty<T>(name: string): StatePropertyAccessor<T>
Parameter
- name
-
string
Nama properti yang akan ditambahkan.
Mengembalikan
Aksesor untuk properti .
Diwarisi DariBotState.createProperty
delete(TurnContext)
Hapus objek status pencadangan untuk giliran saat ini.
function delete(context: TurnContext): Promise<void>
Parameter
- context
- TurnContext
Konteks untuk pergantian percakapan saat ini dengan pengguna.
Mengembalikan
Promise<void>
Janji yang mewakili operasi asinkron.
Keterangan
Objek status akan dihapus dari penyimpanan jika ada. Jika objek status telah dibaca dan di-cache, cache akan dihapus.
await botState.delete(context);
get(TurnContext)
Mengembalikan objek status singgahan atau tidak terdefinisi jika tidak di-cache.
function get(context: TurnContext): any | undefined
Parameter
- context
- TurnContext
Konteks untuk pergantian percakapan saat ini dengan pengguna.
Mengembalikan
any | undefined
Objek status singgahan atau tidak terdefinisi jika tidak di-cache.
Keterangan
Contoh ini menunjukkan cara mendapatkan objek status yang sudah dimuat dan di-cache secara sinkron:
const state = botState.get(context);
Diwariskan DariBotState.get
load(TurnContext, boolean)
Membaca dan menyimpan objek status pencadangan untuk giliran.
function load(context: TurnContext, force?: boolean): Promise<any>
Parameter
- context
- TurnContext
Konteks untuk pergantian percakapan saat ini dengan pengguna.
- force
-
boolean
(Opsional) Jika true cache akan dilewati dan status akan selalu dibaca langsung dari penyimpanan. Default ke false.
Mengembalikan
Promise<any>
Status cache.
Keterangan
Bacaan berikutnya akan mengembalikan objek yang di-cache kecuali bendera force diteruskan di mana akan memaksa objek status dibaca ulang.
Metode ini secara otomatis dipanggil pada akses pertama dari salah satu aksesor properti yang dibuat.
const state = await botState.load(context);
saveChanges(TurnContext, boolean)
Menyimpan objek status singgahan jika telah diubah.
function saveChanges(context: TurnContext, force?: boolean): Promise<void>
Parameter
- context
- TurnContext
Konteks untuk pergantian percakapan saat ini dengan pengguna.
- force
-
boolean
(Opsional) jika true status akan selalu ditulis terlepas dari status perubahannya. Default ke false.
Mengembalikan
Promise<void>
Janji yang mewakili operasi asinkron.
Keterangan
Jika bendera force diteruskan dalam objek status yang di-cache akan disimpan terlepas dari apakah telah diubah atau tidak dan jika tidak ada objek yang di-cache, objek kosong akan dibuat dan kemudian disimpan.
await botState.saveChanges(context);
Diwariskan DariBotState.saveChanges