Opened at 2012-01-13T13:06:27Z
Closed at 2012-01-30T22:25:13Z
#898 closed defect (fixed)
libpurple - handle "split user" (i.e. additional info like servername in username)
Reported by: | Owned by: | wilmer | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Purple | Version: | 3.0.4 |
Keywords: | meanwhile, server | Cc: | |
IRC client+version: | Client-independent | Operating System: | Linux |
OS version/distro: | Fedora 15 |
Description
Fedora 15, libpurple 2.10.1, Bitlbee 3.0.4
Built using
Debugging disabled.
Binary stripping enabled. Off-the-Record (OTR) Messaging disabled. systemd enabled. Using event handler: glib Using SSL library: gnutls Building with these protocols: purple twitter
Note that BitlBee-libpurple is supported on a best-effort basis. It's not *fully* compatible with normal BitlBee. Don't use it unless you absolutely need it (i.e. support for a certain protocol or feature).
When trying to set up my meanwhile account, I do not have the ability to set up a server. The option does not exist. When I try to sign onto my meanwhile account (knowing I've not set up my server), I get the message:
meanwhile - Login error: A server is required to connect this account meanwhile - Logging in: Signing off..
When I try to set a server via "account 2 set server", I get: Setting `server' does not exist.
Attachments (0)
Change History (9)
comment:1 Changed at 2012-01-13T13:11:54Z by
comment:2 Changed at 2012-01-13T13:16:51Z by
[07:14] <@root> auto_connect = `1'
[07:14] <@root> auto_reconnect = `true'
[07:14] <@root> nick_format is empty
[07:14] <@root> nick_source = `handle'
[07:14] <@root> password = `' (hidden)
[07:14] <@root> tag = `meanwhile'
[07:14] <@root> username = `isuftin'
[07:14] <@root> port = `1533'
[07:14] <@root> force_login = `false'
[07:14] <@root> fake_client_id = `false'
[07:14] <@root> display_name is empty
[07:14] <@root> away is empty
[07:14] <@root> status is empty
comment:3 Changed at 2012-01-14T00:32:48Z by
Weird, I do see that setting..
What does "help purple meanwhile" say? (Only works after you add the account BTW.)
comment:4 Changed at 2012-01-24T13:53:12Z by
BitlBee libpurple module meanwhile (Sametime). 07:52 <@root> 07:52 <@root> Supported settings: 07:52 <@root> * port (Port), integer, default: 1533 07:52 <@root> * force_login (Force login (ignore server redirects)), boolean, default: false 07:52 <@root> * fake_client_id
comment:5 Changed at 2012-01-24T14:16:41Z by
Same here...
[08:14] <@root> BitlBee libpurple module meanwhile (Sametime).
[08:14] <@root>
[08:14] <@root> Supported settings:
[08:14] <@root> * port (Port), integer, default: 1533
[08:14] <@root> * force_login (Force login (ignore server redirects)),
boolean, default: false
[08:14] <@root> * fake_client_id (Hide client identity), boolean, default:
false
comment:6 Changed at 2012-01-30T21:36:20Z by
Ahh. I think I got it.
host = strrchr(user, ':'); if(host) { /* annoying user split from 1.2.0, need to undo it */ *host++ = '\0'; purple_account_set_string(account, MW_KEY_HOST, host); purple_account_set_username(account, user); } else { host = (char *) purple_account_get_string(account, MW_KEY_HOST, MW_PLUGIN_DEFAULT_HOST); }
Nowhere in the libpurple code does the "server" (MW_KEY_HOST) setting get added, it's just read a few times for backward compatibility apparently. Try setting your username to username:host.
comment:7 Changed at 2012-01-30T21:50:01Z by
[15:47] <@marx2k> account 2 set username isuftin:xxx.xxx.xxx[[BR]]
[15:47] <@root> username = `isuftin:xxx.xxx.xxx'[[BR]]
[15:47] <@marx2k> account 2 on
[15:47] <@root> meanwhile - Logging in: Connecting
[15:47] <@root> meanwhile - Logging in: Sending Handshake
[15:47] <@root> meanwhile - Logging in: Waiting for Handshake
Acknowledgement
[15:47] <@root> meanwhile - Logging in: Handshake Acknowledged, Sending
Login
[15:47] <@root> meanwhile - Logging in: Waiting for Login Acknowledgement
[15:47] <@root> meanwhile - Logging in: Login Acknowledged
[15:47] <@root> meanwhile - Logging in: Starting Services
[15:47] <@root> meanwhile - Logging in: Connected
[15:47] <@root> meanwhile - Logging in: Logged in
This bug can be set as closed. Thank you! :) *shaking fist @ libpurple*
On Mon, Jan 30, 2012 at 3:36 PM, bugs.bitlbee.org <bugs@…>wrote:
#898: [libpurple - meanwhile] Setting `server' does not exist.
-------------------------------------+-------------------------------------
Reporter: isuftin@⦠| Owner: wilmer
Type: defect | Status: new
Priority: normal | Milestone:
Component: Purple | Version: 3.0.4
Resolution: | Keywords: meanwhile,
IRC client+version: Client- | server
independent | Operating System: Linux
OS version/distro: Fedora 15 |
-------------------------------------+-------------------------------------
Comment (by wilmer):
Ahh. I think I got it.
{{{
host = strrchr(user, ':');
if(host) {
/* annoying user split from 1.2.0, need to undo it */
*host++ = '\0';
purple_account_set_string(account, MW_KEY_HOST, host);
purple_account_set_username(account, user);
} else {
host = (char *) purple_account_get_string(account, MW_KEY_HOST,
MW_PLUGIN_DEFAULT_HOST);
}
}}}
Nowhere in the libpurple code does the "server" (MW_KEY_HOST) setting get
added, it's just read a few times for backward compatibility apparently.
Try setting your username to username:host.[[BR]]
--
Ticket URL: <http://bugs.bitlbee.org/bitlbee/ticket/898#comment:6>
BitlBee <http://www.bitlbee.org/>
BitlBee
comment:8 Changed at 2012-01-30T21:55:59Z by
Status: | new → assigned |
---|---|
Summary: | [libpurple - meanwhile] Setting `server' does not exist. → libpurple - handle "split user" (i.e. additional info like servername in username) |
Excellent. :-)
Hopefully this bug will be a reminder for anyone else to have this problem in the future. This is definitely not intuitive.
There's actually something I can do to make this clearer, since Pidgin does show a separate Server setting. Somehow I can figure that out in code:
/* set up account ID as user:server */ split = purple_account_user_split_new(_("Server"), MW_PLUGIN_DEFAULT_HOST, ':'); mw_prpl_info.user_splits = g_list_append(mw_prpl_info.user_splits, split);
I'll see how I can use that on the receiving end. Let's rename this bug.
comment:9 Changed at 2012-01-30T22:25:13Z by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Try just "account 2 set", the setting may just have a different name.