mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-03-03 04:36:36 +00:00
98_cloneDummy - new module added
git-svn-id: https://svn.fhem.de/fhem/trunk@5275 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
c27f453003
commit
93415e6d92
146
fhem/FHEM/98_cloneDummy.pm
Normal file
146
fhem/FHEM/98_cloneDummy.pm
Normal file
@ -0,0 +1,146 @@
|
||||
# $Id: $
|
||||
##############################################
|
||||
# 98_cloneDummy
|
||||
#
|
||||
# FHEM Modul um aus Events von FHEM2FHEM clone-Devices zu erstellen
|
||||
# cloneDummy ist "readonly"
|
||||
# Grundlage ist 98_dummy.pm von Rudolf Koenig
|
||||
# von betateilchen gab es viel Hilfe (eigentlich wars betateilchen)
|
||||
# Anleitung:
|
||||
# Um die Änderung zu nutzen, einfach einen cloneDummy anlegen
|
||||
#
|
||||
# Eintrag in der fhem.cfg:
|
||||
# define <name> cloneDummy <quellDevice>
|
||||
#
|
||||
#
|
||||
#############################################
|
||||
|
||||
package main;
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
sub cloneDummy_Initialize($) {
|
||||
my ($hash) = @_;
|
||||
|
||||
$hash->{DefFn} = "cloneDummy_Define";
|
||||
$hash->{NotifyFn} = "cloneDummy_Notify";
|
||||
$hash->{AttrList} = $readingFnAttributes;
|
||||
}
|
||||
|
||||
sub cloneDummy_Define($$) {
|
||||
my ($hash, $def) = @_;
|
||||
my @a = split("[ \t][ \t]*", $def);
|
||||
return "Wrong syntax: use define <name> cloneDummy <sourceDevice>" if((int(@a) != 3)) ;
|
||||
return "Wrong syntax: <name> must different to <sourceDevice>" if($a[0] eq $a[2]) ;
|
||||
|
||||
$hash->{NOTIFYDEV} = $a[2];
|
||||
readingsSingleUpdate($hash,'state','defined',1);
|
||||
Log3($hash,4,"cloneDummy: $a[0] defined for source $a[2]");
|
||||
return undef;
|
||||
}
|
||||
|
||||
sub cloneDummy_Notify($$) {
|
||||
my ($hash, $dev) = @_;
|
||||
my $dn = $dev->{NAME};
|
||||
my $hn = $hash->{NAME};
|
||||
my $reading = $dev->{CHANGED}[0];
|
||||
$reading = "" if(!defined($reading));
|
||||
Log3($hash,3, "cloneDummy: $hn D: $dn R: $reading");
|
||||
|
||||
my ($rname,$rval) = split(/ /,$reading,2);
|
||||
$rname = substr($rname,0,length($rname)-1);
|
||||
|
||||
readingsBeginUpdate($hash);
|
||||
readingsBulkUpdate($hash, $rname, $rval);
|
||||
readingsBulkUpdate($hash,'state','active');
|
||||
readingsEndUpdate($hash, 1);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
=pod
|
||||
=begin html
|
||||
|
||||
<a name="cloneDummy"></a>
|
||||
<h3>cloneDummy</h3>
|
||||
<ul>
|
||||
|
||||
Defines a clone of a device or transferred by FHEM2FHEM in log mode devices and is taking its readings.
|
||||
It makes sense to call remote FHEM installations involve reading , testing or programming.
|
||||
<br><br>
|
||||
|
||||
<a name="cloneDummydefine"></a>
|
||||
<b>Define</b>
|
||||
<ul>
|
||||
<code>define <name> cloneDummy <sourcedevice></code>
|
||||
<br><br>
|
||||
|
||||
Example:
|
||||
<ul>
|
||||
<code>define clone_OWX_26_09FF26010000 cloneDummy OWX_26_09FF26010000</code><br>
|
||||
</ul>
|
||||
</ul>
|
||||
<br>
|
||||
|
||||
<a name="dummyset"></a>
|
||||
<b>Set</b> <ul>N/A</ul><br>
|
||||
|
||||
<a name="dummyget"></a>
|
||||
<b>Get</b> <ul>N/A</ul><br>
|
||||
|
||||
<a name="dummyattr"></a>
|
||||
<b>Attributes</b>
|
||||
<ul>
|
||||
<li><a href="#readingFnAttributes">readingFnAttributes</a></li>
|
||||
</ul>
|
||||
<br>
|
||||
|
||||
</ul>
|
||||
|
||||
=end html
|
||||
|
||||
=begin html_DE
|
||||
|
||||
<a name="cloneDummy"></a>
|
||||
<h3>cloneDummy</h3>
|
||||
<ul>
|
||||
|
||||
Definiert einen Clon eines Devices oder von FHEM2FHEM im Logmodus uebergebenen Devices und uebernimmt dessen Readings.
|
||||
Sinnvoll um entfernte FHEM-Installationen lesend einzubinden,zum Testen oder Programmieren.
|
||||
<br><br>
|
||||
|
||||
<a name="cloneDummydefine"></a>
|
||||
<b>Define</b>
|
||||
<ul>
|
||||
<code>define <name> cloneDummy <Quelldevice></code>
|
||||
<br><br>
|
||||
|
||||
Example:
|
||||
<ul>
|
||||
<code>define clone_OWX_26_09FF26010000 cloneDummy OWX_26_09FF26010000</code><br>
|
||||
</ul>
|
||||
</ul>
|
||||
<br>
|
||||
|
||||
<a name="dummyset"></a>
|
||||
<b>Set</b> <ul>N/A</ul><br>
|
||||
|
||||
<a name="dummyget"></a>
|
||||
<b>Get</b> <ul>N/A</ul><br>
|
||||
|
||||
<a name="dummyattr"></a>
|
||||
<b>Attributes</b>
|
||||
<ul>
|
||||
|
||||
<li><a href="#readingFnAttributes">readingFnAttributes</a></li>
|
||||
</ul>
|
||||
<br>
|
||||
|
||||
</ul>
|
||||
|
||||
=end html_DE
|
||||
|
||||
=cut
|
@ -208,6 +208,7 @@ FHEM/98_XmlList.pm rudolfkoenig http://forum.fhem.de Automatis
|
||||
FHEM/98_autocreate.pm rudolfkoenig http://forum.fhem.de Automatisierung
|
||||
FHEM/98_average.pm rudolfkoenig http://forum.fhem.de Automatisierung
|
||||
FHEM/98_backup.pm mfr69bs http://forum.fhem.de Sonstiges
|
||||
FHEM/98_cloneDummy.pm Joachim http://forum.fhem.de Automatisierung
|
||||
FHEM/98_cmdalias.pm rudolfkoenig http://forum.fhem.de Automatisierung
|
||||
FHEM/98_configDBwrap.pm betateilchen http://forum.fhem.de Sonstiges
|
||||
FHEM/98_dewpoint.pm wherzig http://forum.fhem.de Automatisierung
|
||||
|
Loading…
x
Reference in New Issue
Block a user