Commit 96b99ad

mo <mo.khan@gmail.com>
2018-04-27 22:09:27
route to the default router.
1 parent 4ad4c6e
lib/del/connection.rb
@@ -10,6 +10,7 @@ module Del
 
     def connect(robot)
       client.on_exception do |error, connection, error_source|
+        Del.logger.error(error)
         disconnect
       end
       client.connect(configuration[:host])
lib/del/default_router.rb
@@ -0,0 +1,7 @@
+module Del
+  class DefaultRouter
+    def route(message)
+      Del.logger.debug(message)
+    end
+  end
+end
lib/del/robot.rb
@@ -1,6 +1,6 @@
 module Del
   class Robot
-    attr_reader :connection
+    attr_reader :connection, :router
 
     def initialize(configuration:)
       @connection = Connection.new(
@@ -8,6 +8,7 @@ module Del
         users: users,
         rooms: rooms,
       )
+      @router = configuration[:router]
     end
 
     def get_funky!
@@ -18,7 +19,7 @@ module Del
     end
 
     def receive(message)
-      send_message(message.from, message.body)
+      router.route(message)
     end
 
     def send_message(jid, message)
lib/del.rb
@@ -1,10 +1,12 @@
 require "dotenv"
+require "logger"
 require "xmpp4r"
 require "xmpp4r/muc/helper/mucbrowser"
 require "xmpp4r/muc/helper/simplemucclient"
 require "xmpp4r/roster/helper/roster"
 
 require "del/connection"
+require "del/default_router"
 require "del/robot"
 require "del/room_repository"
 require "del/user"
@@ -30,6 +32,12 @@ module Del
       jid: ENV.fetch("DEL_JID"),
       muc_domain: ENV.fetch("DEL_MUC_DOMAIN"),
       password: ENV.fetch("DEL_PASSWORD"),
+      router: DefaultRouter.new,
+      logger: Logger.new(STDOUT)
     }
   end
+
+  def self.logger
+    @logger ||= configuration[:logger]
+  end
 end