documentation
This commit is contained in:
parent
90b5c0931e
commit
e0a00301f6
187
README.md
187
README.md
|
@ -0,0 +1,187 @@
|
||||||
|
# cuffeo (wip)
|
||||||
|
|
||||||
|
## Usage Example
|
||||||
|
```javascript
|
||||||
|
import cuffeo from "cuffeo";
|
||||||
|
|
||||||
|
(async () => {
|
||||||
|
const clients = [
|
||||||
|
{
|
||||||
|
type: "irc",
|
||||||
|
enabled: true,
|
||||||
|
network: "name",
|
||||||
|
host: "localhost",
|
||||||
|
port: 6697,
|
||||||
|
ssl: true,
|
||||||
|
selfSigned: false,
|
||||||
|
sasl: false,
|
||||||
|
nickname: "nickname",
|
||||||
|
username: "username",
|
||||||
|
password: "password",
|
||||||
|
realname: "realname",
|
||||||
|
channels: [
|
||||||
|
"#blah"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: "tg",
|
||||||
|
enabled: true,
|
||||||
|
token: "token",
|
||||||
|
pollrate: 1001
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: "slack",
|
||||||
|
enabled: true,
|
||||||
|
token: "token"
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
const bot = await new cuffeo(clients);
|
||||||
|
|
||||||
|
// events
|
||||||
|
bot.on("message", msg => {
|
||||||
|
msg.reply("hello, world!");
|
||||||
|
});
|
||||||
|
|
||||||
|
bot.on("info", msg => {
|
||||||
|
console.log(msg);
|
||||||
|
});
|
||||||
|
|
||||||
|
bot.on("error", err => {
|
||||||
|
console.error(err);
|
||||||
|
});
|
||||||
|
|
||||||
|
bot.on("ctcp:ping", msg => { // irc only
|
||||||
|
msg.write(`notice ${msg.user.nick} :${e.message}`);
|
||||||
|
});
|
||||||
|
|
||||||
|
bot.on("ctcp:version", msg => { // irc only
|
||||||
|
msg.write(`notice ${msg.user.nick} :\u0001VERSION blah\u00001`);
|
||||||
|
});
|
||||||
|
})();
|
||||||
|
```
|
||||||
|
|
||||||
|
## documentation
|
||||||
|
|
||||||
|
### clients
|
||||||
|
#### irc
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"type": "irc",
|
||||||
|
"enabled": true,
|
||||||
|
"network": "name",
|
||||||
|
"host": "localhost",
|
||||||
|
"port": 6697,
|
||||||
|
"ssl": true,
|
||||||
|
"selfSigned": false,
|
||||||
|
"sasl": false,
|
||||||
|
"nickname": "nickname",
|
||||||
|
"username": "username",
|
||||||
|
"password": "password",
|
||||||
|
"realname": "realname",
|
||||||
|
"channels": [
|
||||||
|
"#blah"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
#### Telegram
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"type": "tg",
|
||||||
|
"enabled": true,
|
||||||
|
"token": "token",
|
||||||
|
"pollrate": 1001
|
||||||
|
}
|
||||||
|
```
|
||||||
|
#### Slack
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"type": "slack",
|
||||||
|
"enabled": true,
|
||||||
|
"token": "token"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Events
|
||||||
|
#### message
|
||||||
|
returns an object, containing:
|
||||||
|
|
||||||
|
| variable | type | explanation | note
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| type | string | irc, tg or slack | |
|
||||||
|
| network | string | irc only, other it'll be "telegram" or "slack" | |
|
||||||
|
| channel | string | | |
|
||||||
|
| user | object | see below | |
|
||||||
|
| message | string | | |
|
||||||
|
| time | string | timestamp | |
|
||||||
|
| raw | object | | |
|
||||||
|
| reply | function | | |
|
||||||
|
| replyAction | function | | |
|
||||||
|
| replyNotice | function | | |
|
||||||
|
| self | object | | |
|
||||||
|
| _chan | object | | irc only |
|
||||||
|
| _user | object | | irc and telegram only |
|
||||||
|
| join | function | join a channel | irc only |
|
||||||
|
| part | function | part a channel | irc only |
|
||||||
|
| whois | function | request a whois | irc only |
|
||||||
|
| write | function | write raw lul | |
|
||||||
|
|
||||||
|
---
|
||||||
|
##### user object
|
||||||
|
| variable | type |
|
||||||
|
| --- | --- |
|
||||||
|
| account | string |
|
||||||
|
| prefix | string |
|
||||||
|
|
||||||
|
##### reply/replyAction/replyNotice function
|
||||||
|
```javascript
|
||||||
|
msg.reply("message");
|
||||||
|
msg.replyAction("message");
|
||||||
|
msg.replyNotice("message"); // same as reply() on Slack and Telegram
|
||||||
|
```
|
||||||
|
##### join function
|
||||||
|
```javascript
|
||||||
|
msg.join("#channel");
|
||||||
|
```
|
||||||
|
##### part function
|
||||||
|
```javascript
|
||||||
|
msg.part("#channel", "message");
|
||||||
|
// or
|
||||||
|
msg.part([ "#channel1", "#channel2" ], "message");
|
||||||
|
```
|
||||||
|
##### whois function
|
||||||
|
```javascript
|
||||||
|
msg.whois("user");
|
||||||
|
// or
|
||||||
|
msg.whois([ "user1", "user2" ]);
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## irc related stuff
|
||||||
|
### color your messages
|
||||||
|
```javascript
|
||||||
|
msg.reply("[color=red]message[/color]");
|
||||||
|
```
|
||||||
|
allowed colors:
|
||||||
|
- white
|
||||||
|
- black
|
||||||
|
- navy
|
||||||
|
- green
|
||||||
|
- red
|
||||||
|
- brown
|
||||||
|
- purple
|
||||||
|
- orange
|
||||||
|
- yellow
|
||||||
|
- lightgreen
|
||||||
|
- teal
|
||||||
|
- cyan
|
||||||
|
- blue
|
||||||
|
- magenta
|
||||||
|
- gray
|
||||||
|
- lightgray
|
||||||
|
|
||||||
|
### bold and italic
|
||||||
|
```javascript
|
||||||
|
msg.reply("[b]bold[/b]");
|
||||||
|
msg.reply("[i]italic[/i]");
|
||||||
|
```
|
Loading…
Reference in New Issue
Block a user