Full-text indexing of documents in ThingWorx repositories using Elasticsearch - an MVP and demo
I recently spent some time checking how different stuff can be done in Thingworx and the Elasticsearch integration was one of the mini-projects. It turned out to be somewhat standalone and completed, so sharing it here in case someone would find somehting interesting from it.
This project is an MVP / PoC enabling indexing of documents (in common formats like PDF, Word / Excel / PowerPoint, TXT) stored in ThingWorx repositories with the help of Elasticsearch and then performing full text searches against the documents' content from ThingWorx (mashups or services).
The project is simple and small and only consists of 4 entities, 2 of which are there only for demo purposes. The implemented functionality only covers the main use case - performing full-text search. Advanced stuff, flexibility and additional features are to be implemented depending on the requirements of the particular project and intended use cases. See the accompanying readme and video for the installation steps and the demo / quick overview.
Also, as a by-product I got a working SHA1 hashing service / function in Thingworx. Thingworx itself doesn't expose any functions / services for generating hashes, but it often comes handy. I myself didn't do much, though - just took the code from an external site and created a service in Thingworx, and it was a no-brainer to implement, but it still could turn out be useful for someone.