6ad979a5eb
Fix event/timer issue if very close to 0
2016-01-29 16:52:52 +01:00
ea8656ce0d
Refactor command help: use hookmanager to get command help instead of custom search
2015-11-18 20:21:06 +01:00
43c42e1397
Rework hook managment and add some tests
2015-11-18 20:21:05 +01:00
e83c4091bf
Avoid catchall DirectAsk
2015-11-18 19:58:26 +01:00
0f4a904a77
Log configuration loading
2015-11-13 17:05:52 +01:00
c06fb69c8b
Extract tools.config as config module
2015-11-03 16:53:49 +01:00
f39a0eac56
Refactors hooks registration
2015-11-03 16:53:49 +01:00
ea9829b341
Check command keywords using keyword help (passed in @hook)
2015-11-03 07:23:21 +01:00
9790954dfc
Hooks can now contain help on optional keywords
2015-11-03 07:22:01 +01:00
ac33ceb579
Remove dead or useless code
2015-11-03 07:20:52 +01:00
f496c31d1c
Help: don't append space character before ':' when the usage key is None
2015-10-31 17:45:50 +01:00
c560e13f24
Rework XML parser: part 1
...
This is the first step of the parser refactoring: here we change
the configuration, next step will change data saving.
2015-10-28 10:55:02 +01:00
60f7c6eea7
Place MessageTreater in context
2015-10-20 18:02:01 +02:00
a4fd04c310
Remove print unhandled in daemon mode
2015-10-20 18:02:01 +02:00
fd8567c60c
Fix module unload and reload
2015-10-08 18:28:49 +02:00
684806baaf
Help command: skip discovery of command without name
2015-10-07 18:22:01 +02:00
7970fca93a
Use with section for locking threadsafe region (instead of raw calls to acquire/release)
2015-09-28 17:21:03 +02:00
080ab9a626
Fix bad event behaviour: if an event ends in less than 6 seconds, it was executed in the event creator thread (blocking it until the event end)
2015-09-28 17:20:45 +02:00
283b0d006e
Add a new builtin: !echo
2015-09-28 12:45:10 +02:00
f66ed07496
Lock select lists to avoid invalid states (particularly on closing)
2015-09-28 11:59:38 +02:00
ae7526dd96
Fix double exception when invalid file descriptor found in select
2015-09-28 11:59:37 +02:00
dda78df9d2
Add new action queue, synchronized with main thread for prompt like actions (conf loading, exit, ...)
2015-09-28 11:59:37 +02:00
3cfbfd96b0
Let main thread manage consumer threads
2015-09-28 11:59:37 +02:00
4cb8b0f1a6
Improve help
...
On hook declaration, we can now add a help and/or a help_usage argument
to provide a simple way to the user to be informed.
For example:
```python
@hook("cmd_hook", "news", help_usage={"URL": "Display the latests news from a given URL"})
def cmd_news(msg):
[...]
```
will be displayed on !help !news as:
> Usage for command !news from module news: !news URL: Display the latests news from a given URL
Or for module commands help:
```python
@hook("cmd_hook", "news", help="display latests news")
def cmd_news(msg):
[...]
```
will be displayed on !help mymodule (assuming this hook is in the
module named mymodule) as:
> Available commands for module news: news: display latests news
Obviously, both `help` and `help_usage` can be present. If `help_usage`
doesn't exist, help on usage will display the content of help.
2015-09-24 11:29:51 +02:00
ecd9457691
Help: display on the right place, not always to private conversation
2015-09-24 11:29:49 +02:00
9fa8902f1a
Invalid fd are < 0, not only -1
2015-09-24 11:29:46 +02:00
beeb5573e1
Define class variables in __init__
2015-09-24 11:29:45 +02:00
d269468287
Let consumer parse the message instead of server
2015-08-26 12:18:22 +02:00
000c67e45e
Can return Response in help_full function
2015-08-26 12:17:21 +02:00
ae4a303554
Fix #74
2015-08-26 12:17:21 +02:00
26515677b8
Don't add new event after main thread stop
2015-08-26 12:17:12 +02:00
9cf4b9becb
Fix bot close
...
Tell consumer to stop their work
Avoid error when select on closed fd
2015-06-24 20:05:56 +02:00
c86031ea32
Can use print with non string
2015-06-24 20:05:53 +02:00
c1858fff3a
Catch exception during module loading: just skip the module registration
2015-06-03 18:01:50 +02:00
500e3a6e01
Compatibly with Python 3.4
2015-05-26 12:33:28 +02:00
8bcceb641f
Add a logger to module context on init
2015-05-25 16:44:29 +02:00
002f2463a3
Extract hooks
2015-05-25 16:44:28 +02:00
e588c30044
Optimize imports
2015-05-25 16:44:16 +02:00