Adrian Malacoda
|
c69cc61114
|
prefer if let when possible
|
2017-05-16 21:35:05 -05:00 |
|
Adrian Malacoda
|
25d247f299
|
New filters implementation. "tags" are removed and replaced with an implementation that filters directly on the event, using an object/map instead of strings.
|
2017-05-11 01:29:33 -05:00 |
|
Adrian Malacoda
|
495e3129d4
|
split logic for filtering out events into Subscription struct
|
2017-05-10 01:13:52 -05:00 |
|
Adrian Malacoda
|
7c26e0294a
|
Add tag filters. This is a primitive way to screen out events that do not match a certain criteria (e.g. from user Dave)
|
2017-05-10 00:17:22 -05:00 |
|
Adrian Malacoda
|
2baffdacd3
|
implement Debug for all structs, provide implementation for message senders
|
2017-05-09 23:36:56 -05:00 |
|
Adrian Malacoda
|
e8b944b836
|
implement run() which just forwards to event loop
|
2017-05-09 22:48:04 -05:00 |
|
Adrian Malacoda
|
9e9da11f79
|
begin tenquestionmarks 0.0.2. Separate Module trait into Module struct (which holds metadata and config about the module) and EventLoop trait, which implements the event loop. The constructors still return Modules, but they are structs and not boxes.
|
2017-05-09 22:44:33 -05:00 |
|
Adrian Malacoda
|
8c57bd6eb7
|
initial working implementation of autolink module
|
2017-02-26 18:05:45 -06:00 |
|
Adrian Malacoda
|
5551ebd552
|
WIP for autolinker module. Currently can't use stc and tqm together because of conflicting dependencies, so this is a placeholder.
|
2017-02-26 17:17:22 -06:00 |
|
Adrian Malacoda
|
d9ab75a607
|
Initial implementation of lua module.
|
2017-02-26 02:10:28 -06:00 |
|
Adrian Malacoda
|
57b52772f5
|
set default loglevel to info
|
2017-02-25 23:25:09 -06:00 |
|
Adrian Malacoda
|
8dad1fc4aa
|
Do not send events to their originators, or to any event not specified in the "to" list.
|
2017-02-25 21:31:32 -06:00 |
|
Adrian Malacoda
|
1fbba2554d
|
replace Sender with ExtSender from transformable_channels. Now we can tag each outgoing envelope with the name of its sender
|
2017-02-25 21:11:25 -06:00 |
|
Adrian Malacoda
|
544974117f
|
rename various sender/receiver variables to be clearer
|
2017-02-25 20:38:09 -06:00 |
|
Adrian Malacoda
|
37a9645f5b
|
Simplify module trait by combining produce/consume event methods into a single run method that runs in the module's own thread and can produce and/or consume events. Introduce an Envelope struct that encapsulates event + to/from so we can (eventually) tag every event and also limit where events are sent (e.g. you can have a specific module configured to talk or listen only to a certain other module).
|
2017-02-25 20:17:46 -06:00 |
|
Adrian Malacoda
|
442b617f31
|
now with amazing echobox powers
|
2017-02-22 23:40:30 -06:00 |
|
Adrian Malacoda
|
ce35368676
|
tag senders/receivers with module names so we can eventually associate individual events to module names
|
2017-02-19 17:31:37 -06:00 |
|
Adrian Malacoda
|
0f945ec604
|
create a dedicated Message struct and implement reply(&str) on there, since it seems to be a commonly used thing. Begin implementing helpers for command parsing.
|
2017-02-19 05:37:56 -06:00 |
|
Adrian Malacoda
|
c5a88b8405
|
initial pvn module implementation
|
2017-02-19 04:49:06 -06:00 |
|
Adrian Malacoda
|
84d2921f8f
|
send/receive Arc<Event> instead of Event so we don't have to clone objects all over the place. This might also enable us to be a bit more flexible with what we send with Events, and might simplify things elsewhere.
|
2017-02-19 02:55:30 -06:00 |
|
Adrian Malacoda
|
5fc231eec6
|
Add logging
|
2017-02-17 02:38:15 -06:00 |
|
Adrian Malacoda
|
26e56ebee9
|
Add random response module
|
2017-02-16 02:00:38 -06:00 |
|
Adrian Malacoda
|
0a51c7294f
|
rename plugin -> module
|
2017-02-16 01:05:33 -06:00 |
|
Adrian Malacoda
|
7581521b61
|
try arc instead of box
|
2017-02-16 00:16:48 -06:00 |
|
Adrian Malacoda
|
66180578d6
|
alternate implementation using Box<MessageSender> and clone
|
2017-02-15 23:41:29 -06:00 |
|
Adrian Malacoda
|
5b9f1610dd
|
attempt to flesh out send support for channel/message. Currently does not build
|
2017-02-15 22:41:52 -06:00 |
|
Adrian Malacoda
|
d414e65fd9
|
begin fleshing out discord module. Implement sender/channel as struct for now, there might be a performance hit from copying so much data around but we can look at optimization later
|
2017-02-13 22:13:33 -06:00 |
|
Adrian Malacoda
|
6424a7a37f
|
Remove unused imports, stub out send() for user and channel.
|
2017-02-13 21:44:37 -06:00 |
|
Adrian Malacoda
|
9bb6887bed
|
make plugin produce/consume events api symmetrical
|
2017-02-13 00:55:30 -06:00 |
|
Adrian Malacoda
|
26a6b77632
|
Flesh out plugins event handling, add example stdin plugin (event producer) and echo plugin (event consumer). Next step: fleshing out user/channel structs
|
2017-02-13 00:22:06 -06:00 |
|
Adrian Malacoda
|
a31b060dd3
|
Beginning of rust implementation for tenquestionmarks.
|
2017-02-08 03:25:03 -06:00 |
|