diff --git a/enterprise/app/services/enterprise/message_templates/response_bot_service.rb b/enterprise/app/services/enterprise/message_templates/response_bot_service.rb index 0c1bcc220..214b33788 100644 --- a/enterprise/app/services/enterprise/message_templates/response_bot_service.rb +++ b/enterprise/app/services/enterprise/message_templates/response_bot_service.rb @@ -3,7 +3,7 @@ class Enterprise::MessageTemplates::ResponseBotService def perform ActiveRecord::Base.transaction do - @response = get_response(conversation.messages.last.content) + @response = get_response(conversation.messages.incoming.last.content) process_response end rescue StandardError => e diff --git a/spec/enterprise/services/enterprise/message_templates/response_bot_service_spec.rb b/spec/enterprise/services/enterprise/message_templates/response_bot_service_spec.rb index 180fa4cef..42c62bc62 100644 --- a/spec/enterprise/services/enterprise/message_templates/response_bot_service_spec.rb +++ b/spec/enterprise/services/enterprise/message_templates/response_bot_service_spec.rb @@ -14,10 +14,11 @@ RSpec.describe Enterprise::MessageTemplates::ResponseBotService, type: :service stub_request(:post, 'https://api.openai.com/v1/embeddings').to_return(status: 200, body: {}.to_json, headers: { Content_Type: 'application/json' }) create(:message, message_type: :incoming, conversation: conversation, content: 'Hi') + create(:message, message_type: :outgoing, conversation: conversation, content: 'Hello') 4.times { create(:response, response_source: response_source) } allow(ChatGpt).to receive(:new).and_return(chat_gpt_double) allow(chat_gpt_double).to receive(:generate_response).and_return({ 'response' => 'some_response', 'context_ids' => Response.all.map(&:id) }) - allow(conversation.inbox).to receive(:get_responses).and_return([response_object]) + allow(conversation.inbox).to receive(:get_responses).with('Hi').and_return([response_object]) end describe '#perform' do