Opened 11 years ago

Last modified 11 years ago

#3747 new enhancement

Add support for XEP-0085 <active/> and <inactive/>

Reported by: valombre Owned by: deryni
Milestone: Patches welcome Component: XMPP
Version: 2.2.1 Keywords: xep-0085 notify status
Cc:

Description

XEP-0085 is the XMPP protocol extension for communicating the status of a user in a chat session. It certainly seems useless, but it is not in my case. I'd like so much this feature to be implemented in pidgin. Thanks

Change History (10)

comment:1 Changed 11 years ago by nwalp

  • pending changed from 0 to 1

Pidgin already implements XEP-0085 for improved typing notification, and conversation closed notices. What part of the protocol extension is missing that you are wanting?

comment:2 Changed 11 years ago by valombre

  • pending changed from 1 to 0

Typing notification and conversation closed notices are only a part of the protocol extension. If you read http://www.xmpp.org/extensions/xep-0085.html , you'll see that there are other status notifications :

  • typing pauses (Has the user stopped typing ?)
  • active (Is the user paying attention to the conversation ? ...)
  • inactive (...or not ?)


Those can be very useful. If those notifications are implemented, i've never seen them... or it's activable or something, but then can you explain me where & how ?

Thanks in advance, anyway.

comment:3 Changed 11 years ago by nwalp

Typing pauses are implemented. We don't have a good way to represent active and inactive, other than writing to the conversation window, which I would find incredibly annoying.

comment:4 Changed 11 years ago by valombre

Of course if activity is displayed on the conversation window, that's not very nice... But why not allocate a little of space just under the status message in the window ? It would suit with the goal of a status message.

If the functionality is disabled by default, it's not annoying for the people that do not want it. I would personnaly like it but I can understand that it annoys you all. However I can't believe it's just a matter of esthetic, we've only to find a better place, that's it.

comment:5 in reply to: ↑ description Changed 11 years ago by valombre

Ok it has been a while since I request that feature and it has not been implemented yet so i will tempt again with a more constructive post :)

If you would just like ideas, i have some for you. As you refused my request for esthetic purpose, I suppose you'd like a discrete implementation :

You could then just not display a message, but use tabs-colors. I saw such an implementation in Sameplace http://sameplace.cc/ and it looks rather well.

Another solution, and maybe simpler for you, would be to replace the old typing icon you used in the previous releases of pidgin by others chatstates icons. This icon would change with the chatstate.

Thanks for thinking of it and maybe working on it.

comment:6 Changed 11 years ago by deryni

  • Owner changed from nwalp to deryni
  • Summary changed from Add XEP-0085 support to Add support for XEP-0085 <active/> and <inactive/>

Presumably the only state you are actually missing here is <inactive/>, correct? We have <composing/> (typing indicator in history area, green tab), <paused/> (typing stopped indicator in history area, yellow/orange tab), and <gone/> (user has closed the conversation window, grey tab). Which leaves <active/> and <inactive/> but since we handle the two other active types and one of the inactive types the default unmodified status could be seen as the <active/> indicator.

I'm entirely uncertain what purpose <inactive/> has to be honest; so I am entirely unsure what notification would be correct let alone why it would be useful. Did I missing anything?

comment:7 Changed 11 years ago by valombre

I'm not sure you've understood the purpose of <active/> too, it's not only bound to typing status, it's about the activeness of the window so if the other contact has or not focused the window recently. I find that feature very usefull, but all is a matter of context, habits, ...

And about what you're missing, yes, you're missing that other jabber clients (as Gajim) support the entire XEP as it's defined and that if you decide to not use <active/> and <inactive/>, you're stuck with a frustant "XXX is paying attention to the conversation" in Gajim as it's not the case at all. I suppose standards are made to avoid this sort of things, aren't they ?

comment:8 Changed 11 years ago by deryni

  • pending changed from 0 to 1

I didn't say <active/> was bound to typing status, what I said was that given that we already handle the typing statuses and the gone status that the lack of any other status is either <active/> or <inactive/> I would by default assume <active/> unless I had reason to assume otherwise.

You still didn't explain what exactly the use of <active/> and <inactive/> to you is? What information do you gain from seeing that distinction?

Ah, so now we come to the problem. You are saying pidgin isn't sending <inactive/> and gajim is displaying that in a way you dislike? That sounds very much like a gajim bug to me (especially because a constant indication that your buddy is paying attention to the window sounds like a monumentally stupid thing to have designed).

comment:9 Changed 11 years ago by valombre

  • pending changed from 1 to 0

Ok, let's say gajim bugs.

The gain of the thing is that I can see if my contact is really paying attention or not, it's a habit with some friends and, yeah I concede it can seem useless but it's not for me...

I'd just like this feature, no need to argue I think, it's a wish that would, I suppose, not be so hard to realise, that's all.

Thanks anyway :(

comment:10 Changed 11 years ago by deryni

  • Milestone set to Patches welcome

What criteria should one use to determine that someone is <inactive/>? Assuming the criteria given as an example in the xep, do you really gain anything from knowing that your buddy hasn't interacted with the IM window for thirty seconds? Will that change what you do in that window, on your computer, etc.? Consider especially that if you take the <gone/> example criteria a minute and a half later you will get a <gone/> and will know they 'really' left. What could you possibly have wanted to do in that 90 seconds if had you known they were inactive versus not knowing if they were active or inactive?

All of the above notwithstanding, a plugin could add any indication for this it wanted to (by watching the incoming xml) and pidgin does already track the active and inactive states internally to the xmpp plugin it just doesn't at the moment do anything with it. If you really feel like this is notification that is needed you are welcome to write a patch to add the necessary bits to the core so that the xmpp prpl can indicate it to the core and thus allow a ui to do something about it.

As to the gajim display issue, as I said before a constant activity indicator strikes me as just flat out insane, the conversation window existing in the default state should indicate the active status, if you want to indicate inactive status somehow that is fine (same with gone). So I really do think that if you don't like the constant active indication in gajim you should file a ticket with them about it.

I'm not trying to be unnecessarily hard here, we just already have people not understand what the current tab colors mean so adding new ones is something I'd like to avoid. I don't really like the idea of printing a message to the conversation window for "the user is now inactive" because people aren't going to understand what that means (especially not if it is time based). I really just think that the inactive (and gone) parts of xep-0085 are a mistake and should not exist, they serve no good purpose and are just horribly prone to misunderstanding and causing people to get offended.

Note: See TracTickets for help on using tickets.
All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!