Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Тема начата: Barrackuda от Ноябрь 25, 2018, 04:06:44 am

Название: Как вывести лог на другом устройстве ?
Отправлено: Barrackuda от Ноябрь 25, 2018, 04:06:44 am
Доброго времени суток камрады.
Задача следующая. Написал с горем пополам скрипт(буду учиться:) Закинул на сервер. И теперь хочу логи выводить на свой пк. Есть ли возможность реализовать сие?
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: Shada от Ноябрь 25, 2018, 08:36:58 am
Один из вариантов - установить на оба устройства Яндекс.Диск. Сохранять лог в файл, в папке на этом диске. На втором (возможно мобильном) устройстве его просматривать.
Можно выбрать удобный просмотрщик, например Notepad++ умеет определять изменение файла извне и обновлять документ на экране.
Если сохранять лог в файл в формате csv, то просматривать можно в Excelе, тоже с автообновлением.
Если например нужно передавать с логом звук, то можно использовать формат html и в нем уже красиво всё оформить. Просмотрщиком в последнем случае будет браузер. Автообновление страницы в браузере легко настроить через плагины для браузера, или js. Звук может пригодиться, если бот на удаленной машине попал в сложную ситуацию и должен срочно позвать на помощь человека.
Во вложении пример html-лога со звуком. При его просмотре звук на компьютере лучше убавить.

Поправка:
В браузерах на движке WebKit (Chrome и Opera) теперь оказывается по умолчанию отключено автовоспроизведение аудио - https://developers.google.com/web/updates/2017/09/autoplay-policy-changes .
Вот такая засада. Чтобы включить надо в адресной строке браузера ввести команду chrome://flags/#autoplay-policy и нажать Enter. В разделе "Autoplay policy" выбрать "No user gesture is required", затем нажать внизу кнопку "Relaunch Now".
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: Barrackuda от Ноябрь 26, 2018, 10:05:17 am
Один из вариантов - установить на оба устройства Яндекс.Диск. Сохранять лог в файл, в папке на этом диске. На втором (возможно мобильном) устройстве его просматривать.
Можно выбрать удобный просмотрщик, например Notepad++ умеет определять изменение файла извне и обновлять документ на экране.
Если сохранять лог в файл в формате csv, то просматривать можно в Excelе, тоже с автообновлением.
Если например нужно передавать с логом звук, то можно использовать формат html и в нем уже красиво всё оформить. Просмотрщиком в последнем случае будет браузер. Автообновление страницы в браузере легко настроить через плагины для браузера, или js. Звук может пригодиться, если бот на удаленной машине попал в сложную ситуацию и должен срочно позвать на помощь человека.
Во вложении пример html-лога со звуком. При его просмотре звук на компьютере лучше убавить.

Поправка:
В браузерах на движке WebKit (Chrome и Opera) теперь оказывается по умолчанию отключено автовоспроизведение аудио - https://developers.google.com/web/updates/2017/09/autoplay-policy-changes .
Вот такая засада. Чтобы включить надо в адресной строке браузера ввести команду chrome://flags/#autoplay-policy и нажать Enter. В разделе "Autoplay policy" выбрать "No user gesture is required", затем нажать внизу кнопку "Relaunch Now".

Отлично! Спасибо! Идея работает. Через Sublime  выводит на ура. А в браузере очень сильно придумано.
Итак что не устраивает и что планирую предпринять.
Яндекс диск друпбокс и прочие-не вариант. Ресурсы на вес золота. Потому как на есть сервер а внутри виртуалки. Если на каждую ставить яндекс то тяжело выходить.
Что пришло в голову:
Попробовать через WebDav. Кстати яндекс когда то давал такую возможность.
Через FTP:
Цитировать
Иногда бывает нужно периодически загружать/выгружать какие-то файлы с/на FTP. Запустив команду ftp с параметром -s, можно задать текстовый файл, содержащий FTP-команды, которые выполнит программа ftp.exe.

