---
# System prepended metadata

title: YTP專題_教我寫程式

---

# YTP專題_教我寫程式
## 5/15討論內容
- 時間表

| 時間 |    事情    | 備註  |
|:----:|:--------:|:-----:|
| 5/21 | 第一次簡報 | 10:00 |
| 5/28 | 跟教授簡報 | 10:00 |
| 6/02 |  改善簡報  | 10:00 |
| 6/08 | 第二次簡報 | 21:00 |

## 5/14討論內容
- [5/14討論紀錄](https://hackmd.io/u9IHjppQSBmjEj70iqmYkA)
- 目前進度以及問題
    - 建模:網頁化，地圖建立完畢
        - [程式碼](https://github.com/Eggman-black/3d-modul.git)
        - 下一步:
            與其他部分連接、撰寫wifi point連接的部分
        - 問題:
            Javascript不知道怎麼連接txt檔案
            手機操作不知道怎麼設定
    - AP部分:已經取得學校同意和取得範例LOG
        - LOG確定可使用，且可提取出關鍵部分
        - 方向:使用elastic分析Log並做出API
        - [LOG範例](https://pastebin.com/3L51Wnss)
        - 問題:
            LOG太巨量:一天幾十GB的LOG量，篩選出要接收的部分應該就還好
            LOG蒐集間隔時間:可設定及時或是每幾分鐘一次，印象中目前學校的設定為五分鐘一次，如果提高頻率可能會讓原本很巨量的LOG更爆炸，且學校也有伺服器存放LOG，無法單獨調整
            學校沒有AP地圖:每間教室都有一台，且走廊也有，要人工建圖的話工作量巨大
            AP穿透力太強:目前學校已將AP訊號強度調整至80%，但可能會有些許穿透過強的情況
    - 算法與API部分
        - 使用較為擅長的C++將基本架構與算法寫出來
        - [程式碼](https://hackmd.io/XhE1Lrp7QcmZ2ybDK4FsBw)
        - 問題:
            需要建立許多資料，例如:教室連通關係、結點資訊(為教室或樓梯以及座標等)，預計會開發出一個小工具幫助輸入資料
    - 伺服器部分
        - 需要伺服器來跑網頁以及LOG伺服器等等
        - 目前是架設在社辦的伺服器上面
        - [LOG伺服器](https://elk.ckcsc.net/)，目前應該不可用
        - 學校常常停電...
## 4/11
- 目前進度
    - 建模:完整的demo
        - [程式碼](https://github.com/Eggman-black/3d-modul.git)
        - 下一步:
            正在學習網頁相關知識，準備將其網頁化
    - 掃描圖片
        - 正在思考如何將圖片簡化成簡單地圖
    - 地圖輸入格式:
        - 牆壁轉角: 輸入n，後面接n行座標
        - 牆壁關係: n行，每行以k開頭，後面接k個點
        - AP位址:輸入n，後面接n行座標
    - AP、伺服器相關
        - 已成功取得學校同意與DEMO資料
        - 成功抓取到LOG關鍵資料
        - 正在研究API建立以及應用
        - 下一步開始調查AP位置等資料
        - AP穿透力太強，可能先不管，做就對了
## 3/18
- 目前進度
    - 建模:初步demo
        - [程式碼](https://github.com/Eggman-black/3d-modul.git)
    - 路徑規劃:因數據範圍不大，目前考慮使用bfs建好點間的邊，再利用dijkstra演算法求出最短路線
    - 未來規劃:
        - 製作成網頁，考慮使用JS製作，詳細技術正在學習中
- AP相關
    1. 如何在考慮資訊安全與隱私權的情況下有效處理資料(查詢裝置連線資訊的部分)
目前想法:在學校內搭建伺服器，負責處裡管理系統log/爬蟲資料，並處理島航網站querry。隱私部分:將使用者資訊Hash或是加密對伺服器發送查詢位置請求，伺服器將位置訊息加密回傳。
需要學習/資源:伺服器、加密傳輸相關知識
    2. 以確認學校採用fortigate系統並且fortigateLog支援紀錄裝置連線資料以及訊號強度等等訊息，在GUI與log皆會顯示。
參考資料:[6.4.1版本後支援訊號強度LOG](https://docs.fortinet.com/document/fortigate/6.4.0/new-features/52468/support-logging-the-signal-to-noise-ratio-and-signal-strength-per-client-6-4-1) 、[LOG reference(event)](https://docs.fortinet.com/document/fortigate/7.0.5/fortios-log-message-reference/398/event)。LOG部分還需研究，refernece還未全部看懂。想請教，log分析工具是否有幫助呢?
## 2/12
- [PPT]()
- 參考資料
    - [打造室內版Google Map ](https://hackmd.io/@teach-me-programming/S1Jq3a4yq)
- 會議記錄：
    - 目標：室內3D定位
    - 核心功能
        - 資料庫：
            - 可以用台科大的網路資料
            - 初期可自行定義資料格式
            - 可以先做好後面當demo，再去找學校，先做簡單的再慢慢補
        - 地圖：
            - 把AP當格點，要做的是串起來，會像一棵樹
        - 手機WiFi API抓資料
        - 路由演算法
    - 開發環境：python
        - [3D 繪圖](https://www.google.com/search?q=python+3D&oq=python+3D&aqs=chrome..69i57.9047j0j7&sourceid=chrome&ie=UTF-8)
    - 分工：
        - 林敬珣–演算法構思
        - 王兆偉–AP測試資料設計、協助算法設計
        - 陳炫佑–3D相關程式建構
    - 時程規劃與預期產出：3D功能先產出、最短路算法function、準備平面圖
    - 下次會議時間：3/12

## 1/?
- 第一次見面[PPT](https://docs.google.com/presentation/d/1GTfUytsyOkm790kNV1xoEIDSPxvsJxDA/edit?usp=sharing&ouid=116828752371320465019&rtpof=true&sd=true)
- 第一次[會議討論](https://hackmd.io/@teach-me-programming/S1SDJ58nt)

## 專案主題想法
https://hackmd.io/@teach-me-programming/Syot2oY9F

## 3/20預定討論內容與進度回報

3. 架構圖