warchat 0.0.8 → 0.0.9

Sign up to get free protection for your applications and to get access to all the features.
@@ -5,7 +5,7 @@ module Warchat
5
5
  attr_accessor :on_message,:on_presence,:on_logout,:on_fail,:on_establish
6
6
  attr_accessor :on_message_afk,:on_message_dnd,:on_message_guild_chat,:on_message_motd,:on_message_officer_chat,:on_message_whisper,:on_chat_logout
7
7
 
8
- attr_reader :session
8
+ attr_reader :session,:character_name,:character_realm
9
9
 
10
10
  def initialize
11
11
  @session = Warchat::Network::Session.new
@@ -33,11 +33,12 @@ module Warchat
33
33
  send(m,response) if respond_to? m
34
34
  end
35
35
 
36
- def login character_name,character_realm
36
+ def login *args
37
+ @character_name,@character_realm = args
37
38
  [character_name,character_realm].each do |s| s.respond_to? :force_encoding and s.force_encoding(__ENCODING__) end
38
39
  request = Warchat::Network::Request.new("/chat-login",:options=>{:mature_filter=>'false'},:n=>character_name,:r=>character_realm)
39
40
  session.send_request(request)
40
- @timer = Warchat::Timer.new(30,&method(:keep_alive))
41
+ @timer = Warchat::Timer.new(30) do keep_alive end
41
42
  end
42
43
 
43
44
  def logout
@@ -81,6 +82,7 @@ module Warchat
81
82
  end
82
83
 
83
84
  def keep_alive
85
+ puts 'keep alive'
84
86
  request = Warchat::Network::Request.new("/ah-mail",:n=>character_name,:r=>character_realm)
85
87
  session.send_request(request)
86
88
  end
@@ -90,8 +92,8 @@ module Warchat
90
92
  session.send_request(request)
91
93
  end
92
94
 
93
- def whisper(msg, char_id)
94
- request = Warchat::Network::Request.new("/chat-whisper",:to=>char_id,:body=>msg,:chatSessionId=>@chat_session_id)
95
+ def whisper(msg, name)
96
+ request = Warchat::Network::Request.new("/chat-whisper",:to=>"character:#{name}:#{character_realm.downcase}",:body=>msg,:chatSessionId=>@chat_session_id)
95
97
  session.send_request(request)
96
98
  end
97
99
  end
@@ -13,7 +13,9 @@ module Warchat
13
13
 
14
14
  def substream l
15
15
  sub = @socket.read(l)
16
- sub << @socket.read(l-sub.length) until sub.length >= l
16
+ until sub.length >= l
17
+ sub << @socket.read(l-sub.length)
18
+ end
17
19
  sub
18
20
  end
19
21
 
@@ -1,4 +1,4 @@
1
1
  # encoding: ASCII-8BIT
2
2
  module Warchat
3
- VERSION = "0.0.8"
3
+ VERSION = "0.0.9"
4
4
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: warchat
3
3
  version: !ruby/object:Gem::Version
4
- hash: 15
5
- prerelease:
4
+ hash: 13
5
+ prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 8
10
- version: 0.0.8
9
+ - 9
10
+ version: 0.0.9
11
11
  platform: ruby
12
12
  authors:
13
13
  - Zachary Gavin
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-05-17 00:00:00 -04:00
18
+ date: 2011-05-18 00:00:00 -04:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -110,7 +110,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
110
110
  requirements: []
111
111
 
112
112
  rubyforge_project: warchat
113
- rubygems_version: 1.5.0
113
+ rubygems_version: 1.3.7
114
114
  signing_key:
115
115
  specification_version: 3
116
116
  summary: A simple interface to World of Warcraft Remote Guild Chat based off Eike Siewertsen's C# implementation