Mostrando entradas con la etiqueta Google APIs. Mostrar todas las entradas
Mostrando entradas con la etiqueta Google APIs. Mostrar todas las entradas

2013-09-16

Google Maps :: El API de matriz de distancia de Google

Introducción

El API de matriz de distancia de Google es un servicio que proporciona el tiempo y la distancia de viaje para una matriz de orígenes y destinos. La información devuelta se basa en la ruta recomendada entre los puntos de partida y llegada, según los cálculos del API de Google Maps, y se compone de dos filas que incluyen los valores de duration y dedistance para cada par.
El servicio no devuelve información detallada de la ruta. La información de la ruta se puede obtener transmitiendo el origen y el destino deseados al API de rutas.

Audiencia

Este documento está dirigido a los desarrolladores que quieran calcular el tiempo y la distancia de viaje entre un número de puntos con el API de Google Maps. El documento ofrece una introducción sobre el uso del API y material de referencia sobre los parámetros disponibles.

Límites de uso

Cada consulta enviada al API de matriz de distancia está limitada por el número de elementos permitidos, que se determina multiplicando el número de orígenes por el número dedestinos.
El API de matriz de distancia cuenta con los siguientes límites:
  • 100 elementos por consulta,
  • 100 elementos cada 10 segundos,
  • 2.500 elementos en un período de 24 horas.
Los clientes del API de Google Maps for Business cuentan con límites más amplios:
  • 625 elementos por consulta,
  • 1.000 elementos en 10 segundos,
  • 100.000 elementos en un período de 24 horas.
Los clientes del API de Google Maps for Business pueden adquirir cuotas adicionales. Para ello, deben ponerse en contacto con el director de ventas de Google Enterprise.
Ejemplo simple del uso:


Resultado:

Link: Detalles completo

2012-05-12

Mejorar el aspecto del reproducto de Youtube para insertar video en nuestros sitios webs

Una forma mas elegante de insertar videos de youtube, sin que muestre los controladores ni el icono de play, solo muertes un logito de youtube 3 segundos y se oculta.


Lo importante del código es estos parámetros 


"version=3&feature=player_detailpage&showinfo=0&rel=0&controls=0&theme=light"


2012-02-17

ProgrammableWeb Estupendo sitio con un listado muy extenso de APIs de todo tipo

Estupendo recurso para tener a mano cuando buscamos APIs de terseros, para integrar en nuestros proyecto web. El sitio programmableweb.com es un completo directorio con APIs de todo tipo como la FaceBook, Google Plus, YouTube, Twitter, Google Maps, Flickr, LinkedIn, y muchas mas.
Cuenta con un listado de mas de 5100 APIs, ordenadas por categoría.
Link: programmableweb.com

2011-08-24

HybridAuth, librería PHP para autentificarse usando redes sociales


HybridAuth es una librería PHP de código abierto que nos permitirá autentificar usuarios usando la API de distintas redes sociales.
Gracias a ella podremos facilitar el registro en nuestra web permitiendo a los usuarios acceder con su cuenta de OpenID, Facebook, LinkedIn, Google, Twitter, Windows Live, Foursquare, Vimeo, Yahoo, PayPal entre otros.
Lo mejor de todos es que nos facilita la comunicación con las distintas APIs por lo que integrar esta funcionalidad en nuestro website no nos llevará horas.

Entre las redes sociales con las que puedes autentificarte con hybridauth son:
  • OpenID
  • Facebook
  • Google
  • Twitter
  • MySpace
  • AOL
  • Etc ..

¿Qué ventajas tiene HybridAuth?

¿Cómo funciona HybridAuth?

¿Cómo se puede implementar HybridAuth en nuestro sitio web?


Si quieres contestación a todas estas preguntas, tan sólo tienes que acudir al POST original de COLORATE en esta dirección:

2011-08-14

Api Google Plus, Uso y Ejemplos

Hoy comparto esta información con ustedes ya que veo que no hay tanta documentación ni un api oficial de google plus, pero por ahora esto es lo que he descubierto en estos días, para desarrollar app para google +.
Con esta info he desarrollado un pequeño widget para google plus, pueden verlo funcionando Aqui
Lo primero es tener la función que “desofusca” el json de Google
 
function GoogleJSON( $url ) {
	$googlejson 	= @file_get_contents( $url );
	$googlejson 	= substr( $googlejson, 5 );
	$instring 		= false;
	$inescape		= false;
	$lastchar 		= '';
	$output 		= "";
	for ( $x=0; $x<strlen( $googlejson ); $x++ ) {
 
		$char = substr( $googlejson, $x, 1 );
 
 
		if ( !$instring && ( preg_match( '/\s/', $char ) ) ) {
			continue;
		}
 
 
		if ( $instring ) {
			if ( $inescape ) {
				$output .= $char;
				$inescape = false;
			} else if ( $char == '\\' ) {
				$output .= $char;
				$inescape = true;
			} else if ( $char == '"' ) {
				$output .= $char;
				$instring = false;
			} else {
				$output .= $char;
			}
			  $lastchar = $char;
			  continue;
			}
 
 
			switch ( $char ) {
 
			case '"':
			$output .= $char;
			$instring = true;
			break;
 
			case ',':
			if ($lastchar==',' || $lastchar=='[' || $lastchar=='{') 
                        { 
					$output .= 'null';
			}
			$output .= $char;
			break;
 
			case ']':
			case '}':
			if ( $lastchar == ',' ) { 
				$output .= 'null';
			}
			$output .= $char;
			break;
 
			default:
			$output .= $char;
			break;
			}
		    $lastchar = $char;
		}
		usleep( 20000 ); //Le damos tiempo al script 20ms
	return json_decode( $output, true );
 
}
Con esto ya podemos enviarle la URL del “API” de google y obtener el resultado en JSON, veamos un ejemplo.
Como obtener información de un usuario de google plus.
 
   $plusid = '108170074439659702380'; // ID GOOGLE PLUS
   $visible_url = 'https://plus.google.com/_/profiles/get/' . $plusid ;
   $jsondata = GoogleJSON($visible_url);
   echo '<br>Array JSON<br><pre>';
   print_r($jsondata);
