Messenger Plus! Live - Scripting Documentation

You can copy paste any of the following examples to a new xml file (a text file with an ".xml" extension). Remember to copy the schema file in the same directory to get your file validated.

Example 1

Sound Transfer window from Messenger Plus! Live 4.00.

<Interfaces xmlns="urn:msgplus:interface" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:msgplus:interface PlusInterface.xsd">
	
<Window Id="SoundTransfer400" Version="1">
	<Attributes>
		<ShowInTaskbar>false</ShowInTaskbar>
	</Attributes>
	
	<TitleBar>
		<AllowMinimize>false</AllowMinimize>
		<AllowClose>false</AllowClose>
	</TitleBar>
	
	<Position Width="200" Height="60"/>
	
	<DialogTmpl>	
		<BottomBar Style="None">
			<LeftControls>
				<Control xsi:type="ProgressControl" Id="PrgWait">
			 	    <Position Top="5" Width="100" Left="0" Height="10"/>
				    <Marquee/>
				</Control>
			</LeftControls>

			<RightControls>
				<Control 	xsi:type="ButtonControl" Id="BtnCancel">
				    <Position Top="0" Width="50" Left="0"/>
				    <Caption>&amp;Cancel</Caption>
				</Control>
			</RightControls>
		</BottomBar>
	</DialogTmpl>
	
	<Elements>
		<Element 	xsi:type="ImageElement" Id="ImgSound">
			<Position Top="5" Left="6"/>
			<Image><Name>icon-speaker</Name></Image>
		</Element>
	</Elements>
	
	<Controls>
		<Control xsi:type="StaticControl" Id="LblMessage">
			<Position Top="5" Width="150" Left="32" Height="20"/>
			<Attributes>
				<WrapText>true</WrapText>
			</Attributes>
			<Caption>Please wait...\nThe sound is being sent.</Caption>
		</Control>
	</Controls>
</Window>

</Interfaces>

Example 2

Event Viewer window from Messenger Plus! Live 4.00 (some redundant elements have been removed).

<Interfaces xmlns="urn:msgplus:interface" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:msgplus:interface PlusInterface.xsd">
	
<Window Id="EventViewer400" Version="1">
	<Attributes>
		<Caption>Event Viewer - Messenger Plus!</Caption>
		<ShowInTaskbar>false</ShowInTaskbar>
	</Attributes>
	
	<TitleBar>
		<AllowMinimize>false</AllowMinimize>
		<AllowMaximize>true</AllowMaximize>
		<Title>
			<Text>Event Viewer</Text>
		</Title>
	</TitleBar>
	
	<Position Width="341" Height="156" InitialPos="Normal">
		<Resizeable Allowed="BothSides">
			<MinWidth>270</MinWidth>
			<MinHeight>100</MinHeight>
		</Resizeable>
	</Position>
	
	<DialogTmpl/>
	
	<Elements>
		<Element xsi:type="ImageElement" Id="ImgTitle">
			<Position Top="4" Left="222"/>
			<Image><Name>preferences-eventlog</Name></Image>	
		</Element>
	</Elements>
	
	<Controls>
		<Control xsi:type="StaticControl" Id="LblSearch">
			<Position Top="7" Width="28" Left="7"/>
			<Attributes>
				<AutoAdjustWidth>true</AutoAdjustWidth>
			</Attributes>
			<Caption>Search:</Caption>
		</Control>
	
		<Control xsi:type="EditControl" Id="EdtSearch">
			<Position Top="5" Width="121" Left="38"/>
			<Attributes>
				<WantReturn>true</WantReturn>
			</Attributes>
		</Control>
	
		<Control xsi:type="MenuButtonControl" Id="BtnOptions">
			<Position Top="4" Width="55" Left="164"/>
			<Attributes>
				<AlwaysDisplayBorder>true</AlwaysDisplayBorder>
			</Attributes>
			<Menu Id="MnuOptions" VPos="Bottom" HPos="CenterLeft">
				<MenuEntry Id="MnuAlwaysOnTop">Always On Top</MenuEntry>
				<Separator/>
				<MenuEntry Id="MnuShowBasic">Show General Info</MenuEntry>
				<MenuEntry Id="MnuShowPsm">Show Perso Messages</MenuEntry>
				<MenuEntry Id="MnuShowMusic">Show Media</MenuEntry>
				<Separator/>	
				<MenuEntry Id="MnuClear">Clear List</MenuEntry>
				<MenuEntry Id="MnuPreferences">Open Prefs...</MenuEntry>
			</Menu>
			<Caption>&amp;Options</Caption>
		</Control>
	
		<Control xsi:type="ListViewControl" Id="LstEvents">
			<Position Top="22" Width="317" Left="7" Height="100">
			    <Anchor Horizontal="LeftRightFixed" Vertical="TopBottomFixed"/>
			</Position>
			<Attributes>
				<AutoTip>false</AutoTip>
				<AlwaysShowSelection>false</AlwaysShowSelection>
			</Attributes>

			<ReportView>
				<SortColHeader>true</SortColHeader>
			</ReportView>
			<Images>
				<SmallIcons>
					<Image Id="ImgOnline">
						<Name>buddy-online</Name>
					</Image>
					<Image Id="ImgOffline">
						<Name>buddy-offline</Name>
					</Image>
					<Image Id="ImgEmail">
						<Name>emailicon-17</Name>
					</Image>
				</SmallIcons>
	
			</Images>

			<Columns>
				<Column>
					<ColumnId>ColTime</ColumnId>
					<Label>Time</Label>
					<Width>20</Width>
				</Column>
				<Column>
					<ColumnId>ColContact</ColumnId>
					<Label>Origin</Label>	
					<Width>35</Width>
				</Column>
				<Column>
					<ColumnId>ColEvent</ColumnId>
					<Label>Event Description</Label>
					<Width>45</Width>
				</Column>
			</Columns>
		</Control>
	</Controls>
