See command for how to issue a _request_do_invite.
This page explains how /invite currently operates in PSYC
This is the code for _request_do_invite in the psyced UNI:
vars["_nick"] = MYNICK; vars["_place"] = place; vars["_nick_place"] = NICKPLACE; vars["_nick_target"] = nick; if (sendmsg(ob, "_notice_invitation", "[_nick] invites you into [_nick_place].", copy(vars), origin)) { vars["_invitation"] = ob; sendmsg(place, "_request_invitation", "[_nick] invites [_nick_target] into [_nick_place].", vars, origin); // room will decide to notify or not.. so no echo }
First the invite is sent to the target, informing her that she's invited to a place. Unless her inexistence can be determined synchronously, the place is instructed to accept the actual invitation. the place will then decide whether to echo the invitation to you, or to tell everyone about it. the place will also decide whether to keep the invitation information for conference control purposes, to ignore it (if the place is public anyway) or to even croak about it (if invitations are forbidden). ideally all messages should share a common tag.