-
Notifications
You must be signed in to change notification settings - Fork 2
/
index.html
93 lines (86 loc) · 6.08 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
---
layout: default
classes: home
---
<header class="jumbotron home-presentation">
<div class="container">
<div class="row title-row">
<div class="col-sm-6">
<h1><img src="{{ "/img/woopsa-logo-slogan-white.png" | prepend: site.baseurl }}" alt="Woopsa" /></h1>
</div>
<div class="col-sm-6">
<p class="lead">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.</p>
</div>
</div>
<div class="row">
<div class="col-sm-6">
<div class="client-side code-sample-side">
<div class="code-sample-container">
<div class="language"><a class="code-sample-navigate-previous" href="#"><span class="glyphicon glyphicon-chevron-left"></a>JavaScript Browser Client<a class="code-sample-navigate-next" href="#"><span class="glyphicon glyphicon-chevron-right"></a></div>
<pre><code class="js hljs javascript"><span class="hljs-keyword">var</span> woopsa = <span class="hljs-keyword">new</span> WoopsaClient(<span class="hljs-string">"http://demo.woopsa.org/woopsa"</span>, jQuery);
woopsa.read(<span class="hljs-string">"/Temperature"</span>, <span class="hljs-function"><span class="hljs-keyword">function</span>(<span class="hljs-params">result</span>)</span>{
<span class="hljs-comment">//result = 24.2</span>
});</code></pre>
</div>
<div class="code-sample-container">
<div class="language"><a class="code-sample-navigate-previous" href="#"><span class="glyphicon glyphicon-chevron-left"></a>Dynamic C# Client<a class="code-sample-navigate-next" href="#"><span class="glyphicon glyphicon-chevron-right"></a></div>
<pre><code class="cs hljs"><span class="hljs-keyword">dynamic</span> client = <span class="hljs-keyword">new</span> <span class="hljs-type">WoopsaDynamicClient</span>(<span class="hljs-string">"http://demo.woopsa.org/woopsa"</span>);
<span class="hljs-type">Console</span>.WriteLine(client.Temperature);
<span class="hljs-comment">// result = 24.2</span></code></pre>
</div>
<div class="code-sample-container">
<div class="language"><a class="code-sample-navigate-previous" href="#"><span class="glyphicon glyphicon-chevron-left"></a>Regular C# Client<a class="code-sample-navigate-next" href="#"><span class="glyphicon glyphicon-chevron-right"></a></div>
<pre><code class="cs hljs"><span class="hljs-type">WoopsaClient</span> client = <span class="hljs-keyword">new</span> <span class="hljs-type">WoopsaClient</span>(<span class="hljs-string">"http://demo.woopsa.org/woopsa"</span>);
<span class="hljs-type">Console</span>.WriteLine(client.Root.Properties.ByName(<span class="hljs-string">"Temperature"</span>).Value);
<span class="hljs-comment">// result = 24.2</span></code></pre>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="server-side code-sample-side">
<div class="code-sample-container">
<div class="language"><a class="code-sample-navigate-previous" href="#"><span class="glyphicon glyphicon-chevron-left"></a>C# Server<a class="code-sample-navigate-next" href="#"><span class="glyphicon glyphicon-chevron-right"></a></div>
<pre><code class="cs hljs"><span class="hljs-type">WeatherStation</span> station = <span class="hljs-keyword">new</span> <span class="hljs-type">WeatherStation</span>();
<span class="hljs-type">WoopsaServer</span> server = <span class="hljs-keyword">new</span> <span class="hljs-type">WoopsaServer</span>(station);
station.Temperature = <span class="hljs-number">24.2</span>;</code></pre>
</div>
<div class="code-sample-container" style="display:none">
<div class="language"><a class="code-sample-navigate-previous" href="#"><span class="glyphicon glyphicon-chevron-left"></a>Node.js Server<a class="code-sample-navigate-next" href="#"><span class="glyphicon glyphicon-chevron-right"></a></div>
<pre><code class="c hljs"><span class="hljs-keyword">var</span> woopsa = <span class="hljs-keyword">require</span>(<span class="hljs-string">"woopsa"</span>);</span>
<span class="hljs-keyword">var</span> weatherStation</span> = {Temperature: <span class="hljs-number">24.2</span>};
<span class="hljs-keyword">var</span> server = <span class="hljs-keyword">new</span> woopsa.Server(weatherStation);
</code></pre>
</div>
<div class="code-sample-container" style="display:none">
<div class="language"><a class="code-sample-navigate-previous" href="#"><span class="glyphicon glyphicon-chevron-left"></a>Embedded C Server<a class="code-sample-navigate-next" href="#"><span class="glyphicon glyphicon-chevron-right"></a></div>
<pre><code class="c hljs"><span class="hljs-keyword">float</span> Temperature = <span class="hljs-number">24.2</span>;
<span class="hljs-constant">WOOPSA_BEGIN</span>(woopsaEntries)
<span class="hljs-constant">WOOPSA_PROPERTY</span>(Temperature, WOOPSA_TYPE_REAL)
<span class="hljs-constant">WOOPSA_END</span></code></pre>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-12">
<p class="lead-2">Woopsa stands for Web Object Oriented Protocol for Software and Automation.</p>
<p class="lead-2">Woopsa is a protocol that allows you to share the <em>complete</em> object model of your application in a way that's <em>similar to OPC-UA</em>. It's web-based and uses rock-solid foundations such as <strong>HTTP</strong> and <strong>JSON</strong>, 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.</p>
</div>
</div>
<div class="row">
<div class="col-sm-6 col-md-4 col-md-offset-2">
<a href="{{ site.download_url }}" class="btn btn-download"><span class="fa fa-download"></span> Download</a>
</div>
<div class="col-sm-6 col-md-4">
<a href="/get-started" class="btn btn-get-started"><span class="fa fa-rocket"></span> Get started</a>
</div>
</div>
</div>
</header>
{% for post in site.categories['home'] %}
<section class="home-section {{ post.classes }}">
<div class="container">
{{ post.content }}
</div>
</section>
{% endfor %}