Go to file
karuniaDwi f43f0f5afe Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
api Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
assets Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
config Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
.htaccess Fix: initial commit 2025-08-16 16:47:24 +07:00
ITEM_SUMMARY.md Fix: initial commit 2025-08-16 16:47:24 +07:00
KMZ_Export_Fix_Guide.md Fix: initial commit 2025-08-16 16:47:24 +07:00
KMZ_Export_Guide.md Fix: initial commit 2025-08-16 16:47:24 +07:00
KMZ_Export_Summary.md Fix: initial commit 2025-08-16 16:47:24 +07:00
README.md Fix: initial commit 2025-08-16 16:47:24 +07:00
auto_login_genieacs.php Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
auto_login_observium.php Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
auto_olt.py Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
auto_refresh.py Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
bc html.txt Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
bg.jpg Fix: initial commit 2025-08-16 16:47:24 +07:00
database.sql Fix: initial commit 2025-08-16 16:47:24 +07:00
debug_onu.html Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
debug_onu.json Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
get_clients.php Fix: initial commit 2025-08-16 16:47:24 +07:00
get_rx_power.php Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
hapus.php Fix: initial commit 2025-08-16 16:47:24 +07:00
index.php Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
login.php Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
logout.php Fix: initial commit 2025-08-16 16:47:24 +07:00
manajemen_users.php Fix: initial commit 2025-08-16 16:47:24 +07:00
megadata.jpeg Fix: initial commit 2025-08-16 16:47:24 +07:00
register.php Upload source code ftthplanner 2026-07-09 12:33:03 +07:00
setup_instructions.md Fix: initial commit 2025-08-16 16:47:24 +07:00
testing_guide.md Fix: initial commit 2025-08-16 16:47:24 +07:00
update_database.sql Fix: initial commit 2025-08-16 16:47:24 +07:00
wifi.png Fix: initial commit 2025-08-16 16:47:24 +07:00

README.md

FTTH Planner

Aplikasi perencanaan infrastruktur FTTH (Fiber to the Home) berbasis web menggunakan AdminLTE, PHP, MySQL, dan OpenStreetMaps.

Fitur Utama

  • Manajemen Item FTTH: OLT, Tiang Tumpu, ODP, ODC
  • Peta Interaktif: Visualisasi infrastruktur menggunakan OpenStreetMaps
  • Drag & Drop: Pindahkan item langsung di peta
  • Routing Kabel: Buat rute kabel mengikuti jalan
  • Form Dinamis: Tambah/edit item dengan form modal
  • Dashboard Statistik: Monitoring jumlah item dan route
  • Responsive Design: Tampilan optimal di desktop dan mobile
  • Export KMZ: Export data ke Google Earth format

Sistem Requirement

  • XAMPP (Apache, MySQL, PHP 7.4+)
  • Web Browser modern dengan JavaScript enabled
  • Koneksi Internet untuk loading maps dan library

Instalasi

1. Setup XAMPP

  1. Download dan install XAMPP dari https://www.apachefriends.org/
  2. Start Apache dan MySQL di XAMPP Control Panel

2. Setup Database

  1. Buka phpMyAdmin di browser: http://localhost/phpmyadmin
  2. Import file database: database.sql
  3. Atau jalankan SQL script secara manual untuk membuat database dan tabel

3. Setup Aplikasi

  1. Copy folder aplikasi ke C:\xampp\htdocs\ftthplanner
  2. Pastikan struktur folder seperti ini:
    C:\xampp\htdocs\ftthplanner\
    ├── index.php
    ├── config/
    │   └── database.php
    ├── api/
    │   ├── items.php
    │   ├── routes.php
    │   ├── tube_colors.php
    │   ├── splitters.php
    │   └── statistics.php
    ├── assets/
    │   ├── css/
    │   │   └── custom.css
    │   └── js/
    │       ├── map.js
    │       ├── app.js
    │       └── kmz-export.js
    ├── database.sql
    ├── README.md
    ├── KMZ_Export_Guide.md
    └── testing_guide.md
    

4. Konfigurasi Database

Edit file config/database.php sesuai dengan setting MySQL Anda:

private $host = "localhost";
private $db_name = "ftth_planner";
private $username = "root";
private $password = "";

5. Akses Aplikasi

Buka browser dan akses: http://localhost/ftthplanner

Cara Penggunaan

Menambah Item FTTH

  1. Via Sidebar: Klik menu "Tambah OLT", "Tambah Tiang Tumpu", dll
  2. Via Map: Klik langsung di peta untuk menambah item di lokasi tersebut
  3. Via Tombol: Klik tombol "Tambah Item" di header card map