Создай файл upload.bat. Мы его будем использовать для загрузки всех txt-файлов из локального каталога c:\test в удаленный каталог tmp нашего FTP-сервера. В этот файл помести всего одну строчку:
ftp -n -s:commands.ftpПараметр -n запрещает автоматический вход на сервер (входом будем управлять вручную), а второй задает текстовый файл с командами FTP-клиента, которые будут или выполнены локально, или переданы серверу (в зависимости от команды). В нашем случае commands.ftp следующий:
open сервер
USER пользователь
пароль
binary
cd tmp
lcd c:\test
prompt
mput *.txt
bye
Обрати внимание: пароль указывается в отдельной строке после указания имени пользователя. Команда binary включает двоичный режим обмена информацией. Команда cd изменяет каталог на FTP-сервере, lcd — на локальном компе. Команда prompt отключает режим подтверждений для команд mput (множественная загрузка файлов на сервер), mget (множественная загрузка файлов с сервера). Команда bye завершает работу сценария.

Данный сценарий легко переделать в сценарий, загружающий файлы с сервера. Для этого достаточно команду mput заменить на mget.

Я привел довольно тривиальный пример. Но ты можешь существенно его расширить. Никто тебе не мешает добавить перед вызовом команды ftp команды, создающие архив каталога БД. Например:
rar a c:\test\backup.rar @backup.lstЭта команда создаст архив backup.rar по всем файлам, указанным в текстовом файле backup.lst. После этого в commands.ftp нужно изменить mput *.txt на mput *.rar.

А далее уже или в браузер. Или уже в редактор где например через sublime можно сделать чудеса. Только мне как человеку дилетанту очень тяжело это всё дается. Потому как имею только средние познания в HTML и CSS. Но ничего. Терпение и труд все перетрут!!! Пользуясь случаем хочу поблагодарить автора сего чуда-кликера!! Этот софт как глоток воздуха. Наконец то проекты начали двигаться в правильном направлении после длительного простоя. Долго искал то что нужно. Однако не Макрос в связке с кроном, не BAS как то не заходил и не получалось возможно из за кривых рук и не желания учиться) А Чудо-кликер в связке с тем же кроном может сотворить чудеса :) И есть желание подучить синтаксис. Кстати про синтаксис.Добротного мануала в сети не нашёл. Подскажите в каком направлении копать? Что подучить? C основы или какой язык ? Поведайте аффективный путь к тому что бы хорошо понимать язык кликера?
Спасибо.
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: Atas от Ноябрь 26, 2018, 06:45:50 pm
Привет! :)

Что пришло в голову:
Попробовать через WebDav. Кстати яндекс когда то давал такую возможность.
Подключить Я.Диск как сетевой диск, действительно будет самым легким решением, в плане потребления ресурсов. Такая возможность сохранилась - https://yandex.ru/support/disk/webdav/

Добавлю еще один вариант, которым пользовался сам. Не буду расписывать подробно, просто скажу, что это IIS. Он штатно присутствует в Windows как компонент и по дефолту отключен. Включив IIS, мы превращаем свой комп в независимый сайт и ftp-сервер. Всё что мы напишем на страницах этого сайта, сразу будет видно всем в интернете. У этого варианта есть конечно свои минусы. Например - у сервера должен быть статический IP-адрес. Не стоит забывать про безопасность и настроить доступ к информации на сервере. По поводу потребления ресурсов системы IIS-сервером, сказать ничего не могу - на глаз не ощутимо.
Но есть в этом решении и один важный плюс. В моем случае, служебная информация, которую я выкладывал на сайт, предназначалась для моего бывшего босса, который не просто "чайник" в IT, а вообще валенок. И сам он находился в другом городе. Причем мне даже не было известно (и не интересно) на каком устройстве он эту информацию будет просматривать. По этому настроить на его устройстве подключение к облаку, небыло ни малейшего желания. Я ему просто кинул в аську url сайта и всё - он заткнулся. Вообще, такой вид отчетности о работе я и придумал для того, чтобы поменьше общаться с этим человеком по телефону, предоставив ему онлайн-отчеты.
Вариант конечно не самый лучший, но тоже вариант. Может кому пригодится. :)
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: dramster от Ноябрь 27, 2018, 12:33:49 am
Ну и еще вариант, кидать на почту логи. http://crapware.aidf.org/forum/index.php?topic=3778.0

