다음을 통해 공유


DialogStateManager class

DialogStateManager는 메모리 범위 및 경로 확인자를 관리합니다.

설명

MemoryScopes는 대화 상자 컨텍스트 또는 턴 상태 해제에 존재할 수 있는 명명된 루트 수준 개체입니다. 경로 확인자는 $foo -> dialog.foo와 같은 매핑에 대한 바로 가기 동작을 허용합니다.

생성자

DialogStateManager(DialogContext, DialogStateManagerConfiguration)

DialogStateManager 클래스의 새 인스턴스를 초기화합니다.

속성

configuration

대화 상자 상태 관리자에 대해 구성된 경로 확인자 및 메모리 범위를 가져오거나 설정합니다.

메서드

anyPathChanged(number, string[])

워터마크 이후 경로가 변경되었는지 확인합니다.

deleteScopesMemory(string)

지정된 범위에 대한 모든 지원 메모리를 삭제합니다.

deleteValue(string)

메모리에서 속성 삭제

getMemorySnapshot()

로깅에 적합한 모든 메모리 범위를 가져옵니다.

getValue<T>(string, T | () => T)

경로 식을 사용하여 메모리에서 값을 가져옵니다.

loadAllScopes()

현재 턴에 대해 모든 메모리 범위가 로드되었는지 확인합니다.

parsePath(string, boolean)

전달된 경로의 경로 세그먼트를 정규화합니다.

saveAllChanges()

메모리 범위에 대한 변경 내용을 저장합니다.

setValue(string, any)

메모리를 값으로 설정합니다.

trackPaths(string[])

특정 경로가 변경되는 시기를 추적합니다.

transformPath(string)

등록된 경로 변환기를 사용하여 경로를 변환합니다.

version()

버전 번호를 가져옵니다.

생성자 세부 정보

DialogStateManager(DialogContext, DialogStateManagerConfiguration)

DialogStateManager 클래스의 새 인스턴스를 초기화합니다.

new DialogStateManager(dc: DialogContext, configuration?: DialogStateManagerConfiguration)

매개 변수

dc
DialogContext

대화의 현재 전환에 대한 대화 컨텍스트입니다.

configuration
DialogStateManagerConfiguration

대화 상자 상태 관리자에 대한 구성입니다.

속성 세부 정보

configuration

대화 상자 상태 관리자에 대해 구성된 경로 확인자 및 메모리 범위를 가져오거나 설정합니다.

configuration: DialogStateManagerConfiguration

속성 값

설명

지정된 대화 상자 컨텍스트 체인에 대한 단일 구성 정보 집합이 있습니다. 체인 내의 모든 DialogStateManager에 새 구성을 할당하면 전체 체인에 대한 구성이 업데이트됩니다.

메서드 세부 정보

anyPathChanged(number, string[])

워터마크 이후 경로가 변경되었는지 확인합니다.

function anyPathChanged(counter: number, paths: string[]): boolean

매개 변수

counter

number

비교할 시간 카운터입니다.

반환

boolean

카운터 이후 변경된 경로가 있으면 True입니다.

deleteScopesMemory(string)

지정된 범위에 대한 모든 지원 메모리를 삭제합니다.

function deleteScopesMemory(name: string): Promise<void>

매개 변수

name

string

범위의 이름입니다.

반환

Promise<void>

deleteValue(string)

메모리에서 속성 삭제

function deleteValue(pathExpression: string)

매개 변수

pathExpression

string

제거할 리프 속성입니다.

getMemorySnapshot()

로깅에 적합한 모든 메모리 범위를 가져옵니다.

function getMemorySnapshot(): object

반환

object

모든 메모리 범위를 나타내는 개체입니다.

getValue<T>(string, T | () => T)

경로 식을 사용하여 메모리에서 값을 가져옵니다.

function getValue<T>(pathExpression: string, defaultValue?: T | () => T): T

매개 변수

pathExpression

string

사용할 경로 식입니다.

defaultValue

T | () => T

(선택 사항) 경로를 찾을 수 없는 경우 사용할 기본값입니다. 사용할 기본값을 반환하는 함수일 수 있습니다.

반환

T

찾을 수 없거나 정의되지 않은 값이며 defaultValue 지정되지 않았습니다.

설명

이 값은 항상 메모리의 CLONE을 반환하며 결과에 대한 수정은 메모리에 영향을 주지 않습니다.

loadAllScopes()

현재 턴에 대해 모든 메모리 범위가 로드되었는지 확인합니다.

function loadAllScopes(): Promise<void>

반환

Promise<void>

설명

이 호출은 턴의 시작 부분에서 호출해야 합니다.

parsePath(string, boolean)

전달된 경로의 경로 세그먼트를 정규화합니다.

function parsePath(pathExpression: string, allowNestedPaths?: boolean): string | number[]

매개 변수

pathExpression

string

정규화할 경로입니다.

allowNestedPaths

boolean

선택적. false 중첩된 경로를 검색하면 빈 경로가 반환됩니다. 기본값은 'true'입니다.

반환

string | number[]

정규화된 경로입니다.

설명

profile.address[0] 경로는 profile.address.0정규화됩니다.

saveAllChanges()

메모리 범위에 대한 변경 내용을 저장합니다.

function saveAllChanges(): Promise<void>

반환

Promise<void>

설명

이 작업은 턴이 끝날 때 호출해야 합니다.

setValue(string, any)

메모리를 값으로 설정합니다.

function setValue(pathExpression: string, value: any)

매개 변수

pathExpression

string

메모리 경로입니다.

value

any

설정할 값입니다.

trackPaths(string[])

특정 경로가 변경되는 시기를 추적합니다.

function trackPaths(paths: string[]): string[]

매개 변수

paths

string[]

추적할 경로입니다.

반환

string[]

anyPathChanged() 전달할 정규화된 경로입니다.

transformPath(string)

등록된 경로 변환기를 사용하여 경로를 변환합니다.

function transformPath(pathExpression: string): string

매개 변수

pathExpression

string

변환할 경로입니다.

반환

string

변환된 경로입니다.

version()

버전 번호를 가져옵니다.

function version(): string

반환

string

버전 번호가 있는 문자열입니다.