From f34169321f6b190b477eea31afbfdcbf85a65977 Mon Sep 17 00:00:00 2001 From: phenning <> Date: Wed, 21 Dec 2016 14:59:07 +0000 Subject: [PATCH] =?UTF-8?q?95=5FPostMe.pm:=20Neue=20Version,=20Fix=20f?= =?UTF-8?q?=C3=BCr=20andere=20Instant=20Messenger?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn.fhem.de/fhem/trunk@12858 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/95_PostMe.pm | 60 ++++++++++++++++++++++++++---------------- 1 file changed, 37 insertions(+), 23 deletions(-) diff --git a/fhem/FHEM/95_PostMe.pm b/fhem/FHEM/95_PostMe.pm index 7dc99b4bd..432f524ab 100644 --- a/fhem/FHEM/95_PostMe.pm +++ b/fhem/FHEM/95_PostMe.pm @@ -41,7 +41,7 @@ use vars qw($FW_wname); # Web instance ######################### # Global variables -my $postmeversion = "1.4"; +my $postmeversion = "1.6"; my $FW_encoding = "UTF-8"; ######################################################################################### @@ -63,7 +63,7 @@ sub PostMe_Initialize ($) { $hash->{UndefFn} = "PostMe_Undef"; $hash->{InitFn} = "PostMe_Init"; $hash->{AttrFn} = "PostMe_Attr"; - $hash->{AttrList} = "postmeTTSDev postmeMsgFun postme[0-9]+MsgRec postmeMailFun postme[0-9]+MailRec postmeStd postmeIcon postmeStyle:test,jQuery,HTML,SVG postmeClick:0,1 ".$readingFnAttributes; + $hash->{AttrList} = "postmeTTSDev postmeTTSFun postmeMsgFun postme[0-9]+MsgRec postmeMailFun postme[0-9]+MailRec postmeStd postmeIcon postmeStyle:test,jQuery,HTML,SVG postmeClick:0,1 ".$readingFnAttributes; $hash->{FW_detailFn} = "PostMe_detailFn"; @@ -142,7 +142,6 @@ sub PostMe_Init($) { #-- current number of PostMes my $cnop = ReadingsVal($devname,"postmeCnt",0); - Log 1,"[PostMe_Init] postme01Name ".ReadingsVal($devname,"postme01Name",0)." postme01Cont ".ReadingsVal($devname,"postme01Cont",0)." postme02Name ".ReadingsVal($devname,"postme02Name",0)." postme02Cont ".ReadingsVal($devname,"postme02Cont",0); my @std = split(',',AttrVal("$devname","postmeStd",undef)); for( my $i=0;$i $postmeversion"; #-- list one PostMe - } elsif( ($key eq "list")||($key eq "z_JSON")||($key eq "mail")||($key eq "message")||($key eq "ttsSay") ){ + } elsif( ($key eq "list")||($key eq "JSON")||($key eq "mail")||($key eq "message")||($key eq "TTS") ){ $pmn = PostMe_Check($hash,$args[0]); if( !$pmn ){ @@ -758,7 +766,7 @@ sub PostMe_Get($$$@) { return $res; ##-- JSON - }elsif( $key eq "z_JSON" ){ + }elsif( $key eq "JSON" ){ my $line = ReadingsVal($devname, sprintf("postme%02dName",$pmn),""); $res = PostMe_LineOut($hash,ReadingsVal($devname, sprintf("postme%02dCont",$pmn),""),15); return '{"'.$line.'": ['.$res.']}'; @@ -796,14 +804,14 @@ sub PostMe_Get($$$@) { return undef; ##-- speak as TTS - }elsif( $key eq "ttsSay" ){ + }elsif( $key eq "TTS" ){ my $sbjt = ReadingsVal($devname, sprintf("postme%02dName",$pmn),undef); - my $text = PostMe_LineOut($hash,ReadingsVal($devname, sprintf("postme%02dCont",$pmn),undef),10); - $text =~ s/,/\/g; - my $dev = AttrVal($devname,"postmeTTSDev",undef); + my $text = $sbjt.": ".PostMe_LineOut($hash,ReadingsVal($devname, sprintf("postme%02dCont",$pmn),undef),10); + my $fun = AttrVal($devname,"postmeTTSFun",undef); - if( $sbjt && $text && $dev ){ - fhem('set '.$dev.' ttsSay '.$sbjt.' enthält '.$text); + if( $sbjt && $text && $fun ){ + my $ref = \&$fun; + &$ref($text); } my $mga = "$sbjt spoken by TTS"; readingsSingleUpdate($hash,"state",$mga,1 ); @@ -865,7 +873,7 @@ sub PostMe_detailFn(){ my $html = '
'. ''. - ''. + ''. '
'.$icon.'
Initialized
'.ReadingsVal($devname,"state","").'
'; $html .= '