@ilyx, не знаю как ваш странный js код относится к API BAS, ну да ладно
var count = [[SEEDS]].length; var data = [ [[SEEDS]], [[PROXYS]], [[TWITTERS]], [[EMAILS]] ]; for(var i = 0; i < count; ++i){ var account = data.map(function(parts){ return parts[i] || ''; }); [[ACCOUNT]].push(account.join('|')); };Вопросы по "Модулям" BAS
-
Всем доброе время суток. Решил создать свой модуль для ВК, однако столкнулся с рядом вопросов (хоть и посмотрел гайд на ютубе):
- Есть ли какая то возможность сделать текст на русском?
Сейчас:
Желаемый результат:

- В модуле мне нужно использовать вспомогательную функцию, что бы она не отображалась в скомпилированном модуле галочку я убираю:

Однако при вызове ее в скомпилированном модуле вылазит ошибка:
ReferenceError: Can't find variable: VK_Check_This во время выполнения действия
- Сброс всех параметров модуля при его обновлении, даже если они не были затронуты обновлением.
Это скорее нужно писать разработчику, но пока опишу тут.
К примеру мы сделали 2 функции модуля и работаем с ними.
После заполнения данных мы сохраняем проект.

Далее мы обновляем модуль добавляя в него новую функцию, после чего поля которые мы сохраняли становятся пустыми, хоть блоки в проекте и остаются на своих местах.

Ладно если мы используем блок 1 раз, мы можем повписывать, но если используется многократно это очень не удобно. - Есть ли какая то возможность сделать текст на русском?
-
- Изменить
description --> ruдля желаемого действия в файлеmanifest.json. - Поставить галочку, после создания модуля удалить файлы
название_функции_interface.js,название_функции_select.js,название_функции_code.jsи объект действия из массиваactionsв файлеmanifest.json. - Это происходит т.к при каждом создании модуля для всех параметров указывается случайный id, нужно вручную указывать свои id для всех параметров.
- Изменить
-
@GhostZ said in Вопросы по "Модулям" BAS:
Поставить галочку, после создания модуля удалить файлы название_функции_interface.js, название_функции_select.js, название_функции_code.js и объект действия из массива actions в файле manifest.json.
Подскажите пожалуйста. Выполняю данные действия, но в итоге в режиме записи все работает как надо. В режиме запуска данная функция внутри модуля просто игнорируется. Что я делаю не так? Версия 24.2.3
-
@Int64 said in Вопросы по "Модулям" BAS:
@GhostZ это получается за 2 года не пофиксили. круто конечно вручную редактировать. автоматизация на уровне. Почему нельзя проверять, если этот модуль установлен, то берем обозначения переменных оттуда, а не рандом ?
А почему вы к @GhostZ обращаетесь?
-
Выкладываю скрипт для исправления проблемы с исчезновением данных в действиях при обновлении модуля. Данный скрипт читает файлы, которые заканчиваются на "_interface.js" и заменяет id в новом модуле данными из старого модуля. Скрипт находит нужное поле для замены id через параметр "description", если вы изменили этот параметр в новом модуле, то скрипт не сможет заменить id этого параметра.

Скрипт может как обновить файл нового модуля, так и сохранить изменённый новый модуль отдельным файлом.
update: Изменил скрипт для корректной работы в 26.0.2 версии BAS
Скрипт: ID Replacement.xml
Скрипт в первую очередь предназначен для замены id в модулях созданных через менеджер модулей BAS, однако может работать с любыми другими модулями. Но так как регулярка достаточно строгая, могут быть заменены не все id параметров. В случае такой ситуации можете приложить в этой теме файл проблемного действия, который заканчивается на "_interface.js"
-
-
Да. И есть проблема с костылем. Он принимает 3 параметра:
- Путь до старого модуля, который хранит в себе старые айди
- Путь до нового модуля
- А также чекбокс, который определяет, будет ли заменен новый модуль или же создан файл.
После верной задачи всех параметров, прогона скрипта и установки его в бас, я получил белый экран на панели инструментов.

