Commit graph

151 commits

Author SHA1 Message Date
David Négrier b2bcfde5b1 Merge branch 'develop' of github.com:thecodingmachine/workadventure into upgrade_typescript_4.5 2021-12-16 16:07:17 +01:00
David Négrier 0c281db411 More eslint fixes (+ ignoring no-unsafe-argument rule for now) 2021-12-16 15:57:37 +01:00
David Négrier fa2e583d48 Reimporting correctly types moved to /messages 2021-12-16 10:04:41 +01:00
David Négrier 2fff6ae41e Improving code security by adding stricter typings 2021-12-14 18:55:58 +01:00
David Négrier 8a96ff8ee4
Merge pull request #1614 from ValdoTR/user-room-token
Added the user-room token created from admin when we access a room
2021-12-13 17:50:49 +01:00
Valdo Romao d523eee5bd Fixed pusher lint error 2021-12-13 16:22:59 +00:00
David Négrier 598c7412a2 When sending an invalid token, the HTTP API from the Pusher now returns a 401 instead of an HTTP 500. 2021-12-08 14:46:23 +01:00
David Négrier 1e6ce4dec8 Merge branch 'master' of github.com:thecodingmachine/workadventure into develop 2021-12-07 14:59:17 +01:00
David Négrier c27662c315 Merge branch 'develop' of github.com:thecodingmachine/workadventure into e2e_reconnect_tests 2021-12-06 18:07:47 +01:00
David Négrier d23a64d074 Fix sending empty variable message for users that have no right to read variable
When a user had no right to read a variable and the variable changed, the user was notified nonetheless with an empty SubMessage, causing an error message in the front:

> Uncaught Error: Unexpected batch message type onmessage RoomConnection.ts:181 RoomConnection.ts:181:30 onmessage RoomConnection.ts:181

