Widget Kualitas Udara - Umpan Baru yang Lebih Baik
Air Quality Widget - New Improved Feed

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

Untuk meningkatkan integrasi widget AQI kami dalam situs web eksternal, kami telah mengembangkan umpan API widget baru. Dibandingkan dengan feed widget yang ada, feed API baru ini memberikan lebih banyak fleksibilitas untuk integrasi, namun juga lebih banyak opsi untuk menyesuaikan tampilan widget.

Anda dapat, misalnya, menampilkan widget kecil yang sederhana seperti ... (gerakkan mouse Anda ke nomor AQI untuk melihat detailnya), atau widget yang lebih besar dengan detail tentang polutan 24 jam terakhir seperti yang ditunjukkan di sebelah kanan.

Kerangka kerja baru ini juga mendukung templating, berbagai bahasa (Inggris, Cina Sederhana dan Tradisional, Spanyol, ...) serta kemungkinan untuk melakukan integrasi terprogram dengan panggilan balik javascript berbasis data.

A.Pengaturan dasar

Integrasi dasarnya sederhana dan mudah. Anda harus terlebih dahulu menambahkan potongan kode berikut:

  
<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>

Lalu, tambahkan saja kode lain ini untuk menyertakan widget:

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

Fungsi `_aqiFeed` mengambil argumen blok konfigurasi untuk widget. Parameter `container: "city-aqi-container"` mengacu pada id tag yang ingin Anda masukkan widgetnya (misalnya `<span id='city-aqi-container'></span>`), dan parameter city nama kota yang ingin Anda tampilkan pembacaan Kualitas Udaranya saat ini (misalnya `kota: "london"`).

B. Menentukan Bahasa

...

Anda juga dapat menentukan bahasa yang akan digunakan dengan mengatur opsi lang . Misalnya, untuk menyertakan widget dalam bahasa Mandarin (seperti yang ditunjukkan di sebelah kanan), gunakan kode berikut:

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

