Commit Graph

42 Commits

Author SHA1 Message Date
MedzikUser b56357c085
fix(server): change from task::spawn to thread::spawn
Changed to thread::spawn due to task::spawn spawn max 2 tasks (accept max 2 clients) if your cpu has 2 cores.
2022-09-14 21:03:49 +02:00
MedzikUser 032ec88ed6
chore: add some comments in code
Moved `PluginsManager` and `PluginsManagerType` from `servers::plugin::manager` to the `servers::plugin` module.
Added some comments in code.
Implemented function `into()` to the `PluginsManager` struct.
2022-08-22 13:23:08 +02:00
MedzikUser 501cbc74b7
fix(clippy): change `< 1` to .is_empty()
Replaced `args.len() < 1` with `args.is_empty()`.
2022-08-20 15:01:48 +02:00
MedzikUser d15ec0c93e
feat(command): add /broadcast
The `/broadcast` command has been added, which can send a message to all connected clients.
2022-08-19 22:27:42 +02:00
MedzikUser 9f66c2b9d2
fix(cli): update long arguments
Changed clap long attributes from --host to host and --port to port.
2022-08-19 12:16:02 +02:00
MedzikUser d31e0fff2f
fix(plugin): execute `on_load` function
Now function `on_load` will be executed if the plugin is loads.
Added span to the logger on TRACE level in plugin loader.
Fixed clippy warning from previous commit.
2022-08-17 22:05:27 +02:00
MedzikUser 67fb1a0a3c
feat(server): add `onCommand` event and handle errors in message processing
Added `OnCommand` event e.g. to disable command for client. (BREAKING CHANGES IN EVENT PLUGINS)
Added function for error handling in message process.
2022-08-17 21:44:06 +02:00
MedzikUser 7da5daf522
feat(client): HashMap add Mutex and functions
Changed map type in Client struct to Arc<Mutex<HashMap<String, ClientMapValue>>>.
Implemented functions insert_key, get_value and delete_key to the Client type.
Re-export servers::server::ClientMapValue in servers::plugins::prelude.
2022-08-17 15:40:11 +02:00
MedzikUser 97b19ae413
feat(tcp client): add tcp-client 2022-08-16 23:24:21 +02:00
MedzikUser f27df56c47
feat(plugins): implement events
- Events: onConnect and onSend now works
2022-08-13 12:06:53 +02:00
MedzikUser 6f7edf3d30
fix(clippy): rename module to fix clippy warning 2022-08-12 23:16:13 +02:00
MedzikUser 84eed33e24
docs: comment code 2022-08-12 23:12:29 +02:00
MedzikUser 25c2f0baa3
fix(id): fix add one to next id
- Fixed add one to next ID
- Added command /id
- Added `id` field to Client struct
2022-08-12 22:52:47 +02:00
MedzikUser d0120a0703
refactor: rewrite
- Better Client struct (TCP and WebSocket in one type)
- WebSocket is now not a proxy to tcp
- Use async-std instead a tokio
- Use Arc and Client type now have a Clone derive
- Add global CLIENTS list
2022-08-12 22:32:22 +02:00
MedzikUser 5fa16c6705 fix(lint): clippy warnings 2022-08-04 16:39:55 +02:00
MedzikUser 45a9fe605d
release v0.3.0 2022-08-04 16:36:38 +02:00
MedzikUser fc5afe56a1
feat(tcp client): add fn `peer_addr` 2022-07-29 22:10:49 +02:00
MedzikUser 3fb0a1132a
chore: some changes (more in the commit description)
- added `/disconnect` commands
- moved logger init function to other file
- updated command description
- the `/help` command has been accelerated
- re-export `async_trait` so that it doesn't have to be added to dependencies in plugins
2022-07-29 21:55:21 +02:00
MedzikUser e83a8360c2
chore: move struct Cli to other module 2022-07-29 12:12:13 +02:00
MedzikUser 796084d13e
chore: some changes
- add macros for Mutex (currently unused)
- change logger to tracing
2022-07-28 22:32:28 +02:00
MedzikUser f08093ecc7
chore(tcp): use tcp from tokio instead of std 2022-07-01 21:32:20 +02:00
MedzikUser 1abc3290d9
update 2022-06-26 12:59:48 +02:00
MedzikUser ab60315350
chore: update logger and save logs to file 2022-06-26 12:35:58 +02:00
MedzikUser 1ea6336c8f
update 2022-06-25 23:35:34 +02:00
MedzikUser 462524fc3e
doc: update readme 2022-06-25 21:41:25 +02:00
MedzikUser 65c828bb09
chore(websocket): add comments in code 2022-06-25 21:38:08 +02:00
MedzikUser 172c00bde1
feat(websocket): WS Client <-> TCP Proxy (default port 9998) <-> TCP (default port 9999) 2022-06-25 16:22:33 +02:00
MedzikUser ec574f3268
feat(plugins): add `Result<()>` in `fn execute()` (Event and Command traits) 2022-06-23 11:07:42 +02:00
MedzikUser b9af11c34e
doc: update 2022-06-21 12:33:13 +02:00
MedzikUser d4f7fb650b
fix: typo 2022-06-20 23:41:08 +02:00
MedzikUser 4f9baa4b76
feat(plugins-loader): improve a plugin loader 2022-06-20 23:22:45 +02:00
MedzikUser ebeec9adfa
doc: add `html_root_url` 2022-06-20 22:20:25 +02:00
MedzikUser 2c144ae14a
add missing doc and handle if client sent an empty buffer 2022-06-17 22:32:07 +02:00
MedzikUser f0c2d88764
ci: setup release build 2022-06-17 13:58:53 +02:00
MedzikUser 51440c98f9
doc: update documentation 2022-06-17 13:43:23 +02:00
MedzikUser f0fd1b1d2a
add event manager 2022-06-16 19:31:09 +02:00
MedzikUser 01f6ed8ad8
`Client` change `async fn` to `fn`, because `async` is not used 2022-06-05 23:13:14 +02:00
MedzikUser 5fbb153f8e
comment code 2022-06-05 22:10:23 +02:00
MedzikUser 969be3498b
refactor code and add debug and trace logger 2022-06-05 16:08:13 +02:00
MedzikUser 3975102736
refactor code 2022-06-04 21:34:53 +02:00
MedzikUser 4f002bb322
add plugin, comment code and setup ci 2022-06-04 20:10:21 +02:00
MedzikUser a91b0cb788
initial commit 2022-06-04 13:58:21 +02:00