Widget de qualidade do ar – novo feed aprimorado
Air Quality Widget - New Improved Feed

Posted on July 28th 2015
Compartilhar: aqicn.org/faq/2015-07-28/air-quality-widget-new-improved-feed/pt/
{ widget : feed }

Para melhorar a integração de nossos widgets AQI em sites externos, desenvolvemos um novo feed de API de widget. Comparado ao feed de widget existente, este novo feed de API oferece muito mais flexibilidade para a integração, mas também muito mais opções para personalizar a aparência do widget.

Você pode, por exemplo, exibir um pequeno widget tão simples como ... (mova o mouse sobre o número AQI para ver os detalhes) ou um widget maior com detalhes sobre os poluentes das últimas 24 horas, conforme mostrado à direita.

A nova estrutura também suporta modelos, vários idiomas (inglês, chinês simplificado e tradicional, espanhol, ...), bem como a possibilidade de fazer integração programática com retornos de chamada javascript baseados em dados.

A. Configuração básica

A integração básica é simples e direta. Primeiro você precisa adicionar o seguinte trecho de código:

  
<script  type="text/javascript"  charset="utf-8">  
	(function  (w,  d,  t,  f)  {  
		w[f]  =  w[f]  ||  function  (c,  k,  n)  {  
			s  =  w[f],  k  =  s['k']  =  (s['k']  ||  (k  ?  ('&k='  +  k)  :  ''));  s['c']  =  
				c  =  (c  instanceof  Array)  ?  c  :  [c];  s['n']  =  n  =  n  ||  0;  L  =  d.createElement(t),  e  =  d.getElementsByTagName(t)[0];  
			L.async  =  1;  L.src  =  '//feed.aqicn.org/feed/'  +  (c[n].city)  +  '/'  +  (c[n].lang  ||  '')  +  '/feed.v1.js?n='  +  n  +  k;  
			e.parentNode.insertBefore(L,  e);  
		};  
	})(window,  document,  'script',  '_aqiFeed');    
</script>

Depois, basta adicionar este outro código para incluir o widget:

  
<span  id="city-aqi-container"></span>  
  
<script  type="text/javascript"  charset="utf-8">  
	_aqiFeed({  container:  "city-aqi-container",  city:  "beijing"  });  
</script>

A função `_aqiFeed` toma como argumento o bloco de configuração do widget. O parâmetro `container: "city-aqi-container"` refere-se ao id da tag na qual você deseja inserir o widget (ex. `<span id='city-aqi-container'></span>`), e o parâmetro city é o nome da cidade para a qual você deseja mostrar a leitura atual da Qualidade do Ar (por exemplo, `cidade: "londres"`).

B. Especificando o idioma

...

Você também pode especificar o idioma a ser usado definindo a opção lang . Por exemplo, para incluir o widget em chinês (conforme mostrado à direita), use o seguinte código:

  
_aqiFeed({  
	container:"city-aqi-container",  
	city:"beijing",  
	lang:"cn"  
});  

