Woopsa is a protocol that's simple, lightweight, free, open-source, web and object-oriented, publish-subscribe, real-time capable and Industry 4.0 ready. It contributes to the revolution of the Internet of Things.
var woopsa = new WoopsaClient("http://demo.woopsa.org/woopsa", jQuery);
woopsa.read("/Temperature", function(result){
//result = 24.2
});
dynamic client = new WoopsaDynamicClient("http://demo.woopsa.org/woopsa");
Console.WriteLine(client.Temperature);
// result = 24.2
Woopsa stands for Web Object Oriented Protocol for Software and Automation.
Woopsa is a protocol that allows you to share the complete object model of your application in a way that's similar to OPC-UA. It's web-based and uses rock-solid foundations such as HTTP and JSON, which makes it work with your browser. It allows you to remotely access structured data between applications in different languages like C#, JavaScript and C.
Simple! All requests are made using the standard HTTP protocol. There are only 4 verbs: read, write, invoke and meta. The response is pure JSON and contains the value as well as type information. Optionnaly, a timestamp can be added so you can keep track of the evolution of data over time.
Woopsa's simplicity is what distinguishes it from every other industrial protocol out there. However, Woopsa extensions, which are published as regular Woopsa methods, add powerful mechanisms like multiple requests or even the publish/subscribe pattern.
GET /woopsa/read/Temperature
{"Value":24.2,"Type":"Real"}
Woopsa is based on solid foundations everybody knows, so it takes very little effort to use it in your own applications.
All it takes to understand what Woopsa can do is to take a look at our "get started" guide and then take a look at the simple UML model.
Once you've got that figured out, you can dig a bit deeper and read our source code — it's free as freedom!
If you're interested, you can also read the complete specifications to the protocol!