Miranda NG Official Community Forum

Forum for English speaking Miranda NG users => Miranda NG general talk => Topic started by: kaomot on 04 12 2013, 22:02:14

Title: AvatarHistory
Post by: kaomot on 04 12 2013, 22:02:14
Hi guys,

I am using AvatarHistory with the Skype protocol. The plugin saves some avatars, but most of the time I get the following error message:

Title: Avatar History: Unable to save avatar
Message: C:\Miranda Folder\Profiles\Avatars History\SKYPE_1\contactusername\2013-12-04 10h35m43s.jpg

Is it possible to fix this?
Title: Re: AvatarHistory
Post by: Wishmaster on 05 12 2013, 10:00:00
Hi,
can you give me the "contactusername" of such a failed avatar? (per PM if you want)
Title: Re: AvatarHistory
Post by: kaomot on 07 12 2013, 05:57:23
Now that you mention it, I think the error only occurs with usernames that have the "live" or "facebook" prefix, like "live:ref.din" or "facebook:carol". In the error message they are shown as
"live_ref.din" and "facebook_carol".
Title: Re: AvatarHistory
Post by: Wishmaster on 07 12 2013, 09:54:21
Well, ":" is converted to "_" because ":" is an illegal character for windows filenames. Appearently that conversion works fine, I dont see a problem there. Not sure why it doesn't work.
Title: Re: AvatarHistory
Post by: kaomot on 07 12 2013, 14:44:52
Yeah, that's weird... at least in the error message there are no problems with the path or the filename. Could it be showing correctly in the error message but trying to save using ":"?
Title: Re: AvatarHistory
Post by: kaomot on 16 12 2013, 22:47:59
Any news concerning this topic?
Title: Re: AvatarHistory
Post by: Wishmaster on 17 12 2013, 18:48:42
Any news concerning this topic?
Well no, not yet. I looked into it and I have no idea why it doesn't work for you. Everything is escaped properly.

Is it always the same contact affected? Does the folder C:\Miranda Folder\Profiles\Avatars History\SKYPE_1\contactusername\ exist in that case?

You could create a BYTE value AvatarHistory/Debug and set it to 1, that might help to get more popups.
Title: Re: AvatarHistory
Post by: kaomot on 19 12 2013, 03:58:17
It happens to all contacts whose usernames have "live:username" prefixes. It doesn't happen to contacts who have regular usernames.

For every contact, the folder "...\MirandaFolder\Profiles\Avatars History\SKYPE_1\live_username" does exist, but all of them are just empty.
Title: Re: AvatarHistory
Post by: Wishmaster on 19 12 2013, 09:50:26
It happens to all contacts whose usernames have "live:username" prefixes. It doesn't happen to contacts who have regular usernames.

For every contact, the folder "...\MirandaFolder\Profiles\Avatars History\SKYPE_1\live_username" does exist, but all of them are just empty.
Well, so it cannot be due to their user names. Could you try what I asked above?
Do the original files exist?

Also do you use 32 or 64 bit version of Miranda NG?
Title: Re: AvatarHistory
Post by: kaomot on 19 12 2013, 18:38:50
I am using the 32 bit version.

The avatars are shown in the contacts' window, but I was not able to find them on "...\MirandaFolder\Profiles\MyProfile\AvatarCache\SKYPE_1\"

In that folder I can only find the avatars of the contacts who have regular Skype usernames. These ones are normally saved by the Avatar History plugin.

I noticed that the avatars saved on the cache are named after the contact's username. Now I guess that what is causing the problem is that Miranda is trying to save the avatars in the cache folder using ":", thus the file is not created in that folder and the error occurs.

I don't know how to do the thing you asked me to. If you still need it after this message, tell me how to do it, please.
Title: Re: AvatarHistory
Post by: Wishmaster on 19 12 2013, 19:28:13
Well, you're wrong. Avatar History only uses the path "C:\Miranda Folder\Profiles\Avatars History\SKYPE_1\" to save the avatars. It does not save avatars in  "...\MirandaFolder\Profiles\MyProfile\AvatarCache\SKYPE_1\"or any other path. Really. Those files are created by the protocol. So if you can see them in the message window, but they are not in that folder, where are they? If the source path passed to Avatar History is wrong itsself, it obviously cannot save copy a non-existing or invalid file.
Please try this version (https://dl.dropboxusercontent.com/u/68023032/AvatarHistory.dll), there should be a popup titled "Avatar Source", I'm interested in those.

As I tried to explain you, the file C:\Miranda Folder\Profiles\Avatars History\SKYPE_1\contactusername\2013-12-04 10h35m43s.jpg is perfectly fine, so it cannot be because of wrong escaping. Really.

Title: Re:AvatarHistory
Post by: Robyer on 20 12 2013, 09:21:06
So it will be problem of Skype plugin not escaping that wrong chars for saving own avatars...
Title: Re: AvatarHistory
Post by: Wishmaster on 20 12 2013, 09:32:48
So it will be problem of Skype plugin not escaping that wrong chars for saving own avatars...
Yes i think so too. The version I posted above will show a popup with "Avatar Source", that will show the filename of CONTACTAVATARCHANGEDNOTIFICATION. If this isn't properly escaped, the file cannot be copied, obviously.

EDIT: I just wonder where it stores those avatars, since they are shown in the message window. Where do they come from?
Title: Re: AvatarHistory
Post by: kaomot on 21 12 2013, 02:04:56
Hi there,

What I meant on my previous reply is that I guessed that the Avatar History plugin gets the files from the AvatarCache folder, but since the files are not being saved there due to the illegal character, Avatar History is unable to find it, which causes the error.

Now, with your modified plugin, I was able to confirm this, because the Avatar Source is pointing to the AvatarCache folder. But it seems that is not the only the problem. Look the file name it is searching for:

"...\MirandaFolder\Profiles\MyProfile\AvatarCache\SKYPE_1\live:username.jpg"

So I guess there are two problems:

First: the avatars are not being saved to the AvatarCache (where Avatar History gets the files from);
Second: even if the files were saved with a name like "live_username", it would not be found by the plugin, since it is looking for "live:username".

Perhaps the second error is not related to the Avatar History plugin, because maybe it is just following the path that was given to it by the protocol.

Are my assumptions correct? Is it possible to fix it?

Thanks!
Title: Re: AvatarHistory
Post by: Wishmaster on 21 12 2013, 08:43:56
Well there is no bug in AvatarHistory at all, it gets the "Avatar Source" path from Avatar service.
There may be a bug in skype, I don't know.
Title: Re: AvatarHistory
Post by: kaomot on 21 12 2013, 19:21:43
Is it possible to make the Skype protocol use an underline instead of ":" to save the avatars?
Title: Re: AvatarHistory
Post by: Wishmaster on 22 12 2013, 10:04:54
Is it possible to make the Skype protocol use an underline instead of ":" to save the avatars?
Maybe. Im not too hopefull though since SkypeKit may be deprecated in the near future.
Title: Re: AvatarHistory
Post by: Robyer on 22 12 2013, 11:40:40
Wishmaster: I think he is using SkypeClassic
Title: Re: AvatarHistory
Post by: kaomot on 22 12 2013, 16:15:01
Wishmaster: I think he is using SkypeClassic

I am using SkypeKit.