Autor Thema: Clientsocket Probleme seit Package Umstellung  (Gelesen 485 mal)

Online CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 22885
Clientsocket Probleme seit Package Umstellung
« am: 26 März 2019, 14:57:23 »
Hallo,

Leider lässt sich das Problem/die Beobachtung nur sehr schwer erklären.
Seit ich mein Modul 82_LGTV_WebOS auf package umgestellt habe (sowohl LGTV_WebOS als auch FHEM::LGTV_WebOS) kommen keine Daten mehr über den Clientsocket.
Es ist schwer zu beschreiben. Die ReadFn wird immer aufgerufen, diese stellt fest das keine Daten vorhanden sind und schließt darauf hin die Verbindung


sub Open($) {

    my $hash    = shift;
    my $name    = $hash->{NAME};
    my $host    = $hash->{HOST};
    my $port    = 3000;
    my $timeout = 0.1;

    Log3 $name, 4, "LGTV_WebOS ($name) - Baue Socket Verbindung auf";

    my $socket = new IO::Socket::INET(
        PeerHost => $host,
        PeerPort => $port,
        Proto    => 'tcp',
        Timeout  => $timeout
      )
      or return Log3 $name, 4,
      "LGTV_WebOS ($name) Couldn't connect to $host:$port";    # open Socket

    $hash->{FD} = $socket->fileno();
    $hash->{CD} = $socket;             # sysread / close won't work on fileno
    $selectlist{$name} = $hash;
...
...
...
}



[code]
sub Read($) {

    my $hash = shift;
    my $name = $hash->{NAME};

    my $len;
    my $buf;

    Log3 $name, 4, "LGTV_WebOS ($name) - ReadFn started";

    $len = sysread( $hash->{CD}, $buf, 10240 );

    if ( defined($len) and $len == 0 ) {

        Close($hash);

        return;
    }
.....
.....
....


sub Close($) {

    my $hash = shift;
    my $name = $hash->{NAME};

    return if ( !$hash->{CD} );

    close( $hash->{CD} ) if ( $hash->{CD} );
    delete( $hash->{FD} );
    delete( $hash->{CD} );
    delete( $selectlist{$name} );

    readingsSingleUpdate( $hash, 'state', 'off', 1 );
...
...
...
}

Dies geschieht in einer Endlosschleife.

ABER!!!
So bald ich ein reload 82_LGTV_WebOS mache kommen sofort Daten an und die Verbindung bleibt stabil.

Hat jemand schon mal eine solche Beobachtung gemacht oder kann mir jemand Tipps geben wo ich mit einer Suche anfangen kann?


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://paypal.me/pools/c/8gULisr9BT
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

Online CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 22885
Antw:Clientsocket Probleme seit Package Umstellung
« Antwort #1 am: 10 April 2019, 09:33:21 »
Ich schupse das noch mal hoch.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://paypal.me/pools/c/8gULisr9BT
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

Offline Loredo

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3660
  • ~ Challenging Innovation ~
Antw:Clientsocket Probleme seit Package Umstellung
« Antwort #2 am: 10 April 2019, 20:53:32 »
ich hab da keine Idee zu, tut mir leid :-(
Bin selbst halb Blinder, wenn es um SubProcess.pm geht...
Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Online CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 22885
Antw:Clientsocket Probleme seit Package Umstellung
« Antwort #3 am: 10 April 2019, 21:00:22 »
ich hab da keine Idee zu, tut mir leid :-(
Bin selbst halb Blinder, wenn es um SubProcess.pm geht...

Danke Dir fürs anschauen. Entweder teste ich einmal mit DevIo oder ich lasse es mit dem Package bei dem Modul.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://paypal.me/pools/c/8gULisr9BT
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

 

decade-submarginal