почему поле условия принимает только встроенные функции? - PullRequest
0 голосов
/ 19 марта 2020

Кажется, что условие в BotFramework Composer принимает только предварительно созданные функции, а не шаблоны.

Если у нас на common.lg такой шаблон:

# ValidID(text)
- ${length(text)==9 && isMatch(text, ‘[A-Za-z]{1}[0-9]{7}’)}

Мы можем использовать в SendMessage, например, вот так:

- User’s Id: ${user.ID}, validation: ${ValidID(user.ID)}

Но почему нам не разрешено использовать нашу пользовательскую функцию 'ValidID' внутри текстового поля условия ветви условия / если, например?

Condition [${ValidID(user.ID)==true]

Когда мы пытаемся использовать в условии, Composer говорит, что ValidID не является предварительно созданной функцией или переменной области действия пользователя ...

Это очень неприятное ограничение, потому что у нас есть множество шаблонов, которые мы можем вызывать другими шаблонами, чтобы упростить сложные проверки, а затем, когда нам нужно использовать эти проверки в условии, нам нужно расширить все шаблоны, чтобы использовать только предварительно созданные функции, и шаблоны теряют свою полезность.

Кто-то знает, как все-таки работать над этим?

Мы пытались использовать поле SetProperty, чтобы назначить наш шаблон переменной пользовательской области действия, но, похоже, у нас такое же ограничение.

Мы будем благодарны за любые инструкции или поможем выполнить sh наши ожидания в этом отношении, благодаря всем людям, которые ежедневно работают над BotFramework, чтобы сделать его лучше.

1 Ответ

1 голос
/ 20 марта 2020

Это немного странный вопрос для переполнения стека, поскольку вы задаете вопрос «почему», на который могут ответить только создатели технологии, а не вопрос «как», на который мог бы ответить любой пользователь технологии? , Если бы мне пришлось угадывать, я бы сказал, что это было упущением, что подразумевало бы, что вы должны поднять это как ошибку . С другой стороны, если вы думаете, что это предполагаемое поведение, то вам следует поднять это как запрос функции .

Я сомневаюсь, что есть "обходной путь" помимо расширения шаблонов, как вы сказали.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...