Mengedit Item

  1. Klik marker di peta
  2. Klik tombol "Edit" di popup
  3. Update informasi di form modal
  4. Klik "Simpan"

Memindahkan Item

  • Drag & drop marker langsung di peta
  • Posisi akan otomatis tersimpan

Membuat Route Kabel

  1. Mode Routing: Klik tombol "Mode Routing" atau "Route" di popup item
  2. Pilih Tujuan: Klik item tujuan untuk membuat route
  3. Auto Route: Sistem akan membuat route mengikuti jalan

Melihat Daftar Item/Route

  • Klik menu "Daftar Item" untuk melihat semua item dalam tabel
  • Klik menu "Routing Kabel" untuk melihat semua route

Export ke Google Earth

  1. Klik tombol "Export KMZ" di header peta atau sidebar
  2. File KMZ otomatis terdownload dengan timestamp
  3. Buka di Google Earth atau aplikasi GIS lainnya
  4. Lihat detail lengkap setiap item dan route

Struktur Database

Tabel Utama

  • ftth_items: Data item infrastruktur FTTH
  • cable_routes: Data routing kabel antar item
  • item_types: Jenis-jenis item (OLT, Tiang, ODP, ODC)
  • tube_colors: Master data warna tube
  • splitter_types: Master data jenis splitter

Relasi

  • Item memiliki relasi ke item_types, tube_colors, dan splitter_types
  • Route menghubungkan dua item (from_item_id dan to_item_id)

Teknologi yang Digunakan

Frontend

  • AdminLTE 3.2: Framework dashboard admin
  • Leaflet.js: Library peta interaktif
  • OpenStreetMaps: Data peta
  • Leaflet Routing Machine: Routing jalan
  • Bootstrap 4: CSS framework
  • jQuery: JavaScript library
  • Font Awesome: Icon library
  • JSZip: Compression untuk KMZ export
  • FileSaver.js: Download file functionality

Backend

  • PHP 7.4+: Server-side scripting
  • MySQL: Database
  • PDO: Database abstraction layer

Maps & Routing

  • OpenStreetMaps: Tile server peta
  • Leaflet: Map rendering engine
  • OSRM: Routing service

Fitur Lanjutan

Drag & Drop Items

  • Semua marker dapat di-drag ke posisi baru
  • Update koordinat otomatis tersimpan ke database

Interactive Popup

  • Info lengkap item saat klik marker
  • Aksi edit, route, dan hapus dalam popup

Route Visualization

  • Route terpasang: garis solid hijau
  • Route perencanaan: garis putus-putus kuning
  • Route maintenance: garis putus-putus merah

Responsive Design

  • Optimized untuk desktop dan mobile
  • Map dan form menyesuaikan ukuran layar

Export KMZ

  • Export semua data items dan routes ke format Google Earth
  • File KMZ dengan styling yang sesuai untuk setiap jenis item
  • Informasi lengkap dalam popup Google Earth
  • Kompatibel dengan aplikasi GIS profesional

Troubleshooting

Error Database Connection

  • Pastikan MySQL berjalan di XAMPP
  • Cek konfigurasi di config/database.php
  • Pastikan database ftth_planner sudah dibuat

Map Tidak Muncul

  • Cek koneksi internet
  • Pastikan JavaScript enabled di browser
  • Lihat console browser untuk error

Item Tidak Tersimpan

  • Cek permission folder aplikasi
  • Pastikan semua field required sudah diisi
  • Lihat Network tab di browser untuk error API

Route Tidak Terbuat

  • Pastikan kedua item sudah ada di database
  • Cek koneksi internet untuk routing service
  • Mode routing harus aktif sebelum memilih item

Pengembangan Lebih Lanjut

Fitur yang Bisa Ditambahkan

  1. Import/Export Data: Import data dari Excel/CSV
  2. Laporan: Generate laporan PDF/Excel
  3. User Management: Login dan role-based access
  4. Backup/Restore: Backup data dan konfigurasi
  5. Mobile App: Native app untuk survey lapangan
  6. Integration: Integrasi dengan sistem lain via API

Customization

  • Ubah warna marker di assets/css/custom.css
  • Tambah jenis item baru di database item_types
  • Modifikasi form field di index.php
  • Tambah validasi di file API

Lisensi

Aplikasi ini dibuat untuk keperluan pembelajaran dan dapat digunakan secara bebas.

Kontak

Untuk pertanyaan dan support, silakan hubungi developer.


Catatan: Pastikan selalu backup database sebelum melakukan perubahan major pada aplikasi.