Comments (2)
Something like
var path = app.getPath('userData') + '/' + serverName + '/' + channelName + '/' + isoDate + '.txt';
fs.appendFile(path, theStringToBeLogged, function (err) {
// callback
});
Looks like it's easiest to have the server-side write this file, but if that's the case, messages will come from the IRC daemon, to the server, to the client for parsing and display, and then back to the server for logging. Maybe the server should do all the parsing of the IRC daemon's output, and just send tidy data to the client for templating?
Also, I'm a bit worried that the dates/times might not match between server and client. Really each message should be given a timestamp of when it was received by the IRC daemon (or as close as possible) and then that should be used everywhere.
from backchat.
Log format for messages:
[2015-07-10T11:54:21Z] <zarino> hello world
Actions:
[2015-07-10T11:54:16Z] • zarino: files a github ticket
Stage directions:
[2015-07-10T11:59:36Z] zarino left the channel
Topic:
[2015-07-10T09:24:49Z] Topic is Hello World!
from backchat.
Related Issues (20)
- Visually highlight keyword mentions in scrollback
- XSS vulnerability via messages
- Right-click channelButtons to show menu including "Leave channel" HOT 1
- Right-click userButtons to show menu including "Private chat" and "Whois"
- Improve display of server messages
- Alt-uparrow in text input to cycle through previous messages sent in that channel
- Tab-complete for nicks in current channel HOT 1
- Notify me when a user returns from “away” status / joins one of the active channels HOT 1
- If I message an “away” user in a private chat, show me their away message
- App menu shows "Leave channel" even when channel is already parted, or is a private chat
- Spellchecking for the message input
- Show spellcheck correction suggestions in right-click
- Show Mac-standard right-click menu for text in scrollback
- Do not notify me about stage directions
- Log server messages to a sort of channelView in the UI
- Join password-protected channels HOT 1
- Separately set which channels should be autojoined at startup
- Let me change the order of channels in the sidebar
- Save state on quit
- Move logic out of client.js and into main.js HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from backchat.