code: public function getInfo($extend = true, $convert = false)
      {
          if ($extend) {
              $this->fetchNodeInfo();
          }
  
          if ($convert) {
              $info = $this->nodeInfo;
  
              foreach ($info as $key => $val) {
                  $key = StringHelper::factory($key);
  
                  if ($key->contains("_bytes_")) {
                      $info[$key->toString()] = Convert::bytes($val);
                  } elseif ($key->contains("_bandwidth_")) {
                      $info[$key->toString()] = Convert::bytes($val) . "/s";
                  } elseif ($key->contains("_packets_")) {
                      $info[$key->toString()] = number_format($val, null, null, ".");
                  } elseif ($key->contains("_packetloss_")) {
                      $info[$key->toString()] = sprintf("%01.2f", floatval($val->toString()) * 100) . "%";
                  } elseif ($key->endsWith("_uptime")) {
                      $info[$key->toString()] = Convert::seconds($val);
                  } elseif ($key->endsWith("_version")) {
                      $info[$key->toString()] = Convert::version($val);
                  } elseif ($key->endsWith("_icon_id")) {
                      $info[$key->toString()] = $this->iconGetName($key)->filterDigits();
                  }
              }
  
              return $info;
          }
  
          return $this->nodeInfo;
      }
docs: Returns all information available on this node. If $convert is enabled, some property
  values will be converted to human-readable values.
  
  @param  boolean $extend
  @param  boolean $convert
  @return array