Bahasa yang didukung saat ini adalah:

  • "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

    Jika tidak ditentukan atau disetel ke null , bahasa Inggris yang digunakan.

  • C. Menentukan format tampilan

    ...

    Dimungkinkan untuk menyesuaikan teks yang akan ditampilkan dalam widget dengan menentukan opsi display . Misalnya, untuk menampilkan nama tekstual "AQI" serta waktu pembaruan (seperti yang ditunjukkan pada widget di sebelah kiri), Anda dapat menggunakan kode berikut:

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

    display parameter adalah string berbasis HTML, dan dapat berisi salah satu kata kunci berikut:

    • `%cityname` untuk nama kota (misalnya Beijing ),
    • `%aqi` untuk nilai AQI yang dihias (misalnya 58 ),
    • `%aqiv` untuk nilai AQI yang tidak didekorasi (teks mentah) (misalnya 58 ),
    • `%style` untuk deklarasi css dari detail AQI yang dihias (misalnya background-color: #ffde33;color:#000000; ),
    • `%tanggal` untuk waktu saat AQI diperbarui (misalnya Wed 20:00 ),
    • `%dampak` untuk dampak kesehatan yang terkait (misalnya Good , Moderate ...)
    • `%attribution` untuk atribusi data AQI (misalnya Beijing Environmental Protection Monitoring Center )
    • `%details` untuk detail AQI lengkap (isi popup yang ditampilkan saat mengarahkan mouse ke nilai AQI).

    Berikut beberapa contohnya:

    Display Configuration Result

    D. Panggilan balik terprogram

    Jika Anda lebih suka integrasi DIY, Anda juga dapat menentukan panggilan balik fungsi javascript saat data dimuat. Anda hanya perlu menambahkan opsi callback di blok parameter, seperti misalnya:

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

    Misalnya, dengan asumsi Anda juga menggunakan jquery, kode berikut:

      
    <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>

    akan menghasilkan konten berikut:

    Objek aqi berisi semua kata kunci yang disebutkan di bagian C (format tampilan).

    E. Menyertakan banyak widget

    Menyertakan beberapa widget dalam satu halaman dimungkinkan. Yang Anda butuhkan hanyalah meneruskan ke fungsi `_aqiFeed` sebuah array dengan semua widget yang perlu Anda sertakan. Misalnya untuk memasukkan London, Paris dan New York, dapat menggunakan kode ini:

      
    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. Penggunaan pakan

    Umpan widget ini disediakan secara gratis, dan dengan tujuan semata-mata untuk mengintegrasikan umpan ke situs web lain (yaitu aplikasi tidak termasuk), dan dalam kondisi penggunaan yang wajar dan dapat diterima. Kami berhak mengubah struktur feed (format data) kapan saja dan tanpa pemberitahuan sebelumnya, jadi lebih baik menghubungi kami jika Anda berencana melakukan integrasi khusus.

    Saat melakukan integrasi, ada beberapa aturan deontologis yang harus diterapkan saat menggunakan data feed:

    • Pertama, selalu pastikan bahwa ada atribusi ke EPA asal. Semua data Kualitas Udara yang dapat Anda temukan di proyek Indeks Kualitas Udara Dunia adalah berkat kerja keras dari seluruh EPA di seluruh dunia, jadi pastikan untuk memberikan atribusi atas pekerjaan mereka juga. Jika Anda menggunakan API terprogram, atribusi tersedia dari bidang attribution .
    • Jika Anda berasal dari suatu institusi dan menggunakan data tersebut, mohon tunjukkan rasa hormat dan bayar kembali penghargaan atas pekerjaan kami. Jika Anda mencoba menghapus data feed, harap diingat bahwa proyek ini bergantung pada sponsorship dan proyek kerja sama, jadi pertimbangkan untuk mendukung kami daripada membuang kami, terutama jika Anda adalah institusi atau universitas berskala besar.
    • Faktanya, jangan bertindak seperti WRI ( World Resource Institute ): Menghapus keseluruhan data proyek Indeks Kualitas Udara Dunia , dan bersikap sangat murah sehingga mereka bahkan tidak memberikan atribusi apa pun atas pekerjaan kami, meskipun mereka 80 jutaan pendanaan USD tahunan. Tidak percaya kami? Periksa cuplikan ini.

    G. Perbaikan di masa depan

    Ini adalah versi pertama dari API umpan widget baru ini. Ada beberapa perbaikan yang sedang direncanakan, seperti lebar dan tinggi grafis yang dapat disesuaikan, skala AQI yang dapat dipilih, dll. Jika Anda ingin menyarankan perbaikan spesifik lainnya, silakan kirimkan pesan kepada kami.

    Klik di sini untuk melihat semua entri 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
  • Tentang Pengukuran Kualitas dan Polusi Udara:

    Tentang Tingkat Kualitas Udara

    -Nilai Indeks Kualitas Udara (AQI).Tingkat Kekhawatiran Kesehatan
    0 - 50BaikKualitas udara dianggap memuaskan, dan polusi udara menimbulkan sedikit atau tanpa risiko
    51 -100ModeratKualitas udara dapat diterima; Namun, untuk beberapa polutan mungkin ada kekhawatiran kesehatan yang moderat untuk sejumlah kecil orang yang sangat sensitif terhadap polusi udara.
    101-150Tidak Sehat untuk kelompok orang yang sensitifAnggota kelompok sensitif dapat mengalami efek kesehatan. Masyarakat umum tidak mungkin terpengaruh.
    151-200Tidak sehatSetiap orang mungkin mulai mengalami efek kesehatan; anggota kelompok sensitif dapat mengalami efek kesehatan yang lebih serius
    201-300Sangat Tidak SehatPeringatan kesehatan untuk kondisi darurat. Seluruh penduduk lebih mungkin terpengaruh.
    300+BerbahayaPeringatan kesehatan: semua orang mungkin mengalami efek kesehatan yang lebih serius

    Untuk mengetahui lebih banyak tentang Kualitas dan Polusi Udara, lihat topik Kualitas Udara di wikipedia atau panduan airnow tentang Kualitas Udara dan Kesehatan Anda .

    Untuk nasihat kesehatan yang sangat berguna dari Dokter Beijing Richard Saint Cyr MD, periksa blog www.myhealthbeijing.com .


    Pemberitahuan Penggunaan: Semua data Kualitas Udara tidak divalidasi pada saat publikasi, dan demi jaminan kualitas maka data ini dapat diubah, tanpa pemberitahuan, kapan saja. Proyek Indeks Kualitas Udara Dunia telah menerapkan semua kemampuan dan kepedulian yang cukup dalam mengumpulkan isi informasi ini dan dalam keadaan apa pun World Air Quality Index tim proyek atau agennya bertanggung jawab dalam kontrak, gugatan atau jika ada kerugian, cedera atau kerusakan yang timbul secara langsung atau tidak langsung dari pasokan data ini.



    Settings


    Language Settings:


    Temperature unit:
    Celcius