Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

forum.iii.ru _ Обучение инфов _ Как соединить функцию Fltr и переменную [%user_name="[*]"] в ответ инфа?

Автор: Оливия 2.6.2017, 5:54

Например, пишет мне гость "меня зовут вася". А я хочу, чтобы инф ответил: "Постараюсь запомнить твое имя, Вася", то есть написал имя с большой буквы. Как должен выглядеть ответ инфа?

Автор: папа Карло 2.6.2017, 7:09

Цитата(Оливия @ 2.6.2017, 5:54) *
Например, пишет мне гость "меня зовут вася". А я хочу, чтобы инф ответил: "Постараюсь запомнить твое имя, Вася", то есть написал имя с большой буквы. Как должен выглядеть ответ инфа?

Лучше использовать функцию "cap", на случай если гость назовёт сразу имя и фамилию или какой нибудь ник из 2-х слов.

$ Меня зовут *
#Постараюсь запомнить твое имя, [@cap("[*1]")]. Чтобы инф это имя запомнил дописываем [@set("user_name", "[@cap("[*1]")]

P.S. - но такой шаблон можно ставить только в якоре, как ответ на вопрос инфа "Как тебя зовут", иначе будет много ошибок, инф будет запоминать в качестве имени любую часть фразы после слов "меня зовут", например если гость скажет "меня зовут обедать" инф будет его называть "Обедать" - и подобных случаев может быть много. Поэтому в приведённом шаблоне лучше использовать словари:

$ Меня зовут[dict(masha)]
$ Меня зовут[dict(pasha)]
$ Меня зовут[dict(sasha)]
#Постараюсь запомнить твое имя, [@cap("[&1]")]. [@set("user_name", "[@cap("[&1]")]

А ещё лучше сделать для каждого словаря отдельный шаблон - тогда можно будет сразу запомнить и пол гостя (в шаблоне с [dict(sasha)] придётся его ещё выяснить)

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)