emacs-jabber/jabber-newdisco.el

166 lines
6.3 KiB
EmacsLisp
Raw Normal View History

;;; jabber-newdisco.el --- caching disco API
;; Copyright (C) 2005, 2008 Magnus Henoch
;; Author: Magnus Henoch <mange@freemail.hu>
;; This file is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.
;; This file is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to
;; the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
;; Boston, MA 02111-1307, USA.
;;---
;; Keys are ("jid" . "node"), where "node" is nil if appropriate.
;; Values are (identities features), where each identity is ["name"
;; "category" "type"], and each feature is a string.
(defvar jabber-disco-info-cache (make-hash-table :test 'equal))
;; Keys are ("jid" . "node"). Values are (items), where each
;; item is ["name" "jid" "node"] (some values may be nil).
(defvar jabber-disco-items-cache (make-hash-table :test 'equal))
;;; Info
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(defun jabber-disco-get-info (jc jid node callback closure-data &optional force)
"Get disco info for JID and NODE, using connection JC.
Call CALLBACK with JC and CLOSURE-DATA as first and second
arguments and result as third argument when result is available.
On success, result is (IDENTITIES FEATURES), where each identity is [\"name\"
\"category\" \"type\"], and each feature is a string.
On error, result is the error node, recognizable by (eq (car result) 'error).
If CALLBACK is nil, just fetch data. If FORCE is non-nil,
invalidate cache and get fresh data."
(when force
(remhash (cons jid node) jabber-disco-info-cache))
(let ((result (gethash (cons jid node) jabber-disco-info-cache)))
(if result
(and callback (run-with-timer 0 nil callback jc closure-data result))
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(jabber-send-iq jc jid
"get"
`(query ((xmlns . "http://jabber.org/protocol/disco#info")
,@(when node `((node . ,node)))))
#'jabber-disco-got-info (cons callback closure-data)
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(lambda (jc xml-data callback-data)
(when (car callback-data)
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(funcall (car callback-data) jc (cdr callback-data) (jabber-iq-error xml-data))))
(cons callback closure-data)))))
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(defun jabber-disco-got-info (jc xml-data callback-data)
(let ((jid (jabber-xml-get-attribute xml-data 'from))
(node (jabber-xml-get-attribute (jabber-iq-query xml-data)
'node))
(result
(list
(mapcar
#'(lambda (id)
(vector (jabber-xml-get-attribute id 'name)
(jabber-xml-get-attribute id 'category)
(jabber-xml-get-attribute id 'type)))
(jabber-xml-get-children (jabber-iq-query xml-data) 'identity))
(mapcar
#'(lambda (feature)
(jabber-xml-get-attribute feature 'var))
(jabber-xml-get-children (jabber-iq-query xml-data) 'feature)))))
(puthash (cons jid node) result jabber-disco-info-cache)
(when (car callback-data)
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(funcall (car callback-data) jc (cdr callback-data) result))))
(defun jabber-disco-get-info-immediately (jid node)
"Get cached disco info for JID and NODE.
Return nil if no info available.
Fill the cache with `jabber-disco-get-info'."
(gethash (cons jid node) jabber-disco-info-cache))
;;; Items
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(defun jabber-disco-get-items (jc jid node callback closure-data &optional force)
"Get disco items for JID and NODE, using connection JC.
Call CALLBACK with JC and CLOSURE-DATA as first and second
arguments and items result as third argument when result is
available.
On success, result is a list of items, where each
item is [\"name\" \"jid\" \"node\"] (some values may be nil).
On error, result is the error node, recognizable by (eq (car result) 'error).
If CALLBACK is nil, just fetch data. If FORCE is non-nil,
invalidate cache and get fresh data."
(when force
(remhash (cons jid node) jabber-disco-items-cache))
(let ((result (gethash (cons jid node) jabber-disco-items-cache)))
(if result
(and callback (run-with-timer 0 nil callback jc closure-data result))
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(jabber-send-iq jc jid
"get"
`(query ((xmlns . "http://jabber.org/protocol/disco#items")
,@(when node `((node . ,node)))))
#'jabber-disco-got-items (cons callback closure-data)
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(lambda (jc xml-data callback-data)
(when (car callback-data)
(funcall (car callback-data) jc (cdr callback-data) (jabber-iq-error xml-data))))
(cons callback closure-data)))))
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(defun jabber-disco-got-items (jc xml-data callback-data)
(let ((jid (jabber-xml-get-attribute xml-data 'from))
(node (jabber-xml-get-attribute (jabber-iq-query xml-data)
'node))
(result
(mapcar
#'(lambda (item)
(vector
(jabber-xml-get-attribute item 'name)
(jabber-xml-get-attribute item 'jid)
(jabber-xml-get-attribute item 'node)))
(jabber-xml-get-children (jabber-iq-query xml-data) 'item))))
(puthash (cons jid node) result jabber-disco-items-cache)
(when (car callback-data)
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(funcall (car callback-data) jc (cdr callback-data) result))))
(defun jabber-disco-get-items-immediately (jid node)
(gethash (cons jid node) jabber-disco-items-cache))
;;; Publish
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(defun jabber-disco-publish (jc node item-name item-jid item-node)
"Publish the given item under disco node NODE."
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(jabber-send-iq jc nil
"set"
`(query ((xmlns . "http://jabber.org/protocol/disco#items")
,@(when node `((node . ,node))))
(item ((action . "update")
(jid . ,item-jid)
,@(when item-name
`((name . ,item-name)))
,@(when item-node
`((node . ,item-node))))))
'jabber-report-success "Disco publish"
'jabber-report-success "Disco publish"))
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(defun jabber-disco-publish-remove (jc node item-jid item-node)
"Remove the given item from published disco items."
Revision: mange@freemail.hu--2005/emacs-jabber--cvs-head--0--patch-289 Creator: Magnus Henoch <mange@freemail.hu> Merge multi-account work Patches applied: * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-2 Only output car of events in fsm.el, to avoid overflowing debug buffers * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 Apply 0.1ttn4 patch from Thien-Thi Nguyen * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-4 Don't eval state-name in define-state and define-enter-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-5 Fix previous change * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-6 Apply patches I forgot about * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-7 Add fsm-get-state * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-8 fsm-get-state should really be fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-9 Add edebug declarations * mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-10 Catch and report errors in enter functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--base-0 tag of mange@freemail.hu--2005/emacs-jabber--fsm--0--patch-3 * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-1 Start ewocizing roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-2 Use jabber-roster-update in jabber-process-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-3 Merge from CVS * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-4 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-5 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-6 Use jabber-roster-update in jabber-presence-update-roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-7 Remove unused *xmlq* variable * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-8 Merge fsm change * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-9 Start converting jabber-core and jabber-conn to fsm style * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-10 Further hacking * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-11 Rough hacking at legacy authentication and IQ handling * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-12 Rough hacking at SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-13 Remove some obsolete variables and functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-14 Resource binding, session establishing; refactor roster retrieval * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-15 Remove some jabber-conn global variables. Fix or comment out dependent code. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-16 Add missing parenthesis * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-17 Add fsm-get-state-data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-18 Add :connection to state-data in proper time * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-19 Fix remaining references to global variables * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-20 Fix filter events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-21 Fix various mismatched argument lists * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-22 Surface fixes to jabber-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-23 Merge FSM changes * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-24 Rename jabber-post-connect-hook to jabber-post-connect-hooks * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-25 Merge from CVS (except patch-266) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-26 Support STARTTLS (almost) * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-27 Fix SASL authentication * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-28 Typo: s/hook/hooks/ * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-29 Forget SASL data when not needed * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-30 Store username, server and resource in state data * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-31 Remember which account to use in each chat buffer * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-32 Update signature of jabber-muc-process-message * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-33 Update signature of jabber-vcard-avatars-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-34 Handle roster * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-35 Add missing parenthesis in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-36 Use header for roster ewoc * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-37 Remove trailing newline in jabber-resource-line-format * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-38 Properly update roster display * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-39 Fix double-connect check in jabber-connect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-40 Fix jabber-disconnect * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-41 Ignore resource when checking whether already connected * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-42 Set jabber-account text proporty, and use it in jabber-read-account * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-43 Add connection argument to commands in jabber-disco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-44 Adapt jabber-process-data, jabber-process-disco-{info,items} * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-45 Adapt jabber-version * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-46 Adapt jabber-browse * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-47 Adapt various jabber-presence functions * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-48 Use separate process buffers for different accounts * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-49 Include account property in roster. Fix jabber-chat-with-jid-at-point. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-50 Add jabber-concat-rosters. Use it in jabber-read-jid-completing. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-51 Adapt jabber-report-success * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-52 Adapt jabber-vcard * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-53 Adapt jabber-newdisco * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-54 Start adapting MUC * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-55 Adapt jabber-muc-process-presence and caller * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-56 Fix interactive use of jabber-send-default-presence * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-57 Handle sentinel events in :session-established state * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-58 Support selecting account interactively in jabber-connect. * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-59 Adapt jabber-events * mange@freemail.hu--2005/emacs-jabber--multi-account--0--patch-60 Adapt jabber-history
2007-02-05 21:59:02 +00:00
(jabber-send-iq jc nil
"set"
`(query ((xmlns . "http://jabber.org/protocol/disco#items")
,@(when node `((node . ,node))))
(item ((action . "remove")
(jid . ,item-jid)
,@(when item-node
`((node . ,item-node))))))
'jabber-report-success "Disco removal"
'jabber-report-success "Disco removal"))
(provide 'jabber-newdisco)
;; arch-tag: b47c06aa-cae6-11d9-b1c0-000a95c2fcd0