Manage user files
-
Hi there- I'm trying to create a file browser in a HISE app, where the user can upload a file that exists on their own file system, and whereby I can then parse the file contents, and (more specifically) use
Engine.dumpAsJSON
to store it in the Presets folder.Furthermore, I would also like to send this JSON to a remote server. Does HISEScript have any async library functionality for HTTP requests? If not, would someone be able to advise regarding how I would implement this custom file browser/uploader?
I'm comfortable with C++, but I've only just started using HISE, so am unsure where to start with writing this as a custom module. (And I also want to confirm that this is not possible in pure HISEScript.)
Thanks!
-
It is not possible with HISE script. That's as much as I know.
-
@d-healey I feared as much, thanks for confirming.
If anyone can advise on how I'd go about adding C++ modules for:
- a user file browser
- basic HTTP networking to send and retrieve JSON presets.
I'd be very much appreciative!
-
A couple of thoughts/questions on this:
- @Christoph-Hart how did you manage user login within HISE for Auddict's PercX - https://www.auddict.com/percx? Is it relatively easy to add a component in JUCE C++, and manage networking from there?
- Would it make sense to try to add networking as a more general capability in HISE's Javascript engine? I'm imagining some simple additional functions such as a new
Networking
module, with standard HTTP functionality e.g.Networking.get
,Networking.post
... would this work, or is there something about HISE's architecture/design that advises against?
-
Is it relatively easy to add a component in JUCE C++, and manage networking from there?
Yes, that's the entire idea of the C++ framework side of HISE... You can either just create a C++ UI element and add that as
ExternalFloatingTile
or create everything in C++ including the module tree & preset handling.https://docs.hise.audio/cpp_api/index.html
https://github.com/christophhart/hise_tutorial/tree/master/ExternalFloatingTileTest
Would it make sense to try to add networking as a more general capability in HISE's Javascript engine?
Nah, that will lead to so many feature requests that I'll get a panic attack from just thinking about it :) If you can do C++, just use JUCE's networking capabilities, that's what I did with PercX.
-
@Christoph-Hart Ah right, sorry- should have been able to find that. Thanks!