Там есть примеры и по отправке сообщений на почту, и по приему ее кликерманом.
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: Hito от Январь 02, 2019, 07:53:56 pm
Один из вариантов - установить на оба устройства Яндекс.Диск. Сохранять лог в файл, в папке на этом диске. На втором (возможно мобильном) устройстве его просматривать.
Можно выбрать удобный просмотрщик, например Notepad++ умеет определять изменение файла извне и обновлять документ на экране.
Если сохранять лог в файл в формате csv, то просматривать можно в Excelе, тоже с автообновлением.
Если например нужно передавать с логом звук, то можно использовать формат html и в нем уже красиво всё оформить. Просмотрщиком в последнем случае будет браузер. Автообновление страницы в браузере легко настроить через плагины для браузера, или js. Звук может пригодиться, если бот на удаленной машине попал в сложную ситуацию и должен срочно позвать на помощь человека.
Во вложении пример html-лога со звуком. При его просмотре звук на компьютере лучше убавить.

Поправка:
В браузерах на движке WebKit (Chrome и Opera) теперь оказывается по умолчанию отключено автовоспроизведение аудио - https://developers.google.com/web/updates/2017/09/autoplay-policy-changes .
Вот такая засада. Чтобы включить надо в адресной строке браузера ввести команду chrome://flags/#autoplay-policy и нажать Enter. В разделе "Autoplay policy" выбрать "No user gesture is required", затем нажать внизу кнопку "Relaunch Now".

Сами пробовали задумку с яндекс-диском? Я пробовал... При постоянном обращении скрипта к файлу (даже если он не пишет в него, а просто считывает), этот файл в постоянной загрузке на я-диск и в итоге в нем нет той инфы, которая в нем на компе и не будет до тех пор, пока скрипт не оставит файл в покое и не даст ему нормально прогрузиться на я-диск.
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: Атеист от Январь 02, 2019, 08:17:06 pm
Сами пробовали задумку с яндекс-диском? Я пробовал... При постоянном обращении скрипта к файлу (даже если он не пишет в него, а просто считывает), этот файл в постоянной загрузке на я-диск и в итоге в нем нет той инфы, которая в нем на компе и не будет до тех пор, пока скрипт не оставит файл в покое и не даст ему нормально прогрузиться на я-диск.

