summaryrefslogtreecommitdiffstats
path: root/test/samples/uscxml/test-instant-messaging.scxml
blob: 588b2b7a6df667ac5fad4b1727058712b7e8367c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<scxml datamodel="ecmascript">
	<script>
//<![CDATA[
		someBinaryData = new ArrayBuffer(256);
		var view = new Uint8Array(someBinaryData);
		for (var i = 0; i < view.length; i++) {
			view[i] = i;
		}
//]]>
	</script>

	<script src="http://uscxml.tk.informatik.tu-darmstadt.de/scripts/dump.js" />
	<state id="idle">
		<onentry>
			<send event="dump" delay="100ms" />
		</onentry>
		
		<invoke type="instant-messaging" id="im">
			<param name="username" expr="'uscxml@localhost'" />
			<param name="password" expr="'password'" />
			<param name="protocol" expr="'prpl-jabber'" />
			<finalize>
				<script>print("-----------------\n"); dump(_event);</script>
			</finalize>
		</invoke>

		<state id="dump">
			<transition event="dump" target="dump">
				<send event="dump" delay="1000ms" />
				<script>//dump(_invokers['im']);</script>
			</transition>
		</state>
		
		<transition event="im.buddy.status.changed" cond="_event.data.name === 'sradomski@localhost'">
			<send target="#_im" event="im.send">
				<param name="receiver" expr="'sradomski@localhost'" />
				<param name="data" expr="someBinaryData" />
				<content>Hey There!</content>
			</send>
		</transition>

	</state>
</scxml>