April 2024 - This site, and Kamaelia are being updated. There is significant work needed, and PRs are welcome.


For examples and more explanations, see the module level docs.

class SNACExchanger(Axon.Component.component)

SNACExchanger() -> component that has methods specialized for sending and receiving FLAPs over Channel 2 (FLAPs whose payloads are SNACs).

For a more thorough discussion on SNACs, see module level docs.



Methods defined here


You should be using the inbox/outbox interface, not these methods (except construction). This documentation is designed as a roadmap as to their functionalilty for maintainers and new component developers.


x.__init__(...) initializes x; see x.__class__.__doc__ for signature


receives FLAPs containing SNACs and parses the SNAC data.

sendSnac(self, fam, sub, body)

constructs a SNAC by calling self.makeSnac and sends it out the "outbox".

FIXME: It would be extremely helpful to have a predefined set of SNAC constants or perhaps even classes to pass to this method. For example, self.sendSnac(04, 06, data) is a lot less clear than something like self.sendSnac(MESSAGE_TO_USER, data).

waitSnac(self, fam, sub)

Yields 1 until a SNAC of the requested family and subtype is received. The last value yielded is the payload of the requested SNAC.

for result in self.waitSnac(family, subtype): yield 1.

The body of the requested SNAC will be assigned to "result".


Got a problem with the documentation? Something unclear that could be clearer? Want to help improve it? Constructive criticism is very welcome - especially if you can suggest a better rewording!

Please leave you feedback here in reply to the documentation thread in the Kamaelia blog.

-- Automatic documentation generator, 05 Jun 2009 at 03:01:38 UTC/GMT