Os idiomas atualmente suportados são:

  • "en": English
  • "cn": Chinese
  • "jp": Japanese
  • "es": Spanish
  • "kr": Korean
  • "ru": Russian
  • "hk": Traditional Chinese
  • "fr": French
  • "pl": Polish
  • "de": German
  • "pt": Portuguese
  • "vn": Vietnamese
  • "it": Italian
  • "id": Indonesian
  • "nl": Dutch
  • "fa": Persian
  • "th": Thai
  • "hu": Hungarian
  • "el": Greek
  • "ro": Romanian
  • "bg": Bulgarian
  • "ur": Urdu
  • "hi": Hindi
  • "ar": Arabic
  • "sr": Serbian
  • "bn": Bangla
  • "hu": Hungarian
  • "bs": Bosnian
  • "hr": Croatian
  • "tr": Turkish
  • "uk": Ukrainian
  • "cs": Czech
  • "be": Belarusian

    Se não for especificado ou definido como null , o inglês será usado.

  • C. Especificando o formato de exibição

    ...

    É possível personalizar o texto a ser exibido no widget especificando a opção display . Por exemplo, para exibir tanto o nome textual "AQI" quanto o tempo de atualização (conforme mostrado no widget à esquerda), você pode usar o seguinte código:

    >
      
    _aqiFeed({    
    	display:"%cityname  AQI  is  %aqi<br><small>on  %date</small>",  
    	container:"city-aqi-container-display",    
    	city:"beijing"  
    });  
    

    O parâmetro display é uma string baseada em HTML e pode conter qualquer uma das seguintes palavras-chave:

    • `%cityname` para o nome da cidade (por exemplo, Beijing ),
    • `%aqi` para o valor AQI decorado (por exemplo, 58 ),
    • `%aqiv` para o valor AQI não decorado (texto bruto) (por exemplo, 58 ),
    • `%style` para a declaração css dos detalhes AQI decorados (por exemplo background-color: #ffde33;color:#000000; ),
    • `%date` para o horário em que o AQI foi atualizado (por exemplo, Wed 20:00 ),
    • `%impact` para o impacto na saúde associado (por exemplo, Good , Moderate ...)
    • `%attribution` para atribuição de dados AQI (por exemplo Beijing Environmental Protection Monitoring Center )
    • `%details` para obter os detalhes completos do AQI (o conteúdo do pop-up exibido ao mover o mouse sobre o valor do AQI).

    Aqui estão alguns exemplos:

    Display Configuration Result

    D. Retorno de chamada programático

    Se preferir a integração DIY, você também pode especificar um retorno de chamada de função javascript quando os dados forem carregados. Você só precisa adicionar a opção callback no bloco de parâmetros, como por exemplo:

      
    _aqiFeed({  city:"beijing",  callback:function(aqi){  
    	/*  Do  whatever  you  want  with  the  AQI  object  */  
    	console.log(aqi);    
    }  });

    Por exemplo, supondo que você também esteja usando jquery, o seguinte código:

      
    <div  id='my-container'></div>  
    <script  type="text/javascript"  charset="utf-8">  
    	_aqiFeed({  
    		city:  "beijing",  lang:  "pl",  callback:  function  (aqi)  {  
    			$("#my-container").html(aqi.details);  
    		}  
    	});  
    </script>

    produzirá o seguinte conteúdo:

    Os objetos aqi contêm todas as palavras-chave mencionadas na seção C (formato de exibição).

    E. Incluindo vários widgets

    É possível incluir vários widgets em uma única página. Tudo que você precisa é passar para a função `_aqiFeed` um array com todos os widgets que você precisa incluir. Por exemplo, para inserir Londres, Paris e Nova York, pode-se usar este código:

      
    var  cities  =  ["london",  "newyork",  "seoul",  "guangzhou",  "tokyo",  "shanghai",  "paris","hongkong"];  
      
    var  aqiWidgetConfig  =  [];    
    cities.forEach(function(city)  {  aqiWidgetConfig.push({city:city,  callback:  displayCity});  });  
    _aqiFeed(aqiWidgetConfig);  
      
    function  displayCity(aqi)  {  
    	$("#mutiple-city-aqi").append(aqi.text("<center>%cityname<br>%aqi<br><small>%date</small></center>"));  
    }  
    
    The result is:

    F. Uso de feed

    Este feed de widget é fornecido gratuitamente e com o único propósito de integrar o feed em outros sites (ou seja, os aplicativos estão excluídos) e sob a condição de uso razoável e aceitável. Reservamo-nos o direito de alterar a estrutura do feed (formato dos dados) a qualquer momento e sem aviso prévio, por isso é melhor entrar em contato conosco se você planeja fazer uma integração personalizada.

    Ao fazer a integração, existem algumas regras deontológicas que devem ser aplicadas ao utilizar o feed de dados:

    • Primeiro, certifique-se sempre de que a atribuição ao EPA de origem esteja presente. Todos os dados de qualidade do ar que você pode encontrar no projeto Índice Mundial de Qualidade do Ar são graças ao trabalho árduo de todas as EPAs em todo o mundo, portanto, certifique-se de fornecer também a atribuição de seu trabalho. Se você usar a API programática, a atribuição estará disponível no campo attribution .
    • Se você é de uma instituição e utiliza os dados, por favor, mostre respeito e devolva os créditos pelo nosso trabalho. Se você está tentando copiar o feed de dados, por favor, tenha em mente que este projeto depende de projetos de patrocínio e cooperação, então considere nos apoiar em vez de nos descartar, especialmente se você for uma instituição ou universidade de grande porte.
    • Na verdade, não aja como o WRI ( World Resource Institute ): descartando o feed de dados geral do projeto do Índice Mundial de Qualidade do Ar e sendo tão barato que eles nem sequer dariam qualquer atribuição ao nosso trabalho, e isso apesar de seus 80 milhões de financiamentos anuais em dólares. Não acredite em nós? Verifique este instantâneo .

    G. Melhorias futuras

    Esta é a primeira versão desta nova API de feed de widget. Já existem algumas melhorias em andamento, como largura e altura gráfica ajustáveis, escala AQI selecionável, etc. Se você quiser sugerir alguma outra melhoria específica, sinta-se à vontade para nos enviar uma mensagem.

    Clique aqui para ver todas as entradas do FAQ
  • AQI Scale: What do the colors and numbers mean?
  • Using Statistical Distances for Real-time Sensor Networks Validation
  • Nitrogen Dioxyde (NO2) in our atmosphere
  • Sobre a medição da aualidade do ar e poluição

    Sobre os níveis de qualidade do ar

    -Valores do Índice de Qualidade do Ar (AQI)Níveis de preocupação de saúde
    0 - 50Boa0-50: Boa - A qualidade do ar é considerada satisfatória, a poluição do ar representa pouco ou nenhum risco
    51 -100Moderado50-100: Moderado - A qualidade do ar é aceitável; No entanto, para alguns poluentes pode haver um problema de saúde moderada para um número muito pequeno de pessoas que são mais sensíveis à poluição do ar.
    101-150Não Saudável para Grupos SensíveisMembros de grupos sensíveis podem ter efeitos na a saúde. O público em geral não é susceptível de ser afetado.
    151-200Não saudável150-200: Insalubre - Toda a população pode começar a sentir os efeitos na saúde; membros de grupos sensíveis podem apresentar efeitos mais sérios de saúde.
    201-300Muito Prejudical à Saúde200-300: Muito Insalubre - As advertências de saúde de situações de emergência. Toda a população é mais susceptível de ser afectada.
    300+Perigoso300+: Perigoso - alerta de saúde: todos podem experimentar efeitos mais graves para a saúde

    Para saber mais sobre Qualidade do Ar e Poluição, verifique o wikipedia Qualidade do Ar tópico ou o guia AIRNow a Qualidade do Ar e sua saúde.

    Para informações sobre saúde muito úteis em Pequim, procure Doutor Richard Saint Cyr MD, consulte www.myhealthbeijing.com blogue.


    Aviso de uso: Todos os dados da Qualidade do Ar não são validados no momento da publicação e, devido à garantia de qualidade, esses dados podem ser alterados, sem aviso prévio, a qualquer momento. O projeto Índice de Qualidade do Ar Mundial exerceu todas as habilidades e cuidados razoáveis na compilação do conteúdo desta informação e sob nenhuma circunstância o A equipe do projeto World Air Quality Index ou seus agentes podem ser responsabilizados em contrato, responsabilidade civil ou de outra forma por qualquer perda, lesão ou dano decorrente direta ou indiretamente do fornecimento desses dados.



    Configurações


    Configurações de Idioma:


    Temperature unit:
    Celcius