Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.10.17;
Скачать: CL | DM;

Вниз

Помогите разобраться с компонентом tidsnmp или заменить его.   Найти похожие ветки 

 
darkevil ©   (2007-11-10 16:49) [0]

Привет всем!
Задача следующая: есть несколько датчиков магнитных, открывания дверей. Они подключены к девайсу, который следить за их состоянием (открыто или закрыто), когда меняется состояние датчика, девайс посылает в сеть, на определённый ИП и порт 161, по протоколлу SNMP сообщение об этом (если не ошибаюсь trap называется). Задача в том чтобы поймать это сообщение прогой и показать состояние датчика. Думал сделать это с помощью компонента indy TidSnmp, но доков на него нету и нифига не выходит ловить эти сообщения. Кто-нить, подскажите как с этим компонентом работать? Или проще будет всё написать самому на UDP?


 
Palladin ©   (2007-11-11 12:29) [1]

ты хочешь создать компонент свой?


 
darkevil ©   (2007-11-11 23:42) [2]

Нет, я хочу чтобы мне помогли примером как работать с компонентом indy TidSnmp. Как ловить с его помощью trap.


 
darkevil ©   (2007-11-12 14:20) [3]

Ну что, никто не работал с этим компонентом?
Пишу вот это:

snmpsend:=TidSNMP.Create(nil);

snmpsend.Query.Host:="192.168.1.105";
snmpsend.Query.Community := "public";
snmpsend.Query.PDUType := 0;
snmpsend.Query.MIBGet("1.3.6.1.2.1.1.1.0");

snmpsend.SendQuery;

Что я не так пишу? Т.к. прога даже не посылает запрос, т.к. snmpsend.SendQuery не возвращает true.


 
Anatoly Podgoretsky ©   (2007-11-12 15:47) [4]

> darkevil  (12.11.2007 14:20:03)  [3]

Очень редко используемый компонент.


 
umbra ©   (2007-11-12 17:21) [5]

Я сам этим компонентом не пользовался, но прочтите комментарий перед реализацией метода SendQuery в модуле IdSNMP. Там подробно описаны все шаги, необходимые для удачного вызова этого метода и что делать потом.


 
darkevil ©   (2007-11-13 15:18) [6]

Ладно, разобрался сам. Всем спасибо.:)


 
Anatoly Podgoretsky ©   (2007-11-13 15:56) [7]

> darkevil  (13.11.2007 15:18:06)  [6]

Сложно?


 
DVM ©   (2007-11-13 17:57) [8]


> когда меняется состояние датчика, девайс посылает в сеть,
>  на определённый ИП и порт 161, по протоколлу SNMP сообщение
>

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


 
darkevil ©   (2007-11-14 12:39) [9]

Anatoly Podgoretsky - я не стал делать всё через SNMP, т.к. о нем мало инфы и нихрена нет примеров, я сделал сервак UDP и вылавливал, то что приходит на порт 162, а потом лез на сам девайс и считывал инфу о его состоянии.

З.Ы. Единственное что я так и не понял, так это, почему UDP ловил пакеты которые приходили на порт 162 (хоть и криво, но ловил), а сам компонент SNMP нет. Может это конечно из-за того что indy накасячили в нем. Об этом я где-то в инете читал, что в этом компоненте какие-то косяки.


 
darkevil ©   (2007-11-14 12:40) [10]

DVM - Я то хотел понормальному сделать, т.к. в трапах, которые идут по SNMP уже есть инфа о том что произошло. А так пришлось самому на девайс лезть.


 
Anatoly Podgoretsky ©   (2007-11-14 13:28) [11]

> darkevil  (14.11.2007 12:39:09)  [9]

Понял, а я так хотел услышать про SNMP - так мало вопросов по нему.


 
darkevil ©   (2007-11-20 11:48) [12]


> Понял, а я так хотел услышать про SNMP - так мало вопросов
> по нему.

Да я тоже бы очень хотел услышать, но мне надо было срочно делать, а не разбираться в этом неизвестном компоненте.:)


 
lexx   (2008-09-22 16:44) [13]

учити яроглфы!
http://www.delphi2007.net/DelphiNetwork/html/delphi_200607191517311208.html#


 
alexm_hs_   (2008-09-23 21:41) [14]


>
> Понял, а я так хотел услышать про SNMP - так мало вопросов
> по нему.


Я разбирался немного в SNMP, но делал все на API из mgmtapi.dll, snmpapi.dll, wsnmp32.dll. Сложновато немного поначалу, но когда разберешься вроде нормально. А вопросы есть больше по структуре деревьев OIDов в разных коммутаторах. В частности, таблиц адресов в сетях с VLANами. Но это наверное не в этом форуме.

Недавно задавал тут же вопрос, как превратить MIB-файл (ASN-нотация) в дерево OID. Т.е. нужно написать свой компилятор. Но никто не ответил. Тема действительно темная для самоучек :)


 
Oldnick   (2008-11-25 16:07) [15]

Все просто, idSNMP не умеет ловить трапы, он может только get и put.



Страницы: 1 вся ветка

Текущий архив: 2010.10.17;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.009 c
8-1207211017
Monyakman
2008-04-03 12:23
2010.10.17
Приветствую! Мне нужен код чтоб растягивать выделенную область...


15-1279001272
brother
2010-07-13 10:07
2010.10.17
Грустить не надо! а хочется...


3-1246438693
nachi
2009-07-01 12:58
2010.10.17
посчитать сумму параметров дочерних эл-тов_continue


15-1279099590
Heretic
2010-07-14 13:26
2010.10.17
В Уголовном праве России появится новый состав преступления — ере


15-1279186049
Дмитрий С
2010-07-15 13:27
2010.10.17
Это правильно, что этот код компилируется...