Autor Thema: Prowl problem  (Gelesen 693 mal)

Guest

  • Gast
Prowl problem
« am: 29 Dezember 2012, 14:42:38 »
Originally posted by: sven-kubiak@t-online.de

Hallo zusammen,

ich muss gestehen ich wasr schon lange nicht mehr an meiner Automation
(never touch a running System).
Wie der Zufall es aber will, habe ich nun ein Problem:

Ich habe einen Türendschalter im Keller. Bei geöffnter tür soll ich über
Prowl (Ein Dienst, der eine Email in eine Pushnachricht wandelt) eine
direkte Nachricht auf mein Smartphone bekommen.
Dies klappte immer wunderbar, ABER:

Ich habe die Tür aufgrund einer Bauaktion jetzt erst wieder eingebaut und
seit dem bekomme ich bei jedem öffnen ZWEI benachrichtigungen anstatt nur
einer.
Ich denke auch zu wissen woran es liegt, denn mein Befehl lautet wie folgt:

define Mail2 notify BEL_Garten {if (Value("BEL_Garten")=~ m/on/){
FBMail('MAILADRESSE','Status Garten','Beleuchtung Garten eingeschaltet') }}

der Status einer geöffneten Tür ist seit neustem aber:

2012-12-28_19:03:47 Tuer1_19A2D6 open
2012-12-28_19:03:47 Tuer1_19A2D6 contact: open (to HMLAN2)
2012-12-28_19:04:43 Tuer1_19A2D6 closed
2012-12-28_19:04:43 Tuer1_19A2D6 contact: closed (to HMLAN2)

wie man sieht, ist der Status open auch zwei mal vorhanden und somit sind zwei Benachrichtigungen ja auch richtig, aber nicht gewünscht.

Meine Idee war also:

define Mail1 notify Tuer1_19A2D6 {if (Value("Tuer1_19A2D6")=~ m/contact: open/){ FBMail('MAILADRESSE','Status Kellertuer','Tür im Keller wurde geoeffnet') }}

dies führte dazu, das ich gar keinen Benachrichtigung mehr bekam und darüber hinaus im Log folgender Fehler auftauchte:

Use of uninitialized value $4 in hex at ./FHEM/10_CUL_HM.pm line 870.
Use of uninitialized value $4 in hex at ./FHEM/10_CUL_HM.pm line 870.

Kann mir da einer helfen?



--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Offline Fennek

  • Full Member
  • ***
  • Beiträge: 114
Aw: Prowl problem
« Antwort #1 am: 29 Dezember 2012, 17:29:48 »
Hallo Sven,

ich weis zwar nicht wie Deine sub FBMail aussieht, aber teste mal das hier


define Mail1 notify Tuer1_19A2D6.*(open|tilted).* {prowl("Tür%%20im%%20Keller%%20wurde%%20geöffnet","Tür","1")}

die sub in 99_myUtils

sub prowl
{
  my $subject = $_[0];
  my $event = $_[1];
  my $priority = $_[2];
  my $ret = "";
  $ret .=  system("wget -q -O /dev/null 'http://api.prowlapp.com/publicapi/add?apikey=DEIN API Key\&application=FHEM\&event=$event\&priority=$priority\&description=$subject'");
  $ret =~ s,[\r\n]*,,g;
  Log 1, "prowl returned: $ret";
}

DEIN API Key ersetzen durch Deinen Key bei Prowl

FHEM Cubietruck mit 50GB SSD
HMLAN: TC,VD,DN,DIM,SW,SEC,TH
HUEBridge, HUEDevice:LCT,LLC
Sonos: 5xPL1,2xPB,2xSUB
iBeacon's

Guest

  • Gast
Re: Prowl problem
« Antwort #2 am: 30 Dezember 2012, 12:29:54 »
Originally posted by: sven-kubiak@t-online.de

Hallo Andreas,

leider ist das Ergebnis das selbe.
Ich bekomme anstatt einer push Nachricht 2!

Auch bei Deiner Version wird ja nach open gefragt und der Status ist immer
folgender:

2012-12-30_12:03:54 Tuer1_19A2D6 open
2012-12-30_12:03:54 Tuer1_19A2D6 contact: open (to HMLAN2)
2012-12-30_12:09:23 Tuer1_19A2D6 closed
2012-12-30_12:09:23 Tuer1_19A2D6 contact: closed (to HMLAN2)

 

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

  • Gast
Re: Prowl problem
« Antwort #3 am: 30 Dezember 2012, 13:51:19 »
Originally posted by: sven-kubiak@t-online.de

Warum funktioniert dieser Code:

define Mail1 notify Tuer1_19A2D6.*(open|tilted).*
{prowl("Tür%%20im%%20Keller%%20wurde%%20geöffnet","Tür","1")}    ==>
allerdings bekomme ich hier zwei Mails.

und warum funktioniert dieser hier gar nicht?

define Mail1 notify Tuer1_19A2D6.*(contact: open|tilted).*
{prowl("Tür%%20im%%20Keller%%20wurde%%20geöffnet","Tür","1")}


