Class: MatrixQQ::QQ::Log
- Inherits:
-
Object
- Object
- MatrixQQ::QQ::Log
- Defined in:
- lib/matrix_qq/qq/log.rb
Overview
Log message to stdout
Instance Method Summary collapse
-
#initialize(dbus, _, info) ⇒ Log
constructor
A new instance of Log.
- #log_message(name, message) ⇒ Object
- #log_room(groupid) ⇒ Object
- #message(messages) ⇒ Object
- #room(groupid) ⇒ Object
- #run ⇒ Object
- #user(user, group_id = nil) ⇒ Object
Constructor Details
#initialize(dbus, _, info) ⇒ Log
Returns a new instance of Log.
5 6 7 8 |
# File 'lib/matrix_qq/qq/log.rb', line 5 def initialize(dbus, _, info) @dbus = dbus @info = info end |
Instance Method Details
#log_message(name, message) ⇒ Object
27 28 29 |
# File 'lib/matrix_qq/qq/log.rb', line 27 def (name, ) puts "#{name}: #{message}" end |
#log_room(groupid) ⇒ Object
31 32 33 |
# File 'lib/matrix_qq/qq/log.rb', line 31 def log_room(groupid) puts "#{room(groupid)}:" end |
#message(messages) ⇒ Object
18 19 20 21 22 23 24 25 |
# File 'lib/matrix_qq/qq/log.rb', line 18 def () .inject('') do |obj, msg| obj + case msg['type'] when 'at' then "@#{user msg['data']['qq'], @info['group_id']} " else QQ.cq_call msg end end end |
#room(groupid) ⇒ Object
35 36 37 |
# File 'lib/matrix_qq/qq/log.rb', line 35 def room(groupid) groupid end |
#run ⇒ Object
10 11 12 13 14 15 16 |
# File 'lib/matrix_qq/qq/log.rb', line 10 def run return unless @info.is_a? Hash log_room @info['group_id'] if @info.key? 'group_id' msg = @info['message'] sender = user @info['user_id'], @info['group_id'] sender, msg end |
#user(user, group_id = nil) ⇒ Object
39 40 41 42 43 44 45 46 47 |
# File 'lib/matrix_qq/qq/log.rb', line 39 def user(user, group_id = nil) if group_id.nil? return @dbus.get_stranger_info(user_id: user)['nickname'] end info = @dbus.get_group_member_info(user_id: user, group_id: group_id) info = info['data'] name = info['card'] name == '' ? info['nickname'] : name end |