вобщем нашел решение. может кому-то будет тоже полезным:
var kykyky = [[IZ_PERV_POTOKA]]; PSet("basglobal", "IZ_PERV_GLOBALKA_POTOKA", JSON.stringify(kykyky))вввввввввв.png
необходимо сделать обертку для BAS_API,
чтобы передавать id команды
и бас скачивал команду как текст с сервера и результат тоже отправлял.
как выполнить команду бас из string?
например BAS_API(eval("log(\"1234\")"))
смысл всего этого ускорить работу,
избежать передачи данных через win32 pipe.
все работает
этот конечно "костыли",
но хз как иначе
то есть мы туда закидываем функцию которая будет обрабатывать команды по ид и вызывать через хттп сервер.
const util = require('util')
try {
const func = const test = 'function t1() {sleep(1000)!; _set_result("test")}'; eval(test); _call(t1, null)! log(_result())
await BAS_API(func)
} catch (error) {
console.log('error')
console.log(util.inspect(error))
throw error
}
@DoctorKrolic said in выполнить команду в BAS_API из string, eval?:
@jason @UserTrue Сейчас уже доступно API БАС'а из C#, Node.js и python. Если это подойдёт
Я знаю, но там не апи бас доступно, а вызов функции из проекта. Наверное что-то тоже можно накостылить на нем, только вопрос как все это будет работать поток в 100..
проще всего сделать отдельный модуль,
будет функция типа
execCmd(thread: number, taskId: number): Promise<any>
и будет скачивать content = get(http://localhost/<thread>/<id>)
потом
let error: any
let result: any
try {
eval(content)
} catch (error_) {
error = error_
}
POST_RESULT(http://localhost/<thread>/<id>, {error, result})
то есть передаем только два числа и получаем результат