Гроза — Действие Пятое ( Явление 1- 3)
Декорация первого действия. Сумерки.
Явление первое
Кулигин сидит на лавочке, Кабановидет по бульвару.
Кулигин (поет).
Ночною темнотою покрылись небеса,
Все люди для покою закрыли уж глаза,
и проч.
(Увидав Кабанова.) Здравствуйте, сударь! Далеко ли изволите?Кабанов. Домой. Слышал, братец, дела-то наши? Вся, братец, семья в расстройство пришла.Кулигин. Слышал, слышал, сударь.Кабанов. Я в Москву ездил, ты знаешь? На дорогу-то маменька читала, читала мне наставления-то, а я как выехал, так загулял. Уж очень рад, что на волю-то вырвался. И всю дорогу пил, и в Москве все пил, так это кучу, что на́-поди! Так, чтобы уж на целый год отгуляться. Ни разу про дом-то и не вспомнил. Да хоть бы и вспомнил-то, так мне бы и в ум не пришло, что тут делается. Слышал?Кулигин. Слышал, сударь.Кабанов. Несчастный я теперь, братец, человек! Так ни за что я погибаю, ни за грош!Кулигин. Маменька-то у вас больно крута.Кабанов. Ну да. Она-то всему и причина. А я за что погибаю, скажи ты мне на милость? Я вот зашел к Дикому, ну, выпили; думал — легче будет; нет, хуже, Кулигин! Уж что жена против меня сделала! Уж хуже нельзя…Кулигин. Мудреное дело, сударь. Мудрено вас судить.Кабанов. Нет, постой! Уж на что еще хуже этого. Убить ее за это мало. Вот маменька говорит: ее надо живую в землю закопать, чтоб она казнилась! А я ее люблю, мне ее жаль пальцем тронуть. Побил немножко, да и то маменька приказала. Жаль мне смотреть-то на нее, пойми ты это, Кулигин. Маменька ее поедом ест, а она как тень какая ходит, безответная. Только плачет да тает как воск. Вот я и убиваюсь, глядя на нее.Кулигин. Как бы нибудь, сударь, ладком дело-то сделать! Вы бы простили ей, да и по поминали никогда. Сами-то, чай, тоже не без греха!Кабанов. Уж что говорить!Кулигин. Да уж так, чтобы и под пьяную руку не попрекать! Она бы вам, сударь, была хорошая жена; гляди — лучше всякой.Кабанов. Да пойми ты, Кулигин: я-то бы ничего, а маменька-то… разве с ней сговоришь!..Кулигин. Пора бы уж вам, сударь, своим умом жить.Кабанов. Что ж мне, разорваться, что ли! Нет, говорят, своего-то ума. И, значит, живи век чужим. Я вот возьму да последний-то, какой есть, пропью; пусть маменька тогда со мной, как с дураком, и нянчится.Кулигин. Эх, сударь! Дела, дела! Ну, а Борис-то Григорьевич, сударь, что?Кабанов. А его, подлеца, в Тяхту, к китайцам. Дядя к знакомому купцу какому-то посылает туда на контору. На три года его туды.Кулигин. Ну, что же он, сударь?Кабанов. Мечется тоже; плачет. Накинулись мы давеча на него с дядей, уж ругали, ругали — молчит. Точно дикий какой сделался. Со мной, говорит, что хотите, делайте, только ее не мучьте! И он к ней тоже жалость имеет.Кулигин. Хороший он человек, сударь.Кабанов. Собрался совсем, и лошади уж готовы. Так тоскует, беда! Уж я вижу, что ему проститься хочется. Ну, да мало ли чего! Будет с него. Враг ведь он мне, Кулигин! Расказнить его надобно на части, чтобы знал…Кулигин. Врагам-то прощать надо, сударь!Кабанов. Поди-ка поговори с маменькой, что она тебе на это скажет. Так, братец Кулигин, все наше семейство теперь врозь расшиблось. Не то что родные, а точно вороги друг другу. Варвару маменька точила-точила; а та не стерпела, да и была такова — взяла да и ушла.Кулигин. Куда ушла?Кабанов. Кто ее знает. Говорят, с Кудряшом с Ванькой убежала, и того также нигде не найдут. Уж это, Кулигин, надо прямо сказать, что от маменьки; потому стала ее тиранить и на замок запирать. «Не запирайте, говорит, хуже будет!» Вот так и вышло. Что ж мне теперь делать, скажи ты мне! Научи ты меня, как мне жить теперь! Дом мне опостылел, людей совестно, за дело возьмусь — руки отваливаются. Вот теперь домой иду; на радость, что ль, иду?
Входит Глаша.
Глаша. Тихон Иваныч, батюшка!Кабанов. Что еще?Глаша. Дома у нас нездорово, батюшка!Кабанов. Господи! Так уж одно к одному! Говори, что там такое?Глаша. Да хозяюшка ваша…Кабанов. Ну, что ж? Умерла, что ль?Глаша. Нет, батюшка; ушла куда-то, не найдем нигде. Сбились с ног, искамши.Кабанов. Кулигин! надо, брат, бежать искать ее. Я, братец, знаешь, чего боюсь? Как бы она с тоски-то на себя руки не наложила! Уж так тоскует, так тоскует, что ах! На нее-то глядя, сердце рвется. Чего ж вы смотрели-то? Давно ль она ушла-то?Глаша. Недавнушко, батюшка! Уж наш грех, недоглядели. Да и то сказать: на всякий час не остережешься.Кабанов. Ну, что стоишь-то, беги!
Глаша уходит.
И мы пойдем, Кулигин!
Уходят.
Сцена несколько времени пуста. С противоположной стороны выходит Катерина и тихо идет по сцене.
Явление второе
Катерина (одна) 1. Нет, нигде нет! Что-то он теперь, бедный, делает? Мне только проститься с ним, а там… а там хоть умирать. За что я его в беду ввела? Ведь мне не легче от того! Погибать бы мне одной! А то себя погубила, его погубила, себе бесчестье — ему вечный покор! Да! Себе бесчестье — ему вечный покор. (Молчание.)Вспомнить бы мне, что он говорил-то? Как он жалел-то меня? Какие слова-то говорил? (Берет себя за голову.) Не помню, все забыла. Ночи, ночи мне тяжелы! Все пойдут спать, и я пойду; всем ничего, а мне как в могилу. Так страшно в потемках! Шум какой-то сделается, и поют, точно кого хоронят; только так тихо, чуть слышно, далеко, далеко от меня… Свету-то так рада сделаешься! А вставать не хочется, опять те же люди, те же разговоры, та же мука. Зачем они так смотрят на меня? Отчего это нынче не убивают? Зачем так сделали? Прежде, говорят, убивали. Взяли бы да и бросили меня в Волгу; я бы рада была. «Казнить-то тебя, говорят, так с тебя грех снимется, а ты живи да мучайся своим грехом». Да уж измучилась я! Долго ль еще мне мучиться!.. Для чего мне теперь жить, ну для чего? Ничего мне не надо, ничего мне не мило, и свет божий не мил! А смерть не приходит. Ты ее кличешь, а она не приходит. Что ни увижу, что ни услышу, только тут (показывая на сердце) больно. Еще кабы с ним жить, может быть, радость бы какую-нибудь я и видела… Что ж: уж все равно, уж душу свою я ведь погубила. Как мне по нем скучно! Ах, как мне по нем скучно! Уж коли не увижу я тебя, так хоть услышь ты меня издали! Ветры буйные, перенесите вы ему мою печаль-тоску! Батюшки, скучно мне, скучно! (Подходит к берегу и громко во весь голос.) Радость моя, жизнь моя, душа моя, люблю тебя! Откликнись! (Плачет.)
Входит Борис.
Явление третье
Катерина и Борис.
Борис (не видя Катерины). Боже мой! Ведь это ее голос! Где же она? (Оглядывается.)Катерина (подбегает к нему и падает на шею). Увидела-таки я тебя! (Плачет на груди у него.)
Молчание.
Борис. Ну, вот и поплакали вместе, привел бог.Катерина. Ты не забыл меня?Борис. Как забыть, что ты!Катерина. Ах, нет, не то, не то! Ты не сердишься?Борис. За что мне сердиться?Катерина. Ну, прости меня! Не хотела я тебе зла сделать; да в себе не вольна была. Что говорила, что делала, себя не помнила.Борис. Полно, что ты! что ты!Катерина. Ну, как же ты? Теперь-то ты как?Борис. Еду.Катерина. Куда едешь?Борис. Далеко, Катя, в Сибирь.Катерина. Возьми меня с собой отсюда!Борис. Нельзя мне, Катя. Не по своей я воле еду: дядя посылает, уж и лошади готовы; я только отпросился у дяди на минуточку, хотел хоть с местом-то тем проститься, где мы с тобой виделись.Катерина. Поезжай с богом! Не тужи обо мне. Сначала только разве скучно будет тебе, бедному, а там и позабудешь. Борис. Что обо мне-то толковать! Я вольная птица. Ты-то как? Что свекровь-то?Катерина. Мучает меня, запирает. Всем говорит и мужу говорит: «Не верьте ей, она хитрая». Все и ходят за мной целый день и смеются мне прямо в глаза. На каждом слове все тобой попрекают.Борис. А муж-то?Катерина. То ласков, то сердится, да пьет все. Да постыл он мне, постыл, ласка-то его мне хуже побоев.Борис. Тяжело тебе, Катя?Катерина. Уж так тяжело, так тяжело, что умереть легче!Борис. Кто ж это знал, что нам за любовь нашу так мучиться с тобой! Лучше б бежать мне тогда!Катерина. На беду я увидела тебя. Радости видела мало, а горя-то, горя-то что! Да еще впереди-то сколько! Ну, да что думать о том, что будет! Вот я теперь тебя видела, этого они у меня не отымут; а больше мне ничего не надо. Только ведь мне и нужно было увидать тебя. Вот мне теперь гораздо легче сделалось; точно гора с плеч свалилась. А я все думала, что ты на меня сердишься, проклинаешь меня…Борис. Что ты, что ты!Катерина. Да нет, все не то я говорю; не то я хотела сказать! Скучно мне было по тебе, вот что; ну, вот я тебя увидала. ..Борис. Не застали б нас здесь!Катерина. Постой, постой! Что-то я тебе хотела сказать! Вот забыла! Что-то нужно было сказать! В голове-то все путается, не вспомню ничего.Борис. Время мне, Катя!Катерина. Погоди, погоди!Борис. Ну, что же ты сказать-то хотела?Катерина. Сейчас скажу. (Подумав.) Да! Поедешь ты дорогой, ни одного ты нищего так не пропускай, всякому подай, да прикажи, чтоб молились за мою грешную душу.Борис. Ах, кабы знали эти люди, каково мне прощаться с тобой! Боже мой! Дай бог, чтоб им когда-нибудь так же сладко было, как мне теперь. Прощай, Катя! (Обнимает ее и хочет уйти.) Злодеи вы! Изверги! Эх, кабы сила!Катерина. Постой, постой! Дай мне поглядеть на тебя в последний раз. (Смотрит ему в глаза.) Ну, будет с меня! Теперь бог с тобой, поезжай. Ступай, скорее ступай!Борис (отходит несколько шагов и останавливается). Катя, нехорошо что-то! Не задумала ли ты чего? Измучусь я дорогой-то, думавши о тебе.Катерина. Ничего, ничего! Поезжай с богом!
Борис хочет подойти к ней.
Не надо, не надо, довольно!Борис (рыдая). Ну, бог с тобой! Только одного и надо у бога просить, чтоб она умерла поскорее, чтобы ей не мучиться долго! Прощай! (Кланяется.)Катерина. Прощай!
Борис уходит. Катерина провожает его глазами и стоит несколько времени задумавшись.
Явление (в литературе, театре и искусстве) — что такое, значение, происхождение, определение, отличие от действия
Содержание:
- Происхождение
- Явление в структуре драматического произведения
- Явление и действие
- Чем отличается явление явление от действия
- Значение явления в драматическом произведении
Явление, сцена это часть акта (действия) в драматическом произведении, которая характеризуется неизменным количеством действующих лиц. Явление иногда определяется как основная единица сюжета рассказов, романов и других жанров художественной литературы.
Понятие явления в литературе исходит от театра, где под ним понимается краткая часть спектакля, которая разворачивается в одном месте действия с одними и теми же действующими лицами. Явлению свойственна структура законченного произведения, с завязкой, развитием действия и концовкой.
Слово «явление» для обозначения отдельной части пьесы распространено в русской драматургии как синоним слова «сцена» в зарубежных пьесах.
Происхождение
Явление представляет собой часть акта, или действия (лат. actus – действие) – раздела драматического произведения. Деление драматического произведения на акты введено в древнегреческом, а затем в римском театре, в котором спектакль состоял из 5-ти действий.
В античном театре пьеса исполнялась несколькими актёрами, которые играли все роли. Деление актов на сцены позволяло актёрам сменить костюмы и подготовиться к следующей роли во время промежуточных сцен. Структура явлений в театральном спектакле также использовалась для изменения места действия путём изменения фона.
После окончания явления ненадолго закрывался занавес, во время чего менялись декорации и реквизиты на сцене, чтобы показать другое местоположение. По этой причине сцены в драматическом тексте часто вводятся с указанием места, например, сцена 1, загородный дом, сцена 2, сад.
Явление в структуре драматического произведения
Явление содержит небольшой отдельный фрагмент общего повествования драматического произведения. В явлении участвуют одни и те же действующие лица и действие происходит в одном месте и времени. В акт входит несколько сцен. В одноактных пьесах сцены составляют сюжет из 3-х частей с началом, развитием, концом действия.
Действие и явлениеДраматурги и театральные режиссёры произвольно распределяют акты на сцены (явления), причем акты одной пьесы могут иметь разное количество сцен. В трагедии в пяти актах «Ромео и Джульетта» (1597) великого английского драматурга У. Шекспира акты включают разное количество сцен: акт I – 5 сцен, акт II – 6 сцен, акт III – 5 сцен, акт IV – 5 сцен, акт V – 3 сцены. В драме знаменитого русского драматурга А. Н. Островского в пяти действиях «Гроза» (1860) в первом действии 9 явлений, во втором – 10, в третьем – 5, в четвертом – 6, в пятом – 7.
Материал по теме: Сатира — что такое, история, основные черты, где появилась, теория, понятие
Явление и действие
Явление начинается с появления действующих лиц и заканчивается их уходом. Оно представляет собой короткий диалог или событие, происходящее в одном месте. Например, в 6-й сцене второго акта трагедии У. Шекспира «Ромео и Джульетта» описано тайное венчание Ромео и Джульетты.
Чем отличается явление явление от действия
Структура драматического произведения устроена таким образом, что поток повествования перемещается от сцены к сцене. Действие и явление (акт и сцена) как структурные элементы драматического произведения имеют различия. Действие и явление – части пьесы или театрального спектакля. Главное различие между ними заключается в их продолжительности:
- действие – длительная часть пьесы;
- явление – краткое событие или диалог.
Продолжительность явлений зависит от их количества в действии: чем больше сцен, тем короче каждая из них. Акт в театральном представлении обычно длится от 30 до 90 минут.
Действие считается основным инструментом разделения драматического произведения, формирования его структуры. Оно разделяется на несколько явлений, а явление не разделяется на составные части, но может переходить только к другому явлению, где продолжается действие и общий поток повествования.
Акт и сцена обозначаются в тексте драматического произведения заглавными буквами, но для нумерации актов используются римские цифры (акт I), для сцен – арабские (сцена 1).
Значение явления в драматическом произведении
В драматургии разделение произведения на акты и сцены играют композиционную роль, поскольку упорядочивание, последовательность повествования улучшает передачу актёрами его смысла и понимание читателями. С XVIII в. в пьесах чётко фиксировались явления, которые обозначались порядковым номером и перечислением действующих лиц.
Выдающийся русский писатель Л. Н. Толстой разбил драму в 6-ти действиях и 12-ти картинах «Живой труп» (1911) на большое количество явлений, поскольку создавал пьесу для театра с новейшим устройством сцены. Современная драматургия редко придерживается принципа деления действий на явления.
Николаев П.А.
Российский литературовед, специалист в области теории литературы, методологических проблем реализма, истории эстетики и литературоведения. Постоянный автор Литературного портала litpr.ru
Задать вопрос
От чего произошло слово: явление?
Слово явление произошло от латинского scaena, scena, что в переводе означает сцена.
Продвижение отдельного события или акции
Как продвигать отдельное событие, акцию, петицию и т. д.
Что такое рекламные акции?
Рекламные акции — это способ показать действия, организованные другими организациями, в вашей ленте Mobilize. Существует три способа продвижения:
Все события организации
Отфильтрованное подмножество действий организации (на основе типа события, тега, местоположения и т. д.)
Только одно действие (или событие).
Посмотреть все статьи о продвижении здесь.
Как продвигать отдельное действие
Продвижение одного действия переопределяет все продвижения и фильтры на уровне вашей организации и принудительно продвигает это действие. Таким образом, если вы отфильтровывали события определенного типа, и событие, которое вы хотите рекламировать, соответствует этому типу, оно все равно будет продвигаться.
1. Перейти к версии акции, ориентированной на сторонников
Вы всегда будете продвигать версию мероприятия исходной организации-владельца, независимо от того, какую версию акции, ориентированную на сторонников, вы продвигаете (включая те, которые другие организации продвижение).
2. Нажмите кнопку «Продвигать это действие» под формой регистрации.
Если вы вышли из системы, вам необходимо войти в систему. не имеет права продвигать это мероприятие», когда вы наводите на него курсор, проверьте список часто задаваемых вопросов.
3. Выберите организации, администратором которых вы хотите продвигать действие.
4. Нажмите Продвигать
Вуаля! Теперь вы рекламируете это событие в своей ленте. Перейдите на вкладку «Рекламируемые» в списке событий, чтобы увидеть событие на панели инструментов.
Как перестать продвигать отдельное действие
Когда вы перестаете продвигать отдельное действие (так называемое «скрытие из ленты»), ваши рекламные акции и фильтры на уровне организации переопределяются, и действие больше не продвигается. Даже если вы рекламируете остальные мероприятия организации, конкретное действие продвигаться не будет.
1. Перейдите в раздел «Рекламируемые» на вкладке «События»
2. Выберите ▼ в разделе «Действия» рядом с событием, продвижение которого вы хотите прекратить
3. Нажмите «Скрыть из ленты»
Часто задаваемые вопросы
1) Что делать, если я не могу нажать кнопку «Продвигать» или я не вижу организацию в списке вариантов продвижения?
Существует несколько возможных причин, проверьте каждую из следующих:
Вы не являетесь администратором — Дважды проверьте, являетесь ли вы администратором организации, для которой вы хотите продвигать. Организаторы и организаторы-добровольцы не могут рекламировать мероприятия. Узнайте больше о разнице между уровнями разрешений здесь.
Брандмауэр — Только определенные типы организаций могут продвигать друг друга. Например, координируемым организациям не разрешается продвигать организации с независимыми расходами (IE).
Ваша организация уже продвигает мероприятие. Дважды проверьте, не рекламируете ли вы это мероприятие. Вы можете увидеть, какие события продвигаете, перейдя на подвкладку Рекламируемые на вкладке События на панели инструментов.
Ознакомьтесь с другими статьями об акциях или свяжитесь с [email protected] с вопросами!
Синтаксис скрипта — Home Assistant
Скрипты — это последовательность действий, которые выполняет Home Assistant. Скрипты доступны как объект через автономный компонент Script, но также могут быть встроены в автоматизацию и конфигурации Alexa/Amazon Echo.
Когда скрипт выполняется в автоматизации, доступна переменная триггера . См. Доступные данные триггера.
Базовая структура синтаксиса скрипта представляет собой список карт ключ/значение, содержащих действия. Если скрипт содержит только 1 действие, список переноса можно не указывать.
Все действия поддерживают дополнительный псевдоним
.
# Пример интеграции скрипта, содержащего синтаксис скрипта сценарий: пример_скрипт: последовательность: # Это написано с использованием синтаксиса скрипта - псевдоним: «Включить потолочный свет» сервис: light.turn_on цель: entity_id: свет.потолок - псевдоним: «Уведомить, что потолочный свет включен» сервис: уведомить.уведомить данные: сообщение: "Включен потолочный свет!"
- Позвонить в службу
- Активировать сцену
- Переменные
- Объем переменных
- Проверка состояния
- Ожидание истечения времени (задержка)
- Ждать
- Ожидание шаблона
- Дождаться триггера
- Тайм-аут ожидания
- Переменная ожидания
- Запустить событие
- Создание и использование пользовательских событий
- Повторить группу действий
- Подсчитанный повтор
- Для каждого
- Пока Цикл
- Повторять до
- Переменная цикла повтора
- Если-то
- Выберите группу действий
- Распараллеливание действий
- Остановка последовательности сценариев
- Продолжение при ошибке
- Отключение действия
Позвоните в службу
Наиболее важным является действие по вызову службы. Это можно сделать различными способами. Чтобы узнать обо всех различных возможностях, загляните на страницу вызовов службы.
- псевдоним: "В спальне горит свет" сервис: light.turn_on цель: entity_id: группа.спальня данные: яркость: 100
Активировать сцену
Скрипты также могут использовать сокращенный синтаксис для активации сцен вместо вызова службы scene.turn_on
.
- сцена: scene.morning_living_room
Переменные
Действие переменных позволяет установить/переопределить переменные, которые будут доступны шаблонам в действиях после него. См. также переменные скрипта, чтобы узнать, как определить переменные, доступные во всем скрипте.
- псевдоним: "Установить переменные" переменные: сущности: - свет.кухня - light.living_room яркость: 100 - псевдоним: "Контрольные огни" сервис: light.turn_on цель: entity_id: "{{ объектов }}" данные: яркость: "{{ яркость }}"
Переменные могут быть шаблонными.
- псевдоним: «Установить шаблонную переменную» переменные: blind_state_message: "Слепой {{states('cover.blind') }}." - псевдоним: "Уведомлять о состоянии шторки" сервис: notify.mobile_app_iphone данные: сообщение: "{{blind_state_message }}"
Объем переменных
Переменные имеют локальную область действия. Это означает, что если переменная изменена во вложенном блоке последовательности, это изменение не будет видно во внешнем блоке последовательности.
Внутри последовательности if
действие переменных
изменит только переменную people
для этой последовательности.
последовательность: # Установить для переменной people значение по умолчанию - переменные: человек: 0 # Попробуйте увеличить людей, если Паулюс дома - если: - состояние: состояние entity_id: device_tracker.paulus состояние: "дом" затем: # В этой области и в этой точке последовательности люди == 0 - переменные: люди: "{{ человек + 1 }}" # В этом масштабе людей теперь будет 1 . .. - сервис: уведомить.уведомить данные: message: "Дома {{ человек }} человек" # "Дома 1 человек" # ... но в этой области все равно будет 0 - сервис: уведомить.уведомить данные: message: "Дома {{ человек }} человек" # "Дома 0 человек"
Проверка состояния
При выполнении скрипта вы можете добавить условие в основную последовательность, чтобы остановить дальнейшее выполнение. Когда условие не возвращает true
, выполнение сценария прекращается. Существует множество различных условий, которые задокументированы на странице условий.
Действие условия только останавливает выполнение текущего блока последовательности. Когда он используется внутри действия повтора, остановится только текущая итерация цикла Repeat
. Когда он используется внутри действия выбора, только действия внутри этого выберите
остановится.
# Если Паулюс дома, продолжайте выполнение скрипта ниже этих строк - псевдоним: "Проверить, дома ли Паулюс" состояние: состояние entity_id: device_tracker. paulus состояние: "дом"
условие
также может быть списком условий, и тогда выполнение продолжится, только если ВСЕ условия вернут true
.
- псевдоним: "Проверить, дома ли Паулюс И температура ниже 20" состояние: - состояние: состояние entity_id: "device_tracker.paulus" состояние: "дом" - условие: числовое_состояние entity_id: "датчик.температура" ниже: 20
Подождите, пока пройдет время (задержка)
Задержки полезны для временной приостановки вашего скрипта и запуска его позже. Мы поддерживаем различные синтаксисы для задержки, как показано ниже.
# секунд # Ожидание 5 секунд - псевдоним: "Подожди 5 секунд" задержка: 5
# ЧЧ:ММ # Ожидание 1 час - задержка: "01:00"
# ЧЧ:ММ:СС # Ожидание 1,5 минуты - задержка: "00:01:30"
# Поддерживает миллисекунды, секунды, минуты, часы, дни # Можно использовать в комбинации, требуется хотя бы один # Ждет 1 минуту - задерживать: минут: 1
Все формы принимают шаблоны.
# Ожидание, сколько минут input_number.minute_delay установлено в значение - задержка: "{{состояния('input_number.minute_delay') | умножить (60) | int }}"
Подождите
Эти действия позволяют сценарию ожидать, пока сущности в системе перейдут в определенное состояние, указанное в шаблоне, или произойдет какое-либо событие, выраженное одним или несколькими триггерами.
Дождитесь шаблона
Это действие оценивает шаблон, и если оно истинно, сценарий будет продолжен. Если нет, то он будет ждать, пока это не станет правдой.
Шаблон переоценивается всякий раз, когда идентификатор объекта, на который он ссылается, изменяет состояние. Если вы используете недетерминированные функции, такие как now()
в шаблоне, он не будет постоянно переоцениваться, а только при изменении идентификатора объекта, на который ссылаются. Если вам нужно периодически пересматривать шаблон, используйте датчик из компонента «Время и дата», который будет обновляться ежеминутно или ежедневно.
# Подождите, пока медиаплеер не остановится - псевдоним: "Подождите, пока медиаплеер не остановится" wait_template: "{{ is_state('media_player.floor', 'stop') }}"
Дождитесь триггера
Это действие может использовать те же триггеры, которые доступны в разделе автоматизации триггер
. См. Триггер автоматизации. Сценарий будет продолжаться всякий раз, когда срабатывает любой из триггеров. Все ранее определенные переменные триггера, переменные и переменные скрипта передаются триггеру.
# Подождите, пока пользовательское событие или свет включится и останется включенным в течение 10 секунд. - псевдоним: "Подождите MY_EVENT или включите свет" ожидание_для_триггера: - платформа: событие тип_события: MY_EVENT - платформа: государство entity_id: свет.СВЕТ к: "на" за: 10
Тайм-аут ожидания
Для обоих типов ожидания можно установить тайм-аут, по истечении которого скрипт продолжит выполнение, если условие/событие не выполняется. Тайм-аут имеет тот же синтаксис, что и delay
, и, как и delay
, также принимает шаблоны.
# Подождите, пока датчик переключится на «включено» до 1 минуты, прежде чем продолжить выполнение. - wait_template: "{{ is_state('binary_sensor.entrance', 'on') }}" время ожидания: "00:01:00"
Вы также можете прервать выполнение сценария по истечении тайм-аута, используя необязательное значение 9.0108 continue_on_timeout: ложь .
# Дождитесь события IFTTT или прервите работу после указанного тайм-аута. - ожидание_для_триггера: - платформа: событие event_type: ifttt_webhook_received данные_события: действие:connected_to_network тайм-аут: минут: "{{ timeout_minutes }}" continue_on_timeout: ложь
Без continue_on_timeout: false
сценарий будет продолжаться всегда, поскольку значение по умолчанию для continue_on_timeout
равно true
.
Переменная ожидания
После каждого завершения ожидания, либо из-за того, что условие было выполнено, либо произошло событие, либо истекло время ожидания, будет создана/обновлена переменная
, чтобы указать результат.
Переменная | Описание |
---|---|
ожидание завершено | Существует только после wait_template . истина если условие было выполнено, ложь иначе |
ожидание.триггер | Существует только после wait_for_trigger . Содержит информацию о том, какой триггер сработал. (См. Available-Trigger-Data.) Будет none , если триггер не произошел до истечения времени ожидания |
ждать.осталось | Осталось тайм-аута или нет , если тайм-аут не был указан |
Это можно использовать для выполнения различных действий в зависимости от того, было ли выполнено условие, или для последовательного использования более одного ожидания при реализации одного тайм-аута в целом.
# Выполнять различные действия в зависимости от того, было ли выполнено условие. - wait_template: "{{ is_state('binary_sensor.door', 'on') }}" тайм-аут: 10 - если: - "{{ не ждать. завершено }}" затем: - сервис: script.door_did_not_open еще: - сервис: script.turn_on цель: идентификатор объекта: - script.door_did_open - script.play_фанфары # Подождите всего 10 секунд. - wait_template: "{{ is_state('binary_sensor.door_1', 'on') }}" тайм-аут: 10 continue_on_timeout: ложь - сервис: switch.turn_on цель: entity_id: switch.some_light - ожидание_для_триггера: - платформа: государство entity_id: binary_sensor.door_2 к: "на" за: 2 тайм-аут: "{{ ожидания.осталось}}" continue_on_timeout: ложь - сервис: switch.turn_off цель: entity_id: switch.some_light
Запустить событие
Это действие позволяет запустить событие. События можно использовать для многих вещей. Это может вызвать автоматизацию или указать другой интеграции, что что-то происходит. Например, в приведенном ниже примере он используется для создания записи в журнале регистрации.
- псевдоним: "Событие Fire LOGBOOK_ENTRY" событие: LOGBOOK_ENTRY данные_события: Имя: Паулюс сообщение: просыпается entity_id: device_tracker.paulus домен: светлый
Вы также можете использовать event_data для запуска события с пользовательскими данными. Это можно использовать для передачи данных другому сценарию, ожидающему триггер события.
event_data
принимает шаблоны.
- событие: MY_EVENT данные_события: имя: мое событие customData: "{{ myCustomVariable }}"
Создание и использование пользовательских событий
В следующем примере автоматизации показано, как вызвать пользовательское событие с именем event_light_state_changed
с entity_id
в качестве данных события. Часть действия может быть внутри скрипта или автоматизации.
- псевдоним: "Пожарное событие" курок: - платформа: государство entity_id: switch.kitchen к: "на" действие: - событие: event_light_state_changed данные_события: состояние: "включено"
В следующем примере автоматизации показано, как захватить пользовательское событие event_light_state_changed
с помощью триггера автоматизации событий и получить соответствующий entity_id
, который был передан в качестве данных триггера события. Дополнительные сведения см. в разделе Available-Trigger-Data.
— псевдоним: «Захват события» курок: - платформа: событие event_type: event_light_state_changed действие: - сервис: уведомить.уведомить данные: сообщение: «кухонный свет включен {{ trigger.event.data.state }}»
Повторить группу действий
Это действие позволяет повторить последовательность других действий. Вложенность полностью поддерживается. Есть три способа контролировать, сколько раз будет запускаться последовательность.
Счетный повтор
Эта форма принимает значение счетчика. Значение может быть указано шаблоном, и в этом случае шаблон визуализируется при достижении шага повторения.
скрипт: фонарик: режим: перезагрузка последовательность: - сервис: light.turn_on цель: entity_id: "свет.{{ свет }}" - псевдоним: "Включить свет "подсчет" раз" повторить: подсчет: "{{ подсчет|целое число * 2 - 1 }}" последовательность: - задержка: 2 - сервис: light.toggle цель: entity_id: "свет.{{ свет }}" flash_hallway_light: последовательность: - псевдоним: "Вспышка света в коридоре 3 раза" служба: script.flash_light данные: свет: коридор количество: 3
За каждый
Эта повторяющаяся форма принимает список элементов для повторения. Список предметов может быть предварительно определенным списком или списком, созданным по шаблону.
Последовательность выполняется для каждого элемента в списке и текущего элемента в
итерация доступна как repeat.item
.
Следующий пример перевернет список источников света:
повторить: для каждого: - "гостиная" - "кухня" - "офис" последовательность: - сервис: light.turn_off цель: entity_id: "свет.{{ Repeat.item }}"
Другие типы принимаются как элементы списка, например, каждый элемент может быть шаблон или даже сопоставление пар ключ/значение.
повторить: для каждого: - английский язык сообщение: Привет мир - язык: голландский сообщение: Привет Wereld последовательность: - сервис: notify.phone данные: title: "Сообщение на {{ repeat.item.language }}" сообщение: "{{ Repeat.item.message }}!"
Пока цикл
Эта форма принимает список условий (доступные параметры см. на странице условий), которые оцениваются до каждый раз, когда последовательность работает. Последовательность будет выполняться 90 424 до тех пор, пока 90 425 условия не будут оценены как истинные.
скрипт: сделай что-нибудь: последовательность: - сервис: script.get_ready_for_something - псевдоним: "Повторяйте последовательность до тех пор, пока выполняются условия" повторить: пока: - состояние: состояние entity_id: input_boolean.do_something состояние: "включено" # Не делайте этого слишком много раз - условие: шаблон value_template: "{{ repeat.index <= 20 }}" последовательность: - сервис: script.something
и
также допускают сокращенное обозначение условия шаблона.
Например:
- повторить: в то время как: "{{ is_state('sensor.mode', 'Home') и repeat.index < 10 }}" последовательность: - . ..
Повторять до
Эта форма принимает список условий, которые оцениваются после каждый раз, когда последовательность работает. Поэтому последовательность всегда будет выполняться хотя бы один раз. Последовательность будет запущена до условия оцениваются как истинные.
автоматика: - курок: - платформа: государство entity_id: двоичный_сенсор.xyz к: "на" состояние: - состояние: состояние entity_id: binary_sensor.something состояние: "выключено" режим: одиночный действие: - псевдоним: «Повторяйте последовательность, пока условия не будут выполнены» повторить: последовательность: # Выполнить команду, которая почему-то не всегда срабатывает - сервис: shell_command.turn_something_on # Дайте время для завершения - задерживать: миллисекунды: 200 до: # Сработало? - состояние: состояние entity_id: binary_sensor. something состояние: "включено"
до
также принимает сокращенное обозначение условия шаблона.
Например:
- повторить: до: "{{ is_state('device_tracker.iphone', 'home') }}" последовательность: - ...
Повторить переменную цикла
Переменная с именем Repeat
определена в рамках действия Repeat (т. е. она доступна внутри последовательности
, , а
и до
.)
Он содержит следующие поля:
поле | описание |
---|---|
первый | Истинно во время первой итерации повторяющейся последовательности |
индекс | Номер итерации цикла: 1, 2, 3, … |
последний | Истинно во время последней итерации повторяющейся последовательности, которая действительна только для подсчитанных циклов |
Если-то
Это действие позволяет условно ( если
) выполнить последовательность действий ( потом
)
и опционально поддерживает запуск другой последовательности, когда условие не выполнялось. пройти ( иначе
).
скрипт: - если: - псевдоним: "Если никого нет дома" состояние: состояние entity_id: zone.home состояние: 0 затем: - псевдоним: "Тогда начинай уже чистить!" сервис: вакуум.старт цель: area_id: гостиная_комната # `else` не является обязательным и может быть опущен еще: - сервис: уведомить.уведомить данные: сообщение: "Уборка пропущена, кто-то дома!"
Это действие поддерживает вложенность, однако, если вы обнаружите, что используете вложенные if-then
действия в части else
, вы можете рассмотреть возможность использования
вместо этого выберите.
Выберите группу действий
Это действие позволяет выбрать последовательность других действий из списка последовательностей. Вложенность полностью поддерживается.
Каждая последовательность сопровождается списком условий. (См. страницу условий, чтобы узнать о доступных параметрах и о том, как обрабатываются несколько условий. ) Будет запущена первая последовательность, все условия которой верны. необязательный по умолчанию
может быть включена последовательность, которая будет выполняться только в том случае, если не выполняется ни одна из последовательностей из списка.
Необязательный Псевдоним
может быть добавлен к каждой из последовательностей, за исключением последовательности по умолчанию
.
Действие Choose
можно использовать как оператор «if/then/elseif/then…/else». Первая пара условий
/ последовательность
похожа на «если/то» и может использоваться сама по себе. Или можно добавить дополнительные пары, каждая из которых похожа на «элиф/то». И, наконец, 9Можно добавить 0108 по умолчанию , что похоже на «еще».
# Пример с "if", "elif" и "else" автоматизация: - курок: - платформа: государство entity_id: input_boolean.simulate к: "на" режим: перезагрузка действие: - выбирать: #ЕСЛИ утро - условия: - условие: шаблон value_template: "{{ now(). hour < 9 }}" последовательность: - сервис: script.sim_morning #ЭЛИФ день - условия: - условие: шаблон value_template: "{{ now().hour < 18 }}" последовательность: - сервис: light.turn_off цель: entity_id: light.living_room - сервис: script.sim_day # ИНАЧЕ ночь по умолчанию: - сервис: light.turn_off цель: entity_id: светлая кухня - задерживать: минут: "{{диапазон(1, 11)|случайный}}" - сервис: light.turn_off цель: entity_id: все
условия
также принимает сокращенное обозначение условия шаблона.
Например:
автоматика: - курок: - платформа: государство entity_id: input_select.home_mode действие: - выбирать: - условия: > {{ trigger.to_state. state == 'Дом' и is_state('binary_sensor.all_clear', 'вкл') }} последовательность: - сервис: script.arrive_home данные: хорошо: правда - условия: > {{ trigger.to_state.state == 'Дом' и is_state('binary_sensor.all_clear', 'выкл') }} последовательность: - сервис: script.turn_on цель: entity_id: script.flash_lights - сервис: script.arrive_home данные: хорошо: ложь - условия: "{{ trigger.to_state.state == 'Нет на месте' }}" последовательность: - сервис: script.left_home
Подробнее выберите
можно использовать вместе. Это случай IF-IF.
В следующем примере показано, как одна автоматизация может управлять объектами, которые не связаны друг с другом, но имеют один и тот же триггер.
Когда солнце уходит за горизонт, должны включаться крыльцо
и сад
фонари. Если кто-то смотрит телевизор в гостиной, есть большая вероятность, что кто-то находится в этой комнате, поэтому свет в гостиной тоже должен быть включен. Та же концепция применима к студия
комната.
# Пример с "если" и "если" автоматизация: - псевдоним: «Включать свет, когда солнце тускнеет и если какая-то комната занята» курок: - платформа: числовое_состояние entity_id: солнце.солнце атрибут: высота ниже: 4 действие: # Это всегда должно применяться - сервис: light.turn_on данные: яркость: 255 color_temp: 366 цель: идентификатор объекта: - свет.крыльцо - свет.сад # ЕСЛИ сущность включена - выбирать: - условия: - состояние: состояние entity_id: binary_sensor.livingroom_tv состояние: "включено" последовательность: - сервис: light. turn_on данные: яркость: 255 color_temp: 366 цель: entity_id: свет.гостиная # ЕСЛИ другая сущность, не связанная с предыдущей, включена - выбирать: - условия: - состояние: состояние entity_id: binary_sensor.studio_pc состояние: "включено" последовательность: - сервис: light.turn_on данные: яркость: 255 color_temp: 366 цель: entity_id: light.studio
Распараллеливание действий
По умолчанию все последовательности действий в Home Assistant выполняются последовательно. Этот означает, что следующее действие начинается после завершения текущего действия.
Это нужно не всегда, например, если последовательность действий не зависит
друг на друга и порядок не имеет значения. В этих случаях действие параллельно
может использоваться для параллельного выполнения действий в последовательности, что означает, что все
действия начинаются одновременно.
В следующем примере показана отправка сообщений одновременно (параллельно):
автоматика: - курок: - платформа: государство entity_id: двоичный_сенсор.движение к: "на" действие: - параллельно: - сервис: уведомить.person1 данные: message: "Эти сообщения отправляются одновременно!" - сервис: уведомить.person2 данные: message: "Эти сообщения отправляются одновременно!"
Также возможен последовательный запуск группы действий внутри параллельного действия. Пример ниже демонстрирует, что:
скрипт: пример_скрипт: последовательность: - параллельно: - последовательность: - ожидание_для_триггера: - платформа: государство entity_id: двоичный_сенсор. движение к: "на" - сервис: уведомить.person1 данные: message: "Это сообщение ожидало триггера движения" - сервис: уведомить.person2 данные: сообщение: "Мне отправлено немедленно и не ждите вышеуказанного действия!"
Параллельное выполнение действий может быть полезным во многих случаях, но используйте его с осторожность и только в случае необходимости.
Существуют некоторые предостережения (см. ниже) при использовании параллельных действий.
Хотя распараллеливание звучит заманчиво, в большинстве случаев это обычный последовательные действия будут работать нормально.
Некоторые предостережения относительно параллельного выполнения действий:
- Нет гарантии заказа. Действия будут запущены параллельно, но нет гарантии, что они будут выполнены в том же порядке.
- Если одно действие завершается ошибкой или ошибкой, другие действия будут выполняться до тех пор, пока они тоже закончили или ошиблись.
- Переменные, созданные/измененные в одном параллельном действии, недоступны в другом параллельном действии. Каждый шаг в распараллеливании имеет свою область видимости.
Остановка последовательности сценариев
Последовательность сценариев можно остановить в любой момент. С помощью действия остановить
.
Действие стоп
принимает в качестве входных данных текст, объясняющий причину остановки
последовательность. Этот текст будет зарегистрирован и появится в автоматах и
следы сценария.
stop
может быть полезен для остановки сценария в середине последовательности, когда,
например, условие не выполнено.
- стоп: "Остановить оставшуюся часть последовательности"
Существует также опция error
, указывающая, что мы останавливаемся из-за
неожиданная ошибка. Он также останавливает последовательность, но отмечает автоматизацию
или скрипт как не удалось запустить.
- стоп: "Ну, это было неожиданно!" ошибка: правда
Продолжение ошибки
По умолчанию последовательность действий будет остановлена, когда одно из действий в эта последовательность встречает ошибку. Автоматизация или сценарий будут остановлены, регистрируется ошибка, а выполнение автоматизации или сценария помечается как ошибочное.
Иногда эти ошибки ожидаются, например, потому что вы знаете службу
ваш звонок может быть проблематичным время от времени, и не имеет значения, если он терпит неудачу.
Вы можете установить continue_on_error
для таких случаев в таком действии.
continue_on_error
доступен для всех действий и установлен на ложь
. Вы можете установить его на true
, если хотите продолжить действие.
последовательность, независимо от того, вызывает ли это действие ошибку.
В приведенном ниже примере показана установка continue_on_error
для первого действия. Если
возникает ошибка; это будет продолжаться до следующего действия.
- псевдоним: "Если этот не сработает..." continue_on_error: правда сервис: notify.super_unreliable_service_provider данные: сообщение: "Я собираюсь ошибиться..." - псевдоним: "Этот еще побежит!" служба: persistence_notification.create данные: заголовок: "Привет!" сообщение: "Я в порядке..."
Обратите внимание, что continue_on_error
не подавляет/игнорирует неправильную конфигурацию
или ошибки, которые Home Assistant не обрабатывает.
Отключение действия
Каждое отдельное действие в последовательности можно отключить, не удаляя его.
Для этого добавьте к действию enabled: false
. Например:
# Пример скрипта с отключенным действием сценарий: пример_скрипт: последовательность: # Это действие не будет выполняться, так как оно отключено. # Сообщение не будет отправлено.