package obus

  1. Overview
  2. Docs
Pure Ocaml implementation of the D-Bus protocol

Install

Dune Dependency

Authors

Maintainers

Sources

1.2.3.tar.gz
sha256=75703f78015e15d03d0fdba1633a155875daf17d854225658429e72a0df06258
md5=3090a796f0af95e16838d81656ac4b97

doc/obus/OBus_signal/index.html

Module OBus_signalSource

D-Bus signals

Emitting signals
Sourceval emit : 'a OBus_member.Signal.t -> 'b OBus_object.t -> ?peer:OBus_peer.t -> 'a -> unit Lwt.t

emit signal obj ?peer args emits signal from obj. The destinations of the signal are selected as follow:

  • if peer is provided, then the message is sent only to it
  • otherwise, if the the object has an owner, it is sent to the owner,
  • otherwise, the message is broadcasted on all the connections obj is exported on.
Receving signals
Sourcetype 'a t

Type of a signal descriptor. A signal descriptor represent the source of a signal and describes how the value should be transformed.

make signal proxy creates a signal descriptor.

Sourceval make_any : 'a OBus_member.Signal.t -> OBus_peer.t -> (OBus_proxy.t * 'a) t

make_any signal peer creates a signal descriptor for receiving signals from any object of peer.

Sourceval connect : ?switch:Lwt_switch.t -> 'a t -> 'a React.event Lwt.t

connect ?switch sd connects the signal descriptor sd and returns the event which occurs when the given D-Bus signal is received.

Signals transformations and parameters
Sourceval map_event : ((OBus_context.t * 'a) React.event -> (OBus_context.t * 'b) React.event) -> 'a t -> 'b t

map_event f sd transforms with f the event that is created when sd is connected.

Sourceval map : ('a -> 'b) -> 'a t -> 'b t

Simplified version of map_event.

Sourceval map_with_context : (OBus_context.t -> 'a -> 'b) -> 'a t -> 'b t

Same as map but the mapping function also receive the context.

Sourceval with_context : 'a t -> (OBus_context.t * 'a) t
  • returns

    a signal descriptor that returns contexts in which signals are received.

Sourceval with_filters : OBus_match.arguments -> 'a t -> 'a t

with_filters filters sd is the signal descriptor sd with the given list of argument filters. When connected, obus will add this filters to the matching rule send to the message bus, so the bus can use them to drop messages that do not match these filters.

The goal of argument filters is to reduce the number of messages received, and so to reduce the number of wakeup of the program.

Note that match rule management must be activated for filters to take effect (see with_match_rule).

Sourceval with_match_rule : bool -> 'a t -> 'a t

with_match_rule state sd enables or disables the automatic management of matching rules. If the endpoint of the underlying connection is a message bus it defaults to true, otherwise it default to false.

OCaml

Innovation. Community. Security.