[Ovmsdev] Web frontend

Michael Balzer dexter at expeedo.de
Mon Jan 29 17:48:03 HKT 2018


Oops, I moved the param registration to /dev/null -- I'll fix that this evening.

File downloads are handled in chunks by the mongoose system. I've implemented chunked transfer for the embedded assets as well, so RAM usage
should be acceptable even with the 3.0 module.

Performance of file downloads is affected by the FAT buffer configuration, especially with a browser doing parallel fetches. But it's OK for
single file downloads with a global buffer.

Regards,
Michael


Am 29.01.2018 um 01:31 schrieb Mark Webb-Johnson:
> Very very cool. Love the clean layout, and very usable as is.
>
> One comment: I don’t think the http.server config parameter is registered. I couldn’t set any configs on it. I was interested in trying out the vfs directory access functions - to download can bus dumps, etc. Wondering how mongoose handles that (and hoping it doesn’t consume all the ram for big files).
>
> Regards, Mark.
>
>> On 29 Jan 2018, at 3:10 AM, Michael Balzer <dexter at expeedo.de> wrote:
>>
>> A first usable web frontend version is now in the hub.
>>
>> There are two new mongoose config options to enable serving from file space and list directory contents. I recommend enabling them, if you want to exclude
>> access to the filesystem, you can do so by configuration params "http.server":
>>
>>    // "http.server"Instances:
>>    //    Name                Default                 Function
>>    //    enable.files        yes                     Enable file serving from docroot
>>    //    enable.dirlist      yes                     Enable directory listings
>>    //    docroot             /sd                     File server document root
>>    //    auth.domain         ovms                    Default auth domain (digest realm)
>>    //    auth.file           .htpasswd               Per directory auth file (Note: no inheritance from parent dir!)
>>    //    auth.global         yes                     Use global auth for files (user "admin", module password)
>>
>>
>> File access is not needed for the web frontend though, just an option to be able to access i.e. CAN logs. The docroot can be set to "/store", but I don't
>> recommend that. The config path is protected, but this relies on mongoose delivering correct paths -- a bug would open access to the config. If you want to
>> serve from /store, use a sub directory like "/store/www" as the docroot.
>>
>> Global and web session authentication is bound to the module password (config set password module "…").
>>
>> The frontend is AJAX based using Bootstrap & jQuery, with currently a very basic (functional) design. I've implemented a first home & status screen (just
>> command outputs), a simple shell and config pages for the password and the basic vehicle setup (just type & id for now). I'll add config pages for wifi, modem,
>> server & ota during the next days.
>>
>> The frontend is usable on a small screen, just the shell could need full screen support -- I'll have a look at that later on.
>>
>> The framework provides a page registration and page context utilities to enable custom / vehicle specific extensions with few effort. I'll add an example /
>> template for this.
>>
>> Feedback is welcome.
>>
>> Regards,
>> Michael
>>
>> -- 
>> Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
>> Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
>>
>>
>> _______________________________________________
>> OvmsDev mailing list
>> OvmsDev at lists.teslaclub.hk
>> http://lists.teslaclub.hk/mailman/listinfo/ovmsdev
> _______________________________________________
> OvmsDev mailing list
> OvmsDev at lists.teslaclub.hk
> http://lists.teslaclub.hk/mailman/listinfo/ovmsdev


-- 
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26





More information about the OvmsDev mailing list