@Q_Q К сожалению через node.js и ws модуль не могу конектится к сокету т.к там каждый раз создаётся уникальная ссылка для нового пользователя, а объект который её создаёт определить для меня трудно сайт написан на react + obfurscator. Плюс к этому ещё и в самом ws внутри нужно каждые 5 минут отправлять токен аутентификации который генерирует какая-то анонимная функция либо вообще на сервере. Вроде ещё как можно сделать обёртку или сделать прокси чтобы свои обработчики повесить но это уже вообще темный лес для меня недостижимый. Поэтому пришлось использовать такой костыль. В Принципе все работает, ws команды я отправляю также через Ява скрипт и взаимодействую с этим сайтом быстро не используя веб интерфейс сайта вообще. Единственная проблема это видеть всю консоль не только в режиме отладчика. Я думал может в BAS есть какой-то свой способ о котором я не знаю, просто парсить ее в переменную бесконечно каждый раз обращаясь к ней и записывая последнее действие по умолчанию
Интерпретация PHP в BAS
-
Подскажите, пожалуйста, как можно запустить PHP код в BAS, желательно, чтобы код PHP был прописан в программе, без внешних файлов. Удалось запустить через консоль, используя php.exe, но в этом способе есть недостатки:
- Как дождаться выполнения командной строки, чтобы перейти к обработке результатов
- Как получить сам результат? Делаю запись логов в файл, но метод так себе)
Буду благодарен за любую полезную информацию.
-
@миша нет ничего невозможного, я написал как можно запускать, но есть нюансы. возможно кто-то знает решение как работать проще. если вы не знаете, то смысл в вашем ответе про документацию. я читаю документацию и когда не нахожу ответа задаю вопрос, для этого и существует форум
-
@graf
https://community.bablosoft.com/topic/4559/как-добавить-новый-встроенный-язык/2а при работе через php.exe можно вывод в лог делать?


кстати вызов команд консоли через стандартный модуль работает через создание bat файла.
можно обращаться к api бас и работать без генерации -
@tet-vivi said in Интерпретация PHP в BAS:
а при работе через php.exe можно вывод в лог делать?
запускал через командную строку, в командной строке делал перевод лога в файл.
@tet-vivi said in Интерпретация PHP в BAS:
кстати вызов команд консоли через стандартный модуль работает через создание bat файла.
делал запуск консоли через node.js и после выполнения задачи процесс вроде как не завершается.
-
api bas для прямого вызова команд консоли
var loc_cmd = ""; native_async("processmanager", "start", JSON.stringify({location: loc_cmd, working_folder: "", waitfinish: true, arguments: "", version: 2}))! var result_str = ""; try{ var split = _result().split(",") result_str = base64_decode(split[0]) VAR_PROCESS_ERROR_OUTPUT = base64_decode(split[1]) }catch(e) { result_str = _result() }api/действие запустить Процесс вполне отвечает 2 пунктам в шапке темы.
есть опция ожидания выполнения команд, а так же получения результатов.можно модуль сделать для удобства.
-
@tet-vivi выглядит красиво, но пока что-то не удаётся добиться результата. в var loc_cmd указываю путь к папке, в которой находится исполняемый файл php.exe? верно? рабочую папку я так понял не обязательно указывать. а в аргументах ключи запуска php test.php?
-
@graf
var loc_cmd = "C:\php.exe test.php"- working_folder - рабочая папка(откуда команда будет вызываться)
например можно указать C:\ тогда можно не указывать путь к исполняемому файлу - waitfinish - ждать завершения
- arguments - аргументы консольный команды. например сюда можно вынести test.php
- location - консольная команда
код можно использовать через действие выполнить код
- working_folder - рабочая папка(откуда команда будет вызываться)
-
@graf said in Интерпретация PHP в BAS:
Подскажите, пожалуйста, как можно запустить PHP код в BAS, желательно, чтобы код PHP был прописан в программе, без внешних файлов. Удалось запустить через консоль, используя php.exe, но в этом способе есть недостатки:
- Как дождаться выполнения командной строки, чтобы перейти к обработке результатов
- Как получить сам результат? Делаю запись логов в файл, но метод так себе)
Буду благодарен за любую полезную информацию.
@support как то спросил, а какой код можно реализовать на php, который нельзя реализовать на node js?
Это я к тому, что зачем все эти телодвижения? Вы хотите в BAS использовать уже чей то готовый код на php? -
@Fox said in Интерпретация PHP в BAS:
@support как то спросил, а какой код можно реализовать на php, который нельзя реализовать на node js?
оффтоп
Да, хочу использовать библиотеку апи телеграм https://docs.madelineproto.xyz/
-
@graf said in Интерпретация PHP в BAS:
@Fox said in Интерпретация PHP в BAS:
@support как то спросил, а какой код можно реализовать на php, который нельзя реализовать на node js?
Звучит как начало какого-то фильма о мудреце))
Кстати да
:DДа, хочу использовать библиотеку апи телеграм https://docs.madelineproto.xyz/
Если таки нет аналога на ноде, то, как вариант, поднимите полноценный php сервер с этой либой, а данные передавайте в BAS через get-запросы\websocket\базу\файлы
-
@Fox said in Интерпретация PHP в BAS:
Если таки нет аналога на ноде, то, как вариант, поднимите полноценный php сервер с этой либой
мне нужно чтобы это было портативно, то есть пользователь скачал программу и без лишних настроек начал пользоваться. уже думал об этом варианте, вроде для таких целей должен подойти xampp?
-
@graf said in Интерпретация PHP в BAS:
xampp
Средний пользователь вспотеет от всех этих xampp :)) Лучше сделать свой сервер, хотя проще написать код самому без зависимостей.
-
@tet-vivi said in Интерпретация PHP в BAS:
@UserTrue xampp сложнее Open Server?
А разница? Обычный юзер одурет от всех шагов которые ему надо будет пройти, чтобы запустить это "чудо". При этом он на 99% что-то сделает неправильно и придется настраивать ему самому, вот для это и нужен свой сервер. Но тогда зачем тут бас... )))
-
@graf said in Интерпретация PHP в BAS:
Да, хочу использовать библиотеку апи телеграм
Под API телеграмм
https://core.telegram.org/bots/samples