Con esto tenemos el ARRAY de los datos del usuario con el ID de Google Plus Ingresado, si queremos obtener la url de la foto de ese usuario accedemos al array de la siguiente manera:
echo $jsondata[1][2][3];
Si queremos obtener información del los círculos en los cuales el usuario ha sido ingresado podemos intentar hacer algo como:
 
   $plusid = '108170074439659702380'; // ID GOOGLE PLUS
   $visible_url = 'http://plus.google.com/_/socialgraph/
lookup/incoming/?o=%5Bnull%2Cnull%2C%22'.$plusid.'%22%5D&n=1000';
   $jsondata = GoogleJSON($visible_url);
   echo '<br>Array JSON<br><pre>';
   print_r($jsondata);
Con testo obtenernos el array de todos los usuarios que tienen en sus círculos al usuario con google ID 108170074439659702380
Bueno eso es todo lo que les puedo contar por ahora, espero que les sea de utilidad.

Fuente: Link

2010-09-03

Clase para acceder a Google Weather

Interesante clase para acceder de un modo sencillo al servicio metereológico de Google.
Ejemplo:
  1. <?php  
  2. class GoogleWeatherAPI {  
  3.     private $city_code = '';  
  4.     private $city = '';  
  5.     private $domain = 'www.google.com';  
  6.     private $prefix_images = '';  
  7.     private $current_conditions = array();  
  8.     private $forecast_conditions = array();  
  9.     private $is_found = true;  
  10.   
  11.     /**  
  12.     * Class constructor  
  13.     * @param $city_code is the label of the city  
  14.     * @param $lang the lang of the return weather labels  
  15.     * @return ...  
  16.     */  
  17.        
  18.     function __construct ($city_code,$lang='fr') {  
  19.         $this->city_code = $city_code;  
  20.         $this->prefix_images = 'http://'.$this->domain;  
  21.         $this->url = 'http://'.$this->domain.'/ig/api?weather='.urlencode($this->city_code).'&hl='.$lang;  
  22.           
  23.         $content = utf8_encode(file_get_contents($this->url));  
  24.           
  25.         $xml = simplexml_load_string($content);  
  26.           
  27.         if(!isset($xml->weather->problem_cause)) {  
  28.               
  29.             $xml = simplexml_load_string($content);  
  30.   
  31.             $this->city = (string)$xml->weather->forecast_information->city->attributes()->data;  
  32.   
  33.             $this->current_conditions['condition'] = (string)$xml->weather->current_conditions->condition->attributes()->data;  
  34.             $this->current_conditions['temp_f'] = (string)$xml->weather->current_conditions->temp_f->attributes()->data;  
  35.             $this->current_conditions['temp_c'] = (string)$xml->weather->current_conditions->temp_c->attributes()->data;  
  36.             $this->current_conditions['humidity'] = (string)$xml->weather->current_conditions->humidity->attributes()->data;  
  37.             $this->current_conditions['icon'] = $this->prefix_images.(string)$xml->weather->current_conditions->icon->attributes()->data;  
  38.             $this->current_conditions['wind_condition'] = (string)$xml->weather->current_conditions->wind_condition->attributes()->data;  
  39.               
  40.             foreach($xml->weather->forecast_conditions as $this->forecast_conditions_value) {  
  41.                 $this->forecast_conditions_temp = array();  
  42.                 $this->forecast_conditions_temp['day_of_week'] = (string)$this->forecast_conditions_value->day_of_week->attributes()->data;  
  43.                 $this->forecast_conditions_temp['low'] = (string)$this->forecast_conditions_value->low->attributes()->data;  
  44.                 $this->forecast_conditions_temp['high'] = (string)$this->forecast_conditions_value->high->attributes()->data;  
  45.                 $this->forecast_conditions_temp['icon'] = $this->prefix_images.(string)$this->forecast_conditions_value->icon->attributes()->data;  
  46.                 $this->forecast_conditions_temp['condition'] = (string)$this->forecast_conditions_value->condition->attributes()->data;  
  47.                 $this->forecast_conditions []= $this->forecast_conditions_temp;  
  48.             }  
  49.         } else {  
  50.             $this->is_found = false;  
  51.         }  
  52.     }  
  53.     function getCity() {  
  54.         return $this->city;  
  55.     }  
  56.     function getCurrent() {  
  57.         return $this->current_conditions;  
  58.     }  
  59.     function getForecast() {  
  60.         return $this->forecast_conditions;  
  61.     }  
  62.     function isFound() {  
  63.         return $this->is_found;  
  64.     }  
  65.       
  66. }  
  67. $gweather = new GoogleWeatherAPI('valencia','es');   
  68. if($gweather->isFound()) {  
  69.     echo '<pre>'; print_r($gweather->getCity()); echo '</pre>';  
  70.     echo '<pre>'; print_r($gweather->getCurrent()); echo '</pre>';  
  71.     echo '<pre>'; print_r($gweather->getForecast()); echo '</pre>';  
  72. }  
  73. ?>  
Ver ejemplo en funcionamiento » »
Google Weather API » »