1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
2  * Copyright (c) 2003-2012 by AG-Software 											 *
3  * All Rights Reserved.																 *
4  * Contact information for AG-Software is available at http://www.ag-software.de	 *
5  *																					 *
6  * Licence:																			 *
7  * The agsXMPP SDK is released under a dual licence									 *
8  * agsXMPP can be used under either of two licences									 *
9  * 																					 *
10  * A commercial licence which is probably the most appropriate for commercial 		 *
11  * corporate use and closed source projects. 										 *
12  *																					 *
13  * The GNU Public License (GPL) is probably most appropriate for inclusion in		 *
14  * other open source projects.														 *
15  *																					 *
16  * See README.html for details.														 *
17  *																					 *
18  * For general enquiries visit our website at:										 *
19  * http://www.ag-software.de														 *
20  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
21 
22 using System;
23 
24 namespace agsXMPP
25 {
26 
27 	public class Uri
28 	{
29 		public const string STREAM			= "http://etherx.jabber.org/streams";
30 		public const string CLIENT			= "jabber:client";
31 		public const string SERVER			= "jabber:server";
32 
33 		public const string IQ_AGENTS		= "jabber:iq:agents";
34 		public const string IQ_ROSTER		= "jabber:iq:roster";
35 		public const string IQ_AUTH			= "jabber:iq:auth";
36 		public const string IQ_REGISTER		= "jabber:iq:register";
37 		public const string IQ_OOB			= "jabber:iq:oob";
38 		public const string IQ_LAST			= "jabber:iq:last";
39 		public const string IQ_TIME			= "jabber:iq:time";
40 		public const string IQ_VERSION		= "jabber:iq:version";
41 		public const string IQ_BROWSE		= "jabber:iq:browse";
42 		public const string IQ_SEARCH		= "jabber:iq:search";
43 		public const string IQ_AVATAR		= "jabber:iq:avatar";
44 		public const string IQ_PRIVATE		= "jabber:iq:private";
45         public const string IQ_PRIVACY      = "jabber:iq:privacy";
46 
47 
48 
49         /// <summary>
50         /// JEP-0009: Jabber-RPC
51         /// </summary>
52         public const string IQ_RPC          = "jabber:iq:rpc";
53 
54 
55 		public const string X_DELAY			= "jabber:x:delay";
56 		public const string X_EVENT			= "jabber:x:event";
57 		public const string X_AVATAR		= "jabber:x:avatar";
58 
59 
60 		public const string X_CONFERENCE	= "jabber:x:conference";
61 
62         /// <summary>
63         /// jabber:x:data
64 		/// </summary>
65         public const string X_DATA			= "jabber:x:data";
66 
67 		/// <summary>
68 		/// JEP-0144 Roster Item Exchange
69 		/// </summary>
70 		public const string X_ROSTERX		= "http://jabber.org/protocol/rosterx";
71 
72 
73 		/// <summary>
74         /// Multi User Chat (MUC) JEP-0045
75         /// http://jabber.org/protocol/muc
76 		/// </summary>
77 		public const string MUC				= "http://jabber.org/protocol/muc";
78 		/// <summary>
79 		/// http://jabber.org/protocol/muc#user
80 		/// </summary>
81 		public const string MUC_USER		= "http://jabber.org/protocol/muc#user";
82 		/// <summary>
83 		/// "http://jabber.org/protocol/muc#admin
84 		/// </summary>
85 		public const string MUC_ADMIN		= "http://jabber.org/protocol/muc#admin";
86 		/// <summary>
87 		/// http://jabber.org/protocol/muc#owner
88 		/// </summary>
89 		public const string MUC_OWNER		= "http://jabber.org/protocol/muc#owner";
90 
91 		// Service Disovery
92 		public const string DISCO_ITEMS		= "http://jabber.org/protocol/disco#items";
93 		public const string DISCO_INFO		= "http://jabber.org/protocol/disco#info";
94 
95 		public const string STORAGE_AVATAR	= "storage:client:avatar";
96 
97 		public const string VCARD			= "vcard-temp";
98 
99 		// New XMPP Stuff
100         /// <summary>
101         /// urn:ietf:params:xml:ns:xmpp-streams
102         /// </summary>
103         public const string STREAMS         = "urn:ietf:params:xml:ns:xmpp-streams";
104         public const string STANZAS			= "urn:ietf:params:xml:ns:xmpp-stanzas";
105 		public const string TLS				= "urn:ietf:params:xml:ns:xmpp-tls";
106 		public const string SASL			= "urn:ietf:params:xml:ns:xmpp-sasl";
107 		public const string SESSION			= "urn:ietf:params:xml:ns:xmpp-session";
108 		public const string BIND			= "urn:ietf:params:xml:ns:xmpp-bind";
109 
110 
111         /// <summary>
112         /// jabber:component:accept
113         /// </summary>
114 		public const string ACCEPT			= "jabber:component:accept";
115 
116 		// Features
117 		//<register xmlns='http://jabber.org/features/iq-register'/>
118 		public const string FEATURE_IQ_REGISTER	= "http://jabber.org/features/iq-register";
119         /// <summary>
120         /// Stream Compression http://jabber.org/features/compress
121         /// </summary>
122         public const string FEATURE_COMPRESS    = "http://jabber.org/features/compress";
123 
124 		// Extensions (JEPs)
125 		public const string SHIM				= "http://jabber.org/protocol/shim";
126 		public const string PRIMARY				= "http://jabber.org/protocol/primary";
127         /// <summary>
128         /// JEP-0172 User nickname
129         /// http://jabber.org/protocol/nick
130         /// </summary>
131         public const string NICK                = "http://jabber.org/protocol/nick";
132 
133         /// <summary>
134         /// JEP-0085 Chat State Notifications
135         /// http://jabber.org/protocol/chatstates
136         /// </summary>
137         public const string CHATSTATES          = "http://jabber.org/protocol/chatstates";
138 
139         /// <summary>
140         /// JEP-0138: Stream Compression
141         /// </summary>
142         public const string COMPRESS            = "http://jabber.org/protocol/compress";
143 
144 		/// <summary>
145 		/// JEP-0020: Feature Negotiation http://jabber.org/protocol/feature-neg
146 		/// </summary>
147 		public const string FEATURE_NEG			= "http://jabber.org/protocol/feature-neg";
148 
149 		/// <summary>
150 		/// JEO-0095 http://jabber.org/protocol/si
151 		/// </summary>
152 		public const string SI					= "http://jabber.org/protocol/si";
153 		/// <summary>
154 		/// JEO-0096 http://jabber.org/protocol/si/profile/file-transfer
155 		/// </summary>
156 		public const string SI_FILE_TRANSFER	= "http://jabber.org/protocol/si/profile/file-transfer";
157 
158         /// <summary>
159         /// JEP-0065 SOCKS5 bytestreams
160         /// http://jabber.org/protocol/bytestreams
161         /// </summary>
162         public const string BYTESTREAMS         = "http://jabber.org/protocol/bytestreams";
163 
164 		// JEP-0083
165 		public const string ROSTER_DELIMITER	= "roster:delimiter";
166 
167         // Jive Software Namespaces
168 
169         /// <summary>
170         /// Jivesoftware asterisk-im extension (http://jivesoftware.com/xmlns/phone);
171         /// </summary>
172         public const string JIVESOFTWARE_PHONE  = "http://jivesoftware.com/xmlns/phone";
173 
174         /// <summary>
175         /// JEP-0071: XHTML-IM (http://jivesoftware.com/xmlns/phone)
176         /// </summary>
177         public const string XHTML_IM            = "http://jabber.org/protocol/xhtml-im";
178         public const string XHTML			    = "http://www.w3.org/1999/xhtml";
179 
180 
181         /// <summary>
182         /// XEP-0115: Entity Capabilities (http://jabber.org/protocol/caps)
183         /// </summary>
184         public const string CAPS                = "http://jabber.org/protocol/caps";
185 
186         /// <summary>
187         /// Jingle http://jabber.org/protocol/jingle
188         /// </summary>
189         public const string JINGLE                  = "http://jabber.org/protocol/jingle";
190 
191         /// <summary>
192         /// Jingle audio format description http://jabber.org/protocol/jingle/description/audio
193         /// </summary>
194         public const string JINGLE_AUDIO_DESCRIPTION = "http://jabber.org/protocol/jingle/description/audio";
195 
196         /// <summary>
197         /// Jingle Info audio http://jabber.org/protocol/jingle/info/audio;
198         /// </summary>
199         public const string JINGLE_AUDIO_INFO        = "http://jabber.org/protocol/jingle/info/audio";
200 
201 
202         public const string JINGLE_VIDEO_DESCRIPTION = "http://jabber.org/protocol/jingle/description/video";
203 
204         /// <summary>
205         /// GeoLoc (http://jabber.org/protocol/geoloc)
206         /// </summary>
207         public const string GEOLOC              = "http://jabber.org/protocol/geoloc";
208 
209         /// <summary>
210         /// <para>XMPP ping</para>
211         /// <para>Namespace: urn:xmpp:ping</para>
212         /// <para><seealso cref="http://www.xmpp.org/extensions/xep-0199.html">http://www.xmpp.org/extensions/xep-0199.html</seealso></para>
213         /// </summary>
214         public const string PING                = "urn:xmpp:ping";
215 
216         /// <summary>
217         /// Ad-Hoc Commands (http://jabber.org/protocol/commands)
218         /// </summary>
219         public const string COMMANDS            = "http://jabber.org/protocol/commands";
220 
221         // Pubsub stuff
222         public const string PUBSUB              = "http://jabber.org/protocol/pubsub";
223         public const string PUBSUB_EVENT        = "http://jabber.org/protocol/pubsub#event";
224         public const string PUBSUB_OWNER        = "http://jabber.org/protocol/pubsub#owner";
225 
226         // Http-Binding XEP-0124
227         public const string HTTP_BIND           = "http://jabber.org/protocol/httpbind";
228 
229         /// <summary>
230         /// <para>XEP-0184: Message Receipts</para>
231         /// <para>urn:xmpp:receipts</para>
232         /// </summary>
233         public const string MSG_RECEIPT         = "urn:xmpp:receipts";
234 
235         /// <summary>
236         /// <para>XEP-0048: Bookmark Storage</para>
237         /// <para>storage:bookmarks</para>
238         /// </summary>
239         public const string STORAGE_BOOKMARKS   = "storage:bookmarks";
240 
241         /// <summary>
242         /// <para>XEP-0047: In-Band Bytestreams (IBB)</para>
243         /// <para>http://jabber.org/protocol/ibb</para>
244         /// </summary>
245         public const string IBB                 = "http://jabber.org/protocol/ibb";
246 
247         /// <summary>
248         /// <para></para>
249         /// <para>http://jabber.org/protocol/amp</para>
250         /// </summary>
251         public const string AMP                 = "http://jabber.org/protocol/amp";
252 
253         /// <summary>
254         /// <para>XEP-0153: vCard-Based Avatars</para>
255         /// <para>vcard-temp:x:update</para>
256         /// </summary>
257         public const string VCARD_UPDATE        = "vcard-temp:x:update";
258 
259         public const string URN_TIME            = "urn:xmpp:time";
260 
261         /// <summary>
262         /// <para>XEP-0145 Annotations</para>
263         /// <para>storage:rosternotes</para>
264         /// </summary>
265         public const string STORAGE_ROSTERNOTES = "storage:rosternotes";
266 	}
267 }