ExistRuby 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d69a45ecda1c1873c78aec72afd253ff922de70c
4
- data.tar.gz: 08849d22208936803dfa1f2843d171380bc12324
3
+ metadata.gz: a106096d1821d115f7a3111553364f33b4b7f37d
4
+ data.tar.gz: bc5e9e8b4d25b89fed5c2ba6a341c1def88f40e3
5
5
  SHA512:
6
- metadata.gz: 1d23699b4737f5d9c054d42492bc4574f136d7129f80a42110045ab4eaf19620287ee04e6e8a50b9af6cd2efc87320effaa3d6b1a150b9f8a6cbb378f35b3a5e
7
- data.tar.gz: bd02dd2099a68485fec457a9d004d71a118f921b35c904dcaa7bf2f9e70c24129f7bdd643c10d3e3c94124810348292195f1494ddf19d91a5d0c31d29d61b31c
6
+ metadata.gz: 133246300d24f56ed68f660e6e562c3a08a3e91956b44315cc3aa87a42a7e6edfb217d04bd22eba81c0996de5990818f54ad7aa9589ee857137eec706fa130dc
7
+ data.tar.gz: b90cea65fdeb85e96921b6e5af3d8278fc0597db53a59aa007109ad86e6db978a7a9590019c85dcfbaad005e8d0b3d38e7e01da6f8571a1669e44bd375476ef0
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'eventmachine'
4
+ require 'ipaddr'
5
+
6
+ class MulticastHandler < EventMachine::Connection
7
+ def receive_data(data)
8
+ puts data
9
+ end
10
+
11
+ def post_init
12
+ port, host = Socket::unpack_sockaddr_in( get_sockname() )
13
+ ip = IPAddr.new( host ).hton + IPAddr.new("0.0.0.0").hton
14
+ set_sock_opt( Socket::IPPROTO_IP, Socket::IP_ADD_MEMBERSHIP, ip )
15
+ end
16
+ end
17
+
data/lib/ExistRuby.rb CHANGED
@@ -1,8 +1,15 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  require 'ExistRuby/ExistMessage_pb'
4
+ require 'ExistRuby/MulticastHandler'
4
5
 
5
6
  class ExistRuby
7
+ def initialize
8
+ host = '239.173.40.5' #组播组主机地址。
9
+ port = 11500 #组播组端口。
10
+
11
+ @networkThread = EM::open_datagram_socket(host, port, MulticastHandler)
12
+ end
6
13
 
7
14
  # Publish a service to the LAN.
8
15
  #
@@ -28,6 +35,6 @@ class ExistRuby
28
35
  packageString=Com::Stupidbeauty::Exist::ExistMessage.encode(existMessage) #序列化为字符串。
29
36
 
30
37
  #发送:
31
- networkThread.castData(packageString) #发送数据。
38
+ @networkThread.castData(packageString) #发送数据。
32
39
  end
33
40
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ExistRuby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hxcan Cai
@@ -18,6 +18,7 @@ extra_rdoc_files: []
18
18
  files:
19
19
  - lib/ExistRuby.rb
20
20
  - lib/ExistRuby/ExistMessage_pb.rb
21
+ - lib/ExistRuby/MulticastHandler.rb
21
22
  homepage: http://rubygems.org/gems/ExistRuby
22
23
  licenses:
23
24
  - MIT