Shoutbox

Auto-Update for Skins & Scripts FAQ - Printable Version

-Shoutbox (https://shoutbox.menthix.net)
+-- Forum: MsgHelp Archive (/forumdisplay.php?fid=58)
+--- Forum: Messenger Plus! for Live Messenger (/forumdisplay.php?fid=4)
+---- Forum: WLM Plus! General (/forumdisplay.php?fid=23)
+----- Thread: Auto-Update for Skins & Scripts FAQ (/showthread.php?tid=85217)

Auto-Update for Skins & Scripts FAQ by Menthix on 08-06-2008 at 12:10 AM

Spanish translation can be found here: Preguntas frecuentes sobre la auto-actualización de scripts y skins (Español)


Messenger Plus! 4.70 adds automatic update support for skins and scripts, amongst a few other features. This means all scripts and skins can now be automatically updated! This will ensure you always get the benefits from the latest versions of the components you use without worrying about them.
Almost all the current scripts and skins are supported by the system. Update check is done once a week, as usual, and you can force a manual check by using the /checkupdates command in any chat window. If an update is available, you will be notified once automatically. If you choose not to install a particular update, Messenger Plus! won't prompt you about it anymore unless another update is available. This was done to remove the annoying factor of this kind of auto-update procedure. Of course, all of this can be disabled in the preferences.

This FAQ will try to explain auto-update in detail and answer most questions from both skin/script developers and users.


Information for developers

How does Plus! detect updates?

To find updates Plus! will read information from SkinInfo.xml or ScriptInfo.xml and compare this with the information in the download database (skins & scripts). Skins and scripts (items) not available in the download DB won't be updated automatically. If your creation is not on the site yet, now is the time to submit it! There are three methods to use auto-update, which method is used depends on the tags provided by your XML file.

Method 1: Legacy
The legacy method is mostly used for older items, created before Plus! 4.70 was introduced. This method uses the <Name> and <Version> tags in your XML file. Plus! tries to find an item in the download DB with the exact same name. If the same item is found and the version is different, an update notification is triggered.
XML code:
<!-- Some tags irrelevant for this example were removed -->
<Information>
    <Name>Super Awesome Skin</Name>
    <Version>1.51</Version>
</Information>
Because the legacy method can be inaccurate in some situations we strongly recommend you to also use an <UpdateId> tag like described below.

Method 2: UpdateId (recommended)
The UpdateId method is strongly recommended. All you have to do is add two new tags to your XML. The new tags are <UpdateId> and <BuildNumber>.
  • <UpdateId> is a unique ID for your item between 6 and 8 characters long. The UpdateId will be used by Plus! to recognize your item in the download DB, instead of relying on the Name. You can pick your own UpdateId. Only alphanumeric characters and underscores are allowed and this value is case sensitive. Should you pick an ID already used for another item you will be mailed back to correct this when you submit your item.
  • <BuildNumber> is the build number of your item. If the download DB has an item with the same UpdateId and a higher BuildNumber, it triggers the update notification. The BuildNumber can be between 1 and 99999 and should be increased on every version. Only whole numbers are allowed, so no 1.0, 1.51 or 2b. Instead you can simply increase the BuildNumber by one every time you release a new version. For example: v1.0 = BuildNumber 1, v1.51 = BuildNumber 2, v2b = BuildNumber 3, or if you like: v1.0 = BuildNumber 100, v1.51 = BuildNumber 151, v2b = BuildNumber 202... as long as you increase the BuildNumber on every version, including alphas, betas or other special releases.
XML code:
<!-- Some tags irrelevant for this example were removed -->
<Information>
    <Name>Super Awesome Skin</Name>
    <Version>1.51</Version>
    <UpdateId>Chl_SkSI</UpdateId>
    <BuildNumber>2</BuildNmber>
</Information>

Method 3: Disabled
You can disable Plus' auto-update on your item if your script has its own automatic update feature. Although we recommend everybody to use Plus' own auto-update as it will save you bandwidth and the users can find everything in one central place. To disable auto-update, all you need to do is add <AllowAutoUpdate>false</AllowAutoUpdate> to your XML file. The item will be ignored during the auto-update process, whether it is added to the download DB or not. Please continue to keep your items updated in our download DB too, so your users wont be bothered with an update notification directly after installing.
XML code:
<!-- Some tags irrelevant for this example were removed -->
<Information>
    <Name>Super Awesome Skin</Name>
    <Version>1.51</Version>
    <AllowAutoUpdate>false</AllowAutoUpdate>
</Information>
The priority order that Plus! assigns to the above methods when searching for an update is 3,2,1. If the item doesn't have auto-update disabled it will look for an UpdateId/BuildNumber combination, if that isn't found it will fall back to the legacy method.


Using your XML properly.

Auto-update relies on your XML file, so proper usage of the tags is more important than ever. The <Name> and <Version> (and <Compatibility> for skins) tags are required for every item submitted to the download DB. Besides having the required tags its also important to have all your tags filled with the proper data:
  • <Name>: The name of your item. Do NOT include the version, author (your name) or language info in this tag.
  • <Description>: Describe your item and include your name and language info if you like. Make sure everything is still visible in the import window after you packaged your item.
  • <AboutUrl>: Normal http:// links only. Link to your own site/blog/profile or a forum topic with more info about the item. Email addresses are not allowed in this tag.
  • <Version>: The version of the item. Do NOT include version, v, or any author/language information.
  • <Screenshot> (skins only): Make sure the screenshot is visible in the import window after you packaged your item. Something is wrong with the file, or your XML, if the image doesn't show up.
  • <Compatibility> (skins only): Make sure you always use this tag in your skins and test the compatible Messenger versions. When you support beta versions, specify Messenger's build number to avoid future problems. For example:
    XML code:
    <Compatibility>
        <MsgVersion Major="9" Minor="0" Build="1407" />
        <MsgVersion Major="8" Minor="5" />
    </Compatibility>
  • <UpdateId>: Make sure you use a unique ID for each of your items. See How does Plus! detect updates? > Method 2.
  • <BuildNumber>: Whole numbers only between 1 and 99999. Do not forget to increase this number each version. See How does Plus! detect updates? > Method 2.
More detailed information is available in the official skins/scripts documentation. Download it from inside the Plus! software, or get it here:Submitting skins and scripts to the download DB.

Its important to have the same data in your XML file and the data in our download DB. To assure we have the correct data we will read the Name, Version, UpdateId, and BuildNumber directly from the XML file in your PLSK/PLSC package. When adding/updating an item you don't have to include the UpdateId and BuildNumber in your mail. We appreciate it if you still include the Name and Version in your mails so the mails are easier for us to recognize, but we will always use the values from the XML file. If any required tag is missing or you're not using a unique Name/UpdateId for your item we will mail you back with instructions. The Name and UpdateId can not be changed after your item is accepted in the download DB.


What should I use as UpdateId?

You must pick your own UpdateId. An UpdateId must be between 6 and 8 characters long, consisting of alphanumeric characters and underscores only. An UpdateId must be unique for every item, if you created multiple scripts/skins each item must have a different UpdateId.
We recommend a combination between your name and the item name to avoid other people use the same UpdateId as you. For example, if my name is MenthiX and the name of my skin Super Awesome Skin I could use MX_SuAw or ThiX_SuA as UpdateId. Once you submitted an item to the download DB you can't change the UpdateId for that item anymore. You will be mailed back and asked to choose another UpdateId if the UpdateId you chose is already used by someone else. Keep in mind that the UpdateId is case sensitive.


Can somebody else submit an update for my skin or script?

This is not allowed. We perform multiple automated checks to ensure the updates come from the original author and to detect conflicts in item Names and UpdateIds. If other people submit updates or translations for an item they didn't create they will be told to contact the original author directly.


How about beta and test versions?

All items in the download DB should be tested and stable. Beta and test versions can exists publicly with an older (stable) version in the DB when the <UpdateId> and <BuildNumber> tags are used properly. See How does Plus! detect updates? > Method 2. Be aware: not using an UpdateId and BuildNumber can cause false update notifications when using a newer version than available in the download DB.


Can I have my script listed in multiple languages?

If your script comes in multiple languages you can list it in multiple language sub-categories on the download DB. Note: we do not create sub-categories for languages which Messenger Plus! itself is not translated to.
The only requirement for multi-language scripts is to have all languages in a single PLSC package. A separate PLSC for each language is not accepted anymore. As a solution we strongly recommend you to use a translation class, like various other scripts already do. Free to use translation classes already exist, or you can create your own. IF you need any help, post a message on the scripting forum.
Multi-language skins are allowed too (as long as they at least contain English), but we wont create language sub-categories for skins.



Information for users

Auto-update downgraded one of my skins or scripts?

We try our best to make auto-update work perfectly, but in a few situations it's possible the auto-update offers an older version than you currently have installed. This happens when the developer did not use an UpdateId and you have a newer version installed than available in the download DB. To prevent this from happening in the future we suggest you try to contact the author of the downgraded item. You can point the author to this FAQ and ask him to submit the latest version with an UpdateId to the download DB. See How does Plus! detect updates? > Method 2.
If you can't reach the author, email [Image: menthix.png] or PM me to report which item(s) do not have the latest version available in the download DB. When possible, tell us where you got the newer version and which version number it had. We will then try to contact the author directly and disable the auto-update feature on the specific item until we receive an update from the author.


I get update notifications from both Plus' and the script's auto-update features?

When a script developer uses his own auto-update feature he should either disable Plus' auto-update feature in his XML file, or disable his own auto-update feature completely. We suggest you try to contact the author of the conflicting item. You can point the author to this FAQ and ask him to submit the latest version with either his own auto-update feature disabled, or AllowAutoUpdate set to false. See How does Plus! detect updates? > Method 3.
If you can't reach the author, email [Image: menthix.png] or PM me to report which item is conflicting. We will then try to contact the author directly and disable the auto-update feature on the specific item until we receive an update from the author.


I don't see any update notification?

You will only see update notifications once a week when the auto-update feature is enabled and new updates are found. Update checks are preformed once a week, it can take up to 7 days after installing a new version of Messenger Plus! before the first update check is performed. You can force the update check by typing /checkupdates in a conversation window. An update notification is only triggered when a newer version is available in our download DB.
The XML tags in your currently installed version may be incorrect if you are sure you're using an older version than available in the download DB. Download the newer version from the download DB manually. If the problem continues to exist after installing the latest version from the download DB, email [Image: menthix.png] or PM me about it.


I updated all of my skins and scripts, but the same update re-appears every time?

This should not happen, email [Image: menthix.png] or PM me when this happens. Please include a list of all installed skins/scripts with their version numbers, and which updates keep re-appearing. We'll work out the problem together and fix it in the download DB so this wont happen anymore in the future.



We hope this answered all your auto-update questions, if you want to know more: reply below, email [Image: menthix.png], or PM me. Updated skins and scripts can be sent to the usual submit address (skin submit & script submit).

New skins and scripts can always be found at the download DB:
RE: Auto-Update for Skins & Scripts FAQ by MeEtc on 08-06-2008 at 12:47 AM

Looking for some clarification here, I think I know the answer though.

Say you have a current script that is in the database. it is recognized by name and version as it should for 4.60 and lower. An updated version is released with BOTH version/name AND a UniqueID. Will I be prompted to update still after installing 4.70?

Also, as a developer, is it OK and recommended to keep both the version and UniqueID for the script?


RE: Auto-Update for Skins & Scripts FAQ by Menthix on 08-06-2008 at 12:51 AM

quote:
Originally posted by MeEtc
it is recognized by name and version as it should for 4.60 and lower. An updated version is released with BOTH version/name AND a UniqueID. Will I be prompted to update still
Yes.

quote:
Originally posted by MeEtc
is it OK and recommended to keep both the version and UniqueID for the script?
It certainly is. In fact: Version will always be required, and the addition of UniqueID is strongly recommended. At some time we might even decide to make UniqueID required for items in the download DB too (not in the near future tho).
RE: Auto-Update for Skins & Scripts FAQ by ryxdp on 08-07-2008 at 10:30 AM

Hmm...so are the new tags just ignored in 4.60 and lower?

Apparently, Plus! ignores them. Still, I'm going to delay RoyaLive! 2.1 and ZuneLive! till 4.70 :P


RE: Auto-Update for Skins & Scripts FAQ by Matti on 08-07-2008 at 10:42 AM

Sounds like a very interesting feature! I'll definitely implement this in Countdown Live! :)

I just have one question: what should we do when the user doesn't have Plus! 4.70? Should we keep our own update system and disable it for new versions? Or should we simply remove the update system and tell those users to get the latest version of Plus! in order to receive script updates? What do you recommend?

Also:

quote:
Originally posted by that e-mail we were sent
Please send in your .PLSC files before next weekend.
I'm stuck here on the island of Madeira for the moment. :P I'll be able to send my script packet on Monday, 11 July at earliest. Is it really necessary that we update it before the new Plus! Live arrives? The current version in the scripts database is one build behind, will it really cause that much trouble? Or am I good to delay it until Monday, since in the e-mail you also mention that the auto-update system of Plus! will be triggered one week later at earliest? So in fact, if I submit the update this Monday, the auto-update system won't have tried to update the script anyway... :P
RE: Auto-Update for Skins & Scripts FAQ by Menthix on 08-07-2008 at 10:46 AM

quote:
Originally posted by Mattike
Should we keep our own update system and disable it for new versions? Or should we simply remove the update system and tell those users to get the latest version of Plus! in order to receive script updates?
I'd say the latter. Once 4.70 itself is pushed to auto-update (usually a week after release) the majority of users will be upgraded to the last version anyway.


EDIT:
quote:
Originally posted by Mattike
Or am I good to delay it until Monday, since in the e-mail you also mention that the auto-update system of Plus! will be triggered one week later at earliest? So in fact, if I submit the update this Monday, the auto-update system won't have tried to update the script anyway.
True, by next weekend i meant the weekend of the 16th and 17th.

quote:
Originally posted by Mattike
The current version in the scripts database is one build behind, will it really cause that much trouble?
People with the newer build will be offered to downgrade to the version in the DB aslong as the UpdateId/BuildNumber is not there. But like you said, submitting it by monday will be soon enough.
RE: Auto-Update for Skins & Scripts FAQ by Matti on 08-07-2008 at 10:50 AM

quote:
Originally posted by MenthiX
I'd say the latter. Once 4.70 itself is pushed to auto-update (usually a week after release) the majority of users will be upgraded to the last version anyway.
Ah, that's good to hear. Then I can get rid of some precious kilobytes. :P
quote:
Originally posted by MenthiX
True, by next weekend i meant the weekend of the 16th and 17th.
Oh, but then there's nothing to worry about. Then I'll have plenty of time to properly ready everything for Plus! Live 4.70. :)
* Matti marks the weekend of 16 July on his calendar.

