Net-OSCAR

 view release on metacpan or  search on metacpan

lib/Net/OSCAR/XML/Protocol.xml  view on Meta::CPAN

	<define name="standard_IM_footer">
		<tlvchain>
			<tlv type="2">
				<tlvchain>
					<tlv type="1281">
						<word>257</word>
						<word>257</word>
					</tlv>
					<tlv type="257">
						<word>0</word>
						<word>0</word>
						<data name="message" />
					</tlv>
				</tlvchain>
			</tlv>
			<tlv type="4" name="is_automatic" />
			<tlv type="3" name="request_server_confirmation" />
			<tlv type="11" name="supports_typing_status" />
			<tlv type="8" name="icon_data">
				<dword name="icon_length" />
				<word>1</word>
				<word name="icon_checksum" />
				<dword name="icon_timestamp" />
			</tlv>
		</tlvchain>
	</define>
	<define name="rendezvous_IM">
		<tlvchain>
			<tlv type="5">
				<enum type="word" name="status"> 
					<edef name="propose" value="0" />
					<edef name="cancel" value="1" />
					<edef name="accept" value="2" />
				</enum>

				<data length="8" name="cookie" />

				<!-- Indicates request type -->
				<data length="16" name="capability" />

				<tlvchain>
					<!-- 1 == push, 2 == pull -->
					<tlv type="10"><word name="push_pull" /></tlv>
					<tlv type="11"><word name="error" /></tlv>
					<tlv type="15" default_generate="yes" />

					<!-- File transfer stuff -->
					<tlv type="2"><dword name="client_1_ip" /></tlv>
					<tlv type="3"><dword name="client_2_ip" /></tlv>
					<tlv type="4"><dword name="client_external_ip" /></tlv>
					<tlv type="5"><word name="port" /></tlv>
					<tlv type="22"><dword name="proxy_ip" /></tlv>


					<!-- Proposal message -->
					<tlv type="12"><data name="invitation_msg" /></tlv>
					<tlv type="13"><data name="charset">us-ascii</data></tlv>
					<tlv type="14"><byte name="language">48</byte></tlv>

					<!-- See 'rendezvous service-specific data' -->
					<tlv type="10001"><data name="svcdata" /></tlv>
					<tlv type="10002"><data name="svcdata_charset" /></tlv>
				</tlvchain>
			</tlv>
		</tlvchain>
	</define>

	<define name="incoming_IM" family="4" subtype="7">
		<ref name="standard_IM_header" />
		<ref name="userinfo" />
		<data name="message_body" />
	</define>
	<define name="outgoing_IM" family="4" subtype="6">
		<ref name="standard_IM_header" />
		<data name="screenname" length_prefix="byte" />
		<data name="message_body" />
	</define>

	<define name="IM_acknowledgement" family="4" subtype="12">
		<data length="8" name="cookie" />
		<word name="channel" />
		<data length_prefix="byte" name="screenname" />
	</define>



	<!-- Chat -->

	<define name="chat_invitation_accept" family="13" subtype="4">
		<word name="exchange">4</word>
		<data length_prefix="byte" name="url" />
		<word>0</word>
		<byte>2</byte>
	</define>
	<define name="chat_invitation_decline" family="4" subtype="11">
		<data length="8" name="cookie" />
		<word name="channel">2</word>
		<data length_prefix="byte" name="screenname" />
		<tlvchain>
			<!-- 0=not supported, 1=declined, 2=client is not accepting transfers -->
			<tlv type="3"><word name="code">1</word></tlv>
		</tlvchain>
	</define>

	<define name="chat_navigator_rights_request" family="13" subtype="2" />
	<define name="chat_navigator_room_create" family="13" subtype="8">
		<ref name="chat_room_info" />
	</define>

	<define name="chat_data">
		<tlvchain count_prefix="word">
			<tlv type="106"><data name="name" /></tlv>
			<tlv type="111"><word name="occupant_count" /></tlv>
			<tlv type="115" name="occupants" count="-1">
				<ref name="userinfo" />
			</tlv>

			<tlv type="209"><word name="max_msg_len" /></tlv>
			<tlv type="211"><data name="name" /></tlv>
			<tlv type="214"><data name="charset">us-ascii</data></tlv>
			<tlv type="215" default_generate="yes"><data name="language">en</data></tlv>
			<tlv type="219"><data name="encoding" /></tlv>



( run in 1.246 second using v1.01-cache-2.11-cpan-5b529ec07f3 )