aboutsummaryrefslogtreecommitdiffstats
path: root/protocols/skype
Commit message (Collapse)AuthorAgeLines
* Remove old skype plugin. Use the skypeweb purple plugin instead.dequis2018-03-11-4344/+0
| | | | | | | | | | RIP This plugin relied on the skype linux client, which doesn't work anymore. During login it just does exit(0) for mysterious reasons. I guess that's the server trying to say that it's not supported. This is officially dead now after a few years of kinda-almost-working.
* Implemented plugin information for external pluginsjgeboski2016-05-25-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As of now, bitlbee will load any plugin regardless of the ABI it was built against. This is really problematic when structures or symbols are changed within bitlbee. This often leads to the plugin not loading or the plugin acting in an undefined way. Typically a simple rebuild of the plugin will resolve such issues, but many users have no idea that this is required after they have updated bitlbee. Furthermore, it is often times impossible to determine the version of a plugin, without relying on the package manager of the system. This is quite a problem when users are reporting bugs for external plugins, and they have no idea what version of the plugin they are running. This is also an opportunity to provide additional metadata for each plugin that can then be displayed to the user. Solving these issues is done by adding a new required function to each plugin. The init_plugin_info() function must now be implemented along with the init_plugin() function. This function then returns a static structure, which retains all of the metadata for the plugin. Then this is used by bitlbee to check the ABI version and provide information to the user. The introduction of the new function is required as bitlbee needs to obtain the ABI version before calling init_plugin(). The boiler-plate implementation of init_plugin_info(): #ifdef BITLBEE_ABI_VERSION_CODE struct plugin_info *init_plugin_info(void) { static struct plugin_info info = { BITLBEE_ABI_VERSION_CODE, /* Required */ "plugin-name", /* Required */ "1.3.3.7", /* Required */ "A short description of the plugin", /* Optional */ "First Last <alias@domain.tld>", /* Optional */ "http://www.domain.tld" /* Optional */ }; return &info; } #endif The example wraps the function declaration in an if block for backwards compatibility with older bitlbee versions. Displaying the plugin metadata is done via the newly added "plugins" command, which simply dumps formatted data to the root channel.
* skype: create groupchat as soon as a message is receiveddequis2015-10-13-34/+32
| | | | | | | | | | | | | | | | | | Before this commit, the bee_chat_by_title() call just failed when receiving a message in a groupchat we didn't know about, which is probably something skype broke in their api at some point. I'm fixing this since apparently the only way to access p2p based chats is through the official skype desktop client (they won't be supported through msnp24 or skypeweb. It's broken in mobile clients already), so this plugin is probably the best way to access those. This breaks the 'msg' test - now all chats are groupchats and there's no way to tell them apart. However, in reality, private messages aren't delivered at all over the api, or at least I never managed to get them working. Probably if you talk with someone who has a very old patched skype client.
* skype tests: adjust channel length limit to fix tests...dequis2015-10-13-15/+15
| | | | | | | | | | | | | | The diff might look confusing - it's just removing the last hex digit of each channel name in the groupchat tests. This broke in several ways over the years. I know because i've been bisecting the last few hours and found lots of different issues. All of them except this one were fixed already This one is probably a side effect of the new irc channel name generation code that includes the # as part of the string and reuses the nick code. Or maybe not exactly that, but something similar. I'm not going to bisect any further, had enough for today.
* skype: fix tests to expect NOTICE * instead of NOTICE AUTHdequis2015-10-13-21/+21
| | | | Forgot to change this after b39859e
* skype: use g_vsnprintf() instead of vsnprintf()dequis2015-10-13-2/+1
| | | | | | More prefixes = better. The G stands for "good". (it also fixes the warning about _BSD_SOURCE being deprecated)
* skype: use ssl_sockerr_again() instead of sockerr_again()dequis2015-10-13-1/+1
| | | | | Found the thing using 100% cpu because of a dead connection that it didn't want to bury.
* typofix - https://github.com/vlajos/misspell_fixerVeres Lajos2015-08-07-1/+1
|
* skyped: add _SRCDIR_ to makefile, test build in travisdequis2015-05-29-1/+1
|
* skyped: fix make install-doc targetdequis2015-05-28-4/+2
|
* Include prebuilt skyped manpage, remove asciidoc dependencydequis2015-05-17-13/+209
|
* Add --doc= configure option to disable helpfile generationdequis2015-02-23-3/+3
| | | | | | | | | | | | | It will get disabled automatically if the deps (xmlto and xsltproc) are missing Also added checks for asciidoc (a2x) for the skype plugin, which needs it for the skyped man page, and will also get that disabled if --doc=0 is passed or if asciidoc isn't installed. This should keep those ugly deps under control for now. I'd like to replace them at some point with something less dumb.
* Reindent everything to K&R style with tabsIndent2015-02-20-199/+294
| | | | | | | Used uncrustify, with the configuration file in ./doc/uncrustify.cfg Commit author set to "Indent <please@skip.me>" so that it's easier to skip while doing git blame.
* Replace isdigit/isalpha/.../tolower/toupper with glib variantsdequis2015-01-16-1/+1
| | | | | | | | | | | This fixes warnings about passing signed chars to them (apparently they are implemented as macros that do array lookups without checks in some platforms, yay) Specifically: functions=isalnum|isalpha|isdigit|isspace|isxdigit|tolower|toupper sed -ir "s/$functions/g_ascii_&/g" **/*.c
* Fix incorrect Free Software Foundation addressMatej Cepl2015-01-16-1/+1
|
* skype: fix buildMiklos Vajna2013-04-23-1/+1
|
* skype: clean up installing section of READMEMiklos Vajna2013-04-21-78/+5
| | | | | | | These were the installation instructions for the out-of-tree plugin, no longer relevant. Nowadays only the package names or the configure option is interesting.
* skype: ignore empty username (#1045)Miklos Vajna2013-04-21-4/+4
|
* test skype_group_by_name()Miklos Vajna2013-04-21-0/+55
|
* test skype_chat_topic()Miklos Vajna2013-04-21-0/+73
|
* test skype_chat_msg()Miklos Vajna2013-04-21-0/+74
|
* skype: avoid fake MBERS buddy in groupchatsMiklos Vajna2013-04-21-1/+4
|
* test skype_set_away()Miklos Vajna2013-04-21-0/+33
|
* skyped: missing newline in logMiklos Vajna2013-04-21-1/+1
|
* Merging "storage" branch which I wrote long ago. It separates generation ofWilmer van der Gaast2013-04-20-3/+3
|\ | | | | | | | | | | XML-formatted user configs from disk I/O so we can try to start using other mechanisms to store them (a REST API or something, for example).
| * s/ACC_SET_NOSAVE/SET_NOSAVE/.Wilmer van der Gaast2012-06-07-3/+3
| |
* | skype: improve support for reading bookmarked chats (#1037)Jinn Ko2013-03-16-1/+5
| |
* | skype: in groupchats, handle ACTIVEMEMBERS as MEMBERS (#1037)Jinn Ko2013-03-16-1/+1
| |
* | skyped: fix non-gobject mode (#1035)Jinn Ko2013-03-07-2/+2
| |
* | test skype_chat_leave()Miklos Vajna2013-03-06-0/+77
| |
* | skype: enough questions about if skype 4.x works or notMiklos Vajna2013-03-06-1/+1
| |
* | skyped: prefix debug messages with source locationMiklos Vajna2013-03-06-5/+5
| |
* | skyped: fix typo when not finding config fileMiklos Vajna2013-03-06-1/+1
| |
* | skype: add support for fetching full names of buddiesMiklos Vajna2013-02-28-4/+85
| |
* | skyped.py: also sanitize log file outputLeho Kraav2013-02-25-4/+8
| |
* | Clean up set_my_name API implementationsMiklos Vajna2013-02-18-6/+0
| |
* | skype tests: run all tests with a single skyped configMiklos Vajna2013-02-17-28/+29
| | | | | | | | | | | | This makes them a bit faster, and there is no need to have separate skyped configs for each test ATM.
* | test skype_set_mood_text()Miklos Vajna2013-02-17-0/+24
| |
* | test skype_buddy_action_list()Miklos Vajna2013-02-17-0/+24
| |
* | skype_buddy_action_list: fix missing hangup in help outputMiklos Vajna2013-02-16-2/+4
| |
* | test skype_add_buddy()Miklos Vajna2013-02-16-0/+32
| |
* | skyped: print again the config file pathMiklos Vajna2013-02-16-1/+1
| |
* | skype: rename these tests, these are about we are added, not about we addMiklos Vajna2013-02-16-4/+4
| |
* | skype: check for truncated commands on receivingMike Kazantsev2013-02-14-1/+8
| |
* | skype: handle only socket errors in send()Mike Kazantsev2013-02-11-2/+2
| |
* | skype: handle socket errors during tls session negotiation in a graceful wayMike Kazantsev2013-02-11-3/+7
| | | | | | | | | | | | | | | | | | | | Before this patch, such errors (which happen 1/4 times here) lock skyped forever, producing traceback (and hanging because threads in python). Proper fix would be to see why these happen (might be ssl handling in the plugin), but that's no excuse not to handle socket errors without crashing the daemon.
* | skype: don't do retries on send() on socket errors with gobjectMike Kazantsev2013-02-11-9/+6
| | | | | | | | | | | | | | | | | | As it's a blocking socket, I imagine there might be only EINTR errors from signals, which don't seem to be used here. I think the same tweak can be applied to select() code, but I don't run it, so no idea if Skype4Py threads might make such loop necessary there.
* | skype: cleanup of the send() codeMike Kazantsev2013-02-11-17/+15
| | | | | | | | | | | | | | | | | | Use socket.sendall(), as send() is not guaranteed to send all the data passed (though it should generally work that way with blocking sockets). Use more robust, obvious and idiomatic loop conditions. Cleanup redundant imports and variables.
* | skype: add newline to all the lines emittedMike Kazantsev2013-02-11-14/+14
| |
* | skype: add ATTACH_GDB env flag, extend hacking instructions with info on ↵Mike Kazantsev2013-02-11-0/+43
| | | | | | | | pexpect/gdb