Commit Graph

1187 Commits

Author SHA1 Message Date
895ba36cb9 fix: modal upgrade (#421) 2024-10-01 16:39:24 +02:00
10250b1d1a Merge pull request #420 from Monadical-SAS/filter-rooms-by-user
Filter rooms by user
2024-09-26 18:32:52 +02:00
08b046095f Filter rooms by user 2024-09-26 16:54:36 +02:00
8702aaf492 Merge pull request #419 from Monadical-SAS/unique-room-names
Make sure room names are unique
2024-09-25 13:38:40 +02:00
3ba3192800 Fix api error handling 2024-09-25 13:30:58 +02:00
83857507ea Make sure room names are unique 2024-09-25 13:13:18 +02:00
9dec492b2f Merge pull request #417 from Monadical-SAS/load-all-rooms
Load all the rooms
2024-09-24 17:51:13 +02:00
857cf2550a Load all the rooms 2024-09-24 16:37:20 +02:00
3a4986e07b Merge pull request #416 from Monadical-SAS/replace-streams-json
Replace streams json
2024-09-24 15:46:29 +02:00
b8d4be1fac Remove update streams aws lambda 2024-09-24 15:28:23 +02:00
de8544a126 Update room config zulip streams 2024-09-24 15:22:43 +02:00
901de8c009 Replace streams json 2024-09-24 14:54:44 +02:00
5267ab2d37 feat: retake summary using NousResearch/Hermes-3-Llama-3.1-8B model (#415)
This feature a new modal endpoint, and a complete new way to build the
summary.

## SummaryBuilder

The summary builder is based on conversational model, where an exchange
between the model and the user is made. This allow more context
inclusion and a better respect of the rules.

It requires an endpoint with OpenAI-like completions endpoint
(/v1/chat/completions)

## vLLM Hermes3

Unlike previous deployment, this one use vLLM, which gives OpenAI-like
completions endpoint out of the box. It could also handle guided JSON
generation, so jsonformer is not needed. But, the model is quite good to
follow JSON schema if asked in the prompt.

## Conversion of long/short into summary builder

The builder is identifying participants, find key subjects, get a
summary for each, then get a quick recap.

The quick recap is used as a short_summary, while the markdown including
the quick recap + key subjects + summaries are used for the
long_summary.

This is why the nextjs component has to be updated, to correctly style
h1 and keep the new line of the markdown.
2024-09-14 02:28:38 +02:00
6c4eac04c1 fix: prevent unattended reloading on transcript page (#410) 2024-09-11 02:35:33 +02:00
50ad721afa fixes: missing include_topics in the get_zulip_message() (#409) 2024-09-06 23:36:08 +02:00
75411820b5 Merge pull request #408 from Monadical-SAS/update-zulip-message
Update zulip message
2024-09-06 18:30:14 +02:00
a85a1ea3d1 Send message if the original is missing 2024-09-06 18:10:38 +02:00
d04e617607 Remove nextjs zulip api 2024-09-06 17:31:09 +02:00
6d976044d0 Update zulip message 2024-09-06 16:09:44 +02:00
db714f6390 fix: unattended component reload due to session changes (#407)
* fix: unattended component reload due to session changes

When the session is updated, status goes back to loading then
authenticated or unauthenticated. session.accessTokenExpires may also be
updated.

This triggered various component refresh at unattented times, and brake
the user experience.

By splitting to only what's needed with memoization, it will prevent
unattented refresh.

* review

* review: change syntax
2024-09-05 18:46:47 +02:00
c5f7fcc06b Merge pull request #406 from Monadical-SAS/opt-out-of-recording
Opt out of recording
2024-09-05 15:08:33 +02:00
7587499844 Opt out of recording 2024-09-05 15:04:49 +02:00
15c95d6bfa Remove new meeting button 2024-09-05 14:01:03 +02:00
833a5d1191 fix: sso refresh token race condition (#405)
With NextAuth, there is a race condition of the current implementation
of refreshToken using multiple tab. Because getSession() is broadcasted
(or triggered by another component, window focus or such), we may ask
for the jwt() to be refreshed at the same time.

The problem is the first time will go correctly, while all others calls
will be rejected as they are using a revoked token.

This redis lock is per-user, and will use redis lock as a source of
truth.
2024-09-05 00:47:02 +02:00
6aab6ac3fa fix: fix global layout overscroll + link colors (#404) 2024-09-04 17:26:23 +02:00
c80d59e23f Merge pull request #403 from Monadical-SAS/room-config
Room config
2024-09-04 13:58:29 +02:00
6c76ec57f2 Update metadata url 2024-09-04 13:33:34 +02:00
f5f8992b79 Automatic recording by default 2024-09-04 12:57:05 +02:00
5c89a07996 Room config 2024-09-04 12:34:28 +02:00
42796d7d3f fix: rework main page to use Chakra, and a little bit of the browse page (#402) 2024-09-04 03:27:20 +02:00
873cbb0a42 fix: user migration confusion with user_id (#401)
+ added tests
2024-09-03 22:07:36 +02:00
a358bfadf1 fix: user.get does not exist 2024-09-03 13:08:36 -06:00
03561453c5 feat: Monadical SSO as replacement of Fief (#393)
* sso: first pass for integrating SSO

still have issue on refreshing
maybe customize the login page, or completely avoid it
make 100% to understand how session server/client are working
need to test with different configuration option (features flags and
requireLogin)

* sso: correctly handle refresh token, with pro-active refresh

Going on interceptors make extra calls to reflector when 401.
We need then to circle back with NextJS backend to update the jwt,
session, then retry the failed request.

I prefered to go pro-active, and ensure the session AND jwt are always
up to date.

A minute before the expiration, we'll try to refresh it. useEffect() of
NextJS cannot be asynchronous, so we cannot wait for the token to be
refreshed.

Every 20s, a minute before the expiration (so 3x in total max) we'll try
to renew. When the accessToken is renewed, the session is updated, and
dispatching up to the client, which updates the useApi().

Therefore, no component will left without a incorrect token.

* fixes: issue with missing key on react-select-search because the default value is undefined

* sso: fixes login/logout button, and avoid seeing the login with authentik page when clicking

* sso: ensure /transcripts/new is not behind protected page, and feature flags page are honored

* sso: fixes user sub->id

* fixes: remove old layout not used

* fixes: set default NEXT_PUBLIC_SITE_URL as localhost

* fixes: removing fief again due to merge with main

* sso: ensure session is always ready before doing any action

* sso: add migration from fief to jwt in server, only from transcripts list

* fixes: user tests

* fixes: compilation issues
2024-09-03 19:27:15 +02:00
28fe6c11f7 Merge pull request #399 from Monadical-SAS/fullscreen-rooms
Fullscreen rooms
2024-09-02 15:43:48 +02:00
b84efd1c61 Refactor getConfig calls 2024-09-02 12:16:06 +02:00
e01a4dbd9a Get config domain from env var 2024-09-02 12:03:45 +02:00
bda4e1cdc0 Redirect to past meeting authenticated users 2024-09-02 11:51:58 +02:00
2b157c7c8a Show fullscreen room 2024-09-01 01:26:15 +02:00
b019e81b9b Remove domain segment 2024-09-01 01:20:00 +02:00
83756116a6 Update packages 2024-08-30 21:26:11 +02:00
72e23cdd23 Merge pull request #397 from Monadical-SAS/shorter-room-urls
Shorten room urls
2024-08-30 12:59:10 +02:00
14212c802d Shorten room urls 2024-08-30 12:38:14 +02:00
dc609e2fd4 Merge pull request #395 from Monadical-SAS/fix-transcript-url
Fix transcript url
2024-08-28 14:44:03 +02:00
bd965cc5a1 Fix transcript url 2024-08-28 14:41:22 +02:00
347abe2061 Merge pull request #394 from Monadical-SAS/zulip-auto-post
Zulip auto post
2024-08-28 13:56:34 +02:00
f7d2cdea2a Fix linting 2024-08-28 13:44:24 +02:00
2e7ae9a6ab Celery task for posting 2024-08-28 13:42:08 +02:00
c2595b616b Zulip auto post 2024-08-27 01:04:04 +02:00
c76d2ba1c6 Merge pull request #390 from Monadical-SAS/redirect-rooms-to-login
Redirect rooms to login
2024-08-22 22:56:34 +02:00
ef29913036 Redirect rooms to login 2024-08-22 22:53:35 +02:00