simple-chat-storage
v1.2.0
Published
Simple chat storage for chat's
Downloads
19
Maintainers
Readme
simple-chat-storage
Chat storage for node
|📚Documentation|📕Bugs| |-|-|
Installation
npm i simple-chat-storage
oryarn add simple-chat-storage
Most usefull features (There is both a JSON storage and a sqlite storage)
addmessage(user, message, time(optional)) - adds message to chat
erase() - erases the storage
deletemessage(index) - deletes the message by index(storage.messages[index])
Most usefull features (sqlite)
new SqliteChatStorage(name, dbpath, length) |Name |Type |Default|Description | |------|-------------|-------|--------------------------------| |name |string | |name of table in sqlite database| |dbpath|string |chat.db|path to sqlite database | |length|integer/false|false |number of stored messages |
prepare() - Preparing and initializing the table and returnings a promise
deletemessage(id) - deletes the message by id
replacemessage(id, message) - replaces the message by id
delete(where) - SQL deleter
select(what, where(optional)).then((row)=>{}).catch((err)=>{}) - SQL selector
getBdId(index) - returns id of message from index (storage.messages[index].id)
Example
const chat = require("simple-chat-storage").sqlite;
const test = new chat("test", "chat.db", 30);
test.prepare().then(()=>{
test.addmessage("Dr. Who", "Fez!").then(()=>{
console.log(test.messages[0]);
test.replacemessage(test.getBdId(0), "Hooray, I can edit messages.")
.then(()=>{
console.log(test.messages[0]);
});
});
});
Most usefull features (JSON)
Faster than sqlite, but does not have SQL functions
new JsonChatStorage(name, length, dir)
|Name |Type |Default |Description | |------|-------------|--------|------------------------------------| |name |string | |name of JSON storage | |length|integer/false|false |number of stored messages | |dir |string |./chats |folder for storing all json storages| |meta |Object/none | |metadata for JSON storage |
deletelastmessage(user) - Deletes a last message of user
Example
let chat = require("simple-chat-storage").JSON;
let test = new chat("test");
test.addmessage("Dr. Who", "Fez!");
console.log(test.messages);
Coverage
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s ----------|---------|----------|---------|---------|------------------- All files | 93.33 | 82.35 | 93.33 | 94.05 | index.js | 93.33 | 82.35 | 93.33 | 94.05 | 75-76,242-244