JS -- serial port
http://robocraft.ru/blog/algorithm/108.html - есть ардуино
есть веб страница с некоторым кодом - JS отслеживает действия на страницы и генирирует определенное число - вот это число и надо передать в ардуино - Можно ли передать напрямую есть ли доп библиотеки плагины которые дают возможности для записи в серийный порт? Если нет как реализовать прослойку по передачи например передать эти данные в Java который запишит их. Прошу отнестись к этому вопросу серьезно так как если эта проблема будет решена я смогу сделать крутое уствойство, которое возможно немного изменит мир))) Спасибо. |
madmax,
ну во первых -Мир нужно спасать от сумасшедших гениев,а не помогать им его изменять. запиши это число в куки а потом явой его оттуда достань |
а лучше отправь ajax-запрос
|
Цитата:
|
а куки куда отправлять?
|
Цитата:
но это мелочи-вчера "спамер" попался-хотел читать чужие куки со своего сайта,тутже по ним с клиента входить на моймир и отсылать спам. при этом не разворачивая на клиенте сайт моего мира |
явой считывает куки какого из установленных браузеров? Почему не просто в файл писать? И если уж писать в файл, не случаться так, что один еще не дописал, а второй читать начал?
|
Цитата:
Вопрос абсолютно в другом -если он хочет брать инфу с чужих сайтов.хотя видел посты что это можно рнр делать.. |
а может просто использовать JSON-запросы на Ethernet-шылд, подключённый к Arduino? или по-другому - отправлять JSON-запросы на сервер, к которому подключён контроллер.
|
через Ethernet-шылд Arduino может работать как простенький сервер
|
Цитата:
|
Сервер использовать нельзя, интеренет-шилд тоже, хакать не кого не будем, пользователь страницу может локально открыть, и не как с инетом не связыватся (это не обязательно).
Идея с куками хорошая но - будет ли должная скорость можно будет передавать 40++ чисел в секунду, я сомневаюся. Чтобы стало ясней - мы ардуино управляем из веба (все делают из Джавы) а это муторная долгая разработка графичиского окружения, я пытаюсь использовать JS и веб чтобы пользователь взял JS и сам быстро написал что хочет ( из за легкости разработки) используя библеотеку (она модулирует эти цифры исходя из заданных параметров). И не заморачивался углублением в Java C++, на которых не создашь что-нибудь за 20 минут. Неужели JS не может не как по другому передавать данные в сторонние программы, языки? Может есть плагины для браузеров? Естественно пользователь знает что делает и сознательно будет ставить некорое что то для коректной работы всего этого. |
и да кукисы не дадут синхронизации (тоесть я отправил сейчас и ты это точно прочитал тоже сейчас а не через 30 миллисикунд) иначе я бы сразу их использовал и не задавал вопросов)
|
сдаётся, что придётся работать через флеш :)
кстати - посмотрите как реализован вот этот проект: http://www.modk.it |
Цитата:
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
Цитата:
Цитата:
![]() Цитата:
Цитата:
madmax, насколько я понял, надо чтобы пользователь с минимальными усилиями получил доступ к этому устройству из браузера. Т.е. без всяких серверов. В общем-то я таким никогда не занимался, но думаю надо гуглить в сторону HTA, ActiveX, java-апплетов (хотя вряд ли тут ситуация лучше, чем с js в плане доступа к аппаратному обеспечению) либо написания расширений для браузеров. А вообще, десктопные приложения не только на java, c#, c++ писать можно ;) |
Цитата:
так что этот вариант ему подойдёт по полной для оболочки. ну только если он не знает среду-будет разбираться ней от полугода до 2-3 лет.и то при условии что найдёт хорошие книги по среде.хотя это будет повторением того что уже создано под эту плату с одной разницей в оригинале С++ используется а здесь будет скрипт... |
Цитата:
|
O_0 - вот сдесь много чего написано))
Собственно задачу я решел - используем TinkerProxy, и встроенные классы флеша,из JS передаем код в флеш из флеша в сервер от туда в Arduino. Но мне не нравится это решение оно по моему не хакерское какое-то:) Пришлось что-бы флешь в странице ,баги не давал ставить Apache и работать через него - и что же получилось пользователь должен ставить TinkerProxy (настраивает конфиги, ), Apache (и они оба будут в трее болтатся), причем в некоторых ситуациях получились баги это плохо. Я решил нужно попробывать другой путь - можно ли JS законектится к TinkerProxy это вроде сервера, если нет тогда Python, или что вероятней PHP, раз уж без сервера ни как что уж тогда)) Что скажете господа? |
а apache зачем? Расскажи про баги
еще можешь попробовать посмотреть Adobe AIR или написать свой http-сервер: высоких требований к нему нету - так как он только для одного пользователя - и должно быть достаточно вариантов, как это быстро сделать |
Цитата:
есть код на AS3 import flash.errors.*; import flash.events.*; import flash.net.Socket; import flash.external.ExternalInterface; var arduinoSocket:Socket = new Socket("localhost",5333); ExternalInterface.addCallback("sendFromJS", recieveFromJS); //ExternalInterface.addCallback("sendFromJS", function recieveFromJS(str:String):void { try { arduinoSocket.writeUTFBytes(str); arduinoSocket.flush(); } catch(e:IOError) { trace(e); } } он получен из двух кусков один я взял с вашего примера это ExternalInterface.addCallback("sendFromJS", recieveFromJS); и все что к ней примыкает и все остальное это запись в сериал порт. Проблема в том что по отдельности это работает я могу передать в Flash из JS данные, могу Flash отправить в Arduino, но в связке они не работают, в AS эти функции я не знаю и поэтому не могу найти ошибку вот:D |
прикрепи какой-нибудь тестовый пример к сообщению - попробую у себя. Первое может быть связано с какими-нибудь настройками безопасности...
|
Вложений: 1
Сокет сервер, и файлы из htdocs апача
|
Вложений: 1
во-первых по поводу безопасности: флешка не может и общаться с сетью, и с локальными файлами. За одним исключением, если ты пометил ее как trusted (поместил в local-trusted sandbox). Это делается, например, в Settings Manger. Но может быть задано и на других уровнях. Помимо этого, надо разрешить доступ js->swf (Security.allowDomain("*")). Прикрепил рабочий пример
Цитата:
p.s. повторюсь: тебе же нужно декстопное приложение, которое можно писать с помощью html/css/js. Насколько я знаю, этим требованиям соответствует Adobe AIR |
Часовой пояс GMT +3, время: 14:17. |