lock() public static method

Lock function to make sure only the first command is reported ( in case commands are calling other commands $telegram->executedCommand() )
public static lock ( string $command = '' )
$command string
 /**
  * Execute /command
  *
  * @param string $command
  *
  * @return mixed
  */
 public function executeCommand($command)
 {
     $command_obj = $this->getCommandObject($command);
     if (!$command_obj || !$command_obj->isEnabled()) {
         //Failsafe in case the Generic command can't be found
         if ($command === 'Generic') {
             throw new TelegramException('Generic command missing!');
         }
         //Handle a generic command or non existing one
         $this->last_command_response = $this->executeCommand('Generic');
     } else {
         //Botan.io integration, make sure only the command user executed is reported
         if ($this->botan_enabled) {
             Botan::lock($command);
         }
         //execute() method is executed after preExecute()
         //This is to prevent executing a DB query without a valid connection
         $this->last_command_response = $command_obj->preExecute();
         //Botan.io integration, send report after executing the command
         if ($this->botan_enabled) {
             Botan::track($this->update, $command);
         }
     }
     return $this->last_command_response;
 }