mirror of
				https://github.com/lingble/chatwoot.git
				synced 2025-10-30 18:47:51 +00:00 
			
		
		
		
	Bug: Fix autoload_paths for facebook bot (#877)
* Fix autoload_paths for facebook bot
This commit is contained in:
		| @@ -1,19 +0,0 @@ | |||||||
| # app/bot/facebook_bot.rb |  | ||||||
| require 'facebook/messenger' |  | ||||||
| include Facebook::Messenger |  | ||||||
|  |  | ||||||
| Bot.on :message do |message| |  | ||||||
|   response = ::Integrations::Facebook::MessageParser.new(message) |  | ||||||
|   ::Integrations::Facebook::MessageCreator.new(response).perform |  | ||||||
| end |  | ||||||
|  |  | ||||||
| Bot.on :delivery do |delivery| |  | ||||||
|   # delivery.ids       # => 'mid.1457764197618:41d102a3e1ae206a38' |  | ||||||
|   # delivery.sender    # => { 'id' => '1008372609250235' } |  | ||||||
|   # delivery.recipient # => { 'id' => '2015573629214912' } |  | ||||||
|   # delivery.at        # => 2016-04-22 21:30:36 +0200 |  | ||||||
|   # delivery.seq       # => 37 |  | ||||||
|   updater = Integrations::Facebook::DeliveryStatus.new(delivery) |  | ||||||
|   updater.perform |  | ||||||
|   puts "Human was online at #{delivery.at}" |  | ||||||
| end |  | ||||||
							
								
								
									
										22
									
								
								app/bot/facebook_bot.rb
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								app/bot/facebook_bot.rb
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,22 @@ | |||||||
|  | require 'facebook/messenger' | ||||||
|  |  | ||||||
|  | class FacebookBot | ||||||
|  |   include Facebook::Messenger | ||||||
|  |  | ||||||
|  |   Bot.on :message do |message| | ||||||
|  |     Rails.logger.info "MESSAGE_RECIEVED #{message}" | ||||||
|  |     response = ::Integrations::Facebook::MessageParser.new(message) | ||||||
|  |     ::Integrations::Facebook::MessageCreator.new(response).perform | ||||||
|  |   end | ||||||
|  |  | ||||||
|  |   Bot.on :delivery do |delivery| | ||||||
|  |     # delivery.ids       # => 'mid.1457764197618:41d102a3e1ae206a38' | ||||||
|  |     # delivery.sender    # => { 'id' => '1008372609250235' } | ||||||
|  |     # delivery.recipient # => { 'id' => '2015573629214912' } | ||||||
|  |     # delivery.at        # => 2016-04-22 21:30:36 +0200 | ||||||
|  |     # delivery.seq       # => 37 | ||||||
|  |     updater = Integrations::Facebook::DeliveryStatus.new(delivery) | ||||||
|  |     updater.perform | ||||||
|  |     Rails.logger.info "Human was online at #{delivery.at}" | ||||||
|  |   end | ||||||
|  | end | ||||||
| @@ -6,7 +6,7 @@ class Facebook::SendReplyService | |||||||
|     return if inbox.channel.class.to_s != 'Channel::FacebookPage' |     return if inbox.channel.class.to_s != 'Channel::FacebookPage' | ||||||
|     return unless outgoing_message_from_chatwoot? |     return unless outgoing_message_from_chatwoot? | ||||||
|  |  | ||||||
|     Bot.deliver(delivery_params, access_token: message.channel_token) |     FacebookBot::Bot.deliver(delivery_params, access_token: message.channel_token) | ||||||
|   end |   end | ||||||
|  |  | ||||||
|   private |   private | ||||||
|   | |||||||
| @@ -18,7 +18,7 @@ module Chatwoot | |||||||
|  |  | ||||||
|     # This is required in production for zeitwerk to autoload the file |     # This is required in production for zeitwerk to autoload the file | ||||||
|     config.paths.add File.join('app', 'bot'), glob: File.join('**', '*.rb') |     config.paths.add File.join('app', 'bot'), glob: File.join('**', '*.rb') | ||||||
|     config.autoload_paths << Rails.root.join('app/bot') |     config.autoload_paths << Rails.root.join('app/bot/*') | ||||||
|  |  | ||||||
|     # Settings in config/environments/* take precedence over those specified here. |     # Settings in config/environments/* take precedence over those specified here. | ||||||
|     # Application configuration can go into files in config/initializers |     # Application configuration can go into files in config/initializers | ||||||
|   | |||||||
| @@ -9,7 +9,7 @@ describe Facebook::SendReplyService do | |||||||
|   end |   end | ||||||
|  |  | ||||||
|   let!(:account) { create(:account) } |   let!(:account) { create(:account) } | ||||||
|   let(:bot) { class_double('Bot').as_stubbed_const } |   let(:bot) { class_double('FacebookBot::Bot').as_stubbed_const } | ||||||
|   let!(:widget_inbox) { create(:inbox, account: account) } |   let!(:widget_inbox) { create(:inbox, account: account) } | ||||||
|   let!(:facebook_channel) { create(:channel_facebook_page, account: account) } |   let!(:facebook_channel) { create(:channel_facebook_page, account: account) } | ||||||
|   let!(:facebook_inbox) { create(:inbox, channel: facebook_channel, account: account) } |   let!(:facebook_inbox) { create(:inbox, channel: facebook_channel, account: account) } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Pranav Raj S
					Pranav Raj S