密码操作流程图

密码
* 蓝牙 修改密码、自定密码、删除密码 只能近距离(距离锁10米左右),如果想异地远程操作,可以借助“网关“
  1. 修改密码
    //如果只修改原来密码的有效期,newPasscode为nil
    //startDate endDate 均为毫秒级
    [TTLock modifyPasscode:oldPasscode newPasscode:newPasscode startDate:startDate endDate:endDate lockData:self.lockModel.lockData success:^{
        //通知服务器
        //[Network modifyOldPasscode:oldPasscode newPasscode:newPasscode startDate:startDate endDate:endDate completion:nil];
        NSLog(@"############## success  ##############");
    } failure:^(TTError errorCode, NSString *errorMsg) {
      NSLog(@"##############  error: %@  ##############",errorMsg); 
    }];
    

  2. 自定义密码
    //startDate endDate 均为毫秒级
     [TTLock createCustomPasscode:customPasscode startDate:startDate endDate:endDate lockData:self.lockModel.lockData success:^{
      //通知服务器
      //[Network createCustomPasscode:customPasscode startDate:startDate endDate:endDate completion:nil];
         NSLog(@"############## success  ##############");
      } failure:^(TTError errorCode, NSString *errorMsg) {
         NSLog(@"##############  error: %@  ##############",errorMsg); 
      }];
    

  3. 删除密码
    [TTLock deletePasscode:passcode lockData:lockData success:^{
     //通知服务器
    //[Network deletePasscode:passcode  completion:nil];
       NSLog(@"############## success  ##############");
    } failure:^(TTError errorCode, NSString *errorMsg) {
    
    }];
    

  4. 重置密码
    *所有的密码在重置后都会失效 (管理员密码除外)
    [TTLock resetPasscodesWithLockData:_lockModel.lockData success:^(long long timestamp, NSString *passcodeInfo) {
            //reset passcode success 通知服务器
            //[Network resetAllValidPasscodeAndNewPasscodeInfo:passcodeInfo completion:nil];
    } failure:^(TTError errorCode, NSString *errorMsg) {
    
    }];
    

Diagrammatic drawing

Code
* The range is only about 10 meters when you delete/custom/modify passcode through bluetooth, but gateway can do it remotely
  1. Modify passcode
    //startDate、endDate (millisecond)
    [TTLock modifyPasscode:oldPasscode newPasscode:newPasscode startDate:startDate endDate:endDate lockData:self.lockModel.lockData success:^{
        //[Network modifyOldPasscode:oldPasscode newPasscode:newPasscode startDate:startDate endDate:endDate completion:nil];
        NSLog(@"############## success  ##############");
    } failure:^(TTError errorCode, NSString *errorMsg) {
      NSLog(@"##############  error: %@  ##############",errorMsg); 
    }];
    

  2. Custom passcode
    //startDate、endDate (millisecond)
     [TTLock createCustomPasscode:customPasscode startDate:startDate endDate:endDate lockData:self.lockModel.lockData success:^{
        //[Network createCustomPasscode:customPasscode startDate:startDate endDate:endDate completion:nil];
           NSLog(@"############## success  ##############");
        } failure:^(TTError errorCode, NSString *errorMsg) {
           NSLog(@"##############  error: %@  ##############",errorMsg); 
        }];
    

  3. Delete passcode
    [TTLock deletePasscode:passcode lockData:lockData success:^{
        //[Network deletePasscode:passcode  completion:nil];
           NSLog(@"############## success  ##############");
        } failure:^(TTError errorCode, NSString *errorMsg) {
    
        }];
    

  4. Reset passcode
    *All passcode will be invalid after reset (Admin passcode is still valid)
    [TTLock resetPasscodesWithLockData:_lockModel.lockData success:^(long long timestamp, NSString *passcodeInfo) {
               //reset passcode success 
               //[Network resetAllValidPasscodeAndNewPasscodeInfo:passcodeInfo completion:nil];
       } failure:^(TTError errorCode, NSString *errorMsg) {
    
       }];