Thank you for answering my questions! ;)
RE: Auto-Update for Skins & Scripts FAQ by SmokingCookie on 08-08-2008 at 09:15 PM

Nice feature :D

@ Matti:

You can put an update system in your script for users with 4.60 and lower and (automatically) disable it for 4.70 users..

EDIT::

Has the schema documentation of the ScriptInfo been updated?


RE: Auto-Update for Skins & Scripts FAQ by warmth on 08-10-2008 at 09:31 AM

I think this should be translated and inserted in the main site :P


RE: Auto-Update for Skins & Scripts FAQ by SmokingCookie on 08-10-2008 at 09:39 AM

Yeah that's a good idea :P

But I don't think you'll find many people willing to translate the docs :P

(offtopic)

Have you received my PM yet?

(/offtopic)


RE: Auto-Update for Skins & Scripts FAQ by Menthix on 08-10-2008 at 11:06 AM

A Spanish translation is already on its way. Addin the FAQ to the main site is on my todo.

quote:
Originally posted by SmokingCookie
Has the schema documentation of the ScriptInfo been updated?
Yes


RE: Auto-Update for Skins & Scripts FAQ by SmokingCookie on 08-10-2008 at 11:11 AM

Hmm.. That's rather strange, since I cannot find the UpdateId/BuildNumber tag..

