Class RemoteModule
In: lib/rbot/core/remote.rb
Parent: CoreBotModule
User HTTPResponse BasicUserMessage Bot\n[lib/rbot/core/remote.rb\nlib/rbot/core/utils/extends.rb\nlib/rbot/core/utils/filters.rb\nlib/rbot/core/utils/wordlist.rb] HttpUtil RemoteModule RemoteCoreBotModule CoreBotModule lib/rbot/core/userdata.rb lib/rbot/core/utils/httputil.rb lib/rbot/core/utils/extends.rb lib/rbot/core/remote.rb lib/rbot/core/utils/httputil.rb ParseTime Utils (null) dot/f_15.png

Methods

Included Modules

RemoteCoreBotModule

Public Class methods

[Source]

     # File lib/rbot/core/remote.rb, line 328
328:   def initialize
329:     super
330:     @port = @bot.config['remote.port']
331:     @host = @bot.config['remote.host']
332:     @drb = nil
333:     begin
334:       start_service if @bot.config['remote.autostart']
335:     rescue => e
336:       error "couldn't start remote service provider: #{e.inspect}"
337:     end
338:   end

Public Instance methods

[Source]

     # File lib/rbot/core/remote.rb, line 350
350:   def cleanup
351:     stop_service
352:     super
353:   end

[Source]

     # File lib/rbot/core/remote.rb, line 355
355:   def handle_start(m, params)
356:     if @drb
357:       rep = "remote service provider already running"
358:       rep << " on port #{@port}" if m.private?
359:     else
360:       begin
361:         start_service(@port)
362:         rep = "remote service provider started"
363:         rep << " on port #{@port}" if m.private?
364:       rescue
365:         rep = "couldn't start remote service provider"
366:       end
367:     end
368:     m.reply rep
369:   end

[Source]

     # File lib/rbot/core/remote.rb, line 375
375:   def remote_login(m, params)
376:     id = @bot.auth.remote_login(params[:botuser], params[:password])
377:     raise "login failed" unless id
378:     return id
379:   end

[Source]

     # File lib/rbot/core/remote.rb, line 371
371:   def remote_test(m, params)
372:     @bot.say params[:channel], "This is a remote test"
373:   end

[Source]

     # File lib/rbot/core/remote.rb, line 340
340:   def start_service
341:     raise "Remote service provider already running" if @drb
342:     @drb = DRb.start_service("druby://#{@host}:#{@port}", @bot.remote_object)
343:   end

[Source]

     # File lib/rbot/core/remote.rb, line 345
345:   def stop_service
346:     @drb.stop_service if @drb
347:     @drb = nil
348:   end

[Validate]