Artem Shinkarov
705a946882
Adding plugin interface for C files.
...
Implementation of hooks using C interface basedon dlfcn. Added test
plugin and makefile to build it. In order to test it add the followin
into your profrc:
[plugins]
load=test-c-plugin.so
and execute profanity piping stderr to some file. The file should
contain all entries whenever the plugin function is triggered. It seem
to be workin but some parts are missing.
2013-08-18 03:55:20 +01:00
James Booth
ffb565a16a
Removed unused includes in python_api
2013-08-18 00:43:28 +01:00
James Booth
eadb90dc43
Renamed hook on_message -> on_message_received
2013-08-18 00:26:14 +01:00
James Booth
eead7ea7e3
Removed python.h depdendency from callbacks.c
2013-08-18 00:17:23 +01:00
James Booth
9ca23ed24e
Moved python callbacks
2013-08-18 00:12:29 +01:00
James Booth
f15b61e4cb
Language wrappers for callbacks
2013-08-18 00:10:10 +01:00
James Booth
8cae5c13b0
Refactored plugin callbacks
2013-08-17 23:41:53 +01:00
James Booth
79b5d89f23
Fixed includes to remove compile warning
2013-08-17 23:25:05 +01:00
James Booth
d2b15cad7c
Moved python init and shutdown
2013-08-17 23:21:32 +01:00
James Booth
67972f8eac
Pulled out common api into api.c, added python bindings
2013-08-17 23:16:14 +01:00
James Booth
2ac4a183d0
Added python_plugin_create()
2013-08-17 22:51:25 +01:00
James Booth
580b14ab68
Added plugin load list as preference, moved python hooks
2013-08-17 22:42:44 +01:00
James Booth
140a2ad0e3
Merge branch 'master' into plugins
...
Conflicts:
.gitignore
2013-08-13 21:42:01 +01:00
James Booth
6ea17d8e01
Merge branch 'master' into nextdev
2013-08-13 21:40:18 +01:00
James Booth
dc896b27d4
Renamed plugins_command_run
2013-08-11 13:49:59 +01:00
James Booth
ffb1359889
Added get_current_recipient to api
...
Browser plugin now uses last link received in a chat window
2013-08-11 01:35:11 +01:00
James Booth
d8eb320b85
Added on_message hook
...
Browser plugin now uses last received hyperlink when no arg supplied
2013-08-11 01:00:21 +01:00
James Booth
462b09a546
Fix ctrl + arrow keys for fedora
2013-08-10 20:47:56 +01:00
James Booth
9f76a5e610
Added browser plugin, allow up to 5 args for command callbacks
2013-08-08 01:40:03 +01:00
James Booth
ab45239033
Added connect.py plugin, refactored init and start events, added send_line
2013-08-06 00:29:12 +01:00
James Booth
de3d46becc
Merge branch 'master' into plugins
2013-08-05 23:18:35 +01:00
James Booth
6651b13bd0
Merge branch 'master' into nextdev
2013-08-05 23:18:19 +01:00
James Booth
42eef398b4
Free Jid
2013-08-05 23:12:10 +01:00
James Booth
c6e9a7455d
Undo change to stanza check for nick change return value
2013-08-05 23:08:30 +01:00
James Booth
1525be6133
Refactor MUC self presence checks
2013-08-05 22:55:11 +01:00
James Booth
55282e063d
Handle when servers dont send status 101 or jid for MUC nick changes
2013-08-05 21:20:07 +01:00
James Booth
f17dc5b4ca
Added plugins_run_timed to plugins.h
2013-08-04 19:57:25 +01:00
James Booth
a56b9e1f73
Cleared newline loading plugins
2013-08-04 19:31:06 +01:00
James Booth
9bbe8def98
Added cons_alert to python API
2013-08-04 18:57:33 +01:00
James Booth
084b03691e
Implemented time python callbacks
2013-08-04 18:43:46 +01:00
James Booth
13bef17c0b
Added register_timed to plugins api
2013-08-04 17:50:35 +01:00
James Booth
3588a9d776
Merge remote-tracking branch 'dmitry/nextdev-patches' into nextdev
2013-08-04 17:20:46 +01:00
Dmitry Podgorny
20dff5fe2f
use posix stat syscall for windows
2013-08-04 19:14:07 +03:00
James Booth
9e6a6f224f
Merge branch 'master' into plugins
2013-08-04 17:06:00 +01:00
James Booth
87c6277109
Merge branch 'master' into nextdev
2013-08-04 17:05:47 +01:00
James Booth
e170965c93
Added patch from Dmitry to fix crash on delayed message from contact not in roster
...
fixes #219
2013-08-04 17:04:15 +01:00
James Booth
d638a4825e
Added notify to python API
2013-08-04 16:42:25 +01:00
Dmitry Podgorny
9e09284302
removed assignment to NULL in _chat_session_free
2013-08-03 15:31:54 +03:00
Dmitry Podgorny
3c385e0aaa
replace struct stat and stat() for windows
2013-08-03 14:42:02 +03:00
Dmitry Podgorny
a6e66cc571
fixed memory leaks
...
Also avoided several NULL pointer dereferences.
2013-08-03 14:38:38 +03:00
Dmitry Podgorny
28ec3334cf
refactored logging
...
Use ftell instead of stat syscall to increase portability.
2013-08-03 14:31:36 +03:00
Dmitry Podgorny
0346fda0b3
most FREE_SET_NULL replaced with free
...
FREE_SET_NULL makes extra assignment of NULL for pointers in stack or
dynamic memory that is going to be freed.
FREE_SET_NULL is useful for pointers that can be used in future.
2013-08-03 14:27:07 +03:00
Dmitry Podgorny
6f498d1f69
refactored mkdir_recursive
...
Now this function returns result of operation. TRUE is success.
2013-08-03 14:14:30 +03:00
Dmitry Podgorny
c559d96d77
removed sizeof(char)
...
sizeof(char) == 1 according to standard
2013-08-03 13:17:50 +03:00
James Booth
17e14347e3
Add plugin commands to command autocompleter
2013-08-03 03:20:17 +01:00
James Booth
c3acda5da7
Added /whoami command plugin
2013-08-03 02:45:26 +01:00
James Booth
5464d5079b
Added plugins commands
2013-08-03 02:21:43 +01:00
James Booth
dded9e954f
Separated python api and plugins code
2013-08-03 00:58:04 +01:00
James Booth
8d2d71bacb
Renamed plugins files
2013-08-03 00:48:22 +01:00
James Booth
35d4f42466
Renamed api module -> plugins
2013-08-03 00:43:05 +01:00
James Booth
bf19ffb910
Refactored calling plugin functions
2013-08-03 00:40:10 +01:00
James Booth
6cb32996a5
Added on_connect event to plugins api
2013-08-03 00:22:00 +01:00
James Booth
799fd06680
Pulled out events
2013-08-02 23:52:16 +01:00
James Booth
e7c978766e
Clear up references
2013-08-02 23:38:04 +01:00
James Booth
8105a393e9
Load all plugins in plugins directory
2013-08-02 23:36:47 +01:00
James Booth
51b2137705
Merge remote-tracking branch 'dmitry/memleaks' into nextdev
2013-07-31 19:32:58 +01:00
James Booth
992ee28091
Merge branch 'master' into nextdev
2013-07-31 19:32:15 +01:00
Dmitry Podgorny
7b37f2ace7
separate glib allocator and stdlib malloc/free
...
Memory allocated by glib should be freed by g_free. Probably g_free
calls stdlib free, but in order to avoid portability issues better use
g_free as described in glib documentation.
2013-07-31 02:03:22 +03:00
Dmitry Podgorny
f2638e001a
rewritten FREE_SET_NULL and GFREE_SET_NULL
...
NULL is valid argument for free(). Construction do {} while (0) allows
using FREE_SET_NULL as one token and force to put semicolon at the end.
2013-07-31 01:58:59 +03:00
Dmitry Podgorny
5505387c37
fixed several memory leaks in command.c and jid.c
2013-07-31 01:51:07 +03:00
James Booth
ece153cd08
Set path for plugins
2013-07-30 23:42:46 +01:00
James Booth
5cb28822eb
Pass data to plugin init function
2013-07-30 23:37:46 +01:00
Dmitry Podgorny
71f4194513
fixed null pointer dereference in /join command
...
Command /join @/ leads to crash because jid_create("@/") returns NULL
2013-07-31 01:37:02 +03:00
James Booth
586ea10071
Added prof_on_start function to hello world plugin
2013-07-25 01:17:45 +01:00
James Booth
4f42bb570d
Pass any string in python function
2013-07-25 01:13:41 +01:00
James Booth
5583dd29b3
Call cons_show with hard coded string
2013-07-25 00:54:31 +01:00
James Booth
06837c2a40
Changed python filename
2013-07-23 00:40:03 +01:00
James Booth
cf5b465dac
Merge branch 'master' into plugins
2013-07-22 22:10:13 +01:00
James Booth
66238641e0
Merge branch 'master' into nextdev
2013-07-22 22:09:51 +01:00
James Booth
a64b293878
Removed escaping XML as handled by libstrophe
...
4ad21c9283
2013-07-22 20:35:43 +01:00
James Booth
c5c596f70a
Merge branch 'master' into nextdev
2013-07-21 23:33:32 +01:00
James Booth
4b416ba58e
Experimenting with python integration for plugins
2013-07-21 23:31:09 +01:00
James Booth
cbe3c41abe
Fixed typo on /invite help
2013-07-20 23:47:57 +01:00
James Booth
7af6bad5e6
Fix freetext arguments with quotes
...
fixes #203
2013-07-20 21:02:07 +01:00
James Booth
7906bd6a9d
Bookmarks: Move stanza pointer on in loop, check for autojoin "true"
2013-07-15 00:52:47 +01:00
James Booth
5cb136225e
Merge remote-tracking branch 'dmitry/bookmarks' into nextdev
2013-07-14 23:32:43 +01:00
James Booth
dd2e3a0bdf
Merge remote-tracking branch 'dmitry/fixes'
2013-07-14 23:31:02 +01:00
Dmitry Podgorny
b9d29e9aa5
draft of bookmarks implementation
...
'/bookmark add' and '/bookmark remove' ain't finished
2013-07-14 23:58:02 +03:00
Dmitry Podgorny
0b221bde20
removed useless code in autocomplete.c
2013-07-14 21:34:02 +03:00
Dmitry Podgorny
c8b7438736
fixed typos in command.c
2013-07-14 21:32:20 +03:00
Dmitry Podgorny
6e23584575
improved autojoin logic
...
Delete id handler after timeout (5sec) if response isn't received
Auto join maximum 5 conferences
2013-07-14 17:08:49 +03:00
Dmitry Podgorny
ccbbd16d5f
Merge branch 'master' into bookmarks
2013-07-14 13:50:57 +03:00
Dmitry Podgorny
034cf730cc
use get_unique_id for bookmarks
2013-07-14 13:49:50 +03:00
James Booth
11688d1113
Merge branch 'master' into nextdev
2013-07-14 01:02:06 +01:00
James Booth
7f82dc42f5
Remaining parser function unicode compatible
2013-07-14 01:00:11 +01:00
James Booth
e7478d8cb8
Added parser tests
2013-07-14 00:46:56 +01:00
James Booth
4d35031cb0
Implemented parse_args_with_freetext with unicode compatibility
2013-07-14 00:24:57 +01:00
James Booth
51786f67a6
Implemented parse_args with unicode compatibility
2013-07-14 00:14:36 +01:00
James Booth
60cad8d296
Merge branch 'master' into unicode
2013-07-13 23:17:35 +01:00
James Booth
1d05a70473
Down arrow adds current line to history and shows empty line
2013-07-13 23:02:36 +01:00
James Booth
bb550fed55
Handle unicode chars in command parser
2013-07-12 00:46:33 +01:00
James Booth
5233000498
Removed if clause in parser
2013-07-11 23:03:20 +01:00
James Booth
36265dde2f
Moved functions to parser.c, moved parser to tools
2013-07-11 22:57:35 +01:00
James Booth
a581db3d48
Merge branch 'master' into nextdev
2013-07-09 22:42:47 +01:00
James Booth
907beb55f6
Removed debug
2013-07-09 22:42:20 +01:00
James Booth
d302532be6
Merge branch 'master' into nextdev
2013-07-09 22:38:06 +01:00
James Booth
e99a0e117a
Fix autocompletion of quoted strings - WIP
...
Needs some refactoring
Need to use unicode functions in:
parser.c
autocomplete.c
2013-07-09 22:34:55 +01:00
James Booth
581c1e8b95
Coloured contact and subscription in /roster and /group output
2013-07-03 23:44:51 +01:00
James Booth
27a8d4a7cb
Merge branch 'master' into nextdev
2013-07-03 21:23:55 +01:00
James Booth
817857e4c0
Fixed naming clash for roster help
2013-07-03 21:23:18 +01:00
James Booth
976728ef7a
Merge remote-tracking branch 'dmitry/bookmarks' into nextdev
2013-07-01 21:27:52 +01:00
James Booth
e933572ab9
Tidied help
2013-06-30 22:59:06 +01:00
James Booth
c970bb2790
Merge pull request #196 from pasis/memleaks
...
Fixed memory leaks in command.c
2013-06-30 13:50:06 -07:00
Sam Whited
1f7e7e8447
Fix a small typo
...
(`Invalud' -> `Invalid')
2013-06-30 14:05:20 -04:00
Dmitry Podgorny
2837c4054f
initial support of autojoin for MUC
2013-06-30 18:59:38 +03:00
Dmitry Podgorny
eb6236fa04
fixed memory leaks in command.c
2013-06-30 17:19:43 +03:00
James Booth
e12ede6cd8
Still show usage with current setting
2013-06-25 23:41:53 +01:00
James Booth
ca5c6a5745
Show current setting with settings commands
...
closes #139
2013-06-25 23:38:06 +01:00
James Booth
0554198668
Changed help for /help command
2013-06-25 22:16:23 +01:00
James Booth
2077834b10
Changed client type to 'console' as per http://xmpp.org/registrar/disco-categories.html#client
2013-06-25 01:00:24 +01:00
James Booth
c8567cd793
Restructured help
2013-06-25 00:49:29 +01:00
James Booth
b48ef9d5e0
Renamed commands array
2013-06-24 21:38:02 +01:00
James Booth
ccfbd2a436
Sorted command prototypes
2013-06-23 21:29:12 +01:00
James Booth
7d0a31184a
Renamed _cmd_set commands
2013-06-23 21:21:14 +01:00
James Booth
b52dcfe557
Moved /account, /prefs and /theme to settings commands
2013-06-23 19:19:39 +01:00
James Booth
d5e9ca649d
Show messages on /group add and /group remove
...
closes #189
closes #190
2013-06-23 17:38:30 +01:00
James Booth
dace47e5d3
Show message when removing contact from group when not in group
2013-06-23 16:35:13 +01:00
James Booth
265fff8f40
Show message when contact already in group
2013-06-23 16:29:42 +01:00
James Booth
f9b8da1afe
Autocomplete /group add and /group remove contact paramater
...
closes #193
2013-06-23 01:23:44 +01:00
James Booth
1cf20b2491
Start chat session on /msg with no message parameter
...
fixes #173
2013-06-20 17:50:20 +01:00
James Booth
b9fc61fd30
Moved stophe references in message send
2013-06-20 17:41:44 +01:00
James Booth
96496ca219
Merge remote-tracking branch 'dmitry/captcha-2' into captcha
2013-06-16 18:58:18 +01:00
Dmitry Podgorny
1f207beb99
fixed memory leaks in presence.c
2013-06-09 18:52:28 +03:00
Dmitry Podgorny
c84cb17bd4
added support of captcha in a MUC
2013-06-09 16:19:49 +03:00
Dmitry Podgorny
eff5986d38
fixed several memory leaks
...
And infinity loop in stanza_destroy_form().
2013-06-09 14:20:48 +03:00
Kieran Thandi
f7dc09efc3
Changed help
2013-06-07 16:37:43 +01:00
James Booth
6082ab8778
Implemented /group command with no args (list groups)
2013-06-02 20:20:44 +01:00
James Booth
b89a751903
Refactor specific autocomplete functions
2013-06-02 20:11:42 +01:00
James Booth
af95c82fe7
Refactor autocompleters
2013-06-02 19:56:35 +01:00
James Booth
f72e7d89b8
Changed autocomplete for /group and /who
2013-06-02 17:51:38 +01:00
James Booth
f455f9ab90
Seperated roster group management to /group command
2013-06-02 17:25:52 +01:00
James Booth
aba9adcd0d
Use freetext parser for /who
2013-06-02 03:48:40 +01:00
James Booth
90daeb06ab
Added group argument to /who
2013-06-02 03:33:49 +01:00
James Booth
1ef0c8c45f
Added 'any' to /who command
2013-06-02 03:02:32 +01:00
James Booth
9dd5456f88
Added group add and group remove to /roster command
2013-06-02 02:48:20 +01:00
James Booth
b450fa3ef7
Updated help for /roster command
2013-06-02 00:45:40 +01:00
James Booth
0e5d277c14
Added message in console on /roster remove
2013-06-02 00:24:22 +01:00
James Booth
65c09db19e
Added message in console on /roster add
2013-06-02 00:20:22 +01:00
James Booth
cf8d00185b
Added autocomplete for /roster remove
2013-06-02 00:11:09 +01:00
James Booth
01bdc6ae5a
Added /roster remove command
2013-06-02 00:06:05 +01:00
James Booth
518b6721ff
Added /roster add command
2013-06-01 23:48:24 +01:00
James Booth
d49a01a9c3
Added roster list when using /roster with no args
2013-06-01 23:27:46 +01:00
James Booth
83c4177692
Include subscription states of "both" and "to" in /who output
2013-06-01 22:54:53 +01:00
James Booth
55f4e3ebca
Added autocomplete to /sub deny
2013-06-01 22:49:51 +01:00
James Booth
ae7da18d7e
Use waddstr for incoming messages to avoid truncation
...
fixes #8
2013-06-01 21:23:34 +01:00
James Booth
1eba4f5ab1
Added /leave command
2013-05-30 22:48:56 +01:00
James Booth
f164c12368
Show participant count in chat rooms
2013-05-30 22:31:43 +01:00
James Booth
378ed3139a
Sort room participants on /who command
2013-05-30 22:05:52 +01:00
James Booth
1ca2147844
Sort contacts on /who output
2013-05-30 21:47:30 +01:00
James Booth
ae350dc5fb
Show nickname rather than jid in room invites
2013-05-30 21:26:11 +01:00
James Booth
d02e6a82fa
Use nickname to jid mapping when sending room invites
2013-05-30 21:18:32 +01:00
James Booth
dcd8dcda87
Fixed autoaway
2013-05-30 21:11:55 +01:00
James Booth
4d9148e734
Added rooms history to ProfAccount
2013-05-23 22:29:41 +01:00
James Booth
486cbd6245
Added room name, and window index to desktop message notifications
...
closes #176
2013-05-23 00:10:55 +01:00
James Booth
0ced96f578
Do not close MUC windows on /wins prune
...
closes #172
2013-05-22 23:48:24 +01:00
James Booth
d017999a91
Add groups to roster contacts
...
fixes #175
2013-05-22 23:38:52 +01:00
James Booth
2842b423d1
Refactor roster.c
2013-05-22 21:43:06 +01:00
James Booth
15c7820594
Reuse roster_add in roster_update
2013-05-22 21:15:05 +01:00
James Booth
fce295d64a
Fixed #174
2013-05-22 13:47:25 +01:00
James Booth
c4e279202b
Removed unused offline_msg parameter from roster_add
2013-05-21 22:40:39 +01:00
James Booth
7b20d8d4f4
Refactored roster push handling
2013-05-21 22:00:42 +01:00
James Booth
5a8e667e58
Renamed roster_change_handle -> roster_change_name
2013-05-21 21:18:12 +01:00
James Booth
f4a3dd84ea
Renamed roster_barejid_from_handle -> roster_barejid_from_name
2013-05-21 21:12:00 +01:00
James Booth
8e4dd4b80f
Renamed handle, jid and resource in roster
...
Renamed to name, barejid and fulljid
2013-05-21 21:07:32 +01:00
James Booth
e489ef1ad5
Renamed _roster_handle_set -> _roster_handle_push
2013-05-21 20:58:50 +01:00
James Booth
d16a31d096
Renamed roster_jid_from_handle -> roster_barejid_from_handle
2013-05-21 20:50:05 +01:00
James Booth
58bd4f2547
Removed debug
2013-05-20 23:27:55 +01:00
James Booth
ecc62af305
Finished handle usage
2013-05-20 22:51:35 +01:00
James Booth
4a8db64d7a
Roster handle changes handled correctly
2013-05-20 21:43:20 +01:00
James Booth
6c4b81d093
Added jid autocompleter for /roster nick command
2013-05-20 20:51:43 +01:00
James Booth
72b8097465
Pass jid when creating new window for /msg with no message
2013-05-20 20:37:17 +01:00
James Booth
f8121cc546
Use handle for /info command
2013-05-19 23:44:28 +01:00
James Booth
59a3a5fe9b
Use handle in /msg command
2013-05-19 23:35:02 +01:00
James Booth
ad6184c86b
Use handle in incoming message console when exists
2013-05-19 17:27:58 +01:00
James Booth
0a3aaf5a36
Use handle in chat windows if available
2013-05-19 17:19:16 +01:00
James Booth
e1c9cbc955
Show handle rather than jid in /who output if exists
2013-05-19 17:00:27 +01:00
James Booth
db6e7f5697
Show contacts handle as window title in chat
2013-05-19 03:45:27 +01:00
James Booth
1c41a46dce
Changing roster handle with no argument clears handle
2013-05-19 03:27:59 +01:00
James Booth
d9cb8c100f
Show nickname in status updates if available
2013-05-19 03:22:06 +01:00
James Booth
66e4d8f5ba
Added /roster autocomplete
2013-05-19 02:30:03 +01:00
James Booth
6c4b21beb1
Added sub to /notify preferences output
...
Removed unused "status" value for /notify autocompleter
2013-05-19 02:15:35 +01:00
James Booth
d300e8e763
Added /roster command with nick option to change handle
2013-05-19 02:07:01 +01:00
James Booth
905571bfb7
Added "tidy" and "prune" options to /wins command
2013-05-17 00:33:00 +01:00
James Booth
aa1f8b655c
Show how many windows closed with /close all and /close read
2013-05-16 23:47:33 +01:00
James Booth
5a3db018dc
Show 0 rather than 10 in /wins
2013-05-16 23:39:13 +01:00
James Booth
c6265adef4
Show correct message when closing window 0
2013-05-16 23:23:27 +01:00
James Booth
2f149e0bc6
Use 0 not 10 on window close message
2013-05-16 23:08:58 +01:00
James Booth
e21c2276dc
Fixed incoming message text in console to use 0 rather than 10
2013-05-16 23:04:50 +01:00
James Booth
962cb10622
Added autocompleter for /close command
2013-05-16 22:49:35 +01:00
James Booth
2f92752365
Added "read" parameter to /close
...
Closes all windows where there are no unread messages
2013-05-16 22:34:05 +01:00
James Booth
57e64bebe5
Added parameter to /close
...
2,3,4,5,6,7,8,9,0 will close specified window.
'all' will close all windows.
closes #159
2013-05-12 23:00:29 +01:00
James Booth
c1ee75da40
Removed contact_list, moved roster logic to xmpp/roster module
2013-05-06 23:04:46 +01:00
James Booth
05f2d29396
Renamed contact_list_ functions to roster_
2013-05-06 22:32:58 +01:00
James Booth
097ea18dab
Tidied includes in iq.c
2013-05-06 22:00:11 +01:00
James Booth
3ae74feaa2
Created roster module, moved roster iq's
2013-05-06 21:53:59 +01:00
James Booth
d43539bf10
Fixed memory leak
2013-05-06 01:22:34 +01:00
James Booth
cd06771ddf
Removed blank lines
2013-05-06 01:12:05 +01:00
James Booth
cb85af800f
Unicode support for /duck output
2013-05-06 01:09:10 +01:00
James Booth
78ff58cf77
Fixed error when losing connection and segfaulting on notify_remind()
2013-05-06 00:33:33 +01:00
James Booth
3d8d5214bb
Autocomplete "/sub allow" parameter from subscription requests
2013-05-05 23:42:11 +01:00