Spaces:
Sleeping
Sleeping
File size: 2,561 Bytes
5f73f37 c9b98b8 5f73f37 6b91e96 5f73f37 6b91e96 5f73f37 294ffbb 6b91e96 8170b7e 6b91e96 5f73f37 3c60197 d1b90c5 c9b98b8 5f73f37 67eb455 6b91e96 3c60197 |
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 |
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 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();
}
});
console.log('Script loaded successfully');
|