let conversation = [ { role: 'bot', message: "Hi there! I'm your assistant! How can I help you today?" } ]; function addMessage(role, message) { const chatMessages = document.getElementById('chatMessages'); if (!chatMessages) { console.error('Chat messages container not found!'); return; } const messageDiv = document.createElement('div'); messageDiv.className = role === 'bot' ? 'bot-message' : 'user-message'; messageDiv.textContent = message; chatMessages.appendChild(messageDiv); chatMessages.scrollTop = chatMessages.scrollHeight; console.log(`Added ${role} message: ${message}`); } function showFAQOptions() { const faqContainer = document.getElementById('faqList'); faqContainer.style.display = 'block'; // Show the FAQ list once the greeting is sent } function handleFAQClick(faq) { let botResponse = ''; // FAQ handling logic based on the clicked question if (faq === 'contact_support') { botResponse = "You can email us at support@company.com."; } else if (faq === 'business_hours') { botResponse = "We are open from 9 AM to 6 PM, Monday to Friday."; } else if (faq === 'reset_password') { botResponse = "Click on 'Forgot Password' on the login page."; } else if (faq === 'cancel_subscription') { botResponse = "You can cancel your subscription by visiting the 'Account Settings' page and selecting 'Cancel Subscription'."; } else if (faq === 'discounts') { botResponse = "We offer seasonal discounts and promotions. Keep an eye on our website or subscribe to our newsletter for updates."; } addMessage('bot', botResponse); } function sendMessage() { const userInput = document.getElementById('userInput'); if (!userInput) { console.error('User input field not found!'); return; } const message = userInput.value.trim(); if (message) { addMessage('user', message); conversation.push({ role: 'user', message: message }); userInput.value = ''; setTimeout(() => handleResponse(message), 500); } else { console.warn('Empty message!'); } } function handleResponse(userInput) { const lastMessage = conversation[conversation.length - 1].message.toLowerCase(); let botResponse = ''; // FAQ handling logic if (lastMessage.includes("how do i contact customer support")) { botResponse = "You can email us at support@company.com."; } else if (lastMessage.includes("what are your business hours")) { botResponse = "We are open from 9 AM to 6 PM, Monday to Friday."; } else if (lastMessage.includes("how do i reset my password")) { botResponse = "Click on 'Forgot Password' on the login page."; } else if (lastMessage.includes("how do i cancel my subscription")) { botResponse = "You can cancel your subscription by visiting the 'Account Settings' page and selecting 'Cancel Subscription'."; } else if (lastMessage.includes("are there any discounts available")) { botResponse = "We offer seasonal discounts and promotions. Keep an eye on our website or subscribe to our newsletter for updates."; } else { // Fallback for unrecognized input botResponse = "Sorry, I didn't understand that. Could you please clarify or ask a different question?"; } addMessage('bot', botResponse); } document.getElementById('userInput').addEventListener('keypress', function(e) { if (e.key === 'Enter') { sendMessage(); } }); // Show FAQ options after the greeting message window.onload = () => { addMessage('bot', "Hi there! I'm your assistant! How can I help you today?"); showFAQOptions(); }; console.log('Script loaded successfully');