On Friday 29 June 2007 00:42, Sebastian Renzi wrote:
> Now I'm working on retrieving the xtraz status message. I've
> identified the packet that should be sent. The question is: should
> licq retrieve the message as soon as it determines that the user has
> xtraz status (this is the default behaviour of Mirabilis ICQ) or
> should we have a button to retrieve it (like Away or N/A messages)?

Since it describes the users current status, it should be retrieved as soon as 
possible. Mirabilis has the xtraz status override the actual status, so we 
need to get it and show it instead of the current status.

> To retrieve the xtraz message, I need to decode an xml message. Is
> there anything done already? I've seen xml in other parts of the
> protocol, so I wouldn't like to code something that already exists.

Nope, the current XML is not even used at all.

> <ret event='OnRemoteNotification'>
>   <srv><id>cAwaySrv</id>
>     <val srv_id='cAwaySrv'>
>       <Root><CASXtraSetAwayMessage></CASXtraSetAwayMessage>
>         <uin>user's UIN</uin>
>         <index>1</index>
>         <title>Status Name</title>
>         <desc>Status Description</desc>
>       </Root>
>     </val>
>   </srv>
> </ret>

If all you need is to extract the desc field, then using a string's search 
capability is sufficient. But if you need more than that, we should use an 
XML parser perhaps.

> I still haven't looked at the qt-gui code, but after retrieving the
> message, I'm planning to modifiy the qt-gui in order to reflect the
> status with the xtraz icons. I'm planning to use Mirabilis icons, at
> least for the moment. Then each skin should have their xtraz icons,
> but I figure that if we're using Mirabilis emoticons, I think that
> we'll be able to use these icons as well. I'm not sure about the
> licenses, though.

What  I would reccommend is to use the current icons as a base that are 
hardcoded into the Qt-GUI. That way if a skin doesn't specify an icon, we can 
fallback to the default in the GUI.

> Well, this is only the beginning. :-) Any hints will be much appreciated.

I would also reccommend to breakup any work into smaller patches. Such as

 #1 Get xtraz status
 #2 Set xtraz status
 #3 Extra gui work
 #4 Anything else?

That way it is easier to integrate the patches, and it should reflect the 
order in which you are making the code.

Jon

-- 
________________________________________________________
Jon Keating                ICQ: 16325723
[EMAIL PROTECTED]               MSN: [EMAIL PROTECTED]
http://www.licq.org        GPG: 2290A71F
http://www.thejon.org      HOME: Minamiashigara, Japan

Reply via email to