1

Je travaille avec le plugin LocalNotification vérifié par teleriks pour envoyer des notifications locales aux périphériques qui exécutent mon application. Je leur permets de choisir un intervalle de leur choix entre les notifications (1-2-3 ou 4 heures), mais je voudrais que ces notifications ne se déclenchent que pendant les heures de veille (donc ils ne réveillent pas l'utilisateur au milieu ? du nigth - est-il un paramètre pour ce jusqu'à présent, le code de notification est:Paramétrer LocalNotifications pour ne déclencher que pendant les heures d'éveil

app.notify({ 
       id : 4, 
       title : 'Remember', 
       message : '.. until you cancel all notifications', 
       repeat : 60*this.get('notification_interval'), 
       autoCancel : true, 
       date : new Date(new Date().getTime() + 60*60*1000*this.get('notification_interval')) 
         },function(){alert('you will recieve a message every '+this.get('notification_interval')+'. hour');}); 

EDIT

Basé sur l'excellent commentaire par AtanuCSE, j'ai modifié le code, il semble maintenant comme:

app.setupnotificationinterval(interval) 
    { 
     //set hour to 10 for starting hour 
     var hour = 10; 

     //set a notificationDate time. 
     var notificationDate = new Date().getTime(); 
     //manipulate the dateobject to fit, 10:00:00 
     notificationDate.setMinutes(0);notificationDate.setSeconds(0); 
     //loop as long as the notification hour interval doesnt exceed 12 hours (from 10-22). 
     while(hour < 22) 
     { 
      notificationDate.setHours(hour); 

      this.notify({ 
       id : hour, 
       title : 'Husk at registrere energi', 
      message : 'Det er tid til at du skal registrere din energi', 
      repeat : 'daily', 
     autoCancel : true, 
       date : notificationDate 
     },function(){alert('alarm sat til kl. ' + notificationDate.getHour());}); 
      hour = hour + interval; 
     } 

    } 
+2

Je ne connais pas la réponse mais j'ai une idée. Vous pouvez définir plusieurs alarmes. Comme avec 4 heures d'intervalle, vous pouvez régler les alarmes à 10h, 14h, 18h, 22h, etc avec répétition quotidienne. De cette façon, vous pouvez éviter le temps de sommeil. – AtanuCSE

+0

bien sûr - merci :) – Jakob

Répondre

0
app.setupnotificationinterval(interval) 
    { 
     //set hour to 10 for starting hour 
     var hour = 10; 

     //set a notificationDate time. 
     var notificationDate = new Date().getTime(); 
     //manipulate the dateobject to fit, 10:00:00 
     notificationDate.setMinutes(0);notificationDate.setSeconds(0); 
     //loop as long as the notification hour interval doesnt exceed 12 hours (from 10-22). 
     while(hour < 22) 
     { 
      notificationDate.setHours(hour); 

      this.notify({ 
       id : hour, 
       title : 'Husk at registrere energi', 
      message : 'Det er tid til at du skal registrere din energi', 
      repeat : 'daily', 
     autoCancel : true, 
       date : notificationDate 
     },function(){alert('alarm sat til kl. ' + notificationDate.getHour());}); 
      hour = hour + interval; 
     } 

    }