+ Antworten
Seite 1 von 2 1 2 LetzteLetzte
Ergebnis 1 bis 10 von 19
  1. #1
    Registriert seit
    Dec 2007
    Ort
    Stuttgart
    Beiträge
    179

    Standard SNMP-Trap empfangen

    Hallo zusammen,

    ich bastel in IPS daran den einzelnen Geräten hier im Haushalt (Drucker, Rechner, Router/Switch, NAS, usw.) per SNMP ihre Statusdaten zu entlocken. Das klappt meistens auch schon ganz gut.

    Da ich mein Handy (Android) auch zur Anwesenheitserkennung einsetze ist es immer recht "unpraktisch" wenn der Akku mal schlapp macht und IPS dann denkt ich wäre nicht mehr zu Hause. Daher würde ich gern per SNMP den Akkustand meines Handys abrufen, um mich dann per Stimme warnen lassen zu können. Auch wäre denkbar, dass wenn der Akku dennoch leer läuft zunächst keine Abwesenheit angenommen wird. IPS weiß dann ja, dass der Akku gerade in die Knie gegangen ist. Soweit zum Hintergrund.

    Leider habe ich keinen "normalen" SNMP Agent für Android gefunden, lediglich einen Agenten der SNMP-Traps verschickt in denen auch der Akkustand enthalten ist. Jetzt ist mein Problem, dass IPS keine SNMP-Traps empfangen kann (oder ich hab davon noch nix mitbekommen).
    Hat jemand evtl. eine Idee wie ich meine SNMP-Traps in IPS bekomme?

    Ich könnte mir vorstellen, dass diese Funktion auch für andere interessant sein könnte. Gerade wenn im NAS daheim mal eine Festplatte defekt wird oder im Drucker der Toner zur neige geht.... . Natürlich kann IPS diese Informationen durch regelmäßiges abfragen holen, aber wenn es Traps empfangen könnte wäre das natürlich optimal.

    Was die Soap-Schnittstelle angeht...da hab ich leider 0 Ahnung von. Die würde sich sicherlich gut eignen um über ein externes Programm die Traps in IPS einzuspielen. Ich würde nun mangels besserer Idee und Programmierskill evtl. einen Trap-Receiver suchen, der die Daten filtert (z.B. nur Akkuladestand) und in ein Logfile schreibt. Dieses würde ich dann aus IPS in regelmäßigen Abständen einlesen lassen.
    Alles andere als elegant, daher frage ich ob da jemand einen Tipp für mich hat.

    Danke schonmal
    Geändert von brausepaul (13.09.11 um 22:41 Uhr)

  2. #2
    Registriert seit
    Aug 2009
    Beiträge
    364

    Hi!
    Ich kenne leider kein Programm mit dem man SNMP Traps empfangen und irgendwie an IPS übergeben könnte. Auch Nagios kann keine SNMP Traps empfangen.
    Wenn du Programieren kannst wäre evtl. das hier für dich hilfreich:
    Visual Basic .NET SNMP Receive Trap Source Code

    Sollte auch mit der kostenlosen Express Edition funktionieren.
    Wie heißt denn das Android Programm? Dann kann ichs mir mal anschauen wenn ich Zeit habe.

    Viele Grüße
    Chris

  3. #3
    Registriert seit
    Dec 2007
    Ort
    Stuttgart
    Beiträge
    179

    Hi spaceguy.

    Also das Programm heißt SNMP Trap Agent und gibts als 30Tage Testversion. Auf die Vollversion spare ich schon fleißig (86cent).

    Danke für den Link, das werd ich mir mal näher anschauen. Ja etwas programmieren kann ich, aber in die Geschichte müsste ich mich dann schon etwas genauer einlesen.

    Grundsätzlich werd ich aber schon etwas mehr Zeit investieren IPS das Empfangen von Traps noch bei zu bringen. Das kann ich einfach für vieles gut gebrauchen und möchte nicht ständig die Geräte per SNMP-Get auslesen müssen....das belastet meinen IPS-Server schon etwas.

    Schönen Gruß
    Mark

  4. #4
    Registriert seit
    Aug 2009
    Beiträge
    364

    Schau mal hier: SNMP Traps in Windows Server - Microsoft Enterprise Networking Team - Site Home - TechNet Blogs

    Vielleicht geht das doch ohne programmieren.
    Bei mir kommen die Traps auch brav an... könnte man jetzt in eine Datei umleiten und per IPS auswerten.
    Stellt sich nur die Frage ob man das utility irgendwie als Service starten kann. Einen geöffneten Command Prompt auf dem IPS Server ist ja nicht wirklich schön.

    PHP-Code:
    Incoming Trap:
      
    generic    6
      specific   
    5
      enterprise 
    = .iso.org.dod.internet.private.enterprises.3244
      agent      
    192.168.3.48
      source IP  
    192.168.3.70
      community  
    = public
      
    variable   = .iso.org.dod.internet.private.enterprises.3244.1
      value      
    String 354059020659973
      variable   
    = .iso.org.dod.internet.private.enterprises.3244.2
      value      
    String 192.168.3.70
      variable   
    = .iso.org.dod.internet.private.enterprises.3244.3
      value      
    String 84
      variable   
    = .iso.org.dod.internet.private.enterprises.3244.4
      value      
    String 65
      variable   
    = .iso.org.dod.internet.private.enterprises.3244.5
      value      
    String 97
      variable   
    = .iso.org.dod.internet.private.enterprises.3244.6
      value      
    String 7
      variable   
    = .iso.org.dod.internet.private.enterprises.3244.7
      value      
    String  voicesearch taskmanager latin phone system eurotrapfree c
    alendar email gapps settings android maps acore maps
    :NetworkLocationService
      variable   
    = .iso.org.dod.internet.private.enterprises.3244.8
      value      
    String  TaskManagerService NetworkLocationService BackupTransport
    Service ImageWallpaper NetworkLocationService BluetoothHeadsetService SyncManage
    r EuroptrapSvc GTalkService LatinIME IncomingCallService
      variable   
    = .iso.org.dod.internet.private.enterprises.3244.9
      value      
    String  EurotrapFree Launcher SearchAssetListActivity DialtactsAc
    tivity Opera MessageView ConversationList HomeActivity InCallScreen
      variable   
    = .iso.org.dod.internet.private.enterprises.3244.10
      value      
    String  Hafas Camera ResolverActivity Gallery Calculator CarDockA
    ctivity RecognitionActivity Main Desktop BrowserActivity SigningInActivity Welco
    me Opera ConversationList ForexBoardActivity DeskClock MainActivity TaskManagerA
    ctivity Splashscreen RegisterStartScreenActivity Settings EurotrapFree LoginActi
    vity SearchActivity AssetBrowserActivity MusicBrowserActivity ConversationListAc
    tivityGmail Splash ResolverActivity HomeActivity RootActivity FileManagerActivit
    y FRITZApp LaunchActivity Klicktel AliasActivity
      variable   
    = .iso.org.dod.internet.private.enterprises.3244.11
      value      
    String 0.0 0.0
      variable   
    = .iso.org.dod.internet.private.enterprises.3244.12
      value      
    String hehe wasssup 
    Wo steht der Akkustand?

    Jetzt nur noch hoffen das wir daraus einen Service machen können: http://social.technet.microsoft.com/...-3777899cf7de/

    Könnte mir vorstellen das man mit "snmputil.exe trap >c:\temp\myPhone.txt" das ganze in eine Datei umleiten könnte und dann per IPS auswertet.
    Viele Grüße
    Chris
    Geändert von spaceguy (14.09.11 um 10:50 Uhr)

  5. #5
    Registriert seit
    Jan 2010
    Ort
    Rheinland Pfalz
    Beiträge
    1,876

    Standard Snmp Tool

    Hallo,

    kannst vileicht das Tool dazu gebrauchen.
    guckstu hier
    SNMPView Free SNMP Software

  6. #6
    Registriert seit
    Dec 2007
    Ort
    Stuttgart
    Beiträge
    179

    Hi,

    also der Akkustand ist die 1.3.6.1.4.1.3244.3. In deinem Fall also 84%.
    Aus IPS heraus gestartet kann man das Fenster auf unsichtbar schalten, wäre also nicht das Problem.
    Nun müsste man die Datei regelmäßig einlesen und am besten auch gleich alle 24h löschen um sich den Server nicht zuzumüllen. Wäre eigentlich eine ganz brauchbare Lösung bis IPS nativ SNMP-Traps unterstützt .

    Na dann werd ich das mal so umsetzen. Danke für die Hilfe :-)

  7. #7
    Registriert seit
    Aug 2009
    Beiträge
    364

    nur 100% sauber ist das nicht.
    Was wenn dein Akkustand 1% ist und danach kein Trap mehr empfangen wurde.
    Ist dann das Telefon aus weil der Akku leer ist und du bist zuhause, oder bist du mit leerem Akku aus dem Haus, weil du im Auto ein Ladegerät hast?

    Irgendwie gefällt mir das noch nicht 100%

    Viele Grüße
    Chris

  8. #8
    Registriert seit
    Dec 2007
    Ort
    Stuttgart
    Beiträge
    179

    Ja das stimmt, sauber ist diese Lösung (für meinen Anwendungsfall) wirklich nicht. Ich liebäugel da auch schon eine Weile mit dem AKM-868-System um die Anwesenheit sicher erkennen zu können.

    Ich behelfe mir da bisher indem ich weitere Variablen zu Rate ziehe. Beispielsweise die Bewegungsmelder in den Räumen. Darüber hinaus hab ich auf dem Handy noch ein Programm laufen, das an IPS meldet wenn ich den Bereich um meinen Arbeitsplatz betreten habe. Sobald das passiert bin ich logischerweise auch nicht mehr zu Hause. Mir gehts darum, dass im Zweifelsfall IPS lieber ein wenig zu lang annimmt ich wäre noch da, als mir die Heizung abzudrehen und die Verbraucher abzuschalten, nur weil mein Handy-Akku alle ist. Wenn ich aufgrund eines leeren Akkus plötzlich "Abwesend" bin, dann wird IPS das erstmal nicht als Abwesenheit werten, bis es eine sichere Informationsquelle gibt.

    Aber da gibts bei mir noch andere Baustellen in IPS. Auf dieser Spielwiese gibts immer was neues zu entdecken.
    Geändert von brausepaul (14.09.11 um 14:27 Uhr)

  9. #9
    Registriert seit
    Dec 2007
    Ort
    Stuttgart
    Beiträge
    179

    Nochmal zu dem Thema SNMP-Traps empfangen:

    Ich hab jetzt mal einen UDP-Socket in IPS angelegt der auf Port 162 lauscht. Das ganze an eine Registervariable weitergeschoben und mit ein paar Zeilen Script ausgewertet.

    PHP-Code:
    <?php

    if ($IPS_SENDER == "RegisterVariable")
    {
      
    $data $IPS_VALUE;
      
    $name substr($data, -8,8); //da steht beim SNMP Trap Agent der eigene String
      
    if($name == "HTC Mark"){
        
    $akku substr($data, -72,4);
        
    $akku preg_replace("/[^0-9]/","",$akku); //alles weg was keine Zahl ist
        
    $akku $akku/10//Akkuwert hat noch eine 0 zu viel
        
    SetValueInteger(23235 /*[Akku HTC Desire]*/,$akku);
      }
    }
    ?>
    Da brauch ich kein externes Programm oder ähnliches und hab meinen Akkustand. Da der SNMP-String immer gleich aufgebaut ist, kann man direkt die Stellen rausschneiden. Ansonsten müsste man den String nach Schlüsselwörtern durchsuchen.
    Geändert von brausepaul (14.09.11 um 16:02 Uhr)

  10. #10
    Registriert seit
    Aug 2009
    Beiträge
    364

    Zitat Zitat von brausepaul Beitrag anzeigen
    Nochmal zu dem Thema SNMP-Traps empfangen:

    Ich hab jetzt mal einen UDP-Socket in IPS angelegt der auf Port 162 lauscht. Das ganze an eine Registervariable weitergeschoben und mit ein paar Zeilen Script ausgewertet.
    Saubere Lösung... da hätte man auch gleich drauf kommen können. :-)

Ähnliche Themen

  1. Client Socket, wurden Daten empfangen?
    Von mischo22 im Forum Allgemeine Diskussion (2.x/3.x)
    Antworten: 21
    Letzter Beitrag: 11.02.19, 22:15
  2. Wago SNMP
    Von Status im Forum SPS Automatisierungstechnik
    Antworten: 2
    Letzter Beitrag: 31.03.11, 07:15
  3. Snmp & Freenas
    Von JPaeper im Forum Skripte, PHP, SQL
    Antworten: 4
    Letzter Beitrag: 23.03.11, 09:29
  4. Email über Pop3 empfangen
    Von kadorf im Forum Allgemeine Diskussion (2.x/3.x)
    Antworten: 12
    Letzter Beitrag: 16.06.10, 11:10
  5. Script Mail oder Trap on Error
    Von elektrofreak im Forum Ideen & Anregungen
    Antworten: 7
    Letzter Beitrag: 19.02.10, 07:55

Stichworte