Ϫf!ddlmZmZGddeZGddeZGddeZGdd eZGd d eZgd Zy )) Attribute Interfacec&eZdZdZedZdZy)IProtocolPluginz?Interface for plugins providing an interface to a Words servicezHA single word describing what kind of interface this is (eg, irc or web)cy)abRetrieve a C{twisted.internet.interfaces.IServerFactory} provider @param realm: An object providing C{twisted.cred.portal.IRealm} and L{IChatService}, with which service information should be looked up. @param portal: An object providing C{twisted.cred.portal.IPortal}, through which logins should be performed. N)realmportals 6/usr/lib/python3/dist-packages/twisted/words/iwords.py getFactoryzIProtocolPlugin.getFactoryN)__name__ __module__ __qualname____doc__rnamer rrr rrsI R D rrcBeZdZedZdZd dZdZdZdZ dZ y) IGroupz$A short string, unique among groups.cy)zLInclude the given user in this group. @type user: L{IUser} Nr)users r addz IGroup.addr rNcy)znRemove the given user from this group. @type user: L{IUser} @type reason: C{unicode} Nr)rreasons r removez IGroup.remove#r rcy)zReturn the number of participants in this group. @rtype: L{twisted.internet.defer.Deferred} @return: A Deferred which fires with an C{int} representing the number of participants in this group. Nrrrr sizez IGroup.size*r rcy)aY Broadcast the given message from the given sender to other users in group. The message is not re-transmitted to the sender. @param sender: L{IUser} @type recipient: L{IGroup} @param recipient: This is probably a wart. Maybe it will be removed in the future. For now, it should be the group object the message is being delivered to. @param message: C{dict} @rtype: L{twisted.internet.defer.Deferred} @return: A Deferred which fires with None when delivery has been attempted for all users. Nrsender recipientmessages r receivezIGroup.receive2r rcy)zUChange the metadata associated with this group. @type meta: C{dict} Nr)metas r setMetadatazIGroup.setMetadataGr rcy)z.Return an iterator of all users in this group.Nrrrr iteruserszIGroup.iterusersMr rN) rrrrrrrrr#r&r(rrr rrs+ ; rVsS 0 i $4=Y4=n< )< ~2 I2 jL 9L ^ r