Package conduit :: Package modules :: Package NetworkModule :: Module Peers
[hide private]

Module Peers

source code

Contains classes for advertising conduit via avahi and for transmitting and receiving python objects over the network.

Parts of this code adapted from glchess (GPLv2) http://glchess.sourceforge.net/ Parts of this code adapted from elisa (GPLv2) Parts of this code adapted from http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/457669

Copyright: John Stowers, 2006 License: GPLv2

Classes [hide private]
  AvahiAdvertiser
Advertises the presence of dataprovider instances on the network using avahi.
  AvahiMonitor
Watches the network for other conduit instances using avahi.
Functions [hide private]
 
byte_array_to_string(s) source code
 
txt_array_to_string_array(t) source code
 
string_to_byte_array(s) source code
 
string_array_to_txt_array(t) source code
 
dict_to_txt_array(txt_dict) source code
 
txt_array_to_dict(array) source code
Variables [hide private]
  log = logging.getLogger("modules.Network")
  AVAHI_SERVICE_NAME = "_conduit._tcp"
  AVAHI_SERVICE_DOMAIN = ""
  PROTOCOL_VERSION = "1"
  PORT_IDX = 0
  VERSION_IDX = 1
  DBUS_INTERFACE_ADDRESS_RESOLVER = 'org.freedesktop.Avahi.Addre...
  DBUS_INTERFACE_DOMAIN_BROWSER = 'org.freedesktop.Avahi.DomainB...
  DBUS_INTERFACE_ENTRY_GROUP = 'org.freedesktop.Avahi.EntryGroup'
  DBUS_INTERFACE_HOST_NAME_RESOLVER = 'org.freedesktop.Avahi.Hos...
  DBUS_INTERFACE_RECORD_BROWSER = 'org.freedesktop.Avahi.RecordB...
  DBUS_INTERFACE_SERVER = 'org.freedesktop.Avahi.Server'
  DBUS_INTERFACE_SERVICE_BROWSER = 'org.freedesktop.Avahi.Servic...
  DBUS_INTERFACE_SERVICE_RESOLVER = 'org.freedesktop.Avahi.Servi...
  DBUS_INTERFACE_SERVICE_TYPE_BROWSER = 'org.freedesktop.Avahi.S...
  DBUS_NAME = 'org.freedesktop.Avahi'
  DBUS_PATH_SERVER = '/'
  DOMAIN_BROWSER_BROWSE = 0
  DOMAIN_BROWSER_BROWSE_DEFAULT = 1
  DOMAIN_BROWSER_BROWSE_LEGACY = 4
  DOMAIN_BROWSER_REGISTER = 2
  DOMAIN_BROWSER_REGISTER_DEFAULT = 3
  ENTRY_GROUP_COLLISION = 3
  ENTRY_GROUP_ESTABLISHED = 2
  ENTRY_GROUP_FAILURE = 4
  ENTRY_GROUP_REGISTERING = 1
  ENTRY_GROUP_UNCOMMITED = 0
  IF_UNSPEC = -1
  LOOKUP_NO_ADDRESS = 8
  LOOKUP_NO_TXT = 4
  LOOKUP_RESULT_CACHED = 1
  LOOKUP_RESULT_LOCAL = 8
  LOOKUP_RESULT_MULTICAST = 4
  LOOKUP_RESULT_OUR_OWN = 16
  LOOKUP_RESULT_STATIC = 32
  LOOKUP_RESULT_WIDE_AREA = 2
  LOOKUP_USE_MULTICAST = 2
  LOOKUP_USE_WIDE_AREA = 1
  PROTO_INET = 0
  PROTO_INET6 = 1
  PROTO_UNSPEC = -1
  PUBLISH_ALLOW_MULTIPLE = 8
  PUBLISH_NO_ANNOUNCE = 4
  PUBLISH_NO_COOKIE = 32
  PUBLISH_NO_PROBE = 2
  PUBLISH_NO_REVERSE = 16
  PUBLISH_UNIQUE = 1
  PUBLISH_UPDATE = 64
  PUBLISH_USE_MULTICAST = 256
  PUBLISH_USE_WIDE_AREA = 128
  SERVER_COLLISION = 3
  SERVER_FAILURE = 4
  SERVER_INVALID = 0
  SERVER_REGISTERING = 1
  SERVER_RUNNING = 2
  SERVICE_COOKIE = 'org.freedesktop.Avahi.cookie'
  SERVICE_COOKIE_INVALID = 0
Variables Details [hide private]

DBUS_INTERFACE_ADDRESS_RESOLVER

Value:
'org.freedesktop.Avahi.AddressResolver'

DBUS_INTERFACE_DOMAIN_BROWSER

Value:
'org.freedesktop.Avahi.DomainBrowser'

DBUS_INTERFACE_HOST_NAME_RESOLVER

Value:
'org.freedesktop.Avahi.HostNameResolver'

DBUS_INTERFACE_RECORD_BROWSER

Value:
'org.freedesktop.Avahi.RecordBrowser'

DBUS_INTERFACE_SERVICE_BROWSER

Value:
'org.freedesktop.Avahi.ServiceBrowser'

DBUS_INTERFACE_SERVICE_RESOLVER

Value:
'org.freedesktop.Avahi.ServiceResolver'

DBUS_INTERFACE_SERVICE_TYPE_BROWSER

Value:
'org.freedesktop.Avahi.ServiceTypeBrowser'