Commit graph

203 commits

Author SHA1 Message Date
David Négrier e9ca8721a6 Migrating userId to "int32" to save some space and adding userMoves message in protobuf 2020-09-18 13:57:38 +02:00
David Négrier 4b55b54a07 Adding first protobuf message exchange 2020-09-17 17:14:47 +02:00
David Négrier 9dd3d4bac8 Watching protoc in dev mode 2020-09-16 22:27:37 +02:00
David Négrier 2e8fa8d676 Adding protocol buffers to the project with Typescript support 2020-09-16 18:34:24 +02:00
David Négrier f6458a8335 Removing useless group callbacks at the World level 2020-09-16 16:13:47 +02:00
David Négrier 7410cc8a4b Fixing tests 2020-09-16 16:10:20 +02:00
David Négrier f5f9dcac04 Making groups part of zones 2020-09-16 16:06:43 +02:00
David Négrier 3a9196fb82 Merge 2020-09-16 11:41:03 +02:00
David Négrier 7e7b42ce19 Changing load test to run in circles 2020-09-16 09:31:44 +02:00
David Négrier d24ec0bd75 Plugin PositionNotifier into the main application. 2020-09-15 16:21:41 +02:00
David Négrier f8d462b0d7 Fixing "any" type 2020-09-15 10:10:35 +02:00
David Négrier 9b702c75e3 Adding batched messages + the notion of notifier / zones (not plugged in the system yet) 2020-09-15 10:06:11 +02:00
David Négrier b37a8f63be Moved benchmark to its own directory and added multicore testing + a README 2020-09-11 09:56:05 +02:00
Gregoire Parant d4fe59d154 Create config file artillery websocket 2020-09-09 12:32:01 +02:00
David Négrier 8968627d69 Adding Jitsi meeting in TCM maps 2020-08-31 14:23:31 +02:00
David Négrier 9351719873 Adding the notion of silent zone 2020-08-31 14:10:01 +02:00
David Négrier df7b5cc2e3 Adding a "silent" notion (triggered in Jitsi meets) 2020-08-31 14:03:40 +02:00
David Négrier 0a8ba37049 Adding Jitsi meet support 2020-08-31 12:18:00 +02:00
David Négrier 01319b50ca Adding a "openWebsite" property that opens websites when we walk over the zone. 2020-08-30 17:37:38 +02:00
David Négrier fca93663b4 Merge branch 'develop' of github.com:thecodingmachine/workadventure into outline 2020-08-24 18:15:44 +02:00
David Négrier 2ae19b9f30 Fixing build 2020-08-20 22:34:50 +02:00
David Négrier 27ffb6b13d Refactoring SimplePeer code: splitting Peer instantiation into 2 subclasses (VideoPeer and ScreenSharingPeer). This leads to way leaner code. 2020-08-20 16:56:10 +02:00
David Négrier 894f7c8009 Removing useless roomID parameter in WebRtcSignal message 2020-08-20 15:21:07 +02:00
David Négrier 0119534283 First version of screen-sharing that works when a user is joining a group after screen sharing begun. 2020-08-20 00:05:00 +02:00
David Négrier 6c5772e849 Fixing typipng in back 2020-08-18 15:31:42 +02:00
Gregoire Parant 4b72958193 Fix peer connexion for two player with screen sharing 2020-08-17 23:56:46 +02:00
Gregoire Parant a8f27e6084 Create event to start webrtc screen charing 2020-08-17 23:54:26 +02:00
Gregoire Parant a4f42111d7 Update screen sharing feature 2020-08-17 23:47:17 +02:00
David Négrier 6b970adc6c Merge branch 'develop' of github.com:thecodingmachine/workadventure into outline
# Conflicts:
#	front/src/Phaser/Game/GameScene.ts
#	front/src/Phaser/Player/Player.ts
#	front/src/index.ts
#	front/yarn.lock
2020-08-17 22:51:37 +02:00
David Négrier 84529d6e99 Propagating customized sprites all over the game 2020-07-28 17:45:55 +02:00
David Négrier ee612f6585 Adding event support to items 2020-07-27 22:36:58 +02:00
David Négrier d48d5b0285 Fix CS 2020-07-23 18:47:28 +02:00
David Négrier 2484e4f1df Moving maps to their own container 2020-07-23 18:43:51 +02:00
David Négrier ed146226cf Adding Outline capabilities and a ActionableItem notion. 2020-07-23 18:09:24 +02:00
David Négrier 82c57810a2 Removing host label from Prometheus because it is redundant 2020-06-29 23:01:52 +02:00
David Négrier 6412c56fcd Adding finally clause to make sure Prometheus indicators are ok 2020-06-29 22:56:41 +02:00
David Négrier 31846d1640 Using a Set for groups 2020-06-29 22:21:11 +02:00
David Négrier 4fee1ac206 Refactoring World and Group to use Map and Set instead of arrays 2020-06-29 22:10:23 +02:00
David Négrier 981fa84aa7 Mitigating problem when there is a synchronization issue between World and sockets list. 2020-06-29 19:16:15 +02:00
David Négrier 9bdcc9da98 Deleting world when empty. 2020-06-29 19:14:54 +02:00
David Négrier d736673169 Adding an entry point in first floor 2020-06-17 16:35:47 +02:00
David Négrier e1954c7ff9 Removing overlapping tiles between start and exit 2020-06-17 16:31:42 +02:00
David Négrier 928e486de5 Fixing token management 2020-06-10 12:32:39 +02:00
David Négrier a373626e24 Removing all "any" from back.
To do this, I used generic-type-guard package which generates both an interface AND a valid type guard from code.
With this, we are 100% sure that the messages we receive are validated at runtime!
The client cannot pass us an object that is invalid! \o/
2020-06-09 23:07:19 +02:00
David Négrier ac0b7a7361 Turning let into const where applicable 2020-06-09 15:54:54 +02:00
David Négrier 30ca47c2d8 Enabling stricter lint: forbidding usage of any
See #168
2020-06-09 15:51:14 +02:00
David Négrier 68dfed5fba Fixing Prometheus indicator 2020-06-09 13:53:33 +02:00
David Négrier c70da31e23
Merge pull request #163 from thecodingmachine/change_license
Changing license to AGPL + Commons Clause
2020-06-09 12:30:16 +02:00
David Négrier a15d74e6ce
Adding ARP as contributor 2020-06-09 12:13:51 +02:00
David Négrier af6924a27c Adding Prometheus metrics
This commit adds a '/metrics' endpoint in the API that can be exploited by Prometheus.

This endpoint returns:

- the number of connected sockets
- the number of users per room
- common NodeJS and system metrics

WARNING: this endpoint is public right now and should be protected
2020-06-09 11:49:23 +02:00