Sha256: b2fe4b501e8c5034b07c46fff7b5c51bb97e126be3b1f7d50cdda1a7cea7df75

Contents?: true

Size: 1.38 KB

Versions: 10

Compression:

Stored size: 1.38 KB

Contents

require 'rest-client'

module Bot
  module Adapter
    class Kik < Base

      AUTH_URL = "https://auth.kik.com/verification/v1/check".freeze
      MESSAGING_URL = "https://engine.apikik.com/api/v1/message".freeze
      PROFILE_URL = 'https://api.kik.com/v1/user'.freeze

      def send_messages(messages, from)
        Rails.logger.error "\n\n\nSending:\n"
        Rails.logger.error messages.to_json
        Rails.logger.error "\n\n\n"

        RestClient::Request.execute({
          method: :post,
          user: config(from)[:bot_user],
          password: config(from)[:bot_token],
          url: MESSAGING_URL,
          payload: { messages: messages }.to_json,
          headers: { content_type: :json }
        })
      rescue Exception => e
        Rails.logger.error "\n\n\nError:\n"
        Rails.logger.error e.response
        Rails.logger.error "\n\n\n"
        raise e
      end

      def get_profile_image(username, as_user)
        profile = get_profile(username, as_user)
        profile['profilePicUrl'] || ''
      end

    protected

      def get_profile(username, from)
        response = RestClient::Request.execute(
          method: :get,
          url: "#{PROFILE_URL}/#{username}",
          user: config(from)[:bot_user],
          password: config(from)[:bot_token],
          headers: { content_type: :json }
        )

        JSON.parse(response)
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
bot-0.0.35 lib/bot/adapters/kik.rb
bot-0.0.34 lib/bot/adapters/kik.rb
bot-0.0.33 lib/bot/adapters/kik.rb
bot-0.0.32 lib/bot/adapters/kik.rb
bot-0.0.31 lib/bot/adapters/kik.rb
bot-0.0.30 lib/bot/adapters/kik.rb
bot-0.0.29 lib/bot/adapters/kik.rb
bot-0.0.28 lib/bot/adapters/kik.rb
bot-0.0.27 lib/bot/adapters/kik.rb
bot-0.0.26 lib/bot/adapters/kik.rb