Monday, November 08, 2010 at 12:06 AM.

system.verbs.builtins.tcp.im.builtinDrivers.jabber.code.messages.iqVersionRequest

on iqVersionRequest (connection = @system.temp.jabber.connection, dest = "", idTbl = nil) {
	<<Changes
		<<5/14/02; 1:51:34 PM by JB
			<<Changelog created.
	<<iqVersionRequest requests the version from the given user
	
	on addAtt ( XMLadr, name, value ) {
		if not defined ( XMLadr^.["/atts"] ) {
			new ( tableType, @XMLadr^.["/atts"] )};
		XMLadr^.["/atts"].[name] = value};
	if idTbl == nil {
		idTbl = tcp.im.builtinDrivers.jabber.code.idTables.create()};
	local ( result, iqTag, queryTag, id = nameOf (idTbl^));
	new ( tableType, @result );
	bundle { // <iq type="set" id="id">
		iqTag = xml.addTable ( @result, "iq" );
		addAtt (iqTag, "type", "get");
		idTbl^.type = "Version Request";
		addAtt (iqTag, "id", id );
		addAtt (iqTag, "to", dest )};
	bundle { // <query xmlns="jabber:iq:roster">
		queryTag = xml.addTable(iqTag, "query" );
		addAtt (queryTag, "xmlns", "jabber:iq:version")};
	tcp.im.builtinDrivers.jabber.code.writeXML(iqTag, connection: connection)};
iqVersionRequest(@system.temp.jabber.connection, system.temp.jabber.connection.host)



This listing is for code that runs in the OPML Editor environment. I created these listings because I wanted the search engines to index it, so that when I want to look up something in my codebase I don't have to use the much slower search functionality in my object database. Dave Winer.