https://github.com/rubyonworld/skype-ruby
Skype Desktop API Ruby wrapper for Mac/Linux.
https://github.com/rubyonworld/skype-ruby
api desktop linux mac ruby skype
Last synced: 2 months ago
JSON representation
Skype Desktop API Ruby wrapper for Mac/Linux.
- Host: GitHub
- URL: https://github.com/rubyonworld/skype-ruby
- Owner: RubyOnWorld
- License: mit
- Created: 2022-09-27T15:46:46.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2022-09-28T00:32:43.000Z (over 3 years ago)
- Last Synced: 2025-10-24T04:46:18.717Z (8 months ago)
- Topics: api, desktop, linux, mac, ruby, skype
- Language: Ruby
- Homepage:
- Size: 53.7 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: History.txt
- License: LICENSE.txt
Awesome Lists containing this project
README
Skype
=====
[Skype Desktop API](http://dev.skype.com/desktop-api-reference) Ruby wrapper for Mac/Linux.
- https://github.com/shokai/skype-ruby
- http://rubygems.org/gems/skype
Platforms
---------
- AppleScript + Mac OSX
- DBus + Linux (testing on Ubuntu 12.04)
Installation
------------
for Mac
% gem install skype
% skype-chat
for Linux
% gem install skype ruby-dbus
% skype-chat
Gemfile
```ruby
gem "skype"
gem "ruby-dbus" if RUBY_PLATFORM =~ /linux/i
```
Usage
-----
please read [API Reference](http://dev.skype.com/desktop-api-reference) before use.
### load
```ruby
require 'rubygems'
require 'skype'
Skype.config :app_name => "my_skype_app"
```
### Skype API
send message
```ruby
Skype.message "USER_NAME", "hello!!"
Skype.exec "MESSAGE USER_NAME hello!!" # execute API directly
```
call
```ruby
Skype.call "USER_NAME"
Skype.exec "CALL USER_NAME"
```
video call
```ruby
Skype.exec "VIDEOCALL USER_NAME"
```
### Chat API
find a chat
```ruby
chat = Skype.chats.find{|c| c.members.include? "shokaishokai" and c.topic =~ /testchat/ }
```
post message to the chat
```ruby
chat.post "hello chat!!"
```
show chat messages
```ruby
chat.messages.each do |m|
puts m
end
```
### Call API
call
```ruby
call = Skype.call "shokaishokai"
```
check status
```ruby
puts call.status # => :routing, :ringing, :inprogress, :finished, :missed, :cancelled
puts call.talking? # => true, false
```
hangup
```ruby
call.hangup
```
Samples
-------
- https://github.com/shokai/skype-ruby/tree/master/samples
- https://github.com/shokai/skype-ruby/tree/master/bin
Test
----
test requires 2 skype accounts.
% gem install bundler
% bundle install
% export SKYPE_FROM=your_skype_name1
% export SKYPE_TO=your_skype_name2
% rake test
Contributing
------------
1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request