And I'm quite sure I have the latest version:

Last update: August 1st 2008
Documented version: Messenger Plus! Live 4.70

EDIT::

@ MenthiX: your 1st post needs to be updated.. Check the first few sentences...  (MsgPlus 4.70 is released :P )


RE: Auto-Update for Skins & Scripts FAQ by Menthix on 08-10-2008 at 11:17 AM

quote:
Originally posted by SmokingCookie
I cannot find the UpdateId/BuildNumber tag.. And I'm quite sure I have the latest version:
Well yeah, only the XSD is updated (Patchou?). In the help go to XML Schemas Reference > ScriptInfo File > Information, and click the Schema file for ScriptInfo link. Same thing applies to the skinning documentation.

RE: Auto-Update for Skins & Scripts FAQ by SmokingCookie on 08-10-2008 at 11:22 AM

Any ideas why?


RE: Auto-Update for Skins & Scripts FAQ by Menthix on 08-10-2008 at 12:00 PM

Patchou is lazy extremely busy lately, he might have forgotten it :).


RE: Auto-Update for Skins & Scripts FAQ by Choli on 08-10-2008 at 02:01 PM

Good work, MenthiX.

quote:
Originally posted by MenthiX
A Spanish translation is already on its way.
The spanish translation is finished. You can read it in the spanish forums, link below.

