void timerconvert()
{ //timerout= {"id":"tout","t1":"100","t2":"010","t3":"001"} подкл таймеров по выходов
  //String timerdata
 //{"timer1":["01:00","09:00","10:00","11:00","","","","","",""],"timer2":[
// String timerweek={"id":"week","timer1_week":"0111100","timer2_week":"1000011","timer3_week":"0101010"};
 //(str[1] = 't') 
 //uint16_t BTimer1 [11] = {3, 390, 450, 1440, 1440, 1440, 1440, 1440, 1440, 1440, 1440}; // массивы всех таймеров для суточных каналов (1 - 4) 0-й элемент отвечает за состояние канала (1 - вкл/ 0 - выкл/ 2 - авто))
    if (timerdata.startsWith("{\"timer1"))//парсим "timer1":["01
      {tdat=0;
      int timer=0;//номер таймера
      //int index =1;// индекс массива таймера
     // Serial.println("timer");
       // Serial.println(timerdata.length());
       // Serial.println(timerdata[12]);
        for (int i = 0; i < timerdata.length() ; i++) {//перебираем строку данных
          
          if (timerdata[i]=='[')
          {timer++;
             //********************************************************************
             if (timer==1)
            {i=i+2;
             for (int j = 1; j < 11 ; j++){
              if (timerdata[i]!='\"')
                     {
                      BTimer1 [j]=((int(timerdata[i] - '0')*10+int(timerdata[i+1] - '0'))*60+(int(timerdata[i+3] - '0')*10+int(timerdata[i+4] - '0')));
                      i=i+8;
                      //Serial.println(BTimer1 [j]); 
                     }
                     else
                     {i=i+3;
                     BTimer1 [j]=1440;//время неустановлено
                     }
                    // Serial.println(timerdata[i]); 
                     
            } 
               
            }
            //******************************************************************************
            if (timer==2)
            {i=i+2;
              for (int j = 1; j < 11 ; j++){
                
              if (timerdata[i]!='\"')
                     {
                      BTimer2 [j]=((int(timerdata[i] - '0')*10+int(timerdata[i+1] - '0'))*60+(int(timerdata[i+3] - '0')*10+int(timerdata[i+4] - '0')));
                      i=i+8;
                      //Serial.println(BTimer1 [j]); 
                     }
                     else
                     {i=i+3;
                     BTimer2 [j]=1440;
                     }
                    // Serial.println(timerdata[i]); 
                     
            } 
           
            }
            if (timer==3)
            {i=i+2;
              for (int j = 1; j < 11 ; j++){
              if (timerdata[i]!='\"')
                     {
                      BTimer3 [j]=((int(timerdata[i] - '0')*10+int(timerdata[i+1] - '0'))*60+(int(timerdata[i+3] - '0')*10+int(timerdata[i+4] - '0')));
                      i=i+8;
                      //Serial.println(BTimer1 [j]); 
                     }
                     else
                     {i=i+3;
                     BTimer3 [j]=1440;
                     }
                    // Serial.println(timerdata[i]); 
                     
            } 
          //  Serial.println(" ");
           // for(int a = 0; a < 11; a++)
          // { Serial.print(BTimer3[a]); 
         //  } 
         //  Serial.println(" ");
            }
           }
            
          }
             
        }

 
      //******************************************************************************************
      if (timerweek.startsWith("{\"id\":\"week"))//парсим {"id":"week","timer1_week":"0111100"
      {tweek=0;
       int timer=0;//номер таймера
     // Serial.println("week");
       // Serial.println(timerweek.length());
       for (int i = 0; i < timerweek.length() ; i++) {//перебираем строку данных  
          if (timerweek[i]==':')
          {timer++;
            if (timer==2)//данные таймера1 идут после вторых двоеточий
            {i=i+2;
             for (int j = 0; j < 7 ; j++){
             weekTimer1 [j]=int(timerweek[i+j] - '0');//пребразуем строку "0111100" в массив чисел weekTimer1 [7]=
             }
             }
            if (timer==3)
            {i=i+2;
            for (int j = 0; j < 7 ; j++){
             weekTimer2 [j]=int(timerweek[i+j] - '0');//пребразуем строку "0111100" в массив чисел weekTimer1 [7]=
             }
            }
            if (timer==4)
            {i=i+2;
            for (int j = 0; j < 7 ; j++){
             weekTimer3 [j]=int(timerweek[i+j] - '0');//пребразуем строку "0111100" в массив чисел weekTimer1 [7]=
             }
              Serial.print("weekTimer3");
           for(int a = 0; a < 7; a++)
           { Serial.print(weekTimer3[a]); 
           }
           Serial.println("");
            //Serial.println("");
           // Serial.print("tweekday");
            //Serial.println(tweekday);
            }
          }
        }
      }
     // weekTimer1 [7]={0,0,0,0,0,0,0};//недельные установки t1
      if(weekTimer1 [tweekday-1]==1)
      {BTimer1 [0]=2;//управляем таймером
      }else
      {
        BTimer1 [0]=3;//управляем кнопками
      }
      if(weekTimer2 [tweekday-1]==1)
      {BTimer2 [0]=2;//управляем таймером
      }else
      {
        BTimer2 [0]=3;//управляем кнопками
      }
      if(weekTimer3 [tweekday-1]==1)
      {BTimer3 [0]=2;//управляем таймером
      }else
      {
        BTimer3 [0]=3;//управляем кнопками
      }
        Serial.print("BTimer1 [0]:");
             Serial.println(BTimer1 [0]);
               Serial.print("BTimer2 [0]:");
             Serial.println(BTimer2 [0]);
               Serial.print("BTimer3 [0]:");
             Serial.println(BTimer3 [0]);
       //******************************************************************************************
      if (timerout.startsWith("{\"id\":\"tout"))//парсим timerout= {"id":"tout","t1":"100","t2":"010","t3":"001"} подкл таймеров по выходов
      {//tuot=0;
       int timer=0;//номер таймера
     // Serial.println("timerout");
      //  Serial.println(timerout.length());
         for (int i = 0; i < timerout.length() ; i++) {//перебираем строку данных  
           if (timerout[i]==':')
              {timer++;
            if (timer==2)//данные таймера1 идут после вторых двоеточий
            {i=i+2;
             for (int j = 0; j < 3 ; j++){
             gpioTimer1[j]=int(timerout[i+j] - '0');//пребразуем строку "011" в массив чисел gpioTimer1 [3]={1,0,0};
             }
             }
            if (timer==3)
            {i=i+2;
            for (int j = 0; j < 3 ; j++){
             gpioTimer2[j]=int(timerout[i+j] - '0');//пребразуем строку "011" в массив чисел gpioTimer2 [3]={1,1,0};
             }
            }
            if (timer==4)
            {i=i+2;
            for (int j = 0; j < 3 ; j++){
             gpioTimer3[j]=int(timerout[i+j] - '0');//пребразуем строку "011" в массив чисел gpioTimer3 [3]={1,1,0};
             }
             Serial.println("");
              Serial.print("gpioTimer1");
           for(int a = 0; a < 3; a++)
           { Serial.print(gpioTimer1[a]); 
           }
            Serial.println("");
            }
          }
         }
      }
               current_time = hour1 * 60 + min1;//настройка выходов в соот с таймерами
            for (int i = 0; i <= 1439; i++) {
              if (current_time > 1439) current_time = 0;
                  state1 = main_log(BTimer1, state1);
                  state2 = main_log(BTimer2, state2);
                  state3 = main_log(BTimer3, state3);
                   current_time++;
                  } 
                 btime(); 
}
