/** * Example Module: Welcome Message * Sends a welcome message to users when they first log in */ const ltx = require('ltx'); module.exports = { name: 'welcome_message', version: '1.0.0', description: 'Sends welcome messages to new users', author: 'Example', load(module) { const { logger, sessionManager, config } = module.api; // Get welcome message from config const welcomeMsg = module.api.getConfig('message', 'Welcome to our XMPP server! Enjoy your stay.'); const sendWelcome = module.api.getConfig('sendOnLogin', true); logger.info('Welcome message module loaded'); if (sendWelcome) { // Hook into session authentication sessionManager.on('session:authenticated', (session) => { logger.info(`Sending welcome message to ${session.jid}`); // Create welcome message const message = new ltx.Element('message', { to: session.jid, from: module.host, type: 'chat' }).c('body').t(welcomeMsg).up() .c('subject').t('Welcome!'); // Send message session.send(message); }); } logger.info(`Welcome message: "${welcomeMsg}"`); }, unload(module) { module.api.logger.info('Welcome message module unloaded'); } };