La traducción de estas FAQs al español está terminada. La podeis consultar aquí:

Preguntas frecuentes sobre la auto-actualización de scripts y skins
RE: Auto-Update for Skins & Scripts FAQ by warmth on 08-11-2008 at 01:37 AM

Great :D!!!


RE: Auto-Update for Skins & Scripts FAQ by CookieRevised on 08-11-2008 at 04:33 AM

This FAQ should be stuck/linked in the Scripts and Skins sections too... it took me ages to realize it was hidden away in this subforum....


RE: Auto-Update for Skins & Scripts FAQ by warmth on 08-11-2008 at 02:34 PM

quote:
Originally posted by CookieRevised
This FAQ should be stuck/linked in the Scripts and Skins sections too... it took me ages to realize it was hidden away in this subforum....
I was thinking about this yesterday :P you read my mind...
RE: Auto-Update for Skins & Scripts FAQ by mynetx on 08-15-2008 at 08:24 AM

Hrm, I have a ScriptInfo like this one:

code:
<ScriptInfo>
    <Information>
        <Name>WLMStatus</Name>
        <Version>1.1.8</Version>
        <AllowAutoUpdate>false</AllowAutoUpdate>
    </Information>
    <InstallDir>WLMWebStatus</InstallDir>
</ScriptInfo>

