Commit Graph

3728 Commits

Author SHA1 Message Date
Efim Poberezkin
822c9bbd3a
clean up docs (#51)
* clean up docs

* restore simplex.md
2021-05-04 21:36:25 +01:00
Efim Poberezkin
eb44fb24e8
print chat version on start (#50) 2021-05-04 21:20:17 +04:00
Evgeny Poberezkin
bf86904e97 0.3.0 2021-05-04 08:47:02 +01:00
Evgeny Poberezkin
2b4399b57f
optionally show message integrity violations (#49)
* optionally show message integrity violations

* remove message integrity option
2021-05-04 06:37:30 +01:00
Evgeny Poberezkin
7ae6b64a99
change contact color (#48) 2021-05-03 21:44:50 +01:00
Evgeny Poberezkin
d9aee80b42
update simplexmq (#47) 2021-05-03 16:13:22 +01:00
Evgeny Poberezkin
103595a8e8
simplex-chat readme (#46)
* simplex-chat readme

* add convenience folders

* readme corrections

Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com>
2021-05-03 14:15:12 +01:00
Evgeny Poberezkin
9b3efbabbe Merge branch 'master' of simplexmq (README.md, Dockerfile) 2021-05-03 07:47:43 +01:00
Evgeny Poberezkin
734ca2977a rename readme.md to simplex.md 2021-05-02 22:17:45 +01:00
Evgeny Poberezkin
a1f86bf4a7 Merge branch 'master' (.github folder) of simplexmq 2021-05-02 21:37:18 +01:00
Evgeny Poberezkin
8938a71ac6 move workflows 2021-05-02 21:33:45 +01:00
Evgeny Poberezkin
577d593f67
package.yaml, chat dependencies (#45) 2021-05-02 21:26:25 +01:00
Evgeny Poberezkin
2362fd5d29 Merge branch 'master' of simplexmq 2021-05-02 20:42:28 +01:00
Evgeny Poberezkin
f7d561e9ea move chat files to src 2021-05-02 20:40:13 +01:00
Efim Poberezkin
539e09f8cd
docs, smp: align with implementation (#43)
* adjust out-of-band message abnf

* define hostname and encoded using prose-val

* elaborate on base64

* corrections up to SMP procedure

* fix CONN -> NEW

* update SMP protocol to align with the implementation

* remove Possible extensions from TOC

* lists

* corrections

Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com>
2021-05-02 19:15:40 +01:00
Evgeny Poberezkin
1c85c4a379
SMP agent protocol commands semantics (#44) 2021-05-02 18:47:16 +01:00
Evgeny Poberezkin
b992b00223 Merge branch 'master' into v2 2021-05-02 11:23:41 +01:00
Efim Poberezkin
6a589688c6 agent: verify msg integrity based on previous msg hash and id (#110)
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2021-05-02 00:38:32 +04:00
Evgeny Poberezkin
28b7d01117 reduce help size (#113) 2021-04-30 09:06:59 +01:00
Mark Aleksander Hil
8aaf0df8e7 Updated ChatHelpInfo (#112) 2021-04-29 10:27:07 +01:00
Evgeny Poberezkin
7b31fafc2d Store log (#108)
* StoreLog (WIP)

* add log records to map

* revert Protocol change

* revert Server change

* fix parseLogRecord

* optionally save/restore queues to/from store log

* refactor

* refactor delQueueAndMsgs

* move store log to /var/opt/simplex

* use ini file
2021-04-26 20:34:28 +01:00
Evgeny Poberezkin
88314ebadb set different default server (#107)
* set different default server

* remove comment
2021-04-26 20:18:20 +01:00
Efim Poberezkin
f061f72021
docs, smp, chore: remove multiline sentences line breaks; uniform lists (#42) 2021-04-19 23:14:40 +04:00
Evgeny Poberezkin
f767d1f8ff chat: add connection errors in chat, fix catch (#103) 2021-04-19 08:40:23 +01:00
Evgeny Poberezkin
bfa90b842f
duplex procedure, update diagram (#41)
* duplex procedure, update diagram

* reduce svg whitespace

* update svg
2021-04-18 07:34:47 +01:00
Evgeny Poberezkin
cc9b351c65
SMP agent protocol - duplex messaging (#39)
* duplex messaging commands syntax

* update duplex messaging commands

* update duplex commands/responses

* SMP messages between agents

* error for multiple skipped messages

* more syntax

* more syntax

* add diagram: creating duplex connection

* fix diagram link

* update diagram

* update duplex diagram

* add queue statuses to the diagram

* add "try sending" periods to duplex diagram

* diagram: queue status (receive/send)

* update queue status

* simplify duplex connection to only have two queues

* remove error notification sent to another agent, only notify user

* remove unused commands, add "unsubscribed" notification

* simplified commands and added connection invitation syntax

* update SMP agent protocol

* duplex protocol correction

* corrections (#40)

* SMP agent protocol

* rename duplex-messaging to agent-protocol

* minor fixes

* SMP agent protocol corrections

Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com>
2021-04-16 19:56:53 +01:00
Evgeny Poberezkin
4a5b5da3e2 Merge branch 'master' into v2 2021-04-14 21:30:30 +01:00
Efim Poberezkin
7503ee9a3a tests: block on tcp server creation (#99)
Co-authored-by: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
2021-04-14 02:25:57 +04:00
Evgeny Poberezkin
d6cd828257 remove /reset command (#96) 2021-04-12 23:56:17 +01:00
Evgeny Poberezkin
3778c308f7 new chat UX: removed /name, add /delete and /reset, change /accept to /connect, allow command abbreviations (#95)
* remove current user name

* rename /accept to /connect, remove /chat, add /reset, allow 1-letter abbreviations

* update help

* /delete contact, separate response for confirmation

* update invatation instruction

* unset active contact only if it is the same as current
2021-04-11 18:03:55 +01:00
Evgeny Poberezkin
6caab6f539 fix: initially blocked keys (#94) 2021-04-11 11:22:56 +01:00
Evgeny Poberezkin
7c6d67634c markdown help (#93)
* markdown help
2021-04-11 10:17:17 +01:00
Evgeny Poberezkin
bad7e7f20b fix left arrow key (#92)
* fix left arrow key

* remove LambdaCase
2021-04-11 09:55:57 +01:00
Evgeny Poberezkin
8fad84d3ec Secret markdown (#91)
* secret text markdown

* refactor
2021-04-11 09:54:14 +01:00
Evgeny Poberezkin
62281a62d7 fix multiline output (messages and help) (#90) 2021-04-11 09:51:57 +01:00
Evgeny Poberezkin
6f137d25bf refactor key handling (#88)
* refactor key handling

* remove constant change

* simplify

* refactor Downwards
2021-04-10 13:30:58 +01:00
Evgeny Poberezkin
e49bda7957 markdown tests (#86) 2021-04-10 13:12:28 +01:00
Evgeny Poberezkin
a819fcb86b support Home, End and Del keys (#87)
* add Home and End keys

* support Delete key

* simplify updateTermState
2021-04-10 12:53:22 +01:00
Evgeny Poberezkin
ee8814dd25 Windows support in editor mode (#85)
* use System.Terminal for "editor" mode (WIP, does not work in POSIX)

* fix getKey - only return one event on control keys

* fix printing with System.Terminal

* different markdown escape for color, added black color

* fix color escapes

* make black invisible

* markdown fixes

* remove Key type, fix editor bug, refactor

* refactor: use getKey in getTermLine

* default mode is "editor", remove windows warning

* markdown: code snippet

* use ! for color markdown

* edit previous input

* clean up

* use getWindowSize from System.Terminal
2021-04-10 11:57:28 +01:00
Efim Poberezkin
ef944226b2 automate changelogs (#84) 2021-04-09 18:20:09 +04:00
Evgeny Poberezkin
d0163ccd56 refactor chat terminal (#83) 2021-04-08 20:20:06 +01:00
Evgeny Poberezkin
bac96b4433 Markdown (#81)
* Markdown type

* Markdown parser (WIP)

* fix markdown parser

* style markdown in messages

* one-letter color abbreviations in markdown
2021-04-08 19:32:38 +01:00
Evgeny Poberezkin
b61b1e8384 Support windows terminal in basic mode (#80)
* add terminal package

* basic terminal mode with utf8 support in windows

* fix terminal input in basic mode on mac

* test code

* send StyledString to ChatTerminal

* clean up

* support StyledString with System.Terminal

* minor style change

* clean up

* minor style change
2021-04-07 20:20:32 +01:00
Evgeny Poberezkin
0ccde5871c transport encryption (#65)
* transport encryption (WIP - using fixed key, parsing/serialization works, SMP tests fail)

* transport encryption

* transport encryption: separate keys to receive and to send, counter-based IVs

* docs: update transport encryption and handshake

* transport encryption handshake (TODO: validate key hash, welcome block, move keys to system environment)

* change KeyHash type to newtype of Digest SHA256

* transport encryption: validate public key hash

* send and receive welcome block with SMP version

* refactor: parsing SMPServer

* remove unused function

* verify that client version is compatible with server version (major version is not smaller)

* update (fix) SMP server tests
2021-04-05 13:10:16 +01:00
Evgeny Poberezkin
578e06cd75 remove terminal mode "simple" (#78) 2021-04-03 21:53:16 +01:00
Evgeny Poberezkin
c1fdcfb906 enforce windows terminal mode to basic, warning message (#77) 2021-04-03 20:39:37 +01:00
Efim Poberezkin
4f20c23201 automate releases (#76) 2021-04-03 23:17:51 +04:00
Efim Poberezkin
31b0cf8a8e agent sqlite: initialize database in home directory by default (#74) 2021-03-29 19:18:54 +04:00
Efim Poberezkin
94c756adb5 agent sqlite: initialize database in home directory by default (#74) 2021-03-29 19:18:54 +04:00
Evgeny Poberezkin
251f453c91 readme: note on docker (#73) 2021-03-09 07:17:11 +00:00