class Skype::Connection
Public Class Methods
new()
click to toggle source
# File lib/skype/platforms/linux.rb, line 6 def initialize set_dbus_session_bus_address @bus = DBus.session_bus @service = @bus.service('com.Skype.API').object('/com/Skype') @service.default_iface = 'com.Skype.API' @service.introspect invoke "NAME #{::Skype.config[:app_name]}" invoke "PROTOCOL 99" end
Public Instance Methods
invoke(cmd)
click to toggle source
# File lib/skype/platforms/linux.rb, line 16 def invoke(cmd) @service.Invoke(cmd)[0] end
Private Instance Methods
set_dbus_session_bus_address()
click to toggle source
# File lib/skype/platforms/linux.rb, line 21 def set_dbus_session_bus_address return if ENV['DBUS_SESSION_BUS_ADDRESS'] addrs = [] Dir.glob("#{ENV['HOME']}/.dbus/session-bus/*").each do |fname| File.open fname do |f| addrs.push f.readlines.find{|line| line =~ /^DBUS_SESSION_BUS_ADDRESS=/ }.gsub(/^DBUS_SESSION_BUS_ADDRESS=/,'') end end ENV['DBUS_SESSION_BUS_ADDRESS'] = addrs[0] end