 Thanks, Mike. Hi, this is Fat. I am a software developer from platform team Hedgehog I'll do a little bit of demo of the working part of the matrix whatever we have worked so far. So I'll just share my screen Can everyone see my screen? Okay, it's presenting. Can everyone see? Yep. Awesome. Perfect. All right so first demo, I'll be showing you a little bit of some workflow of a teacher some of the somehow happens for your students stuff like that and also how A teacher goes through and creates and sets of their communication instance stuff like that So this is the first user. I'm gonna show you so this is Leah Baker who is actually a teacher So let's say Leah has a Has an existing course which is winter semester So I go into the course and I can see there is a there is a there is a communication instance already because I can see See the icon there. So I go to participants and I can see yes There should be two what one of one teacher and he says manager, but he's already a student So there were two students and one teacher. So if I go to Element chat and you can see I have the winter semester already created I will show you how it gets created. But yeah, you can see people are already chatting there But yeah, I can see some communication and maybe I don't like how Olivia talks and she's a little bit of sarcastic So I maybe to inactive her later They are before I do that if I quickly go to Olivia's profile. So she's a student And if I come to my co-sister, she already has a couple of courses, but I can go to winter semester She's a student here and then she clicks there She gets into the straightaway into the matrix again and she can see the course So she can see what what's happening inside his communication channels and stuff like that. So as a teacher as So I'm Leah. So as a teacher, I think okay I'm not gonna Continue, Olivia Olivia to continue with her sarcastic comments and stuff like that So I decide to maybe suspend her for now. So I do that and then in the background. I'm actually running the schedule task very quickly and If I go there, okay, my task is still running But yeah, you can see I have done this some of this before that. Okay if I suspend it You can just say that okay someone remove Sapa Chinese actually the admin user who actually can remove people from the room who can actually Re-add people when they non-suspend them or re-add them back to the enrollment stuffs like that So how this actually happens in action. So for example, I have I have all these courses here So for example, I have fall semester Which actually doesn't doesn't really have any communication partner, right? So if I come to edit this and I have you can see I have none so I have nothing selected So if I select matrix So the good thing is you can leave it empty and it will pick up the course name by default so if I if I can say that pause for Fall and maybe the room check topic something to explain here So if I click that and save changes, you will straight away see that your check room will be ready soon So things happen asynchronously. So when things are happening It will give you those kind of notification that okay Your chat room is ready or not ready and when the schedule task is finally finished running It will show you a message saying your chat room is ready. I'm sorry about that Am I still running maybe because I've created a lot of data But yeah, that's that's pretty much it and that's pretty much the workflow for teacher and students And of course admins will have pretty much the same thing for them They will be able to access the room and stuff like that as long as they're they're part of the course and stuff like that And also whatever you do inside for example, you disable and run a method and do anything action They're actually aligned with the communication API So if you disable something delete user disable course those kind of things actually triggers the API and removes user from the room And stuff like that That's pretty much it I believe does anyone have any questions Is it a pluggable system can there be integration with a different chat system instead of matrix? Yes, they can you can so it's a communication API. So it's a provider plug-in type so people can actually Create different types of plugins. So we build metrics as a part of our first part of our proof of Concept so you can actually build some something else if there's any comment So it's these are all plugins and this is the icon. So as you can see this blue icon from the course So for example, I am Olivia. So I'm in my course winter semester and this is my course here I just continue So I go to my courses. Oh, I just got an unenrolled. So yeah, so for example, if I come here and Let's say participants And I just re-enable Olivia very quickly And I see Olivia here So yeah, so I can see that I can see that icon and straight away I click that icon and I'll go here and I will see all the misages and stuff like that And also whatever actions to be done is pretty much aligned with metrics API. Anyways and Safa Chinese actually the admin user from matrix who which access token we're using and yes if admin user Is actually so whoever enrolled into the course should have access to that Should have access to the matrix and by default when we create a course it actually add so for example, if I'm an admin user I create a new course I Automatically gets get enrolled and I will be automatically added here So as I can see my she do does just finished running and I removed Olivia So there are two types. So I removed Olivia once and then I added him added half So all this actually finished happening and you can see all those notifications here So sorry, thank you. Sorry another question from workplace team perspective. How does it work? If a course in a forced separate group mode That doesn't create one group one chat for one group or does it? No, everybody together. No, they will put everybody together So at the moment the implementation is entirely course level. So you have enrollment in course You will get users in that match of communication room But the good news is we have built the API in a way that you can actually use in the group level And we had this kind of conversation inside our chat like hedgehog team chat that how we do this if it's in group level How we do this if it's an activity level and stuff like that Thank you. It's just in the workplace. We separate all tenants very strictly. So it's important for us Okay, thank you. No problem Did I miss any questions? Actually, I think I did Yes, yes, Martin, sorry, the question the other question. Sorry first I Think yes, Mari. Yes. Yes Anyone want to get into get into metrics. They will need to be enrolled So that's how it happens instance instance courses and instance when they install instance is added to matrix That's a room and whoever is actually enrolled or added or as a member of this instance inside model They're added to the matrix from matrix have limited information about what's happening inside model So it will just do whatever we tell them to do But yeah, if there is a requirement at some point to add admins that we can do that. It's 100% doable Can it be used for group chats? Also, as I said, yes. Yes, the API can be API is reusable Of course for this phase. Yes. Yeah, I think I answered questions there What happens if you add someone manually to the chat? Assume you still can on the matrix side, but I just ignored When Moodle comes and goes Yeah Sorry, it's a fat, but yeah, so matrix is still matrix Yep So if you want to manage your rooms and manage your room admins and do all your admin stuff in matrix It's still you still get all of that. So if you wanted to invite a Guest like and you want to have them in Moodle for whatever reason you just add them to matrix and off you go Yeah, super and oh, this is another question. I want to ask is the The internal chat Coexists does it Yeah, so so the this functionality in the beginning is in parallel with everything that's in Moodle We haven't dropped everything else But if I was using this in practice, I would turn messaging off and more chat off for example, but you can this is also Because of mainly things like not having group support This is behind an experimental feature flag in 4.2 as well Which means we can land things quickly and test and get feedback and not bet the farm and turn it on for everybody Cool last question is um, can we have a prototype site for the company to play in? It's on my list. Okay. Thanks. I'm getting it to the top