afiqiqmal / selangor-water-disruption
List of Water Disruption in Selangor
This package's canonical repository appears to be gone and the package has been frozen as a result. Email us for help if needed.
Installs: 813
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 1
Forks: 1
Open Issues: 0
Type:project
pkg:composer/afiqiqmal/selangor-water-disruption
Requires
- php: >=7.0
- guzzlehttp/guzzle: ^6.3
- nesbot/carbon: ^2.0.0
- symfony/css-selector: ^4.0
- symfony/dom-crawler: ^4.0
Requires (Dev)
- phpunit/phpunit: ~5.7
README
Simple List of Water Disruption in Selangor. This API is based on MySyabas App where i use the endpoint to form this packagist
Tested in PHP 7.1 Only
[No Longer Working The API only available in VPN]
Installation
Step 1: Install from composer
composer require afiqiqmal/selangor-water-disruption
Alternatively, you can specify as a dependency in your project's existing composer.json file
{
"require": {
"afiqiqmal/selangor-water-disruption": "^1.4.0"
}
}
Usage
After installing, you need to require Composer's autoloader and add your code.
require_once __DIR__ .'/../vendor/autoload.php';
Sample for All List
$data = air_selangor() ->disruption() ->getList() ->fetch();
Sample for All List by District
$data = air_selangor() ->disruption() ->getList() ->byDistrict("20") // byDistrict("20,00,10") // byDistrict(["20","00"]) ->fetch();
Sample for All Schedule List
$data = air_selangor() ->disruption() ->getList() ->schedule() // schedule() or unscheduled() ->byDistrict("20") // byDistrict("20,00,10") // byDistrict(["20","00"]) ->fetch();
Sample for All Schedule List by District
$data = air_selangor() ->disruption() ->getList() ->schedule() // schedule() or unscheduled() ->byDistrict("20") // byDistrict("20,00,10") // byDistrict(["20","00"]) ->fetch();
Sample for See Detail from the list by ID
$data = air_selangor() ->disruption() ->detail("12345") ->fetch();
Usage for Water Dam (Get Information of Selangor Water Dam Water Level)
$data = air_selangor() ->waterDam() ->fetch();
District Guide Code
00 => Kuala Lumpur
10 => Gombak
20 => Petaling
30 => Klang
40 => Hulu Langat
50 => Kuala Langat
60 => Hulu Selangor
70 => Kuala Selangor
80 => Sabak Bernam
90 => Sepang
Result
You should getting data similarly for listing like below:
{
"code": 200,
"error": false,
"info": [
{
"code_id": "00",
"name": "Kuala Lumpur",
"data": [
{
"id": "5107",
"type": 1,
"type_name": "Scheduled",
"title": "Kerja Pemasangan Injap di Taman Putra dan Taman Muda",
"location": null,
"affected_areas": "Taman Putra dan Taman Muda\r\n",
"affected_areas_filtered": [
"Taman Putra dan Taman Muda"
],
"status": "Work Inprogress",
"start_date": 1526335200,
"start_date_formatted": "14/05/2018 10:00 PM",
"end_date": 1526446800,
"end_date_formatted": "16/05/2018 05:00 AM",
"district_id": "00",
"district_name": "Kuala Lumpur"
}
],
"count": 1
},
{
"code_id": "10",
"name": "Gombak",
"data": [
{
"id": "25458",
"type": 2,
"type_name": "Unscheduled",
"title": "Paip Pecah - Desa Makmur Batu 10",
"location": "Depan Kedai Makan, Jalan Gombak, Desa Makmur Batu 10, Gombak Utara, Selangor.",
"affected_areas": "1) Jalan Gombak Batu 9, Batu 10 & Batu 11\r\n2) Lorong Tokman",
"affected_areas_filtered": [
"1) Jalan Gombak Batu 9, Batu 10 & Batu 11",
"2) Lorong Tokman"
],
"status": "Work Inprogress",
"start_date": 1525685640,
"start_date_formatted": "07/05/2018 09:34 AM",
"end_date": 0,
"end_date_formatted": null,
"district_id": "10",
"district_name": "Gombak"
}
],
"count": 1
},
{
"code_id": "20",
"name": "Petaling",
"data": [
{
"id": "25460",
"type": 2,
"type_name": "Unscheduled",
"title": "Paip Pecah - Kampung Baru Subang",
"location": "Jalan 4D, Kampung Baru Subang",
"affected_areas": "Jalan 2D - 10D, Kampung Baru Subang",
"affected_areas_filtered": [
"Jalan 2D - 10D, Kampung Baru Subang"
],
"status": "Work Inprogress",
"start_date": 1525693560,
"start_date_formatted": "07/05/2018 11:46 AM",
"end_date": 0,
"end_date_formatted": null,
"district_id": "20",
"district_name": "Petaling"
}
],
"count": 1
},
{
"code_id": "30",
"name": "Klang",
"data": [
{
"id": "25461",
"type": 2,
"type_name": "Unscheduled",
"title": "Paip Pecah - Taman Klang Utama",
"location": "Jalan Sg Keramat 7E, Taman Klang Utama",
"affected_areas": "Taman Sg Keramat",
"affected_areas_filtered": [
"Taman Sg Keramat"
],
"status": "Work Inprogress",
"start_date": 1525695660,
"start_date_formatted": "07/05/2018 12:21 PM",
"end_date": 0,
"end_date_formatted": null,
"district_id": "30",
"district_name": "Klang"
}
],
"count": 1
},
{
"code_id": "40",
"name": "Hulu Langat",
"data": [
{
"id": "25459",
"type": 2,
"type_name": "Unscheduled",
"title": "Paip Pecah - Jalan Besar Semenyih",
"location": "Stesen Petrol BHP, Jalan Besar Semenyih",
"affected_areas": "Kg Baru Cina Semenyih",
"affected_areas_filtered": [
"Kg Baru Cina Semenyih"
],
"status": "Work Inprogress",
"start_date": 1525691100,
"start_date_formatted": "07/05/2018 11:05 AM",
"end_date": 0,
"end_date_formatted": null,
"district_id": "40",
"district_name": "Hulu Langat"
}
],
"count": 1
},
{
"code_id": "50",
"name": "Kuala Langat",
"data": [],
"count": 0
},
{
"code_id": "60",
"name": "Hulu Selangor",
"data": [
{
"id": "5106",
"type": 1,
"type_name": "Scheduled",
"title": "Kerja-kerja penggantian pam air mentah di Loji Rawatan Air Sungai Selisik",
"location": null,
"affected_areas": "1. Kampung Sungai Nilam/ Kampung Seri Pagi\r\n2. Kampung Lalang Sungai Selisik\r\n3. Rumah Murah Pkt 2 Sungai Selisek\r\n4. Kampung Serigala Sungai Selisek\r\n5. Kampung Orang Asli Serigala Sungai Selisek\r\n6. Kampong Bahom Sungai Selisek\r\n7. Kampong Sekolah, Kuarters Klinik\r\n8. Kampong Gesir Tengah Sungai Selisek",
"affected_areas_filtered": [
"1. Kampung Sungai Nilam/ Kampung Seri Pagi",
"2. Kampung Lalang Sungai Selisik",
"3. Rumah Murah Pkt 2 Sungai Selisek",
"4. Kampung Serigala Sungai Selisek",
"5. Kampung Orang Asli Serigala Sungai Selisek",
"6. Kampong Bahom Sungai Selisek",
"7. Kampong Sekolah, Kuarters Klinik",
"8. Kampong Gesir Tengah Sungai Selisek"
],
"status": "Work Inprogress",
"start_date": 1526288400,
"start_date_formatted": "14/05/2018 09:00 AM",
"end_date": 1526353200,
"end_date_formatted": "15/05/2018 03:00 AM",
"district_id": "60",
"district_name": "Hulu Selangor"
}
],
"count": 1
},
{
"code_id": "70",
"name": "Kuala Selangor",
"data": [],
"count": 0
},
{
"code_id": "80",
"name": "Sabak Bernam",
"data": [],
"count": 0
},
{
"code_id": "90",
"name": "Sepang",
"data": [],
"count": 0
}
],
"generated_at": "2018-05-07 04:28:07",
"footer": {
"source": "Air Selangor MySyabas API",
"developer": {
"name": "Hafiq",
"homepage": "https://github.com/afiqiqmal"
}
}
}
You should getting data similarly for DETAIL like below:
Sample
{
"code": 200,
"error": false,
"info": {
"id": "25454",
"title": "Paip Bocor - Taman Desa Impian",
"detail": "Paip Bocor ",
"detail_plain": "Paip Bocor ",
"location": "Lot 107, Jln Desa Impian 2, Tmn Desa Impian, Kajang",
"affected_areas": "Desa Impian & Sebahagian Sungai Kantan",
"affected_areas_plain": "Desa Impian & Sebahagian Sungai Kantan",
"level_disruption": "Normal",
"status": "Work Inprogress",
"start_date": 1525608000,
"start_date_formatted": "May 06 2018, 12:00",
"end_date": 1525629600,
"end_date_formatted": "May 06 2018, 18:00",
"timeline": [
{
"info": "Bekalan air telah kembali pulih.<br />Pihak kami memohon maaf diatas kesulitan yang dihadapi oleh pengguna sepanjang tempoh gangguan ini. Terima kasih.<br /><br />Tarikh/Masa Kerja Siap : May 06, 2018 08:30 PM",
"info_plain": "Bekalan air telah kembali pulih.\nPihak kami memohon maaf diatas kesulitan yang dihadapi oleh pengguna sepanjang tempoh gangguan ini. Terima kasih.\n\nTarikh/Masa Kerja Siap : May 06, 2018 08:30 PM",
"info_time": 1525639980,
"info_time_formatted": "May 06 2018, 20:53"
},
{
"info": "Kerja-kerja pembaikan siap. Bekalan air telah dibuka pada jam 5.30 petang dengan pemulihan keseluruhan kawasan adalah secara berperingkat. Terima kasih.",
"info_plain": "Kerja-kerja pembaikan siap. Bekalan air telah dibuka pada jam 5.30 petang dengan pemulihan keseluruhan kawasan adalah secara berperingkat. Terima kasih.",
"info_time": 1525629780,
"info_time_formatted": "May 06 2018, 18:03"
},
{
"info": "Kerja-kerja pembaikan sedang giat dijalankan. Bekalan air akan dibuka sejurus kerja-kerja pembaikan siap dengan pemulihan keseluruhan kawasan adalah secara berperingkat. Terima kasih",
"info_plain": "Kerja-kerja pembaikan sedang giat dijalankan. Bekalan air akan dibuka sejurus kerja-kerja pembaikan siap dengan pemulihan keseluruhan kawasan adalah secara berperingkat. Terima kasih",
"info_time": 1525610100,
"info_time_formatted": "May 06 2018, 12:35"
}
]
},
"generated_at": "2018-05-06 14:22:38",
"footer": {
"source": "Air Selangor MySyabas API",
"developer": {
"name": "Hafiq",
"homepage": "https://github.com/afiqiqmal"
}
}
}
Water Dam Air Selangor
Sample Result
{
"code": 200,
"error": false,
"info": [
{
"name": "Klang Gates",
"built_date": "1959",
"owner": "LEMBAGA URUS AIR SELANGOR (LUAS) Tingkat 12 & 13, Bangunan Darul Ehsan No. 3, Jalan Indah, Seksyen 14 40000 Shah Alam Selangor Darul Ehsan Tel : 03 - 5511 1800 Faks : 03 - 5510 1800",
"operator": "PUNCAK NIAGA (M) SDN BHD Wisma Rozali No. 4, Persiaran Sukan, Syeksen 13 40100 Shah Alam Selangor Darul Ehsan Tel : 03 – 5522 8589 Faks : 03 – 55101504",
"status": "Berfungsi",
"data": {
"update_date": "15-05-201808:00 AM",
"station": "Langat",
"water_level_amount": "218.27",
"water_level_metric": "m MSL",
"reservoir": "28.86",
"reservoir_metric": "Mm³",
"reservoir_percentage": "84.66",
"rain": "0.00",
"rain_metric": "mm"
}
},
{
"name": "Langat",
"built_date": "1979",
"owner": "LEMBAGA URUS AIR SELANGOR (LUAS) Tingkat 12 & 13, Bangunan Darul Ehsan No. 3, Jalan Indah, Seksyen 14 40000 Shah Alam Selangor Darul Ehsan Tel : 03 - 5511 1800 Faks : 03 - 5510 1800",
"operator": "PUNCAK NIAGA (M) SDN BHD Wisma Rozali No. 4, Persiaran Sukan, Syeksen 13 40100 Shah Alam Selangor Darul Ehsan Tel : 03 – 5522 8589 Faks : 03 – 55101504",
"status": "Berfungsi",
"data": {
"update_date": "15-05-201808:00 AM",
"station": "Langat",
"water_level_amount": "218.27",
"water_level_metric": "m MSL",
"reservoir": "28.86",
"reservoir_metric": "Mm³",
"reservoir_percentage": "84.66",
"rain": "0.00",
"rain_metric": "mm"
}
},
{
"name": "Tasik Subang",
"built_date": "1950",
"owner": "LEMBAGA URUS AIR SELANGOR (LUAS) Tingkat 12 & 13, Bangunan Darul Ehsan No. 3, Jalan Indah, Seksyen 14 40000 Shah Alam Selangor Darul Ehsan Tel : 03 - 5511 1800 Faks : 03 - 5510 1800",
"operator": "PUNCAK NIAGA (M) SDN BHD Wisma Rozali No. 4, Persiaran Sukan, Syeksen 13 40100 Shah Alam Selangor Darul Ehsan Tel : 03 – 5522 8589 Faks : 03 – 55101504",
"status": "Berfungsi",
"data": {
"update_date": "15-05-201808:00 AM",
"station": "Tasik Subang",
"water_level_amount": "38.62",
"water_level_metric": "m MSL",
"reservoir": "4.21",
"reservoir_metric": "Mm³",
"reservoir_percentage": "100.00",
"rain": "0.00",
"rain_metric": "mm"
}
},
{
"name": "Sungai Tinggi",
"built_date": "1995",
"owner": "LEMBAGA URUS AIR SELANGOR (LUAS) Tingkat 12 & 13, Bangunan Darul Ehsan No. 3, Jalan Indah, Seksyen 14 40000 Shah Alam Selangor Darul Ehsan Tel : 03 - 5511 1800 Faks : 03 - 5510 1800",
"operator": "Konsurtium ABASS Sdn Bhd Tingkat 15, Plaza Perangsang Persiaran Perbandaran 40000 Shah Alam Selangor Darul Ehsan Tel : 03 – 5512 2660 Faks : 03 – 5511 4660",
"status": "Berfungsi",
"data": {
"update_date": "15-05-201808:00 AM",
"station": "Sg Tinggi",
"water_level_amount": "59.61",
"water_level_metric": "m MSL",
"reservoir": "115.34",
"reservoir_metric": "Mm³",
"reservoir_percentage": "100.00",
"rain": "0.00",
"rain_metric": "mm"
}
},
{
"name": "Sungai Selangor",
"built_date": "2001",
"owner": "LEMBAGA URUS AIR SELANGOR (LUAS) Tingkat 12 & 13, Bangunan Darul Ehsan No. 3, Jalan Indah, Seksyen 14 40000 Shah Alam Selangor Darul Ehsan Tel : 03 - 5511 1800 Faks : 03 - 5510 1800",
"operator": "Konsurtium ABASS Sdn Bhd Tingkat 15, Plaza Perangsang Persiaran Perbandaran 40000 Shah Alam Selangor Darul Ehsan Tel : 03 – 5512 2660 Faks : 03 – 5511 4660",
"status": "Berfungsi",
"data": {
"update_date": "15-05-201808:00 AM",
"station": "Sg Selangor",
"water_level_amount": "220.20",
"water_level_metric": "m MSL",
"reservoir": "230.00",
"reservoir_metric": "Mm³",
"reservoir_percentage": "100.00",
"rain": "0.00",
"rain_metric": "mm"
}
},
{
"name": "Semenyih",
"built_date": "1985",
"owner": "LEMBAGA URUS AIR SELANGOR (LUAS) Tingkat 12 & 13, Bangunan Darul Ehsan No. 3, Jalan Indah, Seksyen 14 40000 Shah Alam Selangor Darul Ehsan Tel : 03 - 5511 1800 Faks : 03 - 5510 1800",
"operator": "Konsurtium ABASS Sdn Bhd Tingkat 15, Plaza Perangsang Persiaran Perbandaran 40000 Shah Alam Selangor Darul Ehsan Tel : 03 – 5512 2660 Faks : 03 – 5511 4660",
"status": "Berfungsi",
"data": {
"update_date": "15-05-201807:00 AM",
"station": "Semenyih",
"water_level_amount": "111.04",
"water_level_metric": "m MSL",
"reservoir": "59.22",
"reservoir_metric": "Mm³",
"reservoir_percentage": "100.25",
"rain": "0.00",
"rain_metric": "mm"
}
},
{
"name": "Sg. Labu Kolam Takungan",
"built_date": "2011",
"owner": "LEMBAGA URUS AIR SELANGOR (LUAS) Tingkat 12 & 13, Bangunan Darul Ehsan No. 3, Jalan Indah, Seksyen 14 40000 Shah Alam Selangor Darul Ehsan Tel : 03 - 5511 1800 Faks : 03 - 5510 1800",
"operator": "Konsurtium ABASS Sdn Bhd Tingkat 15, Plaza Perangsang Persiaran Perbandaran 40000 Shah Alam Selangor Darul Ehsan Tel : 03 – 5512 2660 Faks : 03 – 5511 4660",
"status": "Berfungsi",
"data": {
"update_date": "15-05-201807:00 AM",
"station": "Kolam Takungan Sg. Labu (ors)",
"water_level_amount": "44.90",
"water_level_metric": "m MSL",
"reservoir": "9.26",
"reservoir_metric": "Mm³",
"reservoir_percentage": "99.62",
"rain": "6.00",
"rain_metric": "mm"
}
}
],
"generated_at": "2018-05-15 06:16:47",
"footer": {
"source": "Lembaga Urus Air Selangor",
"developer": {
"name": "Hafiq",
"homepage": "https://github.com/afiqiqmal"
}
}
}
Issue
- If Issue happen like the api always return empty [], just let me know =)
License
Licensed under the MIT license
Credit
Credit to :
- MySyabas Air Selangor
- Lembaga Urus Air Selangor