Pages: (2) [1] 2  ( Show unread post )

> Есть вопрос к программерам по lircd
 VxWorks Member is Offline
 Posted: 20-03-2008, 03:00 (post 1, #828257)

Daysleeper
Group: Privileged
Group: Privileged
Posts: 21949
Warn:0%-----
Есть такая задачка - надо организовать управление девайсом через веб-нитерфейс. На девайсе есть телнет и lircd. Это все.
lircd умеет слушать порты.

Вопросы:
1. Возможно ли управление lircd по tcp или udp портам? То есть, как понять, что ему надо подсунуть, чтобы он сделал какое-то действие?
2. Если 1 не работает, то как написать программу, которая будет генерировать (симулировать) события для lircd?

PM
Top Bottom
 FiL Member is Offline
 Posted: 20-03-2008, 04:28 (post 2, #828265)

Сварливый Мозг Клуба
Group: Roots
Group: Roots
Posts: 22892
смотря что там управлять надо... Если то, что надо ты можешь сделать через телнет, то проще написать веб-интерфейс, который будет телнетиться и выполнять некие действия. И не заморачиваться с lircd. А если через телнет не катит, то нафик ты его упомянул? :)
PM Email Poster ICQ AOL MSN
Top Bottom
 VxWorks Member is Offline
 Posted: 20-03-2008, 11:24 (post 3, #828304)

Daysleeper
Group: Privileged
Group: Privileged
Posts: 21949
Warn:0%-----
Через телнет управлять не получается. А упомянул... сдуру наверное.
PM
Top Bottom
 FiL Member is Offline
 Posted: 20-03-2008, 20:12 (post 4, #828381)

Сварливый Мозг Клуба
Group: Roots
Group: Roots
Posts: 22892
:)
Ну, тогда не знаю. Я с lirc-ем знаком исключительно по-наслышке. Даже ни разу не видел.
PM Email Poster ICQ AOL MSN
Top Bottom
 Set Member is Offline
 Posted: 20-03-2008, 21:55 (post 5, #828403)

Visionary

Group: Members
Posts: 5181
Warn:0%-----
Мне бы ваши проблемы... вроде проще не бывает... :drag:

"The main task of lircd is to decode the infrared signals and provide an uniform interface for client applications. Clients can connect to lircd through a Unix domain socket which is located in /dev/lircd. Using this socket they will get the infrared codes received by lircd and they can send commands to lircd."
PM
Top Bottom
 VxWorks Member is Offline
 Posted: 20-03-2008, 22:16 (post 6, #828406)

Daysleeper
Group: Privileged
Group: Privileged
Posts: 21949
Warn:0%-----
И как подключиться к этому сокету? Объясни для тупых, плиз.

Инфракрасного порта в девайсе, кстати, нет.
PM
Top Bottom
 Set Member is Offline
 Posted: 20-03-2008, 22:43 (post 7, #828412)

Visionary

Group: Members
Posts: 5181
Warn:0%-----
Тогда у меня полные непонятки... :) если вэб-интерфейс, то на девайсе должен быть соответствующий сервер быть... и причём тут отсутствующий инфрапорт и лиркд тогда? Или нужно шелловские команды на девайс передавать посредством вэбстранички на удалённой машине?
PM
Top Bottom
 VxWorks Member is Offline
 Posted: 20-03-2008, 23:00 (post 8, #828421)

Daysleeper
Group: Privileged
Group: Privileged
Posts: 21949
Warn:0%-----
ОК, попытаюсь объяснить попроще, насколько у меня получится :)

ДАНО:

Есть сетевой девайс. На котором бегает Familiar Linux с жутко кастрированным Busybox. По какому принципу его кастрировали, я не знаю, бо, скажем, netcat есть, а trace нету.
Из коммуникаций есть телнет и httpd. Можно прикрутить ftpd и smb если очень надо.

Сорсов к софту, бегающему на девайсе (кроме телнета и веб-сервака) нету и ломать его нельзя (ну вот нельзя и все, засудят).
Софт управляется нажатиями кнопок на морде девайса, а также двумя енкодерами (крутящаяся ручка типа реостата, как регуляторы громкости на стереосистемах).

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

Встроенный lircd имеет может симулировать нажатие кнопок и вращение ручек (при работе с пультом, которого в данной конфигурации девайса нет физически, но весь софт для него есть).

ЗАДАЧА:

Написать софт, который будет управлять данным девайсом через веб-интерфейс. Или виндовую программу, которая будет контролировать эту фиговину. Если требуется, можно закинуть на девайс собственноручно написанный софт, для этого все есть.

PM
Top Bottom
 Set Member is Offline
 Posted: 20-03-2008, 23:55 (post 9, #828433)

Visionary

Group: Members
Posts: 5181
Warn:0%-----
Что-нибудь из этого там стоит?

irpty
irxevent
irrecord
irw
PM
Top Bottom
 Set Member is Offline
 Posted: 21-03-2008, 00:12 (post 10, #828436)

Visionary

Group: Members
Posts: 5181
Warn:0%-----
PM
Top Bottom
 VxWorks Member is Offline
 Posted: 21-03-2008, 00:32 (post 11, #828440)

Daysleeper
Group: Privileged
Group: Privileged
Posts: 21949
Warn:0%-----
QUOTE (Set @ 20-03-2008, 20:55)
Что-нибудь из этого там стоит?

irpty
irxevent
irrecord
irw
Ничего из этого нет.
PM
Top Bottom
 Set Member is Offline
 Posted: 21-03-2008, 01:10 (post 12, #828447)

Visionary

Group: Members
Posts: 5181
Warn:0%-----
Есть httpd - можно сваять вэбинтерфейс, где через cgi запускается прога и пишет нужную команду в сокет (/dev/lircd). Что и как писать провисано в доках и можно посмотреть в сорсах lircd. Вроде всё просто... :actu:
PM
Top Bottom
 VxWorks Member is Offline
 Posted: 21-03-2008, 01:16 (post 13, #828451)

Daysleeper
Group: Privileged
Group: Privileged
Posts: 21949
Warn:0%-----
Что значит "пишет в сокет"? Открывает /dev/lircd как файл и пишет туда какие-то данные? Примерчик не подкинешь? :help:
Опять же, сорсов на данный конкретный lircd нет. Или они все одинаковые?
PM
Top Bottom
 Set Member is Offline
 Posted: 21-03-2008, 01:37 (post 14, #828454)

Visionary

Group: Members
Posts: 5181
Warn:0%-----
Я думаю они все на одно лицо. :D:

Можно попробовать через echo некая-таинственная-строка >> /dev/lircd (или куда оно там пишет... в конфигах lircd это прописано)
PM
Top Bottom
 VxWorks Member is Offline
 Posted: 21-03-2008, 02:37 (post 15, #828459)

Daysleeper
Group: Privileged
Group: Privileged
Posts: 21949
Warn:0%-----
Вот так?

# lircd --device=/dev/lircd --output=/tmp/lircout --logfile=/tmp/lirclog
# echo 0x02FD >> /dev/lircd
-sh: cannot create /dev/lircd: No such device


В логах ничего нет. Просто /dev/lirc (стандарт для входного потока) тоже нет, но есть /dev/lircd, который вроде как стандарт для выходного потока.
У меня есть такое нехорошее ощущение, что данный конкретный lircd не предназначен для работы со входными сокетами... Что скажешь?
PM
Top Bottom
Topic Options Pages: (2) [1] 2