Subversion Repositories HomeAutomation

Rev

Rev 999 | Blame | Compare with Previous | Last modification | View Log | SVN | RSS feed

  1.  
  2. function SimpleDTMF(type, name, id)
  3. {
  4.     this.CanService(type, name, id);
  5. }
  6.  
  7. extend(SimpleDTMF, CanService);
  8.  
  9. SimpleDTMF.prototype.myLastPhonenumber = null;
  10.  
  11. SimpleDTMF.prototype.canMessageHandler = function(canMessage)
  12. {
  13.     if (canMessage.getDirectionFlag() == "From_Owner")
  14.     {
  15.         switch (canMessage.getCommandName())
  16.         {
  17.         case "Phonenumber":
  18.        
  19.         this.myLastPhonenumber = canMessage.getData("Number");
  20.        
  21.         if (this.myLastPhonenumber == "b00c") // No number sent
  22.         {
  23.             log(this.myName + ":" + this.myId + "> New phonenumber: No number sent\n");
  24.             this.myLastPhonenumber = "None";
  25.             this.callEvent("newNoPhonenumber", null);
  26.         }
  27.         if (this.myLastPhonenumber == "b10c") // Hidden number sent
  28.         {
  29.             log(this.myName + ":" + this.myId + "> New phonenumber: Hidden number sent\n");
  30.             this.myLastPhonenumber = "Hidden";
  31.             this.callEvent("newHiddenPhonenumber", null);
  32.         }
  33.         else if (this.myLastPhonenumber[0] == 'a')
  34.         {
  35.             this.myLastPhonenumber = this.myLastPhonenumber.ltrim('a');
  36.            
  37.             var pos = this.myLastPhonenumber.indexOf('c');
  38.        
  39.             this.myLastPhonenumber = this.myLastPhonenumber.substr(0, pos);
  40.        
  41.             log(this.myName + ":" + this.myId + "> New phonenumber: " + this.myLastPhonenumber + "\n");
  42.             this.callEvent("newPhonenumber", null);
  43.         }
  44.         else
  45.         {
  46.             this.myLastPhonenumber = this.myLastPhonenumber.trim('f');
  47.            
  48.             //var pos = this.myLastPhonenumber.indexOf('c');
  49.        
  50.             //this.myLastPhonenumber = this.myLastPhonenumber.substr(0, pos);
  51.        
  52.             log(this.myName + ":" + this.myId + "> New phonenumber: " + this.myLastPhonenumber + "\n");
  53.             this.callEvent("newPhonenumber", null);
  54.        
  55.             //log(this.myName + ":" + this.myId + "> Received malformed phonenumber: " + this.myLastPhonenumber + "\n");
  56.         }
  57.         break;
  58.         }
  59.     }
  60.    
  61.     this.CanService.prototype.canMessageHandler.call(this, canMessage);
  62. }
  63.  
  64. SimpleDTMF.prototype.getLastPhonenumber = function()
  65. {
  66.     return this.myLastPhonenumber;
  67. }
  68.