Pre-Sales Architecture Questions


#1

I’m evaluating the Exosite platform to determine its suitability for a new product and have a number of questions.

Most of my questions relate to the architecture, as I have not found a very clearly summary in the documentation, so any pointers would also be very helpful.

  1. Is it possible to use Exosite Widgets with Mobile Apps (or can they only be used on the Portal)?
  2. Can I easily integrate with my custom web site (I would need to access exosite data or perform certain task)?
  3. Is it possible to store large data items on the Exosite platform, for example many large images files (which were POSTed to a web service)?
  4. I will need to run my own custom complex algorithms, does Exosite provide a platform for this, or is this best performed on another platform (say at my external custom web site?

Thank you for your assistance with helping us evaluate the Exosite.

Glenn.


#2

Sorry the widgets are only usable in the Portals application itself.

You can find our API documentation here: http://docs.exosite.com/

There are two that you should take a look at.
One is the JSON RPC - which gives you full access to the platform functionality. You would need to write the interactions to add a device, etc into your web app’s back-end code or at least have a mechanism to map a user on your own web app to the hierarchy on the One Platform and pass the correct identifiers back to begin using the RPC at the client level of your app.
http://docs.exosite.com/rpc/

The second is the Portals API, which does some of this for you (wraps One Platform calls into web app calls that are focused on users, accounts, devices, etc). It uses the same concepts as within the Portals application.
http://docs.exosite.com/portals/

Each dataport is time-series data, so you have value / timestamp for everything you write to the platform under a client (which would represent a device, user, account, etc). A single value can be up to 64K. Dataport types are integer, float, and string.

The platform is currently not optimized or really built for for storing large files. You may want to consider storing these somewhere that is good at that and store links to the files in Exosite to later get access, and process. You can feel free to submit a ticket on our support site with more details about your application if you want to get into more of a discussion and do not want to share your project publicly.

Our Lua Scripting engine in the One Platform can handle processing data real-time and making decisions / running algorithms. If processing huge image files, we typically work with customers to create a separate service that they maintain on another server that they can call from our Lua Scripts using HTTP dispatches. In this way, you might store the huge file on a server, save the location inside of a dataport, have the Lua script than working to determine what file to process next, make that request out to your separate image processing service, which would respond with results, and store this in another dataport.
Again, feel free to submit a ticket or contact our sales team for more of a discussion.