Commit Graph

56 Commits

Author SHA1 Message Date
David Négrier
a4a123c331 Admin /api/map endpoint return type is now generated with generic type guards 2021-07-16 10:46:45 +02:00
David Négrier
c9fa9b9a92 Migrating away from the notion of public/private URL in WorkAdventure Github repository
The notion of public/private repositories (with /_/ and /@/ URLs) is specific to the SAAS version of WorkAdventure.
It would be better to avoid leaking the organization/world/room structure of the private SAAS URLs inside the WorkAdventure Github project.

Rather than sending http://admin_host/api/map?organizationSlug=...&worldSlug=...&roomSlug=...., we are now sending /api/map&playUri=...
where playUri is the full URL of the current game.
This allows the backend to act as a complete router.
The front (and the pusher) will be able to completely ignore the specifics of URL building (with /@/ and /_/ URLs, etc...)
Those details will live only in the admin server, which is way cleaner (and way more powerful).
2021-07-15 17:07:47 +02:00
David Négrier
34cb0ebf39 Users blocking now rely on UUID rather than ID
This way, if a user A blocks another user B, if user B refreshes the browser or leaves and re-enters the room, user B will still be blocked.
As a side effect, this allows us to completely remove the "sockets" property in the SocketManager on the Pusher.
2021-07-07 11:24:51 +02:00
jonny
65cefb3584 fixed invalid unauathorized handler 2021-07-01 15:50:40 +02:00
David Négrier
3e464580ea Fixing eslint ignore broken by Prettier 2021-06-24 10:23:32 +02:00
David Négrier
10c3d6dee2 Applying Prettier on pusher and back 2021-06-24 10:09:10 +02:00
kharhamel
dd45996f9c FIX: improved the visit card, cleanup the code 2021-06-08 16:39:22 +02:00
kharhamel
c5f3cfe87c FEATURE: clicking on another player show a contact card when possible 2021-06-03 17:58:21 +02:00
grégoire parant
2b13b764b4
Public texture (#1093)
* Public texture

 - Front => Get texture when user connected on public method
 - Front => Anonymous login will be make every connexion to get map details
 - Pusher => `/anonymLogin` permit to get map details and public texture load in customize scene

* Improve texture local user

- Permit to keep previous texture get with 'register' link

* Texture public loading

 - Texture will be load with Room class
 - Fix issue on lazzy loading atttempt

* Remove async await useless
2021-06-03 13:07:52 +02:00
kharhamel
595c5ca64d now use custom emotes with tweens instead of transistions 2021-05-25 16:37:24 +02:00
kharhamel
35b37a6a88 Added a radial menu to run emotes 2021-05-19 15:17:50 +02:00
kharhamel
a1d52b4265 FEATURE: added the possibility toplay emotes 2021-05-19 15:17:03 +02:00
David Négrier
3c9d477c06 Improving error messages
Trying to put more expressive and helpful error messages for the end user.
2021-04-30 09:33:18 +02:00
grégoire parant
925545d74f
Add error message (#970)
- Error link not found
 - Error user was banned
 - Error access dinied on the world
2021-04-29 23:47:30 +02:00
kharhamel
5ebb0c94e6 FIX: calling emitPlayGlobalMessage in pusher without the admin tag will throw an error 2021-04-14 11:56:54 +02:00
Johannes Berthel
e5a196a42b implemented feedback 2021-04-06 18:54:45 +02:00
Johannes Berthel
4aa082d83b Merge branch 'develop' into feature/player-companion 2021-04-02 23:40:30 +02:00
Johannes Berthel
c07079051a transmit companion to remote players 2021-04-02 21:21:11 +02:00
kharhamel
88cc15cd02 FEATURE: editing a room in the admin trigger a refresh system 2021-04-02 15:22:02 +02:00
David Négrier
cd7a332b4c Improving error throwing and handling in pusher/admin/front 2021-03-31 15:49:01 +02:00
kharhamel
886daebfea improved the unloading process to not create a useless socket 2021-03-26 14:19:37 +01:00
kharhamel
f90046459e FIX: fixed a error in the validation of receiveGlobalMessagePrompt in pusher/AdminController 2021-03-24 14:35:20 +01:00
kharhamel
8d6c1a50bf FEATURE: warning message when world is near full capacity 2021-03-23 17:44:47 +01:00
kharhamel
fe8c75610d FIX: player anims correctly stop on the idle frame 2021-03-11 16:21:02 +01:00
Gregoire Parant
59c310d0a8 Update to optimize maintainability of the code 2021-03-11 12:17:37 +01:00
Gregoire Parant
2fcb8a76b1 Merge branch 'master' into develop
# Conflicts:
#	front/src/Connexion/RoomConnection.ts
#	front/src/Phaser/Menu/ReportMenu.ts
2021-03-11 02:22:05 +01:00
Gregoire Parant
46cb9333e6 HotFix message in back 2021-03-11 01:25:36 +01:00
David Négrier
a28fcbb9e6 Catching error when JWT token cannot be generated to avoid crashing Pusher 2021-03-10 09:41:54 +01:00
kharhamel
8abc34c631 FEATURE: the connexion error an user can get when a world is full is now correctly traited. Also remove a redundant adminApi call 2021-03-09 16:34:19 +01:00
kharhamel
ad7e16c33b FEATURE: better implementation of the admin global message 2021-03-04 16:18:06 +01:00
Gregoire Parant
915d945dd5 Fix ci 2021-03-01 22:32:50 +01:00
Gregoire Parant
30f4793342 Update private access 2021-03-01 22:21:52 +01:00
PizZaKatZe
d7b0cb83de Fix workadventure_nb_clients_per_room in pusher 2021-02-10 00:03:42 +01:00
Gregoire Parant
7eb38fae83 Permit puiblic report
- Create report html
 - Add report flag
2021-01-29 21:09:10 +01:00
Thomas Basler
d79a18ee81 Removed unused URL_ROOM_STARTED variable from pusher and back 2021-01-20 22:56:24 +01:00
David Négrier
4df200c6c0 Switching ban by IP to be world specific 2021-01-18 16:41:36 +01:00
David Négrier
0d4808231a Linting code 2021-01-18 15:43:27 +01:00
David Négrier
d1222e4440 Refactoring admin messages 2021-01-18 15:07:40 +01:00
David Négrier
4234b38910 Better error message in case of 404 2021-01-17 22:40:54 +01:00
David Négrier
48c3f951bf Correctly forwarding HTTP error status code from admin to front 2021-01-17 20:42:45 +01:00
David Négrier
a5aa9b6cf9 /map now returns the correct error status code 2021-01-17 20:42:45 +01:00
Gregoire Parant
0bbaef0cb5 Fix send message and ban message 2021-01-17 03:07:46 +01:00
Gregoire Parant
74d0594246 Fix feedback @moufmou 2021-01-16 20:14:21 +01:00
Gregoire Parant
b1f8522c05 Create ban feature by admin console 2021-01-15 03:19:58 +01:00
Mewp
4be009d5a1 Add a PUSHER_HTTP_PORT configuration variable.
Some deployments might not be based on docker, and not on separate
hosts. In such cases, it would be useful to be able to configure the
port pusher listens on.
2021-01-04 18:23:33 +01:00
David Négrier
aeb5dc7922 Add scaling capability to the API servers with this one weird trick
:) This allows spreading rooms on different API servers based on room name.
Note this does provide neither autoscaling nor high availability, but it provides some kind of load balancing.
2020-12-14 22:20:43 +01:00
David Négrier
eec84d13cf Code cleanup 2020-12-11 16:47:59 +01:00
David Négrier
6f2c319785 Merge branch 'master' of github.com:thecodingmachine/workadventure into scaling
# Conflicts:
#	back/src/Services/SocketManager.ts
#	deeployer.libsonnet
#	docker-compose.yaml
#	front/src/Connexion/RoomConnection.ts
#	front/src/Enum/EnvironmentVariable.ts
#	front/src/Phaser/Game/GameScene.ts
#	front/webpack.config.js
#	pusher/src/Controller/IoSocketController.ts
2020-12-11 13:00:11 +01:00
David Négrier
ea3aa3d128 Reimplementing ban/unban/messages 2020-12-11 12:23:50 +01:00
David Négrier
24cb85cc7c Adapting admin connection to pusher.
Done: onUserLeave / onUserEnter
To be done: ban / unban
2020-12-10 17:46:15 +01:00