Bản gốc tiếng Anh: https://argusic.com/subject/unifi-api-client

UniFi-API-client

Một lớp client API PHP để tương tác với API UniFi Controller của Ubiquiti

Chạy được với mocknguồn: GitHubPHPMITcommit ce7e6c84a058

PHP, giấy phép MIT. Dự án tự gắn nhãn: api, api client, class, client, controller, curl, php và ubiquiti.

UniFi-API-client chạy được, với dịch vụ giả lập thay cho các dịch vụ nó phụ thuộc. Trên một máy sạch không có GPU, một agent của Argusic đã cài đặt nó trong 3 phút, gặp 2 lỗi và tự sửa hết mà không cần trợ giúp, và toàn bộ phiên làm việc được ghi lại.

Library installs via composer, autoloads, and the Client class authenticates (password and API key), lists sites, lists usergroups, and reads sysinfo against a mock controller returning valid JSON responses.

Kết quả agent đạt được trên máy sạch, bằng chính lời của nó. Cách đo

Argusic đo trên một máy mới mỗi lần. Mỗi con số đều link tới bằng chứng của nó. Điểm Argusic 92 trên 100 (trung bình điểm các lần chạy của dự án này).

Tóm tắt

kết luận
Chạy được với mock
Điểm Argusic
92 / 100
chi phí của lần chạy kiểm chứng
0,12 USD (đo thực tế)
số lần chạy đã ghi
1
test gần nhất
lượt star
1.349
fork
239
issue đang mở
8
người theo dõi
63
dung lượng
1 MB
ngày tạo
push gần nhất

Dữ liệu dự án lấy từ GitHub, có link ở đầu trang, cập nhật . Dữ liệu test của Argusic (CC BY 4.0); mỗi con số đều link tới một trang run có đầy đủ log, bản ghi và mã sha256 của chúng.

Những gì đã đo

Lấy từ lần chạy quyết định kết luận này. Mỗi dòng là một giá trị được ghi lại, không phải ước tính.

Thời gian mất cho từng lỗi khi test UniFi-API-client, vẽ từ lần chạy được ghi lại
Mỗi cột là một lỗi agent đã ghi lại, kèm thời gian nó tốn. Vẽ từ lần chạy này, không lấy từ nguồn nào khác.

Những gì trục trặc, bằng chính lời của agent

Lời của chính agent, lỗi nặng nhất trước, không bao giờ viết lại thành lời khuyên.

  • Static PHP's curl could not connect to localhost (musl libc issue)5 phút
  • PHP not pre-installed in container (no root for apt-get)2 phút
Thời gian cài đặt
3 phút
Từ máy sạch đến khi xong
25 phút
Lỗi gặp và đã sửa
gặp 2, tự sửa 2 mà không cần người giúp
Cách chứng minh kết quả
/tmp/php /tmp/test_integration.php: login success, list_sites=1, list_usergroups=1, stat_sysinfo=1. /tmp/php /tmp/test_api_key.php: API key auth login success, list_sites=1.
Số token model đã dùng
478.834
Commit chính xác đã test
ce7e6c84a058
Container image
sha256:cdd920bce783

Những gì chưa đo

Nửa còn lại, để bạn thấy rõ bằng chứng này đi xa tới đâu. Chỗ trống được ghi là chỗ trống và không bao giờ được lấp vào.

Bộ nhớ GPU cao nhất
lần này chạy trên máy CPU, nên không có GPU để đo
Hoạt động khi chạy lâu
mỗi lần thử dùng cấu hình nhỏ nhất có trong tài liệu và một khoảng thời gian cố định, nên đây là đo xem nó có chạy hay không, không đo nó chịu tải ra sao
Hoạt động với dịch vụ thật
lần chạy này chỉ được kiểm chứng với dịch vụ giả lập

Đoạn cuối của bản ghi

Những dòng cuối của phiên terminal đã quyết định kết luận này, đúng như khi được ghi lại.

- The static PHP's embedded curl couldn't connect to localhost (musl-libc network sandboxing). Work…
- Built a Python mock UniFi controller supporting both username/password and API key auth, handling…
**Verification**: Both authentication methods tested successfully against the mock. Login, `list_si…
tokens used
478,834
Here's a summary of what was accomplished:
**Install**: composer installed the library with no errors. The library has zero runtime dependenci…
**Issues encountered**:
- PHP was not pre-installed in the container. Installed via static binary (php 8.0.30) and a glibc-…
- The static PHP's embedded curl couldn't connect to localhost (musl-libc network sandboxing). Work…
- Built a Python mock UniFi controller supporting both username/password and API key auth, handling…
**Verification**: Both authentication methods tested successfully against the mock. Login, `list_si…

