Commit Graph

175 Commits

Author SHA1 Message Date
David Négrier
6540f15c5b
Refactoring Woka management (#1810)
* Wrap websockets with HyperExpress

* Add endpoints on pusher to resolve wokas

* getting textures urls from pusher

* Adding OpenAPI documentation for the pusher.

The pusher now exposes a "/openapi" endpoint and a "/swagger-ui/" endpoint.

* revert FRONT_URL

* playerTextures metadata is being loaded via Phaser.Loader

* fetch textures every time character or customize scene is open

* Heavy changes: refactoring the pusher to always send the textures (and the front to accept them)

* Sending character layer details to admin

* Cleaning commented code

* Fixing regex

* Fix woka endpoints on pusher

* Change error wording on pusher

* Working on integration of the woka-list with the new admin endpoint.

* Switching from "name" to "id" in texture object + using zod for woka/list validation

* Add position on default woka data

* Remove async on pusher option method

* Fix woka list url

* add options for /register

* Fxiing loading the Woka list

* Actually returning something in logout-callback

* Copying messages to back too

* remove customize button if no body parts are available (#1952)

* remove customize button if no body parts are available

* remove unused position field from PlayerTexturesCollection interface

* removed unused label field

* fix LocalUser test

* little PlayerTextures class refactor

* Fixing linting

* Fixing missing Openapi packages in prod

* Fixing back build

Co-authored-by: Hanusiak Piotr <piotr@ltmp.co>
Co-authored-by: David Négrier <d.negrier@thecodingmachine.com>

* Add returns on pusher endpoints

Co-authored-by: Alexis Faizeau <a.faizeau@workadventu.re>
Co-authored-by: Hanusiak Piotr <piotr@ltmp.co>
Co-authored-by: Piotr Hanusiak <wacneg@gmail.com>
2022-03-11 17:02:58 +01:00
Alexis Faizeau
4a5ef4ab86 Change group radius management 2022-01-14 13:54:55 +01:00
David Négrier
d6e8bd522f Fixing issue if group was deleted when out of bounds. 2021-12-24 14:07:29 +01:00
David Négrier
05bedf0c22 Adding an "out-of-bounds" notion for a group.
This allows hiding a group when some players are out of the radius but the group still exists because of the "follow" feature.
2021-12-24 13:21:44 +01:00
David Négrier
368a115b4c Merge branch 'develop' of github.com:thecodingmachine/workadventure into feat/follow-woka 2021-12-23 16:04:59 +01:00
David Négrier
3e91a79078 Upgrading eslint 2021-12-23 15:33:19 +01:00
David Négrier
482ba9690a Sharing outline color changes in real time 2021-12-22 18:34:36 +01:00
PizZaKatZe
f2e37b8cff Clean up now unused function in group model 2021-12-20 16:49:41 +01:00
PizZaKatZe
329f721998
Update back/src/Model/Group.ts
Co-authored-by: David Négrier <d.negrier@thecodingmachine.com>
2021-12-20 16:46:16 +01:00
PizZaKatZe
5c385c520a Cleanup; pretty 2021-12-18 11:45:17 +01:00
David Négrier
c96b65549f Performing proper cleanup when a user leaves 2021-12-18 11:34:20 +01:00
David Négrier
cd805fab31 Refactoring following code to make a distinction beween followed and following users.
Also, moving sending messages to the User class.
2021-12-18 11:34:20 +01:00
David Négrier
fd9cb09de6 Checking if a user should leave a group when someone moves in the group every time.
This fixes a long standing issue.
2021-12-18 11:34:20 +01:00
David Négrier
44ff9e30d5 Using id instead of name to identify other Wokas 2021-12-18 11:34:20 +01:00
PizZaKatZe
ab994183e5 Fix not following users getting "stuck" in groups 2021-12-16 21:26:30 +01:00
PizZaKatZe
2bd71790b5 Use user IDs instead of names 2021-12-15 18:42:24 +01:00
PizZaKatZe
e528682403 Use User.group instead of iterating over groups
Thanks @moufmouf for pointing this out.
2021-12-15 18:42:24 +01:00
PizZaKatZe
c2f5501236 Do not leave group when following is active 2021-12-15 18:42:24 +01:00
PizZaKatZe
0a410d289d Implement follow request / confirmation UI 2021-12-15 18:42:22 +01:00
PizZaKatZe
d6ef60a3d8 Send request to group members only 2021-12-15 18:41:37 +01:00
David Négrier
6e6cdc7bde
Revert "Improving log messages" 2021-11-24 16:20:07 +01:00
David Négrier
a1107bd20e Merge branch 'develop' of github.com:thecodingmachine/workadventure into improve_logging 2021-11-24 15:36:35 +01:00
David Négrier
a82f4e1813 Adding end-to-end tests
The first test is testing a tricky cache scenario with the back when testing variables.
The end-to-end package used is testcafe.
2021-11-23 15:43:34 +01:00
David Négrier
d8ecae64f0 Moving lastLoad initialization before we start loading to avoid loading several times 2021-11-23 09:34:39 +01:00
David Négrier
82a1a5fc1e Retry loading map on variable error
If the back is getting an error (because the user has no right to set a variable),
instead of failing directly, let's try to reload the map (maybe we have cached a wrong version of the map).
2021-11-22 18:43:56 +01:00
Alexis Faizeau
6a195be814 Implement logger on back 2021-11-08 17:44:57 +01:00
David Négrier
6c6a7e6fe4 Improving log messages
Signed-off-by: David Négrier <d.negrier@thecodingmachine.com>
2021-11-08 14:30:54 +01:00
Kharhamel
5255847452 FIX: if a conversion group move to another user, this user will be added to the group 2021-10-08 11:02:58 +02:00
David Négrier
4293ea320d Hotfix: if an error occurs while loading the map (because the map is not accessible from the WorkAdventure servers), the application does not prevent users from connecting. 2021-08-03 10:08:53 +02:00
Gregoire Parant
4b4356e7ff Merge branch 'master' into develop 2021-07-28 12:37:14 +02:00
grégoire parant
3d657b4a18
HotFix ban user (#1318)
* HotFix ban user

 - Fix to permit to ban user with more sub tab openned
 - Fix to permit to send message ban to the user with more sub tab oppened

* Fix CI

* Run pretty
2021-07-27 14:42:32 +02:00
Stefan Weil
64065b2798
Fix some typos (found by codespell) (#1316)
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2021-07-27 14:29:09 +02:00
David Négrier
2aba6b1c27 Fixing loop when setting variables
Setting a variable would makes the application enter in an infinite loop of events (between all the scripts and the back)
This fix makes sure a variable does not emit any event if it is changed to a value it already has.
2021-07-23 11:51:01 +02:00
David Négrier
1bb6d893e0 Simplifying promises 2021-07-21 18:23:03 +02:00
David Négrier
aa19e8a7cd Adding a warning when editing a map locally. 2021-07-21 16:29:38 +02:00
David Négrier
d955ddfe82 Adding support to persist variables in Redis 2021-07-19 16:23:16 +02:00
David Négrier
dbd5b80636 Adding support for "readableBy" and "writableBy" in back
This means that we are now loading maps from server side.
2021-07-19 10:16:43 +02:00
David Négrier
5c7ea7b258 Merge branch 'develop' of github.com:thecodingmachine/workadventure into scripting_api_room_metadata 2021-07-16 11:22:36 +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
kharhamel
3cfbcc6b02 FEATURE: migrated the chat window to svelte 2021-07-07 18:07:58 +02:00
David Négrier
e65e8b2097 First version with variables that actually work 2021-07-07 17:17:28 +02:00
David Négrier
a1f1927b6d Starting adding variables server-side 2021-07-06 15:30:49 +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
kharhamel
a1d52b4265 FEATURE: added the possibility toplay emotes 2021-05-19 15:17:03 +02:00
kharhamel
ce2c5e0cb5 FEATURE: added the env variable MAX_PER_GROUP 2021-04-15 15:50:51 +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