Jianhui Zhao
98023ee54d
update README
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-11 15:32:04 +08:00
Jianhui Zhao
c2caed9e9c
bump version 5.1.0
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-10 10:25:43 +08:00
Jianhui Zhao
e91b262a46
Add /counts API to get total device count
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-10 10:24:44 +08:00
Jianhui Zhao
35a1fe2913
ui: Implement direct paste functionality for terminal context menu
...
- Add pasteFromClipboard() method to enable direct clipboard paste
- Use Clipboard API with async/await for modern browser support
- Add fallback message for unsupported browsers or permission denied
- Add 'Pasted from clipboard' translations for English and Chinese
- Replace paste menu item action from showing instruction to actual paste
This allows users to paste content directly from the context menu instead
of requiring keyboard shortcuts, improving user experience.
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-10 09:45:31 +08:00
Jianhui Zhao
313c13271a
ui: Update clipboard copy message text
...
Simplify the copy success message from "Already copied to clipboard"
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-10 09:27:03 +08:00
Jianhui Zhao
7830a325f3
ui: Change message type from info to success in context menu actions
...
Replace $message.info() with $message.success() for copy, paste, and file
upload instructions in the terminal context menu to provide more positive
user feedback for these informational messages.
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-10 09:18:57 +08:00
Jianhui Zhao
86abb34a47
bump version 5.0.0
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-07 12:21:49 +08:00
Jianhui Zhao
a0bfc21d11
Refactor the message distribution process
...
To solve a major problem: when there are many devices connected,
the broker will blocked in processing messages.
By the way, I've rewritten and reorganized the entire code architecture,
improved performance.
Some new features has been added:
* support device grouping.
* support show device's IP address.
Change-Id: I250e18091be7fd42028c82767b6edef50b3f6d8f
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-07 12:21:36 +08:00
Jianhui Zhao
ff6cbda736
remove unused conf dev-auth-url in rttys.conf
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-04 17:17:03 +08:00
Jianhui Zhao
86420d878f
ui: remove tooltip for operation icon
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-04 11:44:59 +08:00
Jianhui Zhao
21c8e48baa
Optimize the code for processing command requests
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-03 17:03:08 +08:00
Jianhui Zhao
8f2ae9d6c9
remove unused variable devCertPool in broker struct
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-02 17:28:45 +08:00
Jianhui Zhao
af9eaa7cb4
api: Optimizing Static Resource Handling
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-02 12:54:43 +08:00
Jianhui Zhao
c45c5bf5bd
ui: Fix placeholder in RttyWeb.vue
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-02 09:12:12 +08:00
Jianhui Zhao
cefd50c5f8
ui: fix locale
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-07-01 20:11:55 +08:00
Jianhui Zhao
a68aa3c921
add support log panic while running in daemon mode.
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-27 16:52:22 +08:00
Jianhui Zhao
f43b71d1eb
Adjust the code structure of main.go
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-26 20:41:10 +08:00
Jianhui Zhao
6749ca9e46
fix memleak in httpProxyCons
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-26 18:34:34 +08:00
Jianhui Zhao
efb4c8a539
Remove built-in TLS support in favor of Nginx termination
...
This commit eliminates the native TLS implementation from rttys.
Going forward, TLS termination will be handled exclusively by
Nginx reverse proxy. Key changes include:
1. Removed all TLS-related configuration options
2. Deleted certificate handling and encryption logic
3. Simplified network stack to plain TCP only
4. Updated documentation to reflect new architecture
Rationale:
- Delegates TLS to specialized reverse proxy (Nginx)
- Improves security through separation of concerns
- Reduces attack surface of rttys core service
- Enables centralized certificate management
- Facilitates future scalability with proxy layer
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-26 15:07:01 +08:00
Jianhui Zhao
183aa31b2c
ui: fix placeholder for web proxy
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-26 11:57:29 +08:00
Jianhui Zhao
ef160cc70b
ui: remove compositionOnly: false
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-25 22:17:29 +08:00
Jianhui Zhao
a7db997ea7
ui: remove unused method in ContextMenu.vue
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-23 14:05:36 +08:00
Jianhui Zhao
c9097e95df
pretty ui title
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-23 12:19:47 +08:00
Jianhui Zhao
dd2e8351a5
Fix language following the browser.
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-23 12:18:56 +08:00
Jianhui Zhao
046ff5943d
remove some doc
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-23 09:03:55 +08:00
Jianhui Zhao
09c01dabd8
copy rttys.service to release
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-22 18:27:50 +08:00
Jianhui Zhao
eaf1c3960a
add expire for httpProxySessions
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-20 17:07:34 +08:00
Jianhui Zhao
33f82c789a
fix log for http proxy
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-20 16:56:16 +08:00
Jianhui Zhao
9a4d81ba71
close device if invalid msg type received.
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-20 16:12:13 +08:00
Jianhui Zhao
9dc80c91fc
ui: fix translate
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-19 22:34:58 +08:00
Jianhui Zhao
79401c60fb
ci: update github workflows
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-19 22:08:43 +08:00
Jianhui Zhao
a355893d09
chore: update README
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-19 16:04:21 +08:00
Jianhui Zhao
87a8e877f2
feat: update cli to github.com/urfave/cli/v3
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-17 22:39:17 +08:00
Jianhui Zhao
8f2cf21dfb
fix: Fix func GenUniqueID
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-17 22:39:17 +08:00
Jianhui Zhao
a1ba56b9df
docs: update README
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-17 22:39:17 +08:00
Jianhui Zhao
553b64be8b
refactor: remove command line for generate token.
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-17 22:39:08 +08:00
Jianhui Zhao
74f6b42933
fix: Fix typo
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-17 11:50:05 +08:00
Jianhui Zhao
68cfedf733
perf: improve sending PingMessage for web user
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-17 09:17:15 +08:00
Jianhui Zhao
2dffb56e8a
chore: remove readmex bage
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-16 20:22:46 +08:00
Jianhui Zhao
d926f0ac6c
perf: Improve file upload speed
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-16 19:52:21 +08:00
Jianhui Zhao
f51ddc75d7
chore: Delete irrelevant files generate-CA.sh
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-16 18:33:23 +08:00
Jianhui Zhao
3f41e57b66
feat: update some go packages
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-16 18:30:29 +08:00
Jianhui Zhao
5477976428
perf: Remove unnecessary atomic operations
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-16 16:39:32 +08:00
Jianhui Zhao
84707378e0
perf: improve device heartbeat
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-16 16:03:16 +08:00
Jianhui Zhao
c7592da63f
fix: Ensure the client is only close once
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-16 15:35:46 +08:00
Jianhui Zhao
5cca249873
fix: stop timer while handle register for device
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-16 14:58:55 +08:00
Jianhui Zhao
1c41f1d90e
feat(ui): More convenient access device web
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 18:07:43 +08:00
Jianhui Zhao
ba05ea6764
perf(ui): improve code via create a vue component RttyCmd
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 18:07:09 +08:00
Jianhui Zhao
a23267dd53
feat: Add option allow-origins
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
a6ae0322a6
feat: add an api /dev/:devid to get one device
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
41723aca41
perf: Optimize HTTP session management
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
8644fff049
perf: Optimize the device registration process.
...
Put most of the registration work into the device's
goroutine for processing.
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
166ef7e991
refactor: parse device messages using TLV.
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
7c5ebee190
style: Fix code style
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
a6b008ed6e
feat: more convenient to set the terminal font size.
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
8818c09d8d
feat: submit on keyup of enter in Login page.
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
cbfa9f8bd4
chore: use autofocus for el-input
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
f80ae5c7eb
feat: update all packages to latest
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
b0258a312b
perf: call device hook in goroutine
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
b5ba94e067
fix: Fix redundant if judgments in device register.
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
7f1ff94f83
chore: pretty Login page
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
0bfce6163a
fix: Fix device message length validation.
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
079c601ea5
refactor: Replace dev-auth-url with dev-hook-url
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:16 +08:00
Jianhui Zhao
7db180c749
refactor: password not required for execute command
...
Usually, commands are executed in batches on multiple devices,
but the password for each device is different. Therefore, the
password parameter is removed.
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-15 15:37:10 +08:00
Jianhui Zhao
ab87db1f7d
refactor: Remove device white list support
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-11 10:37:11 +08:00
Jianhui Zhao
b1e592f1fa
refactor: Remove database support
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-11 09:54:35 +08:00
Jianhui Zhao
6e896cac2b
refactor: Remove multi user support
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-11 09:37:53 +08:00
Jianhui Zhao
6a4b0a650c
refactor: Remove the fontsize API
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-10 20:05:14 +08:00
Jianhui Zhao
72ef7ee190
feat: add support use heartbeat interval from rtty client.
...
Change-Id: Ia86c1f87e8a72d49df960d3f4bc3d88a1ec7ee44
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-10 16:46:10 +08:00
Jianhui Zhao
306a812bbc
docs: Add badge of readmex and deepwiki
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-10 14:39:16 +08:00
Jianhui Zhao
a6a9f5934c
chore: more debug log
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-10 10:59:38 +08:00
Jianhui Zhao
68796db4e1
Update FUNDING.yml
2025-06-08 16:05:03 +08:00
Jianhui Zhao
abce7784fe
feat: bump version 4.4.5
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-05 15:46:33 +08:00
Jianhui Zhao
b6cbf55760
fix: Fix the device heartbeat detection mechanism
...
Abnormal logs appear in some environments.
```
Inactive device in long time
```
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-06-05 14:47:45 +08:00
Jianhui Zhao
d76b400fe7
feat: bump version 4.4.4
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-05-28 14:36:19 +08:00
Jianhui Zhao
16e0e4ed76
perf: replace ioutil.ReadAll with io.ReadAll
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-05-28 14:34:42 +08:00
Jianhui Zhao
bfefcdb0bd
perf: replace interface{} with any
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-05-28 14:25:18 +08:00
Jianhui Zhao
fb953b665e
perf: optimize JSON message construction using fmt.Appendf
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-05-28 14:16:59 +08:00
Jianhui Zhao
bb112787d0
fix: prevent concurrent map access with sync.Map
...
```
fatal error: concurrent map read and map write
```
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-05-28 14:08:37 +08:00
Jianhui Zhao
181815046c
chore: update FUNDING.yml
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-05-22 23:42:00 +08:00
Jianhui Zhao
f47120a41f
feat: bump version 4.4.3
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-05-12 11:37:20 +08:00
Jianhui Zhao
819dcbd00f
fix: Fix potential panic issue 9dfc856
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-05-12 11:35:10 +08:00
Jianhui Zhao
385a7bbc00
feat: bump version 4.4.2
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-04-25 16:22:21 +08:00
Jianhui Zhao
35a306dfd9
ci: use ubuntu-24.04
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-04-25 16:21:15 +08:00
Jianhui Zhao
9dfc856b74
fix: Fix potential panic issue
...
```
2025-04-24T06:59:56Z |INFO| New session: 81ee1ed4d12c3048620fbb2168c08257
2025-04-24T07:00:10Z |INFO| Delete session: 81ee1ed4d12c3048620fbb2168c08257
2025-04-24T07:00:17Z |INFO| New session: 427ce01b7f47a7ee8192cefdfa291c8f
2025-04-24T07:00:57Z |INFO| Delete session: 427ce01b7f47a7ee8192cefdfa291c8f
2025-04-24T07:01:55Z |INFO| New session: ffbfd5c596195c2bd43b8c0b6dc3d135
2025-04-24T07:01:57Z |ERRO| websocket: close sent
panic: send on closed channel
goroutine 33 [running]:
main.(*user).WriteMsg(0xc00037e680, 0x2, {0xc000188d10, 0xc, 0xc})
/home/runner/work/rttys/rttys/user.go:52 +0x8b
main.(*broker).run(0xc00035a000)
/home/runner/work/rttys/rttys/broker.go:227 +0xf34
created by main.runRttys in goroutine 1
/home/runner/work/rttys/rttys/main.go:86 +0x595
```
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-04-25 16:03:56 +08:00
Jianhui Zhao
13bc09c2c1
feat: bump version 4.4.1
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-23 12:27:52 +08:00
Jianhui Zhao
837cb8b188
fix: Fix panic due to send on closed channel
...
```
2025-01-23T12:19:46+08:00 |INFO| New session: bf1be06db4b7c04cb951e5cb90e60f3b
panic: send on closed channel
goroutine 8 [running]:
main.(*user).WriteMsg(0xc000342140, 0x1, {0xc000124050, 0x41, 0x50})
/mnt/wsl/work/rttys/user.go:52 +0x8b
main.userLoginAck(0x0, {0xf83100, 0xc000342140})
/mnt/wsl/work/rttys/user.go:75 +0xc9
main.(*broker).run(0xc000270c80)
/mnt/wsl/work/rttys/broker.go:212 +0xd91
created by main.runRttys in goroutine 1
/mnt/wsl/work/rttys/main.go:86 +0x595
exit status 2
```
Run this script to reproduce:
```
local websocket = require 'eco.websocket'
local ws, err = websocket.connect('ws://127.0.0.1:5913/connect/test')
if not ws then
print('failed to connect: ' .. err)
return
end
os.exit()
```
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-23 12:18:41 +08:00
Jianhui Zhao
2540677ce5
feat: bump version 4.4.0
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-16 17:08:19 +08:00
Jianhui Zhao
0e4c8acbe0
chore: add more debug log
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-16 17:07:08 +08:00
Jianhui Zhao
391096e7ae
feat: Update all golang dependencies.
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-16 12:25:49 +08:00
Jianhui Zhao
5e8bb12c6d
feat: add support set http-proxy-redir-domain in nginx proxy.
...
```
location /web/ {
proxy_set_header HttpProxyRedir http://web.your-server.com ;
proxy_set_header HttpProxyRedirDomain .your-server.com
proxy_pass http://127.0.0.1:5913 ;
}
```
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-16 11:21:16 +08:00
Jianhui Zhao
282f4452a9
docs: fix README
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-16 11:17:41 +08:00
Jianhui Zhao
9b923492e0
chore: pretty code style
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-16 10:40:36 +08:00
Jianhui Zhao
bd0138743f
chore: add more debug log
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-16 10:02:20 +08:00
Jianhui Zhao
5b24011243
fix(ui): Fix copy text from term.
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-15 18:14:48 +08:00
Jianhui Zhao
8847ff6c3c
feat: bump version 4.3.0
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-14 19:38:12 +08:00
Jianhui Zhao
58ac74caf2
feat: default listen tcp4 for http proxy
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-14 19:34:53 +08:00
Jianhui Zhao
7c915d80aa
chore: use golang.org/x/term
...
`golang.org/x/crypto/ssh/terminal` is deprecated,
this package moved to `golang.org/x/term`.
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-14 19:34:27 +08:00
Jianhui Zhao
9d157eb954
feat: add support set log level
...
```
rttys run --log-level debug
```
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-14 19:34:27 +08:00
Jianhui Zhao
c76c5335cb
chore: add more log
...
Signed-off-by: Jianhui Zhao <zhaojh329@gmail.com >
2025-01-14 19:34:01 +08:00