mirror of
git://git.psyced.org/git/psyced
synced 2024-08-15 03:25:10 +00:00
how come ; is no longer a valid noop?`huh..?
This commit is contained in:
parent
e1da3b144b
commit
bfebcec916
6 changed files with 44 additions and 12 deletions
|
@ -23,6 +23,27 @@
|
|||
|
||||
#define PPL_NOTIFY 1
|
||||
|
||||
// this model does not handle the "None + Pending Out/In" state in
|
||||
// http://xmpp.org/rfcs/rfc3921.html#substates - in psyc, if two
|
||||
// people intend to subscribe to each other, they are either upgraded
|
||||
// to friendship aka "Both," or rather - the actual subscription state
|
||||
// on the other side is not stored here, except for the special case
|
||||
// of PPL_NOTIFY_OFFERED.
|
||||
//
|
||||
// if a full implementation of XMPP requires local storage of whether the
|
||||
// other side intends to send us presence (even though she can actually do
|
||||
// whatever she wants, so the information doesn't seem very useful and is
|
||||
// in fact very likely to go out of sync), we'd have to add a new flag class.
|
||||
// something like PPL_SUBSCRIBED or PPL_FOLLOW.
|
||||
//
|
||||
// this all clashes with the PSYC model of context subscriptions - we should
|
||||
// throw away all of these PPL_ subscription flags, and model all xmpp
|
||||
// friendship states with generic context subscriptions - no matter if we
|
||||
// are dealing with people, places or other pubsub apps. seen from this
|
||||
// perspective, "None + Pending Out/In" is equivalent to a pair of
|
||||
// _request_context_subscribe's which haven't been answered yet. we need
|
||||
// a generic per-entity way to store these states, below user level.
|
||||
//
|
||||
#define PPL_NOTIFY_IMMEDIATE '8'
|
||||
#define PPL_NOTIFY_DEFAULT PPL_NOTIFY_IMMEDIATE
|
||||
#define PPL_NOTIFY_DELAYED '6'
|
||||
|
|
|
@ -187,7 +187,7 @@ int psyc_sendmsg(mixed target, string mc, mixed data, mapping vars,
|
|||
int showingLog, mixed source, array(mixed) u) {
|
||||
string sname, host, buf, room;
|
||||
int port, usesrv = 1;
|
||||
object o;
|
||||
object ob;
|
||||
mixed t;
|
||||
|
||||
unless (u[UHost]) {
|
||||
|
@ -246,15 +246,15 @@ int psyc_sendmsg(mixed target, string mc, mixed data, mapping vars,
|
|||
if (query_udp_port() == port && is_localhost(host)) {
|
||||
// this happens when a psyc client sends to a local
|
||||
// target that hasn't been incarnated yet...
|
||||
o = find_psyc_object(u);
|
||||
ob = find_psyc_object(u);
|
||||
// cache the resulting object for the url
|
||||
if (o) {
|
||||
if (ob) {
|
||||
P2(("psyc_sendmsg registering %O for %O found by parsing uniform\n",
|
||||
target, o))
|
||||
register_target(target, o);
|
||||
target, ob))
|
||||
register_target(target, ob);
|
||||
}
|
||||
#ifndef __PIKE__ // TPD
|
||||
return sendmsg(o, mc, data, vars, source);
|
||||
return sendmsg(ob, mc, data, vars, source);
|
||||
#endif
|
||||
// or deliver directly?
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue