<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.secondlife.com/w/index.php?action=history&amp;feed=atom&amp;title=Category%3ALSL_XML-RPC%2Ffr</id>
	<title>Category:LSL XML-RPC/fr - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.secondlife.com/w/index.php?action=history&amp;feed=atom&amp;title=Category%3ALSL_XML-RPC%2Ffr"/>
	<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Category:LSL_XML-RPC/fr&amp;action=history"/>
	<updated>2026-07-25T05:13:35Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Category:LSL_XML-RPC/fr&amp;diff=327092&amp;oldid=prev</id>
		<title>SignpostMarv Martin: categorized category, syntax highlighting</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Category:LSL_XML-RPC/fr&amp;diff=327092&amp;oldid=prev"/>
		<updated>2009-04-20T13:47:13Z</updated>

		<summary type="html">&lt;p&gt;categorized category, syntax highlighting&lt;/p&gt;
&lt;a href=&quot;https://wiki.secondlife.com/w/index.php?title=Category:LSL_XML-RPC/fr&amp;amp;diff=327092&amp;amp;oldid=50314&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>SignpostMarv Martin</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Category:LSL_XML-RPC/fr&amp;diff=50314&amp;oldid=prev</id>
		<title>Lord Kaos at 20:38, 20 January 2008</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Category:LSL_XML-RPC/fr&amp;diff=50314&amp;oldid=prev"/>
		<updated>2008-01-20T20:38:16Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:38, 20 January 2008&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{Multi-lang}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[http://en.wikipedia.org/wiki/XMLRPC XML-RPC] est un standard pour envoyer des &amp;quot;Procedure Calls&amp;quot; (Ex: function calls) à des systèmes distants. XML-RPC envoit des données XML en utilisant le protocol HTTP, que le système distant analyse ensuite.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[http://en.wikipedia.org/wiki/XMLRPC XML-RPC] est un standard pour envoyer des &amp;quot;Procedure Calls&amp;quot; (Ex: function calls) à des systèmes distants. XML-RPC envoit des données XML en utilisant le protocol HTTP, que le système distant analyse ensuite.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Lord Kaos</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Category:LSL_XML-RPC/fr&amp;diff=50164&amp;oldid=prev</id>
		<title>Lord Kaos: /* perl */ Traduction</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Category:LSL_XML-RPC/fr&amp;diff=50164&amp;oldid=prev"/>
		<updated>2008-01-20T04:17:10Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;perl: &lt;/span&gt; Traduction&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 21:17, 19 January 2008&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l71&quot;&gt;Line 71:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 71:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=perl=&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=perl=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Le code &lt;/ins&gt;perl &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;et le &lt;/ins&gt;code LSL &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;correspondant pour contacter un objet dans &lt;/ins&gt;Second Life &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;est donné ci-dessous&lt;/ins&gt;. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Le code &lt;/ins&gt;perl &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;utilise le module &lt;/ins&gt;RPC::XML. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Vous pouvez lancez le code &lt;/ins&gt;perl &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;depuis la ligne de commande&lt;/ins&gt;. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Cela crée un objet RPC et envoit un &lt;/ins&gt;message &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;à l&#039;objet rezzé sur la Grid&lt;/ins&gt;. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Notez que vous devez spécifier l&#039;&lt;/ins&gt;UUID &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;de l&#039;objet à contacter dans le code &lt;/ins&gt;perl.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The &lt;/del&gt;perl code &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;and corresponding &lt;/del&gt;LSL &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;code to contact an object in &lt;/del&gt;Second Life &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;is given below&lt;/del&gt;. &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The &lt;/del&gt;perl &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;code makes use of the &lt;/del&gt;RPC::XML &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;module&lt;/del&gt;. &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;You can run the &lt;/del&gt;perl &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;code from the command line&lt;/del&gt;. &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;It creates an rpc object and sends a &lt;/del&gt;message &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;to an object that is rezzed on the grid&lt;/del&gt;. &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Note that you have to supply the &lt;/del&gt;UUID &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;of the object within the &lt;/del&gt;perl &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;code&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Le code &lt;/ins&gt;perl &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;envoit un &lt;/ins&gt;message &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;contenant le &lt;/ins&gt;string &quot;Message to pass&quot; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;et le nombre &lt;/ins&gt;&quot;2007&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;&lt;/ins&gt;. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Le code &lt;/ins&gt;LSL &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;correspondant répond en envoyant le &lt;/ins&gt;string &quot;I got it&quot; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;et le nombre &lt;/ins&gt;&quot;2008&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;The &lt;/del&gt;perl &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;code sends the &lt;/del&gt;message &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;that contains the &lt;/del&gt;string &quot;Message to pass&quot; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;and the number &lt;/del&gt;&quot;2007.&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot; The &lt;/del&gt;LSL &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;code responds by sending the &lt;/del&gt;string &quot;I got it&quot; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;and the number &lt;/del&gt;&quot;2008.&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l131&quot;&gt;Line 131:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 129:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Corresponding &lt;/del&gt;LSL &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;code&lt;/del&gt;:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Code &lt;/ins&gt;LSL &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;correspondant&lt;/ins&gt;:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Lord Kaos</name></author>
	</entry>
	<entry>
		<id>https://wiki.secondlife.com/w/index.php?title=Category:LSL_XML-RPC/fr&amp;diff=49918&amp;oldid=prev</id>
		<title>Lord Kaos: Il reste encore une bonne partie à traduire, je le ferai si j&#039;ai le temps.</title>
		<link rel="alternate" type="text/html" href="https://wiki.secondlife.com/w/index.php?title=Category:LSL_XML-RPC/fr&amp;diff=49918&amp;oldid=prev"/>
		<updated>2008-01-19T04:22:27Z</updated>

		<summary type="html">&lt;p&gt;Il reste encore une bonne partie à traduire, je le ferai si j&amp;#039;ai le temps.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[http://en.wikipedia.org/wiki/XMLRPC XML-RPC] est un standard pour envoyer des &amp;quot;Procedure Calls&amp;quot; (Ex: function calls) à des systèmes distants. XML-RPC envoit des données XML en utilisant le protocol HTTP, que le système distant analyse ensuite.&lt;br /&gt;
&lt;br /&gt;
Le script LSL reçoit des requêtes XML-RPC et les redirigent vers les prims concernés. Il ne peut peut-être pas établir de connection, mais il peut répondre et garder une communication à 2 avec le serveur. Ces réponses XML-RPC semblent être capable de transporter le plus de données hors de Second Life (vs. les requêtes Email et HTTP).&lt;br /&gt;
&lt;br /&gt;
http://rpgstats.com/wiki/index.php?title=XMLRPC&lt;br /&gt;
&lt;br /&gt;
A cause de problèmes de copyright, l&amp;#039;article ci-dessus ne peux pas être recopié sur ce wiki, mais vous pouvez le visiter librement.&lt;br /&gt;
&lt;br /&gt;
=== NOTES IMPORTANTES D&amp;#039;IMPLÉMENTATION: ===&lt;br /&gt;
&lt;br /&gt;
The current implementation of XML-RPC only allows ONE request to be queued on the front-end server (xmlrpc.secondlife.com) at a time. Any additional requests to the same data channel overwrite any pending one. This has serious ramifications for the design of XML-RPC communications where the in-world object could receive requests faster than it can respond to them. In addition, the 3-second delay in [[llRemoteDataReply]] exacerbates this problem even more.&lt;br /&gt;
&lt;br /&gt;
The observed issue is this: if you send multiple quick requests to an in-world object via XML-RPC, one which is scripted to perform some processing and then return a response (via llRemoteDataReply), there is a potential for earlier requests to get lost on the front end server (they still should generate [[remote_data]] events, though), and have the response meant for an earlier request end up being passed back to a later one, while the earlier requests will time out back at your external application.&lt;br /&gt;
&lt;br /&gt;
As a result, if you intend to do any serious work with XML-RPC, you will have to design your external client application to manually serialize all requests to each individual RPC channel. That means you have to wait for a response from the previous request before you attempt to send the next one. If you don&amp;#039;t care about receiving responses, then this problem is not an issue, as all requests seem to get passed on to the script, regardless of the queueing issue.&lt;br /&gt;
&lt;br /&gt;
Also note that there is NO way to get around the 3-second delay for llRemoteDataReply; you cannot use the multiple-slave-comm-script trick, because XML-RPC channels are *script-specific*, NOT *object-specific*.&lt;br /&gt;
&lt;br /&gt;
Pour plus d&amp;#039;informations, visitez ces sujets sur les forums de SecondLife (anglais) [http://forums.secondlife.com/showthread.php?t=158437 here] and [http://forums.secondlife.com/showthread.php?p=1379244 here].&lt;br /&gt;
&lt;br /&gt;
==Autres Ressources (anglais)==&lt;br /&gt;
* [http://www.xmlrpc.com/ XMLRPC.com]&lt;br /&gt;
* [http://scripts.incutio.com/xmlrpc/ Incutio&amp;#039;s XML-RPC PHP library]&lt;br /&gt;
&lt;br /&gt;
==Exemples==&lt;br /&gt;
&lt;br /&gt;
=php=&lt;br /&gt;
Pour initialiser un XMLRPC depuis un serveur externe, vous allez avoir besoin d&amp;#039;une application web.&lt;br /&gt;
Un langage pour créer ce genre d&amp;#039;application est le PHP.&lt;br /&gt;
Voici un exemple qui explique comment envoyer un message XMLRPC à votre script LSL depuis un serveur web avec PHP.&lt;br /&gt;
 &amp;lt;code&amp;gt;&amp;amp;lt;?php&lt;br /&gt;
 	echo &amp;#039;&amp;amp;lt;pre&amp;amp;gt;&amp;#039;;&lt;br /&gt;
 	$channel = &amp;quot;&amp;quot;; //Entrez le channel que vous utiliser (key)&lt;br /&gt;
 	$xmldata = &amp;quot;&amp;amp;lt;?xml version=\&amp;quot;1.0\&amp;quot;?&amp;amp;gt;&amp;amp;lt;methodCall&amp;amp;gt;&amp;amp;lt;methodName&amp;amp;gt;llRemoteData&amp;amp;lt;/methodName&amp;amp;gt;&amp;amp;lt;params&amp;amp;gt;&amp;amp;lt;param&amp;amp;gt;&amp;amp;lt;value&amp;amp;gt;&amp;amp;lt;struct&amp;amp;gt;&amp;amp;lt;member&amp;amp;gt;&amp;amp;lt;name&amp;amp;gt;Channel&amp;amp;lt;/name&amp;amp;gt;&amp;amp;lt;value&amp;amp;gt;&amp;amp;lt;string&amp;amp;gt;&amp;quot;.$channel.&amp;quot;&amp;amp;lt;/string&amp;amp;gt;&amp;amp;lt;/value&amp;amp;gt;&amp;amp;lt;/member&amp;amp;gt;&amp;amp;lt;member&amp;amp;gt;&amp;amp;lt;name&amp;amp;gt;IntValue&amp;amp;lt;/name&amp;amp;gt;&amp;amp;lt;value&amp;amp;gt;&amp;amp;lt;int&amp;amp;gt;11261979&amp;amp;lt;/int&amp;amp;gt;&amp;amp;lt;/value&amp;amp;gt;&amp;amp;lt;/member&amp;amp;gt;&amp;amp;lt;member&amp;amp;gt;&amp;amp;lt;name&amp;amp;gt;StringValue&amp;amp;lt;/name&amp;amp;gt;&amp;amp;lt;value&amp;amp;gt;&amp;amp;lt;string&amp;amp;gt;happy birthday&amp;amp;lt;/string&amp;amp;gt;&amp;amp;lt;/value&amp;amp;gt;&amp;amp;lt;/member&amp;amp;gt;&amp;amp;lt;/struct&amp;amp;gt;&amp;amp;lt;/value&amp;amp;gt;&amp;amp;lt;/param&amp;amp;gt;&amp;amp;lt;/params&amp;amp;gt;&amp;amp;lt;/methodCall&amp;amp;gt;&amp;quot;;&lt;br /&gt;
 	echo sendToHost(&amp;quot;xmlrpc.secondlife.com&amp;quot;, &amp;quot;POST&amp;quot;, &amp;quot;/cgi-bin/xmlrpc.cgi&amp;quot;, $xmldata);&lt;br /&gt;
 	echo &amp;#039;&amp;amp;lt;/pre&amp;amp;gt;&amp;#039;;&lt;br /&gt;
 	&lt;br /&gt;
 	function sendToHost($host,$method,$path,$data,$useragent=0)&lt;br /&gt;
 	{ &lt;br /&gt;
 		$buf=&amp;quot;&amp;quot;;&lt;br /&gt;
 		// Supply a default method of GET if the one passed was empty &lt;br /&gt;
 		if (empty($method)) &lt;br /&gt;
 			$method = &amp;#039;GET&amp;#039;; &lt;br /&gt;
 		$method = strtoupper($method); &lt;br /&gt;
 	&lt;br /&gt;
 		$fp = fsockopen($host, 80, $errno, $errstr, 30);&lt;br /&gt;
 	&lt;br /&gt;
 		if( !$fp )&lt;br /&gt;
 		{&lt;br /&gt;
 			$buf = &amp;quot;$errstr ($errno)&amp;amp;lt;br /&amp;amp;gt;\n&amp;quot;;&lt;br /&gt;
 		}else&lt;br /&gt;
 		{&lt;br /&gt;
 			if ($method == &amp;#039;GET&amp;#039;) &lt;br /&gt;
 			$path .= &amp;#039;?&amp;#039; . $data; &lt;br /&gt;
 			fputs($fp, &amp;quot;$method $path HTTP/1.1\r\n&amp;quot;); &lt;br /&gt;
 			fputs($fp, &amp;quot;Host: $host\r\n&amp;quot;); &lt;br /&gt;
 			fputs($fp, &amp;quot;Content-type: text/xml\r\n&amp;quot;); &lt;br /&gt;
 			fputs($fp, &amp;quot;Content-length: &amp;quot; . strlen($data) . &amp;quot;\r\n&amp;quot;); &lt;br /&gt;
 			if ($useragent) &lt;br /&gt;
 				fputs($fp, &amp;quot;User-Agent: MSIE\r\n&amp;quot;); &lt;br /&gt;
 			fputs($fp, &amp;quot;Connection: close\r\n\r\n&amp;quot;); &lt;br /&gt;
 			if ($method == &amp;#039;POST&amp;#039;) &lt;br /&gt;
 				fputs($fp, $data); &lt;br /&gt;
 			while (!feof($fp)) &lt;br /&gt;
 				$buf .= fgets($fp,128); &lt;br /&gt;
 			fclose($fp); &lt;br /&gt;
 		}&lt;br /&gt;
 		return $buf; &lt;br /&gt;
 	} &lt;br /&gt;
 ?&amp;amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=perl=&lt;br /&gt;
&lt;br /&gt;
The perl code and corresponding LSL code to contact an object in Second Life is given below. The perl code makes use of the RPC::XML module. You can run the perl code from the command line. It creates an rpc object and sends a message to an object that is rezzed on the grid. Note that you have to supply the UUID of the object within the perl code.&lt;br /&gt;
&lt;br /&gt;
The perl code sends the message that contains the string &amp;quot;Message to pass&amp;quot; and the number &amp;quot;2007.&amp;quot; The LSL code responds by sending the string &amp;quot;I got it&amp;quot; and the number &amp;quot;2008.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;amp;#35;!/usr/bin/perl&lt;br /&gt;
&amp;amp;#35; &lt;br /&gt;
&lt;br /&gt;
use RPC::XML;&lt;br /&gt;
use RPC::XML::Parser;&lt;br /&gt;
use RPC::XML::Client;&lt;br /&gt;
&lt;br /&gt;
my $llURL = &amp;quot;http://xmlrpc.secondlife.com/cgi-bin/xmlrpc.cgi&amp;quot;;&lt;br /&gt;
$P = RPC::XML::Parser-&amp;gt;new();&lt;br /&gt;
&lt;br /&gt;
my $cli = RPC::XML::Client-&amp;gt;new($llURL);&lt;br /&gt;
my $req = RPC::XML::request-&amp;gt;new(&lt;br /&gt;
        &amp;quot;llRemoteData&amp;quot;,&lt;br /&gt;
        &amp;amp;#123;&amp;#039;Channel&amp;#039; =&amp;gt; RPC::XML::string-&amp;gt;new(&amp;quot;UUID for the open channel from the object GOES HERE!&amp;quot;),&lt;br /&gt;
        &amp;#039;IntValue&amp;#039; =&amp;gt; RPC::XML::int-&amp;gt;new(2007),&lt;br /&gt;
        &amp;#039;StringValue&amp;#039; =&amp;gt; RPC::XML::string-&amp;gt;new(&amp;quot;message to pass&amp;quot;)&amp;amp;#125;);&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;  Print out the message to send&lt;br /&gt;
print &amp;quot;ref(req): &amp;quot;,ref($req),&amp;quot;\n&amp;quot;;&lt;br /&gt;
$xml = $req-&amp;gt;as_string();&lt;br /&gt;
print &amp;quot;Length: &amp;quot;,$req-&amp;gt;length,&amp;quot;\n\n&amp;quot;,$xml,&amp;quot;\n\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$res = $P-&amp;gt;parse($xml);&lt;br /&gt;
print ref($res),&amp;quot;\n&amp;quot;;&lt;br /&gt;
if (ref($res)) &amp;amp;#123;&lt;br /&gt;
    %h = %{$res-&amp;gt;args-&amp;gt;[0]-&amp;gt;value};&lt;br /&gt;
    foreach $lupe (keys %h) &amp;amp;#123;&lt;br /&gt;
       print &amp;quot;$lupe: $h{$lupe}\n&amp;quot;;&lt;br /&gt;
    &amp;amp;#125;&lt;br /&gt;
&amp;amp;#125;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;  Submit the request to send the information above.&lt;br /&gt;
my $resp = $cli-&amp;gt;send_request($req);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;  Print out the response&lt;br /&gt;
print &amp;quot;\n\n\nResponse\n&amp;quot;;&lt;br /&gt;
print &amp;quot;ref(resp): &amp;quot;,ref($resp),&amp;quot;\n&amp;quot;;&lt;br /&gt;
$xml = $resp-&amp;gt;as_string();&lt;br /&gt;
print &amp;quot;Length: &amp;quot;,$resp-&amp;gt;length,&amp;quot;\n\n&amp;quot;,$xml,&amp;quot;\n\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$res = $P-&amp;gt;parse($xml);&lt;br /&gt;
print ref($res),&amp;quot;\n&amp;quot;;&lt;br /&gt;
if (ref($res)) &amp;amp;#123;&lt;br /&gt;
    %h = %{$res-&amp;gt;value};&lt;br /&gt;
    foreach $lupe (keys %h) &amp;amp;#123;&lt;br /&gt;
       $val =  $h{$lupe};&lt;br /&gt;
       print &amp;quot;$lupe: $val\n&amp;quot;;&lt;br /&gt;
    &amp;amp;#125;&lt;br /&gt;
&amp;amp;#125;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Corresponding LSL code:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
key remoteChannel;&lt;br /&gt;
init() &amp;amp;#123;&lt;br /&gt;
    llOpenRemoteDataChannel(); // create an XML-RPC channel&lt;br /&gt;
    llOwnerSay(&amp;quot;My key is &amp;quot; + (string)llGetKey());&lt;br /&gt;
&amp;amp;#125;&lt;br /&gt;
&lt;br /&gt;
default &amp;amp;#123;&lt;br /&gt;
    state_entry() &amp;amp;#123;&lt;br /&gt;
        init();&lt;br /&gt;
    &amp;amp;#125;&lt;br /&gt;
    &lt;br /&gt;
    state_exit() &amp;amp;#123;&lt;br /&gt;
        return;&lt;br /&gt;
    &amp;amp;#125;&lt;br /&gt;
                                &lt;br /&gt;
    on_rez(integer param) &amp;amp;#123;&lt;br /&gt;
        llResetScript();        &lt;br /&gt;
    &amp;amp;#125;&lt;br /&gt;
                                &lt;br /&gt;
    remote_data(integer type, key channel, key message_id, string sender, integer ival, string sval) &amp;amp;#123;&lt;br /&gt;
         if (type == REMOTE_DATA_CHANNEL) &amp;amp;#123; // channel created&lt;br /&gt;
             llSay(DEBUG_CHANNEL,&amp;quot;Channel opened for REMOTE_DATA_CHANNEL&amp;quot; + &lt;br /&gt;
                (string)channel + &amp;quot; &amp;quot; + (string)message_id + &amp;quot; &amp;quot; + (string)sender + &amp;quot; &amp;quot; +                         &lt;br /&gt;
                (string)ival + &amp;quot; &amp;quot; + (string)sval);&lt;br /&gt;
             remoteChannel = channel;&lt;br /&gt;
             llOwnerSay(&amp;quot;Ready to receive requests on channel \&amp;quot;&amp;quot; + (string)channel + &amp;quot;\&amp;quot;&amp;quot;);                        &lt;br /&gt;
             state receiving; // start handling requests&lt;br /&gt;
         &amp;amp;#125; else &amp;amp;#123;&lt;br /&gt;
             llSay(DEBUG_CHANNEL,&amp;quot;Unexpected event type&amp;quot;); &lt;br /&gt;
         &amp;amp;#125;                      &lt;br /&gt;
     &amp;amp;#125;                 &lt;br /&gt;
&amp;amp;#125;                     &lt;br /&gt;
                                &lt;br /&gt;
&lt;br /&gt;
state receiving &amp;amp;#123;&lt;br /&gt;
&lt;br /&gt;
    state_entry() &amp;amp;#123;&lt;br /&gt;
        llOwnerSay(&amp;quot;Ready to receive information from outside SL&amp;quot;);&lt;br /&gt;
    &amp;amp;#125;  &lt;br /&gt;
    &lt;br /&gt;
    state_exit() &amp;amp;#123;&lt;br /&gt;
        llOwnerSay(&amp;quot;No longer receiving information from outside SL.&amp;quot;);&lt;br /&gt;
         llCloseRemoteDataChannel(remoteChannel);&lt;br /&gt;
    &amp;amp;#125;&lt;br /&gt;
    &lt;br /&gt;
    on_rez(integer param) &amp;amp;#123;&lt;br /&gt;
        llResetScript();&lt;br /&gt;
    &amp;amp;#125;&lt;br /&gt;
    &lt;br /&gt;
    remote_data(integer type, key channel, key message_id, string sender, integer ival, string sval) &amp;amp;#123;&lt;br /&gt;
        if (type == REMOTE_DATA_REQUEST) &amp;amp;#123; // handle requests sent to us&lt;br /&gt;
             llSay(DEBUG_CHANNEL,&amp;quot;Request received for REMOTE_DATA_REQUEST &amp;quot; + (string)channel + &amp;quot; &amp;quot; +&lt;br /&gt;
                (string)message_id + &amp;quot; &amp;quot; + (string)sender + &amp;quot; &amp;quot; + (string)ival + &amp;quot; &amp;quot; + (string)sval);&lt;br /&gt;
            llRemoteDataReply(channel,NULL_KEY,&amp;quot;I got it&amp;quot;,2008);&lt;br /&gt;
            llOwnerSay(&amp;quot;I just recieved data in &amp;quot;+ llGetRegionName() + &lt;br /&gt;
                        &amp;quot; at position &amp;quot; + (string)llGetPos() + &amp;quot;\n&amp;quot; +&lt;br /&gt;
                       &amp;quot;The string was &amp;quot; +  sval + &amp;quot;\nThe number was &amp;quot; + (string)ival + &amp;quot;.&amp;quot;);&lt;br /&gt;
        &amp;amp;#125;&lt;br /&gt;
    &amp;amp;#125;&lt;br /&gt;
    &lt;br /&gt;
&amp;amp;#125;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Lord Kaos</name></author>
	</entry>
</feed>