forked from onesocialweb/onesocialweb.github.com
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdevelopers-protocol.html
More file actions
125 lines (96 loc) · 7.2 KB
/
Copy pathdevelopers-protocol.html
File metadata and controls
125 lines (96 loc) · 7.2 KB
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
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xml:lang="nl" xmlns="http://www.w3.org/1999/xhtml" lang="nl">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="google-site-verification" content="iEvvoZqIa214KrElTR4eFq9W__unT8UsytZpiEkJYAA" />
<title>Developers - OneSocialWeb - Creating a free, open, and decentralized social networking platform.</title>
<link rel="shortcut icon" type="image/png" href="images/favicon.png">
<link rel="stylesheet" href="style/stylesheet.css" type="text/css" media="screen">
<link rel="stylesheet" href="style/style.css" type="text/css" media="screen">
</head>
<body>
<div id="pagewrapper" class="page_post">
<div id="header">
<div id="home">
<a href="index.html" onfocus="this.blur();" title="Homepage">
<img class="logo" src="images/osw-v1.1.png">
</a>
</div>
</div>
<div id="navigationMenu">
</div>
<div id="contentwrapper">
<div id="page">
<div id="subnavigationMenu">
<ul class="bullets">
<li><a href="developers.html">Developers overview</a></li>
<li><a href="developers-xmpp.html">Why use XMPP?</a></li>
<li><a href="developers-downloads.html">Downloads</a></li>
<li><a href="developers-code.html">Get code</a></li>
<li><a href="developers-protocol.html" class="current">Draft protocol specification</a></li>
<li><a href="developers-presentations.html">Presentations</a></li>
<li><a href="http://wiki.github.com/onesocialweb/osw-openfire-plugin/">Wiki</a></li>
</ul>
</div>
<div class="narrowcolumn">
<h1>Draft protocol specification</h1>
<strong>Last updated - 4 July 2011</strong>
<p>Firstly we would like to state that we did not want to invent new things where we found good existing alternatives.</p>
<p>Onesocialweb is based on an XMPP architecture. The following four <strong>draft</strong> XMPP Protocol extensions have been defined as part of the protocol.
<ul class="bullets">
<li><a href="spec/1.0/osw-activities.html">Activity Streams over XMPP</a>: This specification defines an XMPP protocol extension for sharing, archiving and retrieving generic social networking activities. It supports simple activities like blogging, microblogging, bookmarking, sharing pictures, etc. and also supports custom activities. The activity publishing supports fine grained privacy control: users can assign access control rules on a per activity basis. This protocol aims at providing a flexible platform for social activities management in a decentralized social network, thus enabling all social network use cases related to sharing of activities. The data format for Activities closely follows the <a href="http://activitystrea.ms/" target="_blank">activitystrea.ms</a> standard with a few additions/clarifications. The protocol flow is based on <a href="http://xmpp.org/extensions/xep-0277.html">XEP-0277</a> (Microblogging Over XMPP) and is therefore using <a href="http://xmpp.org/extensions/xep-0163.html">XEP-0163</a> (Personal Eventing Protocol).</li>
<li><a href="spec/1.0/osw-vcard4.html">VCard4 over XMPP</a>: This specification defines an XMPP protocol extension for sharing vcards between users. The protocol enables users to publish their vcard, share it with other users, and query other users for their vcard. The vcard is supporting a fine grained privacy extension: users can assign access control rules on a field per field basis. In addition, users can delegate write access rights to elements of their vcard to other entities. This protocol aims at providing a flexible platform for social profile management in a decentralized social network, thus enabling all social network use cases related to user profiles. The xml data model for vcards is based on the upcoming <a href="http://tools.ietf.org/html/draft-ietf-vcarddav-vcardxml-05">vcarddav-vcardxml</a> standard (also known as vcard4).</li>
<li><a href="spec/1.0/osw-relations.html">Social Relationships</a>: This specification defines an XMPP protocol extension for establishing, sharing, confirming and verifying social relationships between users. The protocol enables a user to establish social relationships (e.g. friend, colleague, member) with an other user, to expose (share) his established relationships with other users, to confirm that a relationship declared by another user is true, and to verify that a relationship declared by a user towards another user is indeed true. Each relationship can be assigned a fine grained privacy control: users can assign access control rules on a relationship per relationship basis. This protocol aims at providing a flexible platform for social relationships management in a decentralized social network, thus enabling all social network use cases related to relationships. The data format is inspired by the work of the <a href="http://gmpg.org/xfn/">XFN standard</a>.</li>
<li><a href="spec/1.0/osw-inbox.html">Personal Eventing Protocol (PEP) Inbox</a>: This specification defines an XMPP protocol extension for offline storage of PEP events in a user inbox (itself a PEP node) so that clients can easily retrieve offline messages. In the future, it could be evolved into a more generic offline PubSub extension, or replaced by an other means to manage offline notifications. The protocol flow is based on <a href="http://xmpp.org/extensions/xep-0060.html">XEP-0060</a> (Publish-Subscribe) and <a href="http://xmpp.org/extensions/xep-0163.html">XEP-0163</a> (Personal Eventing Protocol).</li>
</ul>
</div>
</div>
</div>
<div id="footer">
<div class="blockwrapper">
<div class="block">
<h2>About us</h2>
Learn how this initiative started.
<ul>
<li><a href="about.html">About onesocialweb</a></li>
<li><a href="mailto:contact@onesocialweb.org">Email contact</a></li>
<li><a href="http://www.twitter.com/onesocialweb">Follow the twitter account</a></li>
<li><a href="about-acknowledgements.html">Acknowledgements</a></li>
</ul>
</div>
<div class="block">
<h2>Learn more</h2>
Find out more about onesocialweb!
<ul>
<li><a href="developers.html">For developers</a></li>
<li><a href="users.html">For users</a></li>
<li><a href="operators.html">For operators</a></li>
</ul>
</div>
<div class="block">
<h2>Contribute</h2>
Have great ideas or feedback?
<ul>
<li><a href="http://groups.google.com/group/onesocialweb?lnk=srg">Join the mailinglist</a></li>
</ul>
</div>
<div class="block">
</div>
</div>
<br class="fix"/>
<div id="copyright">
<p>
<span style="font-family: arial,sans-serif;">©</span> 2011 Vodafone Group - onesocialweb is open sourced under an Apache 2 license</p>
</div>
</div>
</div>
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-3039760-12");
pageTracker._trackPageview();
} catch(err) {}</script>
</body></html>