 Hello, everyone, and welcome to the 7.30 a.m. to 8.20 a.m. session of the 2020 Open Simulator Community Conference. In this session, we are happy to introduce a panel discussion called SceneGate, Echo Voice, and I'm A Box. Our panelists are Lisa Laxton, Frank Ruloff, and Seth Nygaard. Seth will join us if he's able. Lisa Laxton is the R&D visionary and CEO of the Open Simulator Community-Focused Foundation, Infinite Metaverse Alliance, IMA. She is also president of Laxton Consulting LLC with experience providing various virtual world technology solutions for education, research, business, and defense clients. Frank Ruloff is a senior systems engineer at Thales, Netherlands, with expertise areas in training and simulation. He is leading the research and innovation activities related to Open Simulator technology within the Thales Global Company using multiple Open Simulator grids focused on user needs. Troy Schultz, aka Seth Nygaard, is a multi-discipline developer with 30-plus years experience in real-time systems for industrial, automotive, and other critical environments. He has worked in the roles of senior hardware designer, senior systems administrator, engineering manager, and chief technology officer at various companies and was the owner-operator of the Open Simulator Refuge grid. Please check out the website found at conference.opensimulator.org for speaker bios, details of sessions, and the full schedule of events. The session is being live-streamed and recorded, so if you have questions or comments during the session, you may send tweets to OpenSimCC with the hashtag OSCC20. Welcome everyone, let's begin the session. Thank you for joining us and congratulations to the OSCC team for another great conference. It's both a privilege and a pleasure to be here. This panel will provide updates and discuss several ongoing projects avatar-focused viewers for the Open Simulator, a new voice applications for Open Simulator, and Docker-based Open Simulator grid deployment. Let's get started by talking about the current development state of SceneGate. Project SceneGate encompasses both SceneGate and future viewers that are avatar-focused. The COVID crisis had an impact in 2020 on the development team slowing our progress. We also have multiple requests for new capabilities and features regarding the armature and the user interface. These will need to go through team review next year after IMA White Paper submission. The process is defined here. There's a link in local chat for you. We plan to move the repository to a Get Tia server. We will host to reduce cost and ease administration in the future. Work is underway to support three user operating systems. The future Viewer Project that Frank will talk about will help provide architecture documentation for developers. Following up from our security testing last year and White Paper review, work has begun to improve the viewer's security. Before we talk about security, let's take a look at the current roadmap. We did have to slip our milestone on the project roadmap. I've posted a link to that in chat. But we very much appreciate the user feedback and have included some bug fixes for the next beta release. Integration with Echo Voice that Seth will discuss is planned if he's able to join us. If not, Frank and I will provide an overview for you. We also want to expand our team to spin off what we call the Dreamgate Project. Firestorm is a popular viewer among creators and advanced users due to some advanced features. However, creators with certain disabilities using Firestorm could be digitally marginalized by missing accessibility features. So we have two choices. Collaborate with the Firestorm team to add scene gates accessibility features or fork Firestorm for our team to issue another viewer. We prefer the first choice, so we don't need to maintain a second codebase. I've opened a dialogue with Beck to see if we can collaborate. In either case, we need testers and coders. So if you're interested in joining the team, please contact me. Longer term, we want to add advanced tools to scene gate so users with accessibility needs will be able to use either viewer. Scene gate has mostly the same features in Firestorm, absent area search, and a few other creator features. It is my daily viewer for everything except when I need to use area search. On voice, currently Vibox does not have group I am or conferencing in open simulator, but this is one of the Echo Voice roadmap items. We may need viewer or server code changes, but we hope to handle this in Echo Voice bridge applications. If needed, our team is happy to provide inputs for OS devs and other viewer devs to include in their development framework. We need help to get Echo Voice work done faster. So if you have C++, C-sharp, or Golang code expertise, specifically Golang, please contact me. On usability, we want to look at disabling or removing the analyze button for mesh uploads to eliminate user issues. And because users often use the map to find other users, we want to investigate removing NPCs from the maps and the radar. Chromium related updates for media streaming are needed. And finally, work will continue to decouple menu options tied to Second Life and to address bugs. And that's because the scene gate projects are dedicated to open simulator. Lots of work. So let's look at the current issue tracker. We really appreciate the participation from the community on issue tracking. Two issues are resolved. Four open issues are to be addressed in the next beta release. One issue needs team review after white paper submission. That is regarding the armature. And three issues related to Linux users needs to be investigated. You can download the viewer here. There's a link in local chat. And our issue tracker is currently located here. There's a link in the local chat for that as well. In 2019, Natasha did a lot of source code security investigation regarding third party libraries. The chart on the left shows vulnerabilities for all three major operating systems. As you can see, third party libraries used by Mac showed the greatest vulnerability. Third party libraries are often used to accelerate development, but that comes with a price. Often not kept up to date, these libraries are one of the most insecure parts of an application. Hackers began to move away from servers and operating system in 2016 towards applications. 90% of all applications require download of these components, making exploits attractive to hackers. The more third party libraries used, the greater the vulnerability of configuration management or if configuration management is not in place. Given Natasha's research results, it was clear we needed to update the current libraries. Configuration management means keep them up to date and eliminate the ones we don't need. Developers can no longer afford to use third party libraries without also keeping track of the library's updates and security profiles. We won't know the configuration management cost until we complete the initial updating of the existing libraries. Based on our survey, the majority of users in Open Simulator are Windows users, so this set the priority. Take a look at the chart on the right. She submitted a white paper for team review and then proceeded with updating third party libraries. This chart shows her progress made. Great job to Natasha and Frank. The team will continue that work for all three versions, but this is a methodical and incremental process to make sure we don't break things. New source code is not in the current repository, but will be updated when testing is completed. This will likely coincide with the repository move to Katia. Frank, what do you have to share about the future viewer projects? Thank you, Lisa. And hello to all of you. Can you give me the next slide, please? On the roadmap, the successor of the scene gate viewer is defined as the future viewer. We explained a little last year what we want to reach. First, we want to reach a number of things. We want to disconnect the rendering part of the rest of the viewer, which allows to have a stable update rate for the viewer, which means that 3D headsets will have a better performance with the unstable frame rate that people can get sick using that headset. So that's one of the reasons. Other reasons are to have plugins for different voice of IP servers to adopt your user interface to the needs of the group or persons that are using the viewer and so, for instance, if you have a certain training you want to do and you want to have certain commands directly into the user interface, you can do that. And the third part is to have an independence of the AP interface with the open sim server in the sense that we can control the way how the viewer evolves. Now, we are busy with Red Square at the moment. Three students interns are busy trying to analyze, which is quite a job, trying to analyze the current scene gate code because there is no documentation that is difficult. They found the documentation from Second Life, the Second Life viewer, and they use that as a reference to see where in the scene gate code the rendering part exactly is. We also want to implement as a first part a new rendering engine, but will be the Godot rendering engine. The selection of that was, first of all, it's open source. Secondly, it's a very live community. And so what work that is done until now is that we identified or the students identified all the different functions that are related to rendering in the viewer. And now they can compare it with the needs, the functions, when you use Godot functions, what the needs will be on the viewer side with respect to interface and changes. So the next step is that we are gradually going to change the scene gate viewer to incorporate the Godot functions. That is what we're doing. At the same time, given the fact that we didn't have any documentation, they also work on providing a complete document on all the functionality that is in the scene gate viewer for design purposes. And the first step was to get an overview of all the functions in an output using the Doxigen application. And that's one of the works. So in the next time, in the next period, we are going to change the code of the scene gate viewer to connect it to Godot and of course all kinds of do all kinds of performance testing to see whether that will work or we need more changes to the code base to be able to do that. That's for me. Back to Lisa. Thanks, Frank. Okay, let's see. Seth had some connection issues, so I'm not sure if he's able to join us. So we're going to do what we can to try to present some information from Seth. So let's talk about Echo Voice. The Echo Voice project originally VCom wrote an add-on solution for OpenSimulator. This was like 11 years ago. And also, Thales worked with VCom to sort of do some updates to provide a little bit better quality. So when we got together with Thales, we took a look at that. Part of the problem was it wasn't really written at the time for the hypergrids. There are also some security issues that we found. But to look at very specific observations, zero CIS is a component which requires a commercial license when used commercially. And this is sort of a problem for a lot of grids that are non-commercial or education grids that don't have a lot of money. There are a significant number of security vulnerabilities that if you're on a closed grid, you can sort of mitigate those issues like Thales is. But it's not upgradable to the current murmur-mumble server code. There have been, according to Seth, 18 different issues of murmur since this add-on was written. We looked further into that and found there was hard-coded part used between the client and the viewer. That is something that would obviously have to be changed. Based on this old version 1.2.1, that's a big problem. It was not done in a way that there was a proper API so that it could be easily updated. It also requires packages and protocols that are no longer available. We're talking Microsoft 2008 and the old protobuf. And there were also technical issues with open simulator that we noted during our testing on a local grid. So we came to some conclusions as a team. We talked about this and obviously it's not suitable for public grids as is because of all the security issues and the code base itself was not sustainable. This is in addition to the commercial license complication. So what we decided to do was to make a jump forward in development for compatibility and sustainability. We're developing a new echo voice solution designed to address all of these known issues. The current murmur-mumble server code that is out there has already resolved all the security issues that were observed. So this is a look at a diagram Seth shared with me. It sort of covers not only the existing but what we'd like to do in the future. And if you look at the diagram you'll see that the cyan or the blue colored arrow lines is pretty much how that add-on works right now. Users would not be able to switch back and forth between Vibox or echo voice. They have to manually make these changes and change their viewer log in log out which is complicated for users. And also the add-on itself is shown in the blue boxes over on the right part of the diagram for the regions. Obviously we're going to need to make changes to the add-on. So that's written in C sharp we're going to have to rewrite that. But to allow for bridging so that users will not have to worry about whether they're arrived in a region that's running Vibox or that's running echo voice we hope to eventually make that automatic so that it is detected and the changes are made for the users. This is going to require a server bridge application development. Seth's intent is for that to be written in Golang. And also we're going to have to have a server side application for a couple of reasons. One the server side bridge is not only to bridge the add-on module but also for what we call non-Avatar users. So a non-Avatar participant someone who is coming in from another virtual world who is coming in via phone who is coming in just as someone who listens or as someone who actually participates. And that future OS server that red box that you see on the right would be the path that they will be able to get in that way. I also see this as a way we can bridge various virtual world platforms users participating on those to sort of achieve that notion of an infinite metaverse. So I hope this would be really interesting and I wish Seth was able to join us because I know there are people who have already been asking us very specific development questions. We'll do what we can to answer them and we can certainly refer Seth in at a later date if we can document any of the questions that people have. So the next project which I mentioned briefly in the last couple of years it is something that we wanted to do. We've made a lot of progress on that project. So we're going to be very soon introducing something called ImaBox. And ImaBox is an extension of the research concept that Moses had done where they had a Moses in a box from the military open simulator project. And but what they did was they said okay we'll take a virtual box so we'll make a virtual box image and they just made an image of a small Moses grid and made that available to educators and that was great. But we had some other research questions about that and there were some definite issues. Moses was based on Simeon grid. It was not accessible to the hypergrid. That wasn't even doable. They were never able to get that working. The doctoral implementation at the time was not suitable for non-technical administrators. There's been a lot of work that's been done with doctors since that time as Robert talked about last year. But we also found that it was difficult for non-technical users to scale this because it wasn't distributed in any form. So we did some research in 2019. We evaluated using multiple VMs in a distributed approach and we found that this was suitable for small grids from a performance perspective because what would happen after about 20 regions you then began to run out of CPU and RAM resources because the virtual machines require a lot more resources for themselves. And there were network configuration issues for multiple machine architecture if you wanted to begin to deploy VMs on actual other machines especially in data centers. So this could be cost prohibitive very quickly due to CPU and RAM resources. It is doable but really only suitable for small grids. So in 2020 we extended that research evaluating doctor solutions as an alternative. We compared the doctoral implementation and bare metal performance and the conclusions were that it was lower in cost. It was easier to administer and it was comparable in performance to bare metal as long as you tweaked it properly. So we then began development of a doctor-based IMA box installer and that is well underway. And let's take a look at the concept here. So what to put in the IMA box? If you look close at the diagram you basically you divide it up into three areas. You have your grid core simulators you have grid services and you have system services. Now what Seth has recommended based on his own testing on the server he does a lot of analysis with the external tools but he decided that implementing traffic on the system services was a really good solution especially from a security perspective and he also talked about the different components of the grid services that really need to be separated out into their own robust instance. FS assets was an obvious one but also inventory and we'll talk more next year about why that is important. And then to separate the robust core to its own Docker container as well. So all of these blue boxes that you see here have very specific functions in the overall scheme of things and we have been testing this heavily so we know it works very well. And what we're hoping to do is to wrap this into an IMA box that we can then provide to the community. This would be a platform agnostic installer whereas dream grid which I love is a great project but dream grid is based on windows. If someone wants to launch this in a data center windows servers are very expensive. Linux servers are very cheap so it makes more sense to have a platform agnostic approach because you can run Docker inside VMs but you can also run Docker on bare metal. So doing it this way then allows you to have your simulators also in their own individual Docker containers. Now obviously we need to come up with a way to programmatically make this installation very easy for the users and we're working on that. So I hope that this is something that would be really interesting for folks to implement. If you're on a windows machine and you want to implement an IMA box you would use something like virtual box as a hypervisor that's free there's no commercial license restrictions. And then you would just load Docker and then Docker compose and then begin to load the images for the various containers. We want to make that as automatic as possible. Then if you're on a max same thing would be the case if you're on Linux and you know just go ahead and load them on bare metal unless you want to run those inside a Linux VM you can do that as well for separation. So I think that's what we wanted to do was to keep our presentation slides down to a minimum and that way we would have more time for questions and answers. So here we are questions or comments. Okay well that was very interesting and very technical. There are a couple of questions and this is a question from SIDARM for Lisa. How does your work with voice relate to current issues with Vbox and other traditional voice services in current production use? Oh that's a really good question. Here's the thing with Vbox or Vbox they are a third party when it comes to voice communications. This is a significant issue for businesses for defense clients that may have military security requirements. The same security requirements also exist for the healthcare industry for counseling in virtual world or for educators you know because they have FERPA regulations that they need to comply with. So when we looked at Vbox or Vbox that wasn't suitable. It wasn't a good solution. Now there are a couple of grids who are running their own Vbox servers but there are still that third party intervention that would not allow you to meet both HIPAA and FERPA regulatory frameworks. So Echo Voice is something that you will be able to self host if you have those security needs and it is encrypted by default. So we are already well beyond anything that Vbox could offer and also when you think about Echo Voice one of the things we have on the roadmap is not just the private voice conversations or I am but group I am which could serve as conferencing and this is something that Vbox does not offer. So we are hoping that Echo Voice becomes a really good solution not only for the open simulator community but also for other virtual world platforms because it won't be limited to use by open simulator alone. Okay there are a few people who are asking again how they can help testing if there is a link that you can post again. Yeah well the best way to help in testing is to get in touch with me to attend our weekly meetings. We host on the Metaverse Depot grid every Wednesday night at 8 p.m. Eastern time in the IMA Outpost Alpha region and you can reach me via email lisa at infinitemetaverse.com most of the people can find me one way or another you'll find some way to find me. Worst case if you need to reach me go through Selby. I know he has a lot of followers and a lot of contact Selby is there every Wednesday night for our meetings as well. We have not put together IMAbox where it can be downloaded yet because we're not ready and Echo Voice is the same situation. The bridge application we did have a protocol or prototype that was done on the client server bridge. We did test that with all of the viewers and it does work but it has to be configured manually and we really need to get away from that because that's not good from a usability perspective. So I'm hoping that we can get this done as quickly as possible and that's why we're reaching out to the community asking for help to work on the development so we can get it finished. Yeah to add something we I think we have three people together working on it now or going to work on it but it will take time so if there are any people that can help with the development that would be a great. Okay I have another question from Psy Traveler I hope I said that correctly. Are there any expectations about when we can expect a working voice function to test or even use? I can't say right now because of the complexity of developing the new bridge applications in Golang Seth has been really really busy he's the only one guy that's why we need some help. We do have a couple of people who are looking into that I do have a volunteer to handle C-Sharp but she is non-open simulator and we really need to have some open sim expertise. There was another question that Psy asked I'll go ahead and address that one. Free switch integration here's the thing free switch does work with open simulator works very well the Moses team did a lot of tweaks to come up with a suitable implementation of free switch on their grid but there are some issues from a user's perspective. Number one the lips are not going to move on the face of the avatar that's speaking if you're using free switch there is no indicator above the head of the avatar speaking to indicate to other people who is talking and there is no spatial sound component so for meetings and classes presentation free switch is fine but you know there are usability issues but most of the virtual world's uses are really going to want to implement spatial sound so this is the real reason why we said okay let's look at the VCOM solution. Okay I have a question from a little further back in the chat from Andrew Heller-Shanks about Simeon grid implementation and there seems to be a question about whether that's still being used. Yeah I think that was actually answered by another person in chat. Okay yeah I often talked about that the Simeon grid component were removed. Okay so that's not the case. Okay and then we have a question from Tony from YouTube I wonder if I'm a box is going to have a web viewer like Moses was going to have. Well you know actually Kay talked about that in the last presentation this is something Frank and I had been talking about as well as to virtualize Cengage for our users and we're looking forward to getting some information from Kay's IT team to see how they did the implementation for her project but that was a very same approach that we were also looking at as well because there are a lot of people who can't download the viewer if on the institutional system and there are the mobile components you know people on tablets people on phones they really want to access virtual worlds even if it is a limited capability where you can't build you can still attend you can still dance you can still go shopping that would be our goal is to make sure that we could do that. The Moses if I may the Moses viewer itself I've been in contact with the people that have been starting but the Moses viewer was not any near real application at the moment they stopped. So having a web viewer based on Java scripts and it's not something that is even available was even available on the Moses team it was just the design they were busy with it's one of the things the one of the things that I've been looking at because in our company we had we want to distribute the grid over the over the company's internet and for that we looked at three reasons and we looked at three different approaches one is the the current approach you have the servers and you have a viewer running on APC but our company worldwide has about 50 000 PCs which means that the IT organization when we have an update of a viewer it gets very busy so that was from a management point of view was not the best way to go the second was to have a web type of application like the Moses was so we got in touch with the Moses team to talk about that but first of all it meant to to write a complete new viewer so we cannot use anything that is there we have to really completely write it again and secondly there were still doubts about the performance of such a web viewer if you compare it with the current viewers on the graphical side so and the third option that we've looked at was to do the rendering in the cloud and similar to what but Lisa mentioned which is in principle a very nice solution because you you can make use of the maximum graphical power that you have running in your cloud and you have video streams and touch touch keyboard strokes that go to that cloud which means that you have a very good security which is important for my company but on the other hand it's an expensive it's an expensive solution because you you need to have servers that share graphical cards GPUs and then you come in the hardware of NVIDIA you come to VMware that all have crazy high licenses cost to use this kind of hardware so that's more a problem of a more costly problem but from a technical point of view that would be the best because if you can do it like that you can run it on phones you can run it on on tablets and you can run it on PCs and it doesn't matter what the graphical capabilities of such a pc of laptop is you can run it nearly always right so we we we have been we have been looking at that and yeah for now we are going because we probably have for this third solution we have running we have in the company we have two major grids running one in Paris and one in in in my company's part which we use for experimentation it's run a virtual machine and a number of other virtual machines around it to support OpenSim one is a web server that allows you to upload content from your directories all kinds of content whether it's spreadsheet documents for presentation as you see behind you so we can present all types of documents pictures movies we can share screens we can do all kinds of things so that are different virtual machines we have a virtual machine for whiteboards that we use the AO Bayer whiteboard application so that we can share whiteboards in in virtual space and we have a fourth virtual machine that should run echo voice when it gets ready all right and you know on our side of the house on the IMA side of the house one of the things that we are looking at with the echo voice bridge applications is to extend that to implement integrate with Jitsie and Jitsie would then provide an open source solution for file sharing and screen sharing and that sort of thing to really make OpenSimulator a one-stop shop that not only users can use but also school systems and government agencies public and private sector businesses we we know that there's a lot of struggle out there right now because of COVID and people all the sudden who had been shy about remote work are forced into it and they're they're finding that their users are overwhelmed and exhausted with the number of different tools that have to be used and they're exhausted in Zoom meetings with the level of distraction behind the users it's really taking away from the focus of the topics of discussion in those meetings and when you use virtual worlds you eliminate that factor you also have a psychological aspect where if I'm in a you know 50 Zoom meeting conversation or 49 on Teams then I'm reminded by design every as I'm looking at the screen constantly that I am separate I am remote I am removed I'm isolated but when you're in the virtual world you get that sense of spatial presence and that sense of togetherness and that is a big factor why I believe virtual world is the way that everyone needs to go for the future and if we can provide a nice platform that is a one-stop shop that's the right way to go okay I have a question and then there's another one if there's time but you've just kind of hit on something that I heard you say about bridging different platforms for us very non-technical folks I'm just wondering how that might look for the user would we be able to say teleport from open simulator to sign space or to second life or something like that what you're talking about no teleporting is is a protocol issue between the platforms and this is because there's a lack of industry standard compliance I would love to see open simulator become compliant with industry standards in the future as well as other platforms so that we can have that level of interoperability for the users but we can't do that right now and I don't foresee that happening in the in the near future what we can do is the communication the social component if say if you're in a web world imagine that those five people sitting around in that web world could then interface with the people that is an open simulator just just to be able to communicate back and forth now we bounce around the idea of flipped webinars which is really community meeting where we might video stream you know one user in that web world would show up on a prem in the open simulator world and somebody is streaming from the open simulator world and then that shows up on whatever type of method they use for accepting a video stream URL in the web world so there is a way that we can provide some level of bridging between these virtual worlds until there comes a time if ever that the different platforms become industry standard compliant to provide users with that interoperability okay wonderful thank you so much for for that okay and then there's one more question and we have just enough time for one last question this is from jaga meredith and avi world and the question is is one of the issues the change in ownership for vibox that they will attempt to monetize it this is kind of back a little bit in the chat but i think it had to do with the voice yeah well that could be we started to look at echo voice not directly from that perspective but to have an alternative for vibox or any other in case vibox would we started it before this happens so we we developed it as a a fallback first of all for for grids that do not allow vibox as the voice of ip which is for instance for my company we cannot allow vibox to be the provider of audio and secondly to have an alternative in case something that like vibox falls away now whether whether that's going to happen now when they're taken over i don't know but the intention for us was to find this alternative yes for those two reasons first as a fallback secondly for those grids that do not want to connect to vibox yeah and and there's also um licensing issues associated with vibox where right now they do provide a lot of free uh voice services to open simulator regions there are license restrictions most people don't read the licensed terms but if you did read them you would find out that if your region is has commercial activity which is very broadly defined in a legal perspective they can then demand a commercial license fee the other aspect is because they are providing a lot of free open simulator voice services who's to say that some executive especially with after the ipo isn't going to go walking through and find that server in the closet or under somebody's desk that is providing all of those free services and say hey what is this we're not making any money off of that shut it down uh we we have no control over that so that was one of the reasons why uh i thought looking uh at the vcom solution was a good idea but because vcom is not involved even after we met with them they were not interested in in open open source contributions to continue the project that's why we came up with a new name and decided to take up the helm on that ourselves okay okay well we are about out of time and so I would like to thank you Lisa Frank and Seth for a terrific session as a reminder to our audience you can see what's coming up on the conference schedule at conference dot open simulator dot org following this session the next session will begin at 8 30 a.m in this keynote region and is entitled whoso pulleth out this sword of this stone and anvil is right wise king born also we encourage you to visit the oscc 20 poster expo in the oscc expo three region to find accompanying information on presentations and explore the hyper good tour resources in oscc expo two region along with the surreal museum region and the sponsor and crowd funder booths located throughout all of the oscc expo regions thank you again to our speakers and our audience