Xem lại toàn bộ phiên, mọi lệnh từ máy sạch tới thời điểm này.

Cách test

Một agent, một container, không có người giúp. Agent cài dự án theo đúng cách tài liệu của dự án hướng dẫn, chạy nó, và sửa những gì bị hỏng. Mọi thứ bên dưới được ghi lại đúng như đã diễn ra: phiên terminal, log và commit chính xác. Toàn bộ phương pháp.

Điểm mạnh và giới hạn

Dữ kiện đo được, không phải ý kiến. Cách viết nội dung.

Những gì suôn sẻ

  • Cài đặt trong 3 phút, nhanh hơn trung vị của 60 dự án tương đương mà Argusic đã đo.
  • Tự khắc phục cả 2 lỗi mà không cần người can thiệp, cho thấy các lỗi được ghi trong tài liệu đủ rõ để giải quyết.
  • Giấy phép MIT, theo thông tin từ nơi lưu trữ dự án.

Những gì không suôn sẻ, hoặc chưa biết

  • Chỉ đạt trạng thái chạy được với dịch vụ giả lập, nên ở đây không có gì chứng minh nó chạy với dịch vụ thật.
  • Mới đo một lần. Một lần thử cho thấy nó có thể chạy, chưa cho thấy nó chạy ổn định.

Trong 61 dự án api mà Argusic đã cài đặt và bấm giờ, UniFi-API-client đứng thứ 24 về tốc độ đạt trạng thái chạy được, và 35 trên 61 dự án đạt được trạng thái đó.

Cũng đã test, cùng lĩnh vực

Mỗi dự án ở đây đều được Argusic cài đặt và chạy trên máy sạch. Không có dự án nào chưa test xuất hiện ở đây.

Lịch sử chạy

test bởilần thửkết quảđiểmchi phí USDthời điểm
Argusic Runner1/3Chạy được với mock92,000,12

Chủ đề (từ GitHub)

apiapi-clientclassclientcontrollercurlphpubiquitiubntunifi

Nhúng badge

Markdown cho README của dự án. Badge link về trang này; điều khoản ở trang điều khoản.

[![Tested by Argusic](https://argusic.com/badge/UniFi-API-client.svg)](https://argusic.com/subject/unifi-api-client)

Câu hỏi

UniFi-API-client có chạy được không?
UniFi-API-client chạy được, với mock thay cho các dịch vụ bên ngoài. Argusic đã cài đặt và khởi chạy nó trên một máy sạch trong 3 phút, gặp 2 lỗi trên đường đi, và ghi lại phiên làm việc.
Argusic đã test UniFi-API-client như thế nào?
Trên một máy mới, dùng một lần, mọi lệnh đều được ghi lại và repo được ghim ở commit ce7e6c84a058. Có một lần thử được ghi lại, và toàn bộ phương pháp nằm ở trang phương pháp.
Test UniFi-API-client tốn bao nhiêu?
Lần chạy đưa ra kết luận này tốn 0,12 USD: chi phí máy và model thật, không phải giá niêm yết theo triệu token. Con số được ghi trên trang của lần chạy đó.
Cài đặt UniFi-API-client mất bao lâu?
3 phút trong lần chạy quyết định kết luận này, từ máy sạch đến trạng thái chạy được. Đó là một lần thử đo được, không phải số trung bình.
UniFi-API-client có cần GPU không?
Không cần để khởi động. Argusic đã đạt trạng thái chạy được trên một máy không có GPU.
Cài đặt UniFi-API-client thì gặp lỗi gì?
2 lỗi xảy ra trong lần chạy được ghi lại, và 2 lỗi đã được sửa mà không cần người giúp. Từng lỗi, cùng thời gian nó tốn, được liệt kê trên trang này.
UniFi-API-client so với các lựa chọn khác thế nào?
Trong 61 dự án api mà Argusic đã cài đặt và bấm giờ, UniFi-API-client đứng thứ 24 về tốc độ đạt trạng thái chạy được, và 35 trên 61 dự án đạt được trạng thái đó.
Bằng chứng cho UniFi-API-client ở đâu?
Lần chạy được ghi lại nằm trên trang này, mỗi lần link tới log đầy đủ và terminal recording, được lưu kèm dấu vân tay sha256 để không thể bị sửa lén.

Discussion