Status siehe vorherigen Kommentar

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Offline Fennek

  • Full Member
  • ***
  • Beiträge: 114
Aw: Re: Prowl problem
« Antwort #4 am: 30 Dezember 2012, 14:56:57 »
Hallo Sven,

sorry bin noch Unterwegs,

sieh Dir mal Deine DeviceReadings von Tuer1_19A2D6 an.
Du hast mehrere readings mit open, contact:, cover: und state:,
Das notify spricht bei allen readings .* auf open an,
wenn Du das Gehäuse noch öffnest bekommst Du drei Nachichten.

entweder:

define Tuer1_19A2D6 ....
attr Tuer1_19A2D6 eventMap open:offen closed:zu

eleganter mit:


define Mail1 notify Tuer1_19A2D6:contact.*(open|tilted).*{prowl("Tür%%20im%%20Keller%%20wurde%%20geöffnet","Tür","1")}

@ Uli
richtig

FHEM Cubietruck mit 50GB SSD
HMLAN: TC,VD,DN,DIM,SW,SEC,TH
HUEBridge, HUEDevice:LCT,LLC
Sonos: 5xPL1,2xPB,2xSUB
iBeacon's

Offline Svenson

  • New Member
  • *
  • Beiträge: 11
    • http://www.svengruner.de
Aw: Prowl problem
« Antwort #5 am: 31 Dezember 2012, 00:16:59 »
Bei mir funktioniert Prowl nicht, im Logfile steht immer: prowl returned: -1

gebe ich den URL-String ohne "\" im Browser ein, funktioniert es und ich bekomme auch die Push-Benachrichtigung:
https://api.prowlapp.com/publicapi/add?apikey=xxxx&application=FHEM&event=$event&priority=$priority&description=$subject

Mein Eintrag in der 99_myUtils.pm:
######## Benachrichtigung über Prowl ################################
sub prowl
{
my $subject = $_[0];
my $event = $_[1];
my $priority = $_[2];
my $ret = "";
$ret .= system("wget -q -O /dev/null 'https://api.prowlapp.com/publicapi/add?apikey=xxxx\&application=FHEM\&event=$event\&priority=$priority\&description=$subject'");
$ret =~ s,[\r\n]*,,g;
Log 1, "prowl returned: $ret";
}

Habe ich was übersehen?

Offline Fennek

  • Full Member
  • ***
  • Beiträge: 114
Aw: Prowl problem
« Antwort #6 am: 31 Dezember 2012, 00:51:17 »
Moin,

https:// ?
FHEM Cubietruck mit 50GB SSD
HMLAN: TC,VD,DN,DIM,SW,SEC,TH
HUEBridge, HUEDevice:LCT,LLC
Sonos: 5xPL1,2xPB,2xSUB
iBeacon's

Offline Svenson

  • New Member
  • *
  • Beiträge: 11
    • http://www.svengruner.de
Aw: Prowl problem
« Antwort #7 am: 31 Dezember 2012, 01:07:15 »
Moin,

Prowl läßt sich sowohl über http als auch über https ansprechen und empfiehlt eigentlich https zu verwenden.

Aber auch wenn ich http in der sub prowl verwende funktioniert es nicht.

Muss woanders noch was definiert werden?

Danke schon mal
Svenson

Offline Fennek

  • Full Member
  • ***
  • Beiträge: 114
Aw: Prowl problem
« Antwort #8 am: 31 Dezember 2012, 01:09:27 »
sorry war gerade erwacht :-)

der https Aufruf wir durch prowl.pl durchgeführt

$requestURL = sprintf("https://prowlapp.com/publicapi/add?apikey=%s&application=%s&event=%s&description=%s&priority=%d&url=%s%s",
            $options{'apikey'},
            $options{'application'},
            $options{'event'},
            $options{'notification'},
            $options{'priority'},
            $options{'url'},
            $providerKeyString);

$request = HTTP::Request->new(GET => $requestURL);
FHEM Cubietruck mit 50GB SSD
HMLAN: TC,VD,DN,DIM,SW,SEC,TH
HUEBridge, HUEDevice:LCT,LLC
Sonos: 5xPL1,2xPB,2xSUB
iBeacon's

Offline Fennek

  • Full Member
  • ***
  • Beiträge: 114
Aw: Prowl problem
« Antwort #9 am: 31 Dezember 2012, 01:21:28 »
habe mal meinen prowl Aufruf auf https umgestellt
mit dem Ergebniss

wget: not an http or ftp url: https://api.prowlapp.com/publicapi/add?apikey=xxx&application=FHEM&event=Tür&priority=1&description=Wohnzimmertür%20wurde%20geöffnet
2012.12.31 01:03:50 1: prowl returned: -1

:-(
FHEM Cubietruck mit 50GB SSD
HMLAN: TC,VD,DN,DIM,SW,SEC,TH
HUEBridge, HUEDevice:LCT,LLC
Sonos: 5xPL1,2xPB,2xSUB
iBeacon's