But the Update Checker shows me the WLMStatus 1.19.36 update nevertheless, when calling it via /checkupdates... ?!
RE: Auto-Update for Skins & Scripts FAQ by Jimbo on 08-15-2008 at 11:13 AM

Can we force an update check?


RE: Auto-Update for Skins & Scripts FAQ by Menthix on 08-15-2008 at 11:56 AM

quote:
Originally posted by mynetx
But the Update Checker shows me the WLMStatus 1.19.36 update nevertheles
That's strange, maybe post it as a bug report?

quote:
Originally posted by Jimbo
Can we force an update check?
Just type /checkupdates in a conversation window.
RE: Auto-Update for Skins & Scripts FAQ by m.aln3emi on 07-08-2011 at 01:54 PM

i want to get the scriot ( im live messenger ) but i have windows live messeger 2011 ! . ,

so could any body make like that script . ,
because, i realy loved it :( . ,
plz make like it or let it availible for windows live messenger 2011 . ,

with my best regards


RE: Auto-Update for Skins & Scripts FAQ by matty on 07-08-2011 at 02:05 PM

quote:
Originally posted by m.aln3emi
i want to get the scriot ( im live messenger ) but i have windows live messeger 2011 ! . ,

so could any body make like that script . ,
because, i realy loved it :( . ,
plz make like it or let it availible for windows live messenger 2011 . ,

with my best regards
What the heck are you talking about?