Changelog¶
0.1.7¶
- New icon: the same desk phone, now white on the dark tile and a little smaller, so it reads next to SwitchDesk's in the Dock instead of turning to grey mud at 64 pixels. App icon, favicon, banner, social preview and the screenshots are all redone.
0.1.6¶
- An update no longer fails when the phone doesn't answer the reboot request. GXP16xx 1.0.2.x reboots the moment it reads the request, before replying, so the job now waits to see whether the phone goes down and only gives up (with the Action URI hint) if it's still up after 90 seconds.
- A request that fails on the way to the phone is reported without its query string, so the admin password sent as
passcodeto the remote-control endpoints never appears in a job error or a toast. It did in 0.1.5 and older.
0.1.5¶
- Writing settings to GXP16xx phones on 1.0.2.x firmware failed with
malformed MIME header: missing colon: "#!/bin/ash", which stopped every firmware update and template on them at the first step. That firmware answersapi.values.postwith a line of its own script ahead of the HTTP headers; browsers skip it, Go's HTTP client refused the whole answer. PhoneDesk now reads past it.
0.1.4¶
- Delete works again: the library's delete button, Delete on phones, Remove on a phone's page, deleting templates and the "replace" import all asked with the browser's own confirm box, which the Mac window never shows, so the click quietly did nothing. They now ask with PhoneDesk's own dialog. Same for the version question after a download whose link doesn't say.
- GXP16xx and GXP21xx phones show their firmware, boot, core and base versions, MAC, address and uptime. Their status page answers with numbered keys (
P68for the program version,P67for the MAC, and so on) instead of named ones, so the Firmware page said "No phones read yet" for a fleet of GXPs and never offered an update. Uptime comes fromapi-get_timewhen the phone doesn't answer theuptimekey. - Images added as "GXP1625" or "gxp1625" land under the right family (
gxp1600), and an index with old entries is fixed when the library opens. - With the SSH relay as the firmware source, an image added to the library (file, release zip or download) is copied to the relay server right away, so the update itself doesn't wait on the copy. The library shows which images are on the relay, with Copy library to relay for everything at once and a retry on failed copies.
0.1.3¶
- Choosing the SSH relay as the firmware source now sticks. 0.1.2 quietly reset it to "this computer" on save, so the Firmware page kept showing the old source.
0.1.2¶
- Firmware updates for networks where the phones can't reach your computer: a fourth source, "a server the phones can reach, filled over SSH". PhoneDesk copies the image over SSH to a server on the phones' network (a FreePBX box's
/tftpboot, say) underphonedesk/<version>/, then points the phones at it over TFTP, HTTP or HTTPS. The copy is skipped when the same file is already there, the server's host key is pinned on first use, and Test relay in Settings checks the login and folder.
0.1.1¶
- GXP16xx and GXP21xx phones can be read: their firmware answers 403 Forbidden to API calls that don't carry the headers the phone's own web page sends (Referer, Origin), so PhoneDesk now sends them. A wrong password on these phones ("wrong3") is reported as a login failure.
- Every dashboard check can be switched off in Settings, grouped by area with its severity.
- An active account with nothing in it (the factory state of account 2 on many GXP phones) is no longer reported as having no SIP server; only an account with a user ID and no server is.
- Login works with firmware that sends the session id only as a cookie or as a plain string, HTTPS accepts TLS 1.0/1.1 and older cipher suites for old phones, and a login answer that isn't JSON is kept under Raw output with a clearer error.
0.1.0¶
First release.
- Dashboard with online/offline counts, registered accounts, and a problem list sorted by severity.
- Phones drawn with one LED per SIP account; live line state when Action URI support is on.
- Phone page: system facts, accounts, settings grouped by topic with their names, saved copies with compare and restore, a console for reading, writing and dialing, and raw output.
- Checks: offline, login failed, account not registered, account without a server, no active account, factory admin password, plain HTTP, Telnet and SSH open, no NTP, no syslog, DHCP option 66, newer firmware in the library, stale data, the same extension on two phones.
- Templates:
P-value = valuelines with a parameter picker, applied to many phones after a per-phone review, with an optional reboot. Export ascfg<mac>.xmlprovisioning files. - Extensions table across all phones.
- Firmware library (files or Grandstream download links), updates one phone after another with the phone's upgrade settings restored afterwards, and a choice of source: this computer, Grandstream's server, or your own.
- Network scan, bulk add, search with state words, bulk actions.
- Data folder of your choosing, export and import with a passphrase, update check against GitHub releases.