Page 1 of 1

Роботизация в KolibriOS

Posted: Thu Feb 25, 2021 12:53 am
by glebrain
Всем привет, и огромное спасибо всем кто разрабатывает KolibriOS!

Немного о себе: занимаюсь роботизацией с 2013 года, начинал с VK API на php, далее: Selenium+Chromedriver на c#, сейчас активно использую RPA-систему UiPath.

Единственный минус текущих RPA-систем - это прожорливость, дороговизна и большинство функционала только для крупного бизнеса.
Я уже давно думаю, над идей: RPA-система в KolibriOS очень перспективный и монетизируемый проект:

Роботизация для физ.лиц:
В основном это пиар брендов или товаров в социальных сетях(через API этот процесс ограничен или платный). Делал подобное на c#: Selenium+Chromedriver, но столкнулся с проблемой: чтобы Робот каждые 5 минут не напарывался на капчу(разгадывать дорого), надо его делать неторопливым, но тогда через 3-5 часов процесс разрастается до 4гб и зависает. Конечно можно перезапускать через какое-то время, но все равно 4гб на 1 робота - это очень много. Да и ставить на домашний ПК неудобно - забыл запустить/или свет отрубили и потерял клиентов. Если разворачивать на хосте в инете это дорого из-за потребляемых ресурсов и не окупается.

Для юр.лиц:
1. На текущий момент: роботизация дешевле автоматизации. Т.к. для автоматизации требуется: четкое ТЗ, полностью стандартизированный процесс, безошибочный алгоритм, профессиональная команда разработчиков и тп., а для роботизации: мощный комп и автокликер!
2. Основные задачи для роботизации в бизнесе:
2.1. Роботизация Сайтов (судя по графику работ NetSurf: http://www.netsurf-browser.org/documentation/progress.html разрабы приступили к html5 и javascript - а это основа современных сайтов, надеюсь в будущем появится полноценный браузер в KolibriOS)
2.2. API - обработка запросов/ответов: get/post, в json-формате
2.3. Программы: в основном досовские, виндовые
2.4. Работа с файлами: Excel, Word

Что нужно для RPA-системы в KolibriOS(на примере UiPath):
1. Менеджер роботов (запустить/остановить/собрать статистику/расписание запусков/перечень задач) - можно в веб реализовать и к сайту обращаться через API(get/post) из робота.
2. Программа роботизации(на примере Сlickermann): по координатам в окнах программ записывает действия пользователя
3. Редактор записанных действий(скриптов)
4. Дополнительное ПО(служба): опрашивает "Менеджер роботов" и запускает указанного робота, в указанное время c задачей(лайкнуть пост, написать коммент, репостнуть и тп.)
5. Интерпретатор - запуск скрипта, по сути это и есть Робот.

Покопался немного в дистрибутивах, поискал компоненты к будущей RPA-системе:
1. Для программы записи действий:
1.1. Mousemul - эмуляция мыши, почти все можно роботизировать через мышь
1.2. Pipet - получение цвета пикселя - полезная вещь при ожидании изменений(смена статуса с красного на зеленый) от программ
1.3. Видел еще прогу перехвата нажатий клавиш - во многих программ большинство действий продублированы комбинациями клавиш - это помогает в роботизации
2. Интерпретатор:
2.1. на 1 этапе: думаю можно компилить программу из с-- и других языков,
2.2. на 2: аналоги виндовых программ, с поддержкой файлов: Excel, Word(видел, что в WebView - docx распарсили)
2.3. на 3: эмуляторы к программам: tesseract-ocr, AutomationUI и другим,
2.4. на 4: набирать опыт по системам и создавать библиотеки готовых решений,
2.5. на N этапе: для привлечения бизнеса уже нужен Интерпретатор с понятным скриптингом,
2.6. на N+1: рисовалка схем(UiPath procсess), вида: {Exit} <--[No]-- {if a==b} --[Yes]--> {открывает браузер}
2.7. чем больше N, тем прозрачнее робот для бизнеса, и тем охотнее бизнес роботизирует свои процессы
3. Дополнительное ПО(служба):
3.1. Sysmon - получать инфу о ресурсах ПК - полезная вещь для "Менеджера роботов"
3.2. Scrshoot - слежение за роботом, в случае Exception
4. Менеджер роботов - сайт можно за день накатать, это не проблема.

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

Если кому не сложно, подскажите в каком направлении копать в KolibriOS:
1. Получение характеристик объекта под курсором(например кнопки): в какой программе она находится, ее локальные координаты и глобальные, наименование или как в windows: ClassName?
2. Исходя из характеристик кнопки - программное нажатие на нее например из с-- (может из другого языка)?
3. Как можно программно управлять мышью?

PS
1. Сильно не бейте, если уже что-то подобное разрабатывается в KolibriOS, предварительно я поискал на форуме, и дистрах, также спросил у разрабов в чате в ВК - похожего не нашел, кроме нескольких компонентов.
2. Роботизация супер перспективная тема: любую новую программу и даже стороннюю роботизацию можно роботизировать:)
3. Бизнес начал понимать, что на роботизации он экономит, т.к. робот совершает меньше ошибок, не хочет спать и в отпуск, работает в разы быстрее человека от чего бизнес зарабатывает в разы больше.
4. Понимаю, что эта разработка не на одно десятилетие...

