David Kebler
9ce3226f93
set up socket/server for TLS option
...
using command Socket Class extending either plain or tls server class
2019-01-05 15:16:13 -08:00
David Kebler
63beca4199
Added server push method. Pushes to any/all connected clients with id='pushed' which clients can listen for
...
Add jsdoc documenation to source and did a few experiments with doc generators
2019-01-01 16:53:12 -08:00
David Kebler
6a8c2b1fca
fixed initial timeout on connect rejection.
...
add in new option conPacket for pushing a packet to any connecting consumer from a socket/server
2018-07-31 17:17:39 -07:00
David Kebler
01c4756e26
with keepAlive set (by default) if the socket terminates the consumer will attempt to reconnect indefinitely
2018-07-30 19:07:03 -07:00
David Kebler
36d1cf629f
fix file delete (unlink) so catches error uses promise
2018-05-27 13:05:38 -07:00
David Kebler
949bd5b3b1
add client tracking on server side and push notification processin to both. Pushed packets have _header.id of 'pushed' and server has new push method
2018-05-24 12:28:30 -07:00
David Kebler
e2e59466be
upgrade to esm from @std/esm
2018-05-16 07:21:51 -07:00
David Kebler
1f45aec2fa
refactor options processing, remove opts.np
2018-03-02 08:34:10 -08:00
David Kebler
283957f641
fix bug with incoming packet cloning
2018-02-23 21:17:37 -08:00
David Kebler
8dd5f05582
change imports to npm from local paths
2018-02-17 18:26:17 -08:00
David Kebler
5ada8cd43a
cloned incoming socket side packet immediately before processing and copying over header.
2018-02-14 13:26:35 -08:00
David Kebler
450a85d8b9
switched to _header property for packet id
...
added sender and responder info to header
_header can now be used for anything specifically socket related
Fixed bug where socket must create a copy of processed packet to avoid issue when coder returns the original packet just altered from the packet processor
2018-02-13 13:51:58 -08:00
David Kebler
28768c8007
refactor send/write so send is async and will wait for reponse from socket.
...
write now makes sure to drain before allowing another packet write
refactored tests with new await send returning processed packet.
2018-02-12 17:10:41 -08:00
David Kebler
d3b979b1fd
catching errors in json stream serialize
...
added environment variable SOCKETS_DIR for socket directory
2018-02-11 19:58:22 -08:00
David Kebler
751491ee00
moved log options to top
...
refactor passed int opts (path no longer passed separately)
removed .packet property moving process to root property
and thus _packetProcess is private method for packet processing
re-export in index both Socket and Consumer as named and as props of default
refactor test and examples accordingly
2018-02-03 14:13:49 -08:00
David Kebler
bbc29317ee
swtich to pino logging with uci-logger module
2018-02-01 17:26:27 -08:00
David Kebler
40d9565bf3
fix tcp options handling error
...
add id property
use _ for private methods
2018-01-31 13:48:00 -08:00
David Kebler
3beb53d2a3
removed context processing from modules (will be done in uci-base)
...
added connection retry for consumer when connection to socket fails
refactored tests and examples to suit
Got a start on readme file
2018-01-30 17:49:31 -08:00
David Kebler
2d38eab240
alter to passed options to class to better support both tcp and unix sockets with same class
2018-01-29 21:38:46 -08:00
David Kebler
bb0ca93e43
make the class instance the default context for packet commands
2018-01-28 22:32:25 -08:00
David Kebler
1b846c4753
added packet property to hold processor and both local and added context in which to process packets for both socket and consumer
...
changed tests accordingly
2018-01-26 10:30:10 -08:00
David Kebler
ab56bddd72
improved and debugged packet processing with corresponding better more exhaustive testing
2018-01-23 16:02:56 -08:00
David Kebler
0f82f4aedd
fix app processor property that wasn't getting set
2018-01-22 12:18:34 -08:00
David Kebler
1fe0d71e0e
replaced stream processing with more robust processing using buffer length using new JsonStream class
2018-01-21 20:04:19 -08:00
David Kebler
9d6a562cda
improved/added example files
2018-01-20 14:30:21 -08:00
David Kebler
c7d25521e8
added dual consumer testing of socket
...
catch if consumeris already connected and continue
2018-01-20 13:52:07 -08:00
David Kebler
4b13cef73a
streamline class method binding and setting of packet processing function
2018-01-19 20:43:16 -08:00
David Kebler
57324c616c
added chunck processing into JSON packets using newline delimiter
...
fixed left unix socket file bug
improved some defaults handling
added custom packet processing for tcp vs unix
2018-01-19 09:35:15 -08:00
David Kebler
f0c6e96d02
added option for tcp socket so now module is just uci-socket. No authentification nor https at this point
2018-01-16 12:43:36 -08:00
David Kebler
2b14508d6f
added in test, passing. Added in bunyan logger
2018-01-13 20:46:14 -08:00
David Kebler
ae72d3af02
added handshaking from socket before finishing consumer connection, fixed async flow control issues, added in mocha test, improved passing of external app for packet processing
2018-01-10 20:33:39 -08:00
David Kebler
e5167c3995
basic working socket-consumer modules with no handshaking but passing json objects
2018-01-08 13:06:01 -08:00
David Kebler
0290ec99a7
changing to esm .mjs module from .js using @std/esm
2018-01-08 13:04:32 -08:00
David Kebler
c3e94b465e
initial commit
2017-12-21 15:50:05 -08:00