| Commit message (Collapse) | Author | Age | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
RIP
As per http://ismsndeadyet.com/ all versions up to MSNP22 died a few
months ago. We had a MSNP21 implementation, bought us two extra years.
Implementing MSNP24 is technically possible but also pointless given
skypeweb, and the authentication requires some fairly messed up crypto
and legacy old-skype-protocol servers. For a long time I tried to
reverse a potentially simpler method, and got fairly close, but never
completed that. I haven't done any attempts to continue it in the last
year, so I'm fine with giving up at this point.
|
| |
|
|
|
|
|
|
| |
The Twitter commands are now documented in their own chapter
accessed by `help twitter` instead of being hidden in `help set
commands`.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Credit for the idea goes to russian XMPP spammers. Thanks!
|
|
|
|
|
| |
There's a functionality change buried here, but it's one that people
shouldn't be using anyway.
|
| |
|
|
|
|
|
|
|
| |
- Remove a bunch of mentions of yahoo
- Remove 'smileys' topic from help index
- Add 'identify_methods' help topic
- Mention new commands like 'chat list' or 'plugins'
|
| |
|
| |
|
|
|
|
|
|
| |
RIP
The previous commit already handled the part of telling users.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Several protocols can provide a list of existing chatrooms that a user
is able join. This is crucial for the usage of several protocols, most
notably Purple and Facebook.
Plugins wishing to support this extended functionality must implement
the new prpl->chat_list() function. This implemented function will in
most cases send a remote request for the list of chatrooms. Once the
list of chatrooms is obtained, a bee_chat_info_t GSList must be created
and assigned to the im_connection->chatlist field. Then a call to the
bee_chat_list_finish() is needed to display the list to the user.
The chat list is maintained entirely by the plugin, so it is important
to ensure all pointers related to the chat list remain valid until the
chat list is set to NULL. This list is used internally by bitlbee to
calculate indexes, which then allows the user to join a chat with an
index, rather than some random identifier. It also important to ensure
the list is properly freed whenever it is updated, or when the account
is disconnect via the prpl->logout() function.
On the user interface side of things, the 'chat list' subcommand was
recommissioned. For a user to list the existing chat rooms:
chat list <account id>
Afterwards a user can join a chatroom in the list with its index. This
extends the functionality of the 'chat add' subcommand by adding in
support for the exclamation point operator to denote an index.
chat add <account id> !<index> [channel]
|
|
|
|
|
|
|
| |
Add manual spaces to fix genhelp.py leaving out the space after
<emphasis> tags when immediately followed by a new-line.
Real fix may lie somewhere in the depths of the NORMALIZE_RE reg-ex.
|
|
|
|
|
|
| |
Add a small note to "show_users" explaining what's so special about
special. Unfortunately, as it's protocol-specific, all we can really
say is that it's protocol-specific.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
lol
|
|
|
|
|
|
|
|
|
| |
Basically the same thing as github PR #55, which fixes trac bug 415,
but this one conditionalized that behavior and uses the API introduced a
few commits ago.
I didn't think too much about the setting name and i'm open to changing
it to anything else
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Facebook's oauth has been broken for months, and in the last few days
they broke plain logins too, so I just added an error message that says
this when you do "account on":
Facebook's XMPP service is gone. Try this instead:
https://wiki.bitlbee.org/HowtoFacebookMQTT
Also nuked all the oauth related code, except some parts of lib/oauth2.c
which seemed generic enough to maybe help in the future with other
not-really-compliant not-really-implementations of the not-really-oauth2
not-really-spec
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"Message carbons" (XEP-0280) is a server feature to get copies of
outgoing messages sent from other clients connected to the same account.
It's not widely supported by most public XMPP servers (easier if you
host your own), but this will probably change in the next few years.
This is enabled by default if the server supports it. It can also be
disabled with the "carbons" account setting.
Loosely based on a patch by kormat from trac ticket 1021. (Thanks!)
I moved stuff around, simplified things, fixed a few bugs, and used the
new self-messages feature.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
There were some mentions about some password obfuscation method that
probably hasn't been used in a decade. And some portability issues that
are probably not relevant anymore.
Also: "The MD5 algorithm code is licensed under the Aladdin license".
No, it's not. I don't think it was before I removed it in favor of
glib's GChecksum, either.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds an OPT_SELFMESSAGE flag that can be passed to imcb_buddy_msg()
or imcb_chat_msg() to indicate that the protocol knows that the message
being sent is a self message.
This needs to be explicit since the old behavior is to silently drop
these messages, which also removed server echoes.
This commit doesn't break API/ABI, the flags parameters that were added
are all internal (between protocols and UI code)
On the irc protocol side, the situation isn't very nice, since some
clients put these messages in the wrong window. Irssi, hexchat and mirc
get this wrong. Irssi 0.8.18 has a fix for it, and the others have
scripts to patch it.
But meanwhile, there's a "self_messages" global setting that lets users
disable this, or get them as normal messages / notices with a "->"
prefix, which loosely imitates the workaround used by the ZNC
"privmsg_prefix" module.
|
|
|
|
| |
It was added a while ago.
|
| |
|
| |
|
| |
|
|
|
|
| |
Use "account jabber set anonymous on" to have bitlbee try that method
|
| |
|
| |
|
|
|
|
|
| |
Because openbsd/netbsd don't have a 'python' in the PATH unless the user
creates the symlink explicitly.
|
|
|
|
|
| |
Also just remove the .git check completely - just rely on make skipping
it if it exists already.
|
|
|
|
|
| |
- GMail notifications stuff is now just 'mail_notifications'
- sed -i s/notify_handle/mail_notifications_handle/
|
| |
|
|
|
|
|
| |
Since user-guide.{txt,html} aren't normally needed for anything and add
xsltproc/xmlto as dependencies.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This would mean changing one build dependency for another, but one that
is way more common at least. (Fun fact: the xslt stuff depends on perl)
It generates *almost* the same thing as the xslt - a bit better if you
ask me, since it correctly handles a few <emphasis> tags in the middle
of the text, which were previously stripped. One example of that is:
Favo<emphasis>u</emphasis>rite the given user [...]
Outputs "Favo\x02u\x02rite" with this script, "Favorite" with the xslt.
(That's actually an accidental feature)
The script works in python2 and python3 and only uses the stdlib
|
| |
|
|
|
|
| |
It's not 2003 anymore
|
|
|
|
| |
Added date to doc/CHANGES and fixed "make tar".
|