Re: Роботизация в KolibriOS

Posted: Fri Feb 26, 2021 9:40 pm
by Pathoswithin
Понимаю, что эта разработка не на одно десятилетие...
Собственно, на этом можно ставить точку, если это технический проект для бизнеса.

Re: Роботизация в KolibriOS

Posted: Fri Mar 05, 2021 4:49 pm
by art_zh
во времена моей бурной молодости
под термином "роботизация" понималось нечто совсем другое.

Re: Роботизация в KolibriOS

Posted: Fri Mar 05, 2021 5:16 pm
by glebrain
art_zh wrote:во времена моей бурной молодости
под термином "роботизация" понималось нечто совсем другое.
Сейчас понимается: эмуляция человеческих действий(бот) за компьютером c использованием UI Automation и других инструментов.

Было бы в KolibriOS, что-то вида Microsoft Power Automate (или UiPath, можно начать с Clickermann), цены бы не было!

А вы бы как разрабы зарабатывали бешенные деньги на лицензиях для крупного бизнеса!
Сейчас стоимость 1 лицензии на 1 компьютер на 1 год - это примерно средняя зп работника в год.

Re: Роботизация в KolibriOS

Posted: Fri Mar 05, 2021 6:08 pm
by dozhdikov_igor
glebrain wrote:
art_zh wrote:во времена моей бурной молодости
под термином "роботизация" понималось нечто совсем другое.
Сейчас понимается: эмуляция человеческих действий(бот) за компьютером c использованием UI Automation и других инструментов.

Было бы в KolibriOS, что-то вида Microsoft Power Automate (или UiPath, можно начать с Clickermann), цены бы не было!

А вы бы как разрабы зарабатывали бешенные деньги на лицензиях для крупного бизнеса!
Сейчас стоимость 1 лицензии на 1 компьютер на 1 год - это примерно средняя зп работника в год.
Колибри еще не готова для использования в бизнесе по причине своей сырости, так что нет особого смысла говорить о коммерциализации в данном случае. Но, если Вы готовы разрабатывать такое ПО просто так, то сообщество в любом случае, скорее всего, поддержит, так как важна помощь каждого в проекте.

Re: Роботизация в KolibriOS

Posted: Fri Mar 05, 2021 6:43 pm
by glebrain
dozhdikov_igor wrote:Колибри еще не готова для использования в бизнесе по причине своей сырости, так что нет особого смысла говорить о коммерциализации в данном случае. Но, если Вы готовы разрабатывать такое ПО просто так, то сообщество в любом случае, скорее всего, поддержит, так как важна помощь каждого в проекте.
Понял, спасибо. Буду изучать форум, и искать способы разработки ботов под KolibriOS :)

Re: Роботизация в KolibriOS

Posted: Fri Mar 05, 2021 7:54 pm
by KPG
Тоже местную тему про роботизацию путаю с другим изначальным её значением. :)
(может как то название топика изначально уточнить)

Появился вопрос к ТС. т.к. автоматизация понимаемых действий - это в большей степени ауткликание, то пробовал ли кто в этом применении из круга общения ТС применять, например, и программу nncron ?(работает под Windows системой)

Сама программа написана на Форт языке - предыдущей версии SPF4 (Forth системы) и открыта в исходниках.

Конечно, прямого переноса исходного кода её работоспособности из под Windows в KolibriOS непосредственно не получится в силу разности данных ОС,
но как, как какого то дизайна в целом может быть интересно в рассмотрении.

К тому же, в частности, SPF4 как язык программирования уже есть в порте для KolibriOS и вполне функционален в её рамках.

P.S. т.е. такой вариант отправной точки в пути для решения задачи из ТС вполне может рассматриваться
и увеличить успешность получения целевого решения задачи в рамках KolibriOS.

Вот только с пользователями практикующими использование Форт "немного" с этим напряжёнка на местном форуме. :)

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

Re: Роботизация в KolibriOS

Posted: Sun Mar 07, 2021 12:31 pm
by art_zh
glebrain wrote:Было бы в KolibriOS, что-то вида Microsoft Power Automate (или UiPath, можно начать с Clickermann), цены бы не было!

А вы бы как разрабы зарабатывали бешенные деньги на лицензиях для крупного бизнеса!
Сейчас стоимость 1 лицензии на 1 компьютер на 1 год - это примерно средняя зп работника в год.
Не вдаваясь в ненужные дискуссии о деталях данного конкретного прожекта,
хотелось бы задать два принципиальных вопроса:

1. ЧТО будет являться предметом лицензирования ?

2. КТО сможет выступить в качестве субъекта лицензионного соглашения ?