</Window>


</Interfaces>

Example 3

Personalised Status window from Messenger Plus! Live 4.00.

<Interfaces xmlns="urn:msgplus:interface" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="urn:msgplus:interface PlusInterface.xsd">

<GlobalColors>
	<GlobalColor Id="green">
		<Red>80</Red>
		<Green>200</Green>
		<Blue>65</Blue>
		<Alpha>220</Alpha>
	</GlobalColor>

	<GlobalColor Id="bg">
		<BaseColor>
			<Saturation>2</Saturation>
			<Brightness>0.6</Brightness>
			<Transparency>82</Transparency>
		</BaseColor>
	</GlobalColor>
</GlobalColors>


<Window Id="PersoStatus400" Version="1">
	<Attributes>
		<Caption>Personalized Status - Messenger Plus!</Caption>
	</Attributes>
	
	<TitleBar>	
		<Title>
			<Prefix>Image</Prefix>
			<Text>Personalized Status</Text>
		</Title>
	</TitleBar>
	
	<Position Width="286" Height="246"/>
	
	<DialogTmpl>
		<BottomBar Style="Plain">
			<LeftControls>
				<Control xsi:type="MenuButtonControl" Id="BtnPresets">
				    <Position Top="0" Width="66" Left="0"/>
				    <Attributes>
					<AlwaysDisplayBorder>true</AlwaysDisplayBorder>
				    </Attributes>
				    <Image Margin="4">
				        <Name>icon-floppy</Name>
				    </Image>
				    <Caption>Pr&amp;esets</Caption>
				</Control>
			</LeftControls>
	
			<RightControls>
				<Control xsi:type="ButtonControl" Id="BtnOk">
				    <Position Top="0" Width="60" Left="0"/>
				    <Attributes>
				        <IsDefault>true</IsDefault>
				    </Attributes>
				    <Caption>&amp;Personalize</Caption>
				</Control>
	
				<Control xsi:type="ButtonControl" Id="BtnCancel">
				    <Position Top="0" Width="60" Left="0"/>
				    <Caption>&amp;Close</Caption>
				</Control>
			</RightControls>
		</BottomBar>
	</DialogTmpl>
	
	<Elements>
		<Element xsi:type="FigureElement" Id="FigRectOptions">
			<Position Top="139" Left="5" Height="43" Width="263"/>
			<Figure>
				<RoundRect><Radius>3</Radius></RoundRect>
			</Figure>

			<Border>
				<Color><GlobalColor>bg</GlobalColor></Color>
			</Border>
	
			<Fill>
				<PlainColor>
					<Red>255</Red>
					<Green>255</Green>
					<Blue>255</Blue>
					<Alpha>120</Alpha>
				</PlainColor>
			</Fill>
		</Element>
	
		<Element xsi:type="ImageElement" Id="LblBusy">
			<Position Top="162" Left="138"/>
			<Image><Name>buddy-busy</Name></Image>
		</Element>
	
		<Element xsi:type="ImageElement" Id="LblAway">
			<Position Top="162" Left="206"/>
			<Image><Name>buddy-away</Name></Image>
		</Element>
	</Elements>
	
	<Controls>
		<Control xsi:type="StaticControl" Id="LblTop">
			<Position Top="9" Width="254" Left="9" Height="20"/>
			<Transparency>180</Transparency>
			<Caption>Fill the fields below if you want to customize your status.
				Your status will remain personalized until you change it
				for something else.</Caption>
		</Control>
	
		<Control xsi:type="StaticControl" Id="LblNameTag">
			<Position Top="36" Width="60" Left="9"/>
			<Caption>Name tag:</Caption>
		</Control>
	
		<Control xsi:type="EditControl" Id="EdtNameTag">
			<Position Top="35" Width="104" Left="80"/>
		</Control>
	
		<Control xsi:type="StaticControl" Id="LblPsm">
			<Position Top="55" Width="70" Left="9"/>
			<Caption>Personal message:</Caption>
		</Control>
	
		<Control xsi:type="EditControl" Id="EdtPsm">
			<Position Top="54" Width="189" Left="80"/>
		</Control>
	
		<Control xsi:type="StaticControl" Id="LblResponder">
			<Position Top="74" Width="70" Left="9"/>
			<Caption>Auto-responder:</Caption>
		</Control>
	
		<Control xsi:type="EditControl" Id="EdtAutoMessage">
			<Position Top="74" Width="189" Left="80" Height="38"/>
			<Help>Tip: you can fully customize your auto-responder message by
			      creating a script.\nThen, all you need to do is call your
			      script function here with the /script command.\nYou can also
			      create a sequence of different messages by starting new lines
			      with #.</Help>
	
			<Attributes>
				<Multiline>true</Multiline>
			</Attributes>
		</Control>
	
		<Control xsi:type="LinkControl" Id="LnkFilter">
			<Position Top="113" Width="186" Left="80"/>
			<Caption>Select the contacts who will receive the
				message...</Caption>	
		</Control>

		<Control xsi:type="StaticControl" Id="LblMore">
			<Position Top="128" Width="200" Height="12" Left="6"/>
			<Color><GlobalColor>green</GlobalColor></Color>
			<Font><Size>10</Size><Bold>true</Bold></Font>
			<Caption>More options:</Caption>
		</Control>
	
		<Control xsi:type="CheckBoxControl" Id="ChkTime">
			<Position Top="146" Width="125" Left="10"/>
			<Help>Use the following tags in your auto-responder message to
			      refer to the remaining time:\n(!PS_R) (!PS_RH) (!PS_RM)
			      (!PS_RS)</Help>
			<Caption>Automatically &amp;reset my status:</Caption>
		</Control>
	
		<Control xsi:type="DateTimeControl" Id="DatTime">
			<Position Top="160" Width="110" Left="10"/>
			<Attributes>
				<AllowCalendar>false</AllowCalendar>
			</Attributes>
	
			<Format><Custom>HH:mm:ss '(time remaining)'</Custom></Format>
		</Control>
	
		<Control xsi:type="StaticControl" Id="LblStatus">
			<Position Top="146" Width="119" Left="138"/>
			<Caption>Show me to my contacts as:</Caption>
		</Control>
	
		<Control xsi:type="RadioControl" Id="RadBusy">
			<Position Top="163" Width="54" Left="151"/>
			<Attributes>
				<IsNewGroup>true</IsNewGroup>
			</Attributes>
			<Caption>&amp;Busy</Caption>
		</Control>
	
		<Control xsi:type="RadioControl" Id="RadAway">
			<Position Top="163" Width="49" Left="219"/>
			<Caption>&amp;Away</Caption>
		</Control>
	</Controls>
</Window>

</Interfaces>

See Also

Interface Windows Information, Schema Documentation.