PrivateConversationState class
봇의 PrivateConversation 상태를 스토리지에 읽고 씁니다.
- Extends
설명
사용자 또는 그룹과 함께 봇에 있는 각 PrivateConversation에는 PrivateConversation 턴 간에 PrivateConversation 추적 정보를 유지하는 데 사용할 수 있는 자체 격리된 스토리지 개체가 있습니다. 이 상태 정보는 clear()호출하여 언제든지 다시 설정할 수 있습니다.
const { PrivateConversationState, MemoryStorage } = require('botbuilder');
const PrivateConversationState = new PrivateConversationState(new MemoryStorage());
생성자
Private |
새 PrivateConversationState 인스턴스를 만듭니다. |
메서드
get |
현재 PrivateConversation 상태의 스토리지 키를 반환합니다. |
상속된 메서드
clear(Turn |
턴의 현재 상태 개체를 지웁니다. |
create |
개별 속성을 읽고 봇 상태 스토리지 개체에 쓰기 위한 새 속성 접근자를 만듭니다. |
delete(Turn |
현재 턴에 대한 지원 상태 개체를 삭제합니다. |
get(Turn |
캐시된 상태 개체를 반환하거나 캐시되지 않은 경우 정의되지 않은 개체를 반환합니다. |
load(Turn |
턴에 대한 백업 상태 개체를 읽고 캐시합니다. |
save |
캐시된 상태 개체가 변경된 경우 저장합니다. |
생성자 세부 정보
PrivateConversationState(Storage, string)
새 PrivateConversationState 인스턴스를 만듭니다.
new PrivateConversationState(storage: Storage, namespace?: string)
매개 변수
- storage
- Storage
PrivateConversation 상태를 유지할 스토리지 공급자입니다.
- namespace
-
string
(선택 사항) 스토리지 키에 추가할 네임스페이스입니다. 기본값은 빈 문자열입니다.
메서드 세부 정보
getStorageKey(TurnContext)
현재 PrivateConversation 상태의 스토리지 키를 반환합니다.
function getStorageKey(context: TurnContext): string | undefined
매개 변수
- context
- TurnContext
사용자와 PrivateConversation의 현재 턴에 대한 컨텍스트입니다.
반환
string | undefined
현재 PrivateConversation 상태의 스토리지 키입니다.
상속된 메서드 세부 정보
clear(TurnContext)
턴의 현재 상태 개체를 지웁니다.
function clear(context: TurnContext): Promise<void>
매개 변수
- context
- TurnContext
사용자와의 현재 대화 전환에 대한 컨텍스트입니다.
반환
Promise<void>
비동기 작업을 나타내는 프라미스입니다.
설명
삭제된 상태 개체는 saveChanges() 호출될 때까지
await botState.clear(context);
await botState.saveChanges(context);
createProperty<T>(string)
개별 속성을 읽고 봇 상태 스토리지 개체에 쓰기 위한 새 속성 접근자를 만듭니다.
function createProperty<T>(name: string): StatePropertyAccessor<T>
매개 변수
- name
-
string
추가할 속성의 이름입니다.
반환
속성의 접근자입니다.
delete(TurnContext)
현재 턴에 대한 지원 상태 개체를 삭제합니다.
function delete(context: TurnContext): Promise<void>
매개 변수
- context
- TurnContext
사용자와의 현재 대화 전환에 대한 컨텍스트입니다.
반환
Promise<void>
비동기 작업을 나타내는 프라미스입니다.
설명
상태 개체가 있는 경우 스토리지에서 제거됩니다. 상태 개체를 읽고 캐시한 경우 캐시가 지워질 것입니다.
await botState.delete(context);
get(TurnContext)
캐시된 상태 개체를 반환하거나 캐시되지 않은 경우 정의되지 않은 개체를 반환합니다.
function get(context: TurnContext): any | undefined
매개 변수
- context
- TurnContext
사용자와의 현재 대화 전환에 대한 컨텍스트입니다.
반환
any | undefined
캐시된 상태 개체이거나 캐시되지 않은 경우 정의되지 않은 개체입니다.
설명
이 예제에서는 이미 로드되고 캐시된 상태 개체를 동기적으로 가져오는 방법을 보여줍니다.
const state = botState.get(context);
load(TurnContext, boolean)
턴에 대한 백업 상태 개체를 읽고 캐시합니다.
function load(context: TurnContext, force?: boolean): Promise<any>
매개 변수
- context
- TurnContext
사용자와의 현재 대화 전환에 대한 컨텍스트입니다.
- force
-
boolean
(선택 사항) true
경우 캐시가 무시되고 상태는 항상 스토리지에서 직접 읽습니다. 기본값은 false
입니다.
반환
Promise<any>
캐시된 상태입니다.
설명
상태 개체를 강제로 다시 읽도록 하는 force
플래그가 전달되지 않는 한 후속 읽기는 캐시된 개체를 반환합니다.
이 메서드는 만든 속성 접근자의 첫 번째 액세스에서 자동으로 호출됩니다.
const state = await botState.load(context);
saveChanges(TurnContext, boolean)
캐시된 상태 개체가 변경된 경우 저장합니다.
function saveChanges(context: TurnContext, force?: boolean): Promise<void>
매개 변수
- context
- TurnContext
사용자와의 현재 대화 전환에 대한 컨텍스트입니다.
- force
-
boolean
(선택 사항) true
경우 상태는 변경 상태에 관계없이 항상 기록됩니다. 기본값은 false
입니다.
반환
Promise<void>
비동기 작업을 나타내는 프라미스입니다.
설명
force
플래그가 캐시된 상태 개체에 전달되면 개체가 변경되었는지 여부에 관계없이 저장되고 캐시된 개체가 없으면 빈 개체가 만들어지고 저장됩니다.
await botState.saveChanges(context);