Email mit Position nach x PIN-Eingabe Fehlversuchen oder auf Anforderung senden

  • 2 Antworten
  • Letztes Antwortdatum
vetzki

vetzki

Philosoph
1.750
Hallo,
ich glaub es ging schonmal darum, konnte aber das thema leider nicht mehr finden. Es geht um eine Email mit der Position falls die Pin x mal falsch eingegeben wurde (oder eine bestimmte sms ankommt). Bisher fand ich dazu entweder ein nettes python script, mit dem nachteil das das script das email passwort enthält und auf der Sd Karte liegt. Alternativ dazu das Plugin SilentEmail, welches etwas (allerdings recht wenig) kostet.
Zuletzt bin ich auf Droidscript gestoßen (welches so wie hier beschrieben allerdings auch etwas kostet, wegen dem apk plugin), welches imo recht vielseitig ist. Damit kann man aus einem javascipt eine apk erstellen, ohne das script auf der sdkarte behalten zu müssen.
Tasker:

Code:
Profile: PIN 3x falsch (51)
   State: Secure Settings [ Configuration:Failed Login Attempts - Max: 3 ] (leider weiß ich nur eine möglichkeit mit secure settings und root)
Enter: SendLocation (52)
   A1: Secure Settings [ Configuration:Airplane Mode Disabled Package:com.intangibleobject.securesettings.plugin Name:Secure Settings Timeout (Seconds):0 ] If [ %AIR ~ on ]
   A2: Wait [ MS:0 Seconds:5 Minutes:0 Hours:0 Days:0 ]
   A3: Secure Settings [ Configuration:GPS Enabled Package:com.intangibleobject.securesettings.plugin Name:Secure Settings Timeout (Seconds):0 ] If [ %GPS ~ off ]
   A4: Wait [ MS:400 Seconds:0 Minutes:0 Hours:0 Days:0 ]
   A5: Launch App [ App:SendLocation Data: Exclude From Recent Apps:On Always Start New Copy:On ]

Profile: SMS - Loc (54)
   Event: Received Text [ Type:Any Sender:* Content:Where ru ? ]
Enter: SendLocation (52)
   A1: Secure Settings [ Configuration:Airplane Mode Disabled Package:com.intangibleobject.securesettings.plugin Name:Secure Settings Timeout (Seconds):0 ] If [ %AIR ~ on ]
   A2: Wait [ MS:0 Seconds:5 Minutes:0 Hours:0 Days:0 ]
   A3: Secure Settings [ Configuration:GPS Enabled Package:com.intangibleobject.securesettings.plugin Name:Secure Settings Timeout (Seconds):0 ] If [ %GPS ~ off ]
   A4: Wait [ MS:400 Seconds:0 Minutes:0 Hours:0 Days:0 ]
   A5: Launch App [ App:SendLocation Data: Exclude From Recent Apps:On Always Start New Copy:On ]

Droidscript:

Code:
// Start
function OnStart()
{
  // hide app
  app.ToBack();

  //Create and start location sensor (für GPS: "GPS").
  loc = app.CreateLocator( "GPS,network" );
  loc.SetOnChange( location_OnChange );
  loc.Start();

  //Create email object.
  email = app.CreateEmail( "Emailadresse", "Email PW (*)" );
  email.SetSMTP( "smtp.gmail.com", 465 );
  //email.SetSMTP( "smtp.mail.yahoo.com", 465 );
  email.SetOnStatus( email_OnStatus );

}

//Called when we get a change in location.
function location_OnChange( data )
{
  if ( data.accuracy < 30 ) {
  loc.Stop();
  var locurl = "https://maps.googleapis.com/maps/api/geocode/json?latlng=" + data.latitude +"," + data.longitude;
  smsmsg = "Telefon ist hier Lat: " +data.latitude+", Lng "+data.longitude;
  SendRequest( locurl );
  }
}

function SendRequest( locurl )
{
  var httpRequest = new XMLHttpRequest();
  httpRequest.onreadystatechange = function() { HandleReply(httpRequest); };
  httpRequest.open("GET", locurl, true);
  httpRequest.send(null);
}

function HandleReply( httpRequest )
{
  if( httpRequest.readyState==4 ) {
  //If we got a valid response.
     if( httpRequest.status==200 ) {
  
        var JSONobj = JSON.parse( httpRequest.responseText );
        var emailmsg = JSON.parse( JSON.stringify( JSONobj.results[0].formatted_address ) );

     }
  //An error occurred
  else {
  var emailmsg = "Error: " + httpRequest.status + httpRequest.responseText;
  }

  email.Send( "Telefon ist", emailmsg, "Absender", "Empfänger"/*,attachment*/);

  }
}

//Handle status messages.
function email_OnStatus( status )
{
  if ( status != "Message sent" ) {
  sms = app.CreateSMS();
  sms.Send( "Telefonnr Ersatzkontakt", smsmsg );
  }
  //Exit App
  app.Exit( "SendEmail" );
}

(*) z.b. so ein Google-App Passwort

(Wenn keine email gesendet werden kann, kommt alternativ eine sms an eine Ersatznr mit latitude und longitude. Mit tasker selbst sollte es auch gehen wenn man das scipt enstprechend umbastelt und mit tasker eine apk baut und diese dann startet)
 
Zuletzt bearbeitet:
Hallo vetzki, hier geht es beispielsweise um eine Mail bei falscher PIN-Eingabe.

In Deinem Profil steht zwar nicht mehr, welche Geräte Du nutzt, aber wenn ich mich recht entsinne, bist Du auch schon auf Lollipop.
Nach meinen Informationen funktioniert die falsche PIN seit dem LP-Lockscreen nicht mehr als Kontext, oder hab ich das falsch gelesen?
 
"Wrong Login Attempts" funktioniert bei mir eigentlich (mit 5.1.1 - "standard lockscreen" )
z.b.:
Profile: test2 (57)
State: Secure Settings [ Configuration:Failed Login Attempts - Max: 1 ]
Enter: Say Hi2 (56)
A1: Notify [ Title:Wrong Login Text: Icon:null Number:0 Permanent:Off Priority:3 ]

zeigt die benachrichtigung (allerdings nur beim 1. Fehlversuch, nach entfernen und erneutem fehlversuche (also nr 2) nicht mehr )

Oben ist mir ein Fehler aufgefallen, und zwar liefert google maps json nicht immer das gleiche ergebnis, deshalb geändert in

var JSONobj = JSON.parse( httpRequest.responseText );
var emailmsg = JSON.parse( JSON.stringify( JSONobj.results[0].formatted_address ) );
 
Zuletzt bearbeitet:

Ähnliche Themen

H
Antworten
0
Aufrufe
283
Horgul123
H
H
Antworten
15
Aufrufe
496
MeinNickname
MeinNickname
H
Antworten
6
Aufrufe
454
Horgul123
H
Zurück
Oben Unten