Commit graph

199 commits

Author SHA1 Message Date
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
David Négrier 91ce318848 Changing license to AGPL + Commons Clause
This is an important change.
So far, the project was labelled as licensed under the "AGPL" (improperly since no version of the AGPL was specified)

This commit changes the license to "AGPL + Commons Clause"

The [common clause](https://commonsclause.com/) is an additional restriction forbidding companies from taking WorkAdventure of the shelf, and reselling WorkAdventure.

This license does not forbid anyone from installing and using WorkAdventure, it only targets resellers (so SAAS exploitation of WorkAdventure is limited to TheCodingMachine).

This effectively makes WorkAdventure non open-source, but the source-code remains available for anyone to see and modify.
2020-06-09 10:17:21 +02:00
David Négrier 69cfac290d Improving logs (adding date) 2020-06-09 09:30:12 +02:00
David Négrier db3ef81842 Adding the ability to add several entry points
We can now have several start layers and choose an entry point using a # in the URL
2020-06-07 13:23:32 +02:00
David Négrier d630106ff0
Merge pull request #155 from thecodingmachine/fixing_long_disconnect
Fixing disconnection taking ~15 seconds
2020-06-06 22:47:24 +02:00