All Projects → mvidner → Ruby Dbus

mvidner / Ruby Dbus

Licence: lgpl-2.1
A Ruby binding for DBus

Programming Languages

ruby
36898 projects - #4 most used programming language

Labels

Projects that are alternatives of or similar to Ruby Dbus

Bdtunnel
BoutDuTunnel is able to create virtual connections tunnelled in HTTP requests.
Stars: ✭ 78 (-45.07%)
Mutual labels:  ipc
Zetaipc
A tiny .NET library to do inter-process communication (IPC) between different processes on the same machine.
Stars: ✭ 111 (-21.83%)
Mutual labels:  ipc
Signal Cli
signal-cli provides an unofficial commandline and dbus interface for signalapp/libsignal-service-java
Stars: ✭ 2,117 (+1390.85%)
Mutual labels:  dbus
Jocket
Low-latency java socket implementation (using shared memory)
Stars: ✭ 83 (-41.55%)
Mutual labels:  ipc
Flying Pigeon
flying-pigeon 是一个IPC 跨进程通信组件,底层是匿名内存+Binder , 突破1MB大小限制,无需写AIDL文件,让实现跨进程通信就像写一个接口一样简单
Stars: ✭ 97 (-31.69%)
Mutual labels:  ipc
Sgf
This is a Smart Game Foundation (Not Framework)
Stars: ✭ 122 (-14.08%)
Mutual labels:  ipc
Discordipc
Connect locally to the Discord client using IPC for a subset of RPC features like Rich Presence and Activity Join/Spectate
Stars: ✭ 66 (-53.52%)
Mutual labels:  ipc
Jstp
Fast RPC for browser and Node.js based on TCP, WebSocket, and MDSF
Stars: ✭ 132 (-7.04%)
Mutual labels:  ipc
Reactor Netty
TCP/HTTP/UDP/QUIC client/server with Reactor over Netty
Stars: ✭ 1,743 (+1127.46%)
Mutual labels:  ipc
Kdeconnect Chrome Extension
A browser extension to send pages and content from your browser to connected KDE Connect devices.
Stars: ✭ 124 (-12.68%)
Mutual labels:  dbus
Ipc
Public domain single header inter process communication primitives
Stars: ✭ 85 (-40.14%)
Mutual labels:  ipc
Python Dbus Next
🚌 The next great DBus library for Python with asyncio support
Stars: ✭ 95 (-33.1%)
Mutual labels:  dbus
Go Systemd
Go bindings to systemd socket activation, journal, D-Bus, and unit files
Stars: ✭ 1,756 (+1136.62%)
Mutual labels:  dbus
Zabbix Module Systemd
Native systemd monitoring for Zabbix
Stars: ✭ 81 (-42.96%)
Mutual labels:  dbus
Browser Media Keys
Lets you control many web players using the media keys on your keyboard.
Stars: ✭ 125 (-11.97%)
Mutual labels:  dbus
Traffic Shm
traffic-shm (Anna) is a Java based lock free IPC library.
Stars: ✭ 72 (-49.3%)
Mutual labels:  ipc
Qmlnotify
Awesome notification server in QML
Stars: ✭ 114 (-19.72%)
Mutual labels:  dbus
Wpantund
Wireless Network Interface Daemon for Low-Power Wireless SoCs
Stars: ✭ 133 (-6.34%)
Mutual labels:  dbus
Shadesmar
Fast C++ IPC using shared memory (with msgpack)
Stars: ✭ 126 (-11.27%)
Mutual labels:  ipc
Pyro5
Pyro 5 - Python remote objects for modern python versions
Stars: ✭ 123 (-13.38%)
Mutual labels:  ipc

Ruby D-Bus

D-Bus is an interprocess communication mechanism for Linux. Ruby D-Bus is a pure Ruby library for writing clients and services for D-Bus.

Gem Version Build Status Dependency Status Code Climate Coverage Status

Example

Check whether the system is on battery power via UPower

require "dbus"
sysbus = DBus.system_bus
upower_service   = sysbus["org.freedesktop.UPower"]
upower_object    = upower_service["/org/freedesktop/UPower"]
upower_object.introspect
upower_interface = upower_object["org.freedesktop.UPower"]
on_battery       = upower_interface["OnBattery"]
if on_battery
  puts "The computer IS on battery power."
else
  puts "The computer IS NOT on battery power."
end

Requirements

  • Ruby 2.0 or newer.

Installation

  • gem install ruby-dbus

Features

Ruby D-Bus currently supports the following features:

  • Connecting to local buses.
  • Accessing remote services, objects and interfaces.
  • Invoking methods on remote objects synchronously and asynchronously.
  • Catch signals on remote objects and handle them via callbacks.
  • Remote object introspection.
  • Walking object trees.
  • Creating services and registering them on the bus.
  • Exporting objects with interfaces on a bus for remote use.
  • Rubyish D-Bus object and interface syntax support that automatically allows for introspection.
  • Emitting signals on exported objects.

Usage

See some of the examples in the examples/ subdirectory of the tarball. Also, check out the included tutorial (in Markdown format) in doc/Tutorial.md or view it online on https://github.com/mvidner/ruby-dbus/blob/master/doc/Tutorial.md .

License

Ruby D-Bus is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].