Тогда:
(Robocopy (https://it-howto.ru/robocopy-primery-ispolzovaniya) + Bat To Exe Converter (http://www.f2ko.de/en/b2e.php)) + Доступ к Диску через WebDAV (https://yandex.ru/support/disk/webdav/)
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: dramster от Январь 02, 2019, 08:31:00 pm
Сами пробовали задумку с яндекс-диском? Я пробовал... При постоянном обращении скрипта к файлу (даже если он не пишет в него, а просто считывает), этот файл в постоянной загрузке на я-диск и в итоге в нем нет той инфы, которая в нем на компе и не будет до тех пор, пока скрипт не оставит файл в покое и не даст ему нормально прогрузиться на я-диск.
Это если через какието приложения?

Так Atas же предложил прям через подключенный сетевой диск. Я в тот раз  пробовал, даже пользовался. Самый простейший рабочий вариант. И с обратной связью проблем не должно быть.
Цитировать
Подключить Я.Диск как сетевой диск, действительно будет самым легким решением, в плане потребления ресурсов. Такая возможность сохранилась - https://yandex.ru/support/disk/webdav/

По ссылке подробно вссе описано. Диск создается за 15сек. Прямо на этом диске сохранил скрипт с таким кодом для теста:
Код: Clickermann
  1. print("сообщение ", $a)
  2. TFWrite("test.txt",STRCONCAT ("сообщение ", $a)  )
  3. inc($a)
  4. wait(2)
При этом запись в файл TFWrite происходит давольно медленно 1-2сек, но это не должно мешать в большинстве случаев.
Запускаю. В телефоне в это время прям через браузер наблюдаю за логом, задержки никакой нет.

Конечно, если нужно писать туда по десять сообщений в секунду, то это не вариант.


Название: Re: Как вывести лог на другом устройстве ?
Отправлено: Kibes от Август 12, 2019, 11:16:44 pm
Я сделал файлик index.html, разместил его на гугл диск и сделал хостинг по этой инструкции: https://www.youtube.com/watch?v=Pv7iaTaZzIw
Все получилось на ура. Но, мне нужно, что бы страничка в браузере обновлялась каждые 15 секунд. В принципе она обновляется, но я так понимаю, что браузер загнал страницу в кэш, от туда и обновляет. Почитал в интернете, нашел, что нужно добавить в код странички, что бы обновляло не с кеша, а заново загружал браузер файл:
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Expires" content="-1">
<meta http-equiv="CACHE-CONTROL" content="NO-CACHE">
<meta http-equiv="Refresh" content="15" />
Но ничего не получилось. Может кто посоветует, как сделать что бы каждый раз браузер грузил измененный index.html. Если в браузере нажать на ctrl + F5, то выдает браузер обновленный index.html, но хотелось бы автоматом.
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: Shada от Август 13, 2019, 08:40:36 am
Если страницу создает Clickermann, то вместо
простого обновления страницы - <meta http-equiv="Refresh" content="15" />,
можно сделать переход на другую страницу - <meta http-equiv='refresh' content='15;URL=https://yandex.ru'>.
Целевой URL остается прежним, только к нему нужно дописать, после вопросительного знака, что то вроде новой версии.

Получится примерно следующее:
Код: HTML
  1. <meta http-equiv='refresh' content='15;URL=https://yandex.ru?bla-bla-bla'>

Для указания новой версии страницы хорошо подходит время Unix - переменная "$_time_t".
В HTML документе можно использовать одинарные кавычки.

Код: Clickermann
  1. $url = STRCONCAT("<meta http-equiv='refresh' content='15;URL=https://yandex.ru?", $_time_t, "'>")
  2. // <meta http-equiv='refresh' content='15;URL=https://yandex.ru?1565683540'>

Еще есть плагины для браузера, которые обновляют страницу игнорируя кэш.
Еще есть JavaScript.
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: Kibes от Август 13, 2019, 08:58:09 am
Для указания новой версии страницы хорошо подходит время Unix - переменная "$_time_t".
В HTML документе можно использовать одинарные кавычки.

Код: Clickermann
  1. $url = STRCONCAT("<meta http-equiv='refresh' content='15;URL=https://yandex.ru?", $_time_t, "'>")
  2. // <meta http-equiv='refresh' content='15;URL=https://yandex.ru?1565683540'>
Я как раз об этом и думал, тоже так пробовал, но проблема в том, что в файл хтмл прописался раз "1565683540" и затем по циклу его обновляет. Нужен механизм, что бы это число "1565683540" генерировалось уже в самой странице, а я не знаю как это сделать, подскажите пожалуйста.

Еще есть плагины для браузера, которые обновляют страницу игнорируя кэш.
Еще есть JavaScript.
В этих познаниях вообще ноль, сижу гуглю - пока ничего не нашел...
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: Shada от Август 13, 2019, 09:22:21 am
В расширении ReloadMatic есть отключение кэша.
Хорошо ли работает, не знаю.

(https://s8.hostingkartinok.com/uploads/thumbs/2019/08/4dd5d345ac6102fd0a144e1d2d792d15.png) (https://hostingkartinok.com/show-image.php?id=4dd5d345ac6102fd0a144e1d2d792d15)
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: Kibes от Август 13, 2019, 09:31:03 am
В расширении ReloadMatic есть отключение кэша.
Хорошо ли работает, не знаю.

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

Попросил знакомого товарища, рубит в html, он мне сделал:
Код: Javascript
  1. <script>
  2.    function reloadPage() {
  3.        var url = location.protocol + '//' + location.host + location.pathname;
  4.        location.href = url + '?v=' + new Date().getTime();
  5.    }
  6.      setTimeout(reloadPage, 15000);
  7. </script>
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: Shada от Август 13, 2019, 10:59:47 am
Или так:
Код: Javascript
  1. <script>
  2.  var refresh = setInterval(function () {
  3.    document.location.replace('Твой_URL' + '?' + +new Date);
  4.  }, 15000);
  5. </script>

"Твой_URL" только замени на нужный URL.
Название: Re: Как вывести лог на другом устройстве ?
Отправлено: Луций от Август 16, 2019, 12:47:15 am
как у вас все сложно, у меня бот просто пишет мне в телегу как у него дела

один клик в окно, паст и ентер, видно и на машине и не телефоне сразу, зачем такие сложности?