Infinity.DiscoveryAvahi

g GObject.GInterface GObject.GInterface Infinity.Discovery Infinity.Discovery GObject.GInterface->Infinity.Discovery Infinity.LocalPublisher Infinity.LocalPublisher GObject.GInterface->Infinity.LocalPublisher GObject.Object GObject.Object Infinity.DiscoveryAvahi Infinity.DiscoveryAvahi GObject.Object->Infinity.DiscoveryAvahi Infinity.Discovery->Infinity.DiscoveryAvahi Infinity.LocalPublisher->Infinity.DiscoveryAvahi

Subclasses:

None

Methods

Inherited:

GObject.Object (37), Infinity.Discovery (7), Infinity.LocalPublisher (2)

Structs:

GObject.ObjectClass (5)

class

new (io, manager, creds, sasl_context, sasl_mechanisms)

get_keepalive ()

get_security_policy ()

set_keepalive (keepalive)

set_security_policy (plcy)

Virtual Methods

Inherited:

GObject.Object (7), Infinity.Discovery (7), Infinity.LocalPublisher (2)

Properties

Name

Type

Flags

Short Description

credentials

Infinity.CertificateCredentials

r/w

The GnuTLS certificate credentials used for encrypting XMPP streams

io

Infinity.Io

r/w/co

The IO object used for watching sockets and timeouts

keepalive

Infinity.Keepalive

r/w

The keepalive settings for new connections

sasl-context

Infinity.SaslContext

r/w

The SASL context used for authentication

sasl-mechanisms

str

r/w

The accepted SASL mechanisms for authentication

security-policy

Infinity.XmppConnectionSecurityPolicy

r/w

How to decide whether to use TLS

xmpp-manager

Infinity.XmppManager

r/w/co

The XMPP manager to register resolved XMPP connections

Signals

Inherited:

GObject.Object (1), Infinity.Discovery (2)

Fields

Inherited:

GObject.Object (1), Infinity.Discovery (2)

Name

Type

Access

Description

parent

GObject.Object

r

Class Details

class Infinity.DiscoveryAvahi(**kwargs)
Bases:

GObject.Object, Infinity.Discovery, Infinity.LocalPublisher

Abstract:

No

Structure:

Infinity.DiscoveryAvahiClass

Infinity.DiscoveryAvahi is an opaque data type. You should only access it via the public API functions.

classmethod new(io, manager, creds, sasl_context, sasl_mechanisms)
Parameters:
Returns:

A new Infinity.DiscoveryAvahi.

Return type:

Infinity.DiscoveryAvahi

Created a new Infinity.DiscoveryAvahi object which can be used to publish and discovery Infinote services on the local network. When resolving a Infinity.DiscoveryInfo (which means obtaining a Infinity.XmlConnection for the discovered service) a new Infinity.XmppConnection needs to be created if there is not already one for the destination host in manager. Such connections are created with the creds and sasl_context parameters. These may be None in which case Infinity.XmppConnection uses builtin credentials or a builtin context, respectively.

If this Infinity.DiscoveryAvahi is not used to discover services but only to publish any, then creds, sasl_context and sasl_mechanisms are ignored and can safely set to be None.

sasl_mechanisms specifies allowed mechanisms used for authentication with the server. It can be None, in which case all available mechanisms are accepted.

get_keepalive()
Returns:

A Infinity.Keepalive set for new connections, owned by self.

Return type:

Infinity.Keepalive

Returns the keepalive settings that will be used for new connections.

get_security_policy()
Returns:

The current security policy.

Return type:

Infinity.XmppConnectionSecurityPolicy

Returns the current security policy used for new Infinity.XmppConnection s.

set_keepalive(keepalive)
Parameters:

keepalive (Infinity.Keepalive) – The new keepalive configuration.

Sets the keepalive settings for newly created connections. It does not affect already existing connections.

set_security_policy(plcy)
Parameters:

plcy (Infinity.XmppConnectionSecurityPolicy) – The new security policy.

Sets the Infinity.XmppConnectionSecurityPolicy for newly created Infinity.XmppConnection s. It does not affect already existing connections.

Property Details

Infinity.DiscoveryAvahi.props.credentials
Name:

credentials

Type:

Infinity.CertificateCredentials

Default Value:

None

Flags:

READABLE, WRITABLE

The GnuTLS certificate credentials used for encrypting XMPP streams

Infinity.DiscoveryAvahi.props.io
Name:

io

Type:

Infinity.Io

Default Value:

None

Flags:

READABLE, WRITABLE, CONSTRUCT_ONLY

The IO object used for watching sockets and timeouts

Infinity.DiscoveryAvahi.props.keepalive
Name:

keepalive

Type:

Infinity.Keepalive

Default Value:

None

Flags:

READABLE, WRITABLE

The keepalive settings for new connections

Infinity.DiscoveryAvahi.props.sasl_context
Name:

sasl-context

Type:

Infinity.SaslContext

Default Value:

None

Flags:

READABLE, WRITABLE

The SASL context used for authentication

Infinity.DiscoveryAvahi.props.sasl_mechanisms
Name:

sasl-mechanisms

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE

The accepted SASL mechanisms for authentication

Infinity.DiscoveryAvahi.props.security_policy
Name:

security-policy

Type:

Infinity.XmppConnectionSecurityPolicy

Default Value:

Infinity.XmppConnectionSecurityPolicy.BOTH_PREFER_TLS

Flags:

READABLE, WRITABLE

How to decide whether to use TLS

Infinity.DiscoveryAvahi.props.xmpp_manager
Name:

xmpp-manager

Type:

Infinity.XmppManager

Default Value:

None

Flags:

READABLE, WRITABLE, CONSTRUCT_ONLY

The XMPP manager to register resolved XMPP connections