В итоге я убил несколько часов, чтобы заменить параметры в старых скриптах. Потом час на то, чтобы пытаться понять в чем проблема с этим костылем. Но похоже же, что после обновления баса скрипт замены айди нуждается в доработке.
Ну или я ебл*н.Мне кажется проблема с айди у модулей очень сильно недооценена. То что, можно было бы сделать в пару кликов, надо убить часы, чтобы исправить и разобраться в нерабочем костыле.
-
@uxumax said in Вопросы по "Модулям" BAS:
Да. И есть проблема с костылем. Он принимает 3 параметра:
- Путь до старого модуля, который хранит в себе старые айди
- Путь до нового модуля
- А также чекбокс, который определяет, будет ли заменен новый модуль или же создан файл.
После верной задачи всех параметров, прогона скрипта и установки его в бас, я получил белый экран на панели инструментов.
В итоге я убил несколько часов, чтобы заменить параметры в старых скриптах. Потом час на то, чтобы пытаться понять в чем проблема с этим костылем. Но похоже же, что после обновления баса скрипт замены айди нуждается в доработке.
Ну или я ебл*н.Мне кажется проблема с айди у модулей очень сильно недооценена. То что, можно было бы сделать в пару кликов, надо убить часы, чтобы исправить и разобраться в нерабочем костыле.
Приложите ваш старый и новый модуль
-
@Fox спасибо, что пытаетесь помочь. Я ценю, но было бы здорово это время потратить на фикс проблемы в основном приложении, хотя мне отсюда не видно всей кухни. Просто я к тому, что если фикс будет скоро, то я лучше подожду его.
Прикладываю облегченную версию модуля, без больших функций, чтобы было проще понять в чем проблема
BaseBotTools_modified.zip BaseBotToolsOld.zip BaseBotToolsNew.zip -
спасибо, что пытаетесь помочь. Я ценю, но было бы здорово это время потратить на фикс проблемы в основном приложении
Давайте я сам буду решать на что мне тратить моё время
@uxumax said in Вопросы по "Модулям" BAS:
Просто я к тому, что если фикс будет скоро, то я лучше подожду его.
:DDDПрикладываю облегченную версию модуля, без больших функций, чтобы было проще понять в чем проблема
BaseBotTools_modified.zip BaseBotToolsOld.zip BaseBotToolsNew.zipВ новой версии BAS при замене строки регуляркой заменяемая строка вставляется как есть, вместе с экранирующими символами для регекспа. Почему так, буду разбираться позже. Сейчас изменил скрипт, регексп используется через действие "Шаблон", проверил на вашем модуле, параметры заменяются корректно
-
@Fox said in Вопросы по "Модулям" BAS:
Просто я к тому, что если фикс будет скоро, то я лучше подожду его.
:DDD
Но вот ответа на вопрос когда будет фикс и планируется ли вообще, так и нет, только насмешка в ответ на вполне вежливый вопрос, пусть хоть и не прямой.
-
@uxumax said in Вопросы по "Модулям" BAS:
Просто я к тому, что если фикс будет скоро, то я лучше подожду его.
:DDD
Но вот ответа на вопрос когда будет фикс и планируется ли вообще, так и нет, только насмешка в ответ на вполне вежливый вопрос, пусть хоть и не прямой.
Я устал уже домысливать за пользователей, спросили бы прямо, ответил бы прямо - Улучшения модульной системы пока не планируется
-
Хорошо, но прошу принять во внимание аргументы, почему этот фикс довольно важен.
Проблемы с непрерывной интеграцией
Модули, которые ломаются или требуют сложных процедур обновления после релиза, мешают этому процессу. После фикса появится возможность использовать модули более широко, писать их для отдельных действий на страницах и также их легко обновлять, если что-то там изменилось.Увеличение трудозатрат
Необходимость проведения сложных процедур обновления увеличивает рабочее время пользователя, что в свою очередь уменьшает его производительность.Человеческий фактор
Сложные инструкции обновления могут привести к ошибкам со стороны пользователей, которые могут случайно пропустить шаг или выполнить его неправильно. В этом процессе легко ошибиться.Масштабирование
Усложняется процесс масштабирования и интеграции скриптов в более крупные системы или рабочие процессы. Когда нужно регулярно делать сложные действия, скрипты становятся просто огромными и гораздо лучше разделить их, сделав несколько маленьких, но с большими модулями.Отсутствие стандартизации
Важно иметь стандартизированный и предсказуемый механизм обновления, чтобы интегрировать его с другими инструментами и системами, как в моем случае. Это просто головная боль, спасибо хоть nodejs есть.Упущенные возможности
Если пользователи будут избегать обновления из-за сложности процесса и вероятной ошибки при работе с костылем, они также упускают новые функции и улучшения, внедряемые в новых версиях.Также прекрасно понимаю, что это далеко не единственная проблема у BAS и что есть другие планы. Просто прошу принять во внимание.
-
@Fox said in Вопросы по "Модулям" BAS:
update: Изменил скрипт для корректной работы в 26.0.2 версии BAS
Скрипт: ID Replacement.xml
Спасибо @Fox, что по прежнему пытаетесь решить проблему. Но ваш костыль по прежнему не работает как нужно.
Проблема в том, что когда я устанавливаю *_modified.xml модуль и меняю аргумент у блока модуля, который был пропущен через id-replacement, то он не дает сохранить. После нажатия Ok ничего не происходит

MetamaskTools_modified.zip MetamaskTools.zip MetamaskToolsOld.zip
Еще раз обращаюсь к разработчикам. Пожалуйста, просто обратите внимание на мои аргументы выше. Из-за этой проблемы BAS не пригоден для масштабирования и непрерывной интеграции. Вы вынуждаете дублировать код, из-за чего скрипты становится сложно поддерживать.
-
В моем случае проблема решается простой заменой файлов.
название_функции_interface.js
название_функции_select.js
название_функции_code.jsТо есть я беру эти файлы из старого модуля и просто заменяю их в новом. После этого все работает как нужно на первый взгляд. Параметры остаются на месте после обновления и обновляются без проблем.
@Fox, знаете ли вы, с какими потенциально проблемами я могу столкнуться, если буду практиковать подобный метод, пока нет фикса? Помимо того, что если будут добавлены новые параметры, то они просто удалятся, после замены этих файлов.
update: Предупредив очередную вашу насмешку, я спрашиваю именно про работу BAS, а не про то, что будет конкретно с моим скриптом, если я буду делать так. -
@null123 said in Вопросы по "Модулям" BAS:
планируется фикс этой проблемы? она все еще актуальна
Я написал комбайн по обработке модуля после BAS, в котором делаю что хочу с сгенерированным кодом модуля.
К модулю делаю небольшой тестовый скрипт, чтобы хоть немного проверить, что код работает после обновления.Изменений со стороны разработчика BAS, вероятно, можно ждать очень долго.