Spaces:
Sleeping
Sleeping
File size: 3,776 Bytes
5f73f37 c9b98b8 5f73f37 6b91e96 5f73f37 6b91e96 5f73f37 7cf97e5 5f73f37 294ffbb 6b91e96 8170b7e 6b91e96 5f73f37 7cf97e5 5f73f37 7cf97e5 3c60197 7cf97e5 3c60197 7cf97e5 3c60197 7cf97e5 3c60197 7cf97e5 3c60197 7cf97e5 5f73f37 67eb455 6b91e96 7cf97e5 69dbfda |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 |
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 [email protected].";
} 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 [email protected].";
} 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');
|