This fix closes #1613
2021-12-03 16:07:42 +01:00
David Négrier 4cff230256 Creating only one WS connection to pusher from admin
Also: migration to Typescript 4.5 and µWebsockets 1.20.4
2021-12-01 20:14:53 +01:00
Valdo Romao 67fc6e8cd2 Fixed missing definition in FetchMemberDataByUuidResponse 2021-12-01 17:59:56 +00:00
Valdo Romao dd79f7d0f4 Added the user-room token created from admin when we access a room 2021-12-01 15:50:14 +00:00
David Négrier fcf0888864 Adding a reconnect feature in case first Pusher request fails
Now, if the first pusher request fails, a waiting message will be displayed and the application will reconnect when the pusher comes back alive or the network connection is established again.
2021-12-01 14:14:02 +01:00
Gregoire Parant 060c844468 Fix htag in localstorage
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-11-24 19:24:43 +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
grégoire parant 26fa566d85
Change 'access-control-allow-origin' to FRONT_URL env variavle (#1567)
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-11-17 02:21:58 +01:00
grégoire parant 75ba9ddae8
HotFix Allow Origin header for CORS (#1566)
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-11-16 18:38:18 +01:00
Gregoire Parant e54732be1b HotFix authentication manager to get data from back
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-11-16 14:46:32 +01:00
Gregoire Parant 8768374460 HotFix connexion manager
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-11-16 13:14:40 +01:00
Gregoire Parant c1dc438138 HotFix encrypted and decrypted error
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-11-16 11:14:27 +01:00
Gregoire Parant 20164417fb Change data by resCheckTokenAuth 2021-11-15 16:34:23 +01:00
David Négrier 4e042389c5 Merge branch 'master' of github.com:thecodingmachine/workadventure into develop
# Conflicts:
#	front/src/Connexion/ConnectionManager.ts
#	pusher/src/Controller/AuthenticateController.ts
#	pusher/src/Controller/IoSocketController.ts
#	pusher/src/Services/JWTTokenManager.ts
2021-11-15 16:30:45 +01:00
Gregoire Parant 210a789aa4 Fix feedback @moufmouf 2021-11-15 15:58:08 +01:00
Gregoire Parant 61b8d584af delete useless userIdentify 2021-11-15 14:34:23 +01:00
Gregoire Parant 16c08d86f2 Update hydraAccessToken to accessToken 2021-11-15 12:30:25 +01:00
Gregoire Parant 7d0b573d37 Define profile variable to show user connected
- OPID_PROFILE_SCREEN_PROVIDER is a variable to show profile of user connected. You can defined your own provider or use classic provider of WorkAdventure.
 - OpenIdProfileController with url "/profile" get user data and create simple html to show user informations. This url will be called with params 'accessToken'
 - If you define your custom profile url, it will be called with param 'accessToken'.

accessToken is token to access at user informations in your OpenId provider.
2021-11-12 20:48:26 +01:00
Gregoire Parant ca74f92051 Pull open id admin from @GRP 2021-11-12 16:59:34 +01:00
Gregoire Parant 213af0cfa3 Changes ANONYMOUS dynamic variable 2021-11-12 16:47:39 +01:00
Gregoire Parant fa233e13c6 Changes ANONYMOUS variable
This variable will be use to mandatory login user in self hosted
2021-11-12 16:43:37 +01:00
grégoire parant c1788424b5
Merge pull request #1533 from Lurkars/oidcRequired
use OIDC without admin api, option to disable anonymous login

Thanks for your work @Lurkars. I will take your changes and apply some update. When I will finish, I will  share you the result and requirement for mounting correct openid connection with puhser and without ADMIN part 💪  🚀
2021-11-12 16:39:15 +01:00
Gregoire Parant 89baafba2f Rollback openid connect to use code and nonce
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-11-09 00:08:01 +01:00
Gregoire Parant 4c028bfcb3 OpenId from Admin connect
- Create admin environment for redirect uri of openID
 - Add log out redirect when user click on log out button

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-11-08 19:27:01 +01:00
Alexis Faizeau dd89f12c2e Implement logger on pusher 2021-11-08 19:05:25 +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
Alexis Faizeau 934e24f837 Implement on enter/leave layer events 2021-10-29 19:44:58 +02:00
Kharhamel 6c78717d97 FIX: the admin sockets now uses a short live to check room authorization 2021-10-28 14:53:07 +02:00
Kharhamel d809682c08 HOTFIX: now uses a specific secret token for the admin sockets 2021-10-26 14:58:34 +02:00
Lurkars 78e0d1bead fix linter, cleanup 2021-10-21 16:53:24 +02:00
Lurkars 6832fe4990 use OIDC without admin api, option to disable anonymous login 2021-10-21 16:28:57 +02:00
Gregoire Parant f87422187f HotFix user data connection
Create local store for user connected in SSO

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-10-14 17:22:43 +02:00
Kharhamel 726f52976d FEATURE: analytics client now scrape user email and room group 2021-10-11 16:30:01 +02:00
grégoire parant 1e69bb0f49
Manage redirect URL from admin and save in hydra via pusher (#1492)
Add redirect parameter url to connect user directly on private openId application

Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-09-30 11:16:25 +02:00
Kharhamel d2bf7b8fde
Merge pull request #1465 from thecodingmachine/dependabot/npm_and_yarn/pusher/axios-0.21.2
Bump axios from 0.21.1 to 0.21.2 in /pusher
2021-09-23 18:36:34 +02:00
GRL78 3f1c5246f8
TO MERGE : Contact page from Admin or Environment Variable (#1401)
* Contact page from Admin or Environment Variable

* Get contact page from admin by pusher

* Changes requested

* Modify contactPageStore management

* documentation environment variables

Co-authored-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-09-21 20:24:53 +02:00
dependabot[bot] 62c163f11e
Bump axios from 0.21.1 to 0.21.2 in /pusher
Bumps [axios](https://github.com/axios/axios) from 0.21.1 to 0.21.2.
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v0.21.1...v0.21.2)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-20 12:34:04 +00:00
grégoire parant 8c96b514d4
HotFix to test hydra connexion (#1471) 2021-09-18 11:35:29 +02:00
grégoire parant 553902e52a
Add log for Oauth login connexion (#1468)
Signed-off-by: Gregoire Parant <g.parant@thecodingmachine.com>
2021-09-16 17:57:14 +02:00
David Négrier 05646718a9 Fix disconnects after 5 minutes in Chrome
This commit increases idle timeout for websocket connection

Issue: after 5 minutes of inactive tab (hidden tab) in Chrome, WorkAdventure was disconnected.

I believe Google was going in "intensive throttling" mode (see  https://developer.chrome.com/blog/timer-throttling-in-chrome-88/#intensive-throttling)
This means setTimeouts are run only once per minute.

And I believe the "keep alive" must be implemented with a "setTimeout" (one way or another even if I can't find a trace of this in the code). This would mean that the browser would send keep alive requests only once per minute.
But the pusher is configured to shut the connection after 30 seconds of idle activity.

Therefore, the pusher disconnects inactive Chrome tabs. By raising the Pusher idle timer to 2 minutes, we give a chance to Chrome to send a ping to the server in time (since Chrome won't send more than 1 ping per minute).
2021-09-10 18:30:36 +02:00