Визуальное программирование и Blockly

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Визуальное программирование и Blockly

Сообщение sergejey » Ср июн 20, 2012 1:02 pm

Приглашаю к тестированию нового режима программирования сценариев.
(доступно пока при обновлении из исходников)

Предыстория здесь: http://smartliving.ru/forum/viewtopic.php?f=6&t=37

В редактировании сценариев появился переключатель типа кода:

Изображение

Если выбран Blockly то по нажатию на Edit открывается новое окно с редактором.

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

При желании можно менять тип сценария с Blockly на PHP, при этом будет использован код, созданный редактором. Обратное переключение с PHP на Blockly работает, но это только переключение -- автоматической обратной трансляции из PHP в Blockly сделать, к сожалению, нельзя.

Пример

У меня был сделан сценарий на PHP в таком виде:

Изображение

Я его переписал заново на Blockly и получился вот такой:

Изображение

Если интересно, то вот какой получился автоматический код:

Изображение

(последнее можно смотреть просто из любопытства, т.к. реально необходимости в этом нету)

Для сохранения изменений, сделанных в визуальном редакторе, нужно нажать Save. Можно так же нажать Save and Run и тогда сценарий сохранится и сразу отправится на выполнение.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
tammat
Сообщения: 165
Зарегистрирован: Пт янв 20, 2012 3:05 pm
Благодарил (а): 9 раз
Поблагодарили: 1 раз

Re: Визуальное программирование и Blockly

Сообщение tammat » Сб июн 23, 2012 5:37 am

Добавил в www папку Blockly поменял admin.css удалил installed. Режим визуального программирования отсутствует.
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Визуальное программирование и Blockly

Сообщение sergejey » Вс июн 24, 2012 9:34 pm

tammat писал(а):Добавил в www папку Blockly поменял admin.css удалил installed. Режим визуального программирования отсутствует.
надо посмотреть что ещё изменилось. как минимум, изменения в модуле scripts (/modules/scripts и /templates/scripts). а лучше выкачать последнюю версию исходников и запустить сравнение по-файловое, чтобы видеть все изменения и заменить файлы более новыми.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Athom
Сообщения: 17
Зарегистрирован: Ср ноя 21, 2012 2:05 am
Благодарил (а): 0
Поблагодарили: 0

Re: Визуальное программирование и Blockly

Сообщение Athom » Пн дек 31, 2012 5:01 pm

Подскажите, а как здесь можно передать несколько параметров? Например:

Код: Выделить всё

playSound('dingdong',1,1);
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Визуальное программирование и Blockly

Сообщение sergejey » Вт янв 08, 2013 8:11 pm

Athom писал(а):Подскажите, а как здесь можно передать несколько параметров? Например:

Код: Выделить всё

playSound('dingdong',1,1);
Там используется упрощённый playSound -- без параметров. Но всегда можно использовать полноценные команды вот таким образом:

Изображение

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
SerOv
Сообщения: 52
Зарегистрирован: Ср сен 26, 2018 8:35 pm
Благодарил (а): 4 раза
Поблагодарили: 0

Re: Визуальное программирование и Blockly

Сообщение SerOv » Вс ноя 04, 2018 9:16 am

А эта тема уже не поддерживается? А где можно посмотреть примеры по программированию Blockly для Majordomo?
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: Визуальное программирование и Blockly

Сообщение Divan » Вс июн 07, 2020 3:19 pm

Предлагаю заинтересованным в Blockly и тем кто не понимает как нужно правильно пользоваться Blockly - развивать эту тему.

Как можно создавать свои элементы в Blockly?
[Модуль] Мои блоки (myblocks)

Что такое переменные и как их использовать?
Переменные - это контейнер, который содержит в себе различные типы данных (текст, цифры, объекты и т.д). В целом переменные позволяют создавать, хранить, изменять, а в дальнейшем оперативно обращаться к информации, заданной в них.

Пример создания переменных для пинга устройства
Создаем переменную с любым именем, я назвал 192.168.0.30
СпойлерПоказать
Создать переменную.jpg
Создать переменную.jpg (81.34 КБ) 3960 просмотров
Во всплывающем окне указываем имя для переменной
СпойлерПоказать
Указываем переменную.jpg
Указываем переменную.jpg (59.26 КБ) 3960 просмотров
Собираем код таким образом, если пинг есть - сообщить онлайн, если нет пинга - сообщить офлайн
СпойлерПоказать
код пинг в блокли.JPG
код пинг в блокли.JPG (31.22 КБ) 3960 просмотров
За это сообщение автора Divan поблагодарил:
Yashalta (Вт июн 16, 2020 11:58 pm)
Рейтинг: 1.16%
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: Визуальное программирование и Blockly

Сообщение Divan » Вс июн 07, 2020 3:22 pm

Как сделать округление значении в Blockly?

Внимание!!! Я показываю примеры, соответственно для работы нужно создавать свойство - метод и в методе собираем код.

Создаем второе свойство для получении значении в целых числах и метод mIntegerValue
СпойлерПоказать
Округление значении свойства.jpg
Округление значении свойства.jpg (24.58 КБ) 3960 просмотров
Создаем две переменные
1) Переменная TempValue - значение откуда будем получать дробное число
2) Переменная IntegerValue - значение которое будем округлять

Пример кода Blockly
СпойлерПоказать
Округление значении.JPG
Округление значении.JPG (28.55 КБ) 3960 просмотров
Последний раз редактировалось Divan Вс июн 07, 2020 3:44 pm, всего редактировалось 1 раз.
За это сообщение автора Divan поблагодарил:
Yashalta (Вт июн 16, 2020 11:57 pm)
Рейтинг: 1.16%
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: Визуальное программирование и Blockly

Сообщение Divan » Вс июн 07, 2020 3:25 pm

Как создать счетчик с шагом N?

Внимание!!! Я показываю примеры, соответственно для работы нужно создавать свойство - метод и в методе собираем код.

Счетчик с шагом 1
СпойлерПоказать
Создаем счетчик с увеличением в 1 шаг.JPG
Создаем счетчик с увеличением в 1 шаг.JPG (26.8 КБ) 3956 просмотров
Обратный счетчик с шагом 1
СпойлерПоказать
Создаем обратный счетчик.JPG
Создаем обратный счетчик.JPG (26.34 КБ) 3956 просмотров
Последний раз редактировалось Divan Вс июн 07, 2020 3:43 pm, всего редактировалось 2 раза.
За это сообщение автора Divan поблагодарил:
Yashalta (Вт июн 16, 2020 11:57 pm)
Рейтинг: 1.16%
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: Визуальное программирование и Blockly

Сообщение Divan » Вс июн 07, 2020 3:32 pm

Как сделать рандомный выбор цвета?

Создаем переменную, например RGB и цепляем блок случайный цвет
СпойлерПоказать
случайный цвет.jpg
случайный цвет.jpg (54.54 КБ) 3956 просмотров
Готовый вариант в блокли, таким образом, если запустить сценарии "Случайный цвет", то установится выбранный цвет системой
СпойлерПоказать
рандомный выбор цвета.JPG
рандомный выбор цвета.JPG (20.17 КБ) 3956 просмотров
За это сообщение автора Divan поблагодарил:
Yashalta (Вт июн 16, 2020 11:57 pm)
Рейтинг: 1.16%
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
Ответить