Page 1 of 1

I'd like to ask a question about web-workings.

Posted: Wed Oct 01, 2014 9:54 am
by Platinum
How does the code establish a network connection? In what section of the code?

Are any particular strategies at work to ensure improvement of latency to clients?

In what form does the files and folders reach the client? As in, is everything that the client can access actually loaded over or do they just get links to what they desire and it gets loading after they've clicked it?

As a related question, does this make the files that the user does not want to give the client to safe? Any particular idea of that?

Since this is the "Universal" Media Server... What measures have been taken to possibly ensure that one could add more to the system might be modifiable to allow more devices, if any?`How is the modifyability of the system?


This is all for a software architecture and qualities course at my school. I am still pretty new to the art of developing any kind of program. The purpose of this assignment is that I am to pick a system and learn a bit about its workings and qualities, and I figured if the developers actually answered my questions then that would be great. If not, then I fully understand, it would most likely be a waste of time to write the answers to my questions and I am supposed to find the answers to these questions on my own regardless. But I felt it worth giving a shot. If you feel like answering, then feel free to be as short and concise or as detailed and technical as you like, I'll be eternally grateful for every single word, anyway.

Thank you for reading. I apologize if I have been cheeky, rude, disrespectful or anything otherwise in any kind of disregard of any kind of rule as I have been writing this.

Regards, Platinum.

Re: I'd like to ask a question about web-workings.

Posted: Wed Oct 01, 2014 10:11 am
by SubJunk
Hi Platinum,
I can answer some things. Since this project is a team effort there are some areas I don't know as much about, but I'll try to answer.

We usually use the DLNA protocol to interface with devices, and as such we don't really establish a connection, it's a lazy system of connection. So devices broadcast identifying strings over the network, and UMS recognizes when they are doing that and we identify the device based on the strings it gives. Then we allow it to request information from UMS like folders, files, thumbnails, and some metadata about those things. There is never an active connection though - we don't know from UMS whether that device has been shut off or not.

The files and folders are usually loaded after they're clicked, though different devices prefer different things. For example, some devices need to load the entire contents (not the files themselves but references to them) of a folder before displaying anything, while others can load them a few at a time to allow for faster loading. Some devices preview videos in the browsing screen, which means that even without the user initiating the video playing, UMS is serving it.

Users can choose exactly what they want to share by selecting the folders to share in the UMS program GUI, and we have advanced security features available too which were outlined in our recent news post at viewtopic.php?f=8&t=2266

I don't understand the last question about modifying, but users are able to create their own renderer config files to support new devices. Many of the renderer configs we include in the program have been contributed to us by users.

Re: I'd like to ask a question about web-workings.

Posted: Wed Oct 08, 2014 6:45 pm
by Platinum
I apologize for the late reply, but thank you. This helped a lot for my understanding of the system. Thanks for taking your time.