-
Notifications
You must be signed in to change notification settings - Fork 2
Принцип работы шаблонизатора для команд
Для работы команд используется шаблонизатор mustache.
Принцип работы
- Взять строку, которую надо отобразить в чате
- Запихнуть с специальные места в этой строке данные из списка значений о канале, на котором была запрошена команда в чат
В списке значений о канале бывает два типа переменных
- Логические (да или нет), которые используются для того чтобы шаблонизатор мог показывать разные ответы, например том случае когда стрим онлайн или оффлайн
- Остальные - они просто подставляются в строку
Чтобы вставить с простой текст значение о канале, надо обернуть имя параметра из списка значений о канале в двойные фигурные скобочки
Привет {{ username }}
Если в списке значений будет параметр username - шаблонизатор его подставит
Шаблонизатор умеет показывать строку в том случае, если какоето значение верно или не верно
Пример
{{#StreamStatus.Online}} Игры на стриме: {{ GetGamesHistory }}{{/StreamStatus.Online}}{{^StreamStatus.Online}} Стрим оффлайн {{/StreamStatus.Online}}
В этой команде включено оба случая, когда переменная StreamStatus.Online верна и ложна (переменная показывает идёт ли стрим)
Разберём поэтапно
{{#StreamStatus.Online}} Игры на стриме: {{ GetGamesHistory }}{{/StreamStatus.Online}}
Если управляющая конструкция имеет хештег перед именем переменной, то содержимое конструкции будет выведено в том случае, если переменная имеет значение "true", закрывается конструкция всегда управляющей конструкцией с символом "/" перед переменной, это один if-block
{{^StreamStatus.Online}} Стрим оффлайн {{/StreamStatus.Online}}
Если управляющая конструкция имеет крышечку-крышечку перед именем переменной, то содержимое конструкции будет выведено в том случае, если переменная имеет значение "false", закрывается конструкция всегда такой же управляющей конструкцией с символом "/" перед переменной.
Весь список переменных, используемых в шаблонизаторе можно увидеть тут - Описание полей объекта канала