2 # -*- coding: utf-8 -*-
11 from nepi.core.design import ExperimentDescription, FactoriesProvider
12 from nepi.core.execute import ExperimentController
17 root_dir = tempfile.mkdtemp()
19 exp_desc = ExperimentDescription()
22 omf_provider = FactoriesProvider(testbed_id)
23 omf_desc = exp_desc.add_testbed_description(omf_provider)
24 omf_desc.set_attribute_value("homeDirectory", root_dir)
25 omf_desc.set_attribute_value("enableDebug", True)
26 omf_desc.set_attribute_value("xmppSlice", "default_slice")
27 omf_desc.set_attribute_value("xmppHost", "xmpp-omf.onelab.eu")
28 omf_desc.set_attribute_value("xmppPort", 5222)
29 omf_desc.set_attribute_value("xmppPassword", "******")
31 node1 = omf_desc.create("Node")
32 node1.set_attribute_value("hostname", "omf.my.wlab18")
33 node2 = omf_desc.create("Node")
34 node2.set_attribute_value("hostname", "omf.my.wlab49")
36 iface12 = omf_desc.create("WifiInterface")
37 iface12.set_attribute_value("mode", "adhoc")
38 iface12.set_attribute_value("channel", "g")
39 iface12.set_attribute_value("type", "g")
40 iface12.set_attribute_value("essid", "cvlcmode")
41 node1.connector("devs").connect(iface12.connector("node"))
43 iface21 = omf_desc.create("WifiInterface")
44 iface21.set_attribute_value("mode", "adhoc")
45 iface21.set_attribute_value("channel", "g")
46 iface21.set_attribute_value("type", "g")
47 iface21.set_attribute_value("essid", "cvlcmode")
48 node2.connector("devs").connect(iface21.connector("node"))
50 ip12 = iface12.add_address()
51 ip12.set_attribute_value("Address", "192.168.0.18")
53 ip21 = iface21.add_address()
54 ip21.set_attribute_value("Address", "192.168.0.49")
56 channel = omf_desc.create("Channel")
57 channel.set_attribute_value("mode", "adhoc")
58 channel.set_attribute_value("channel", "g")
59 channel.set_attribute_value("type", "g")
60 channel.set_attribute_value("essid", "cvlcmode")
61 channel.connector("devs").connect(iface12.connector("chan"))
62 channel.connector("devs").connect(iface21.connector("chan"))
64 app2 = omf_desc.create("Application")
65 app2.set_attribute_value("appId", "Vlc#2")
66 app2.set_attribute_value("arguments", "rtp://239.255.0.1:1234")
67 app2.set_attribute_value("path", "/opt/vlc-1.1.13/vlc")
68 app2.connector("node").connect(node2.connector("apps"))
70 app1 = omf_desc.create("Application")
71 app1.set_attribute_value("appId", "Vlc#1")
72 app1.set_attribute_value("arguments", "/opt/10-by-p0d.avi --sout '#duplicate{dst=display,dst=rtp{mux=ts,dst=239.255.0.1,port=1234}}'")
73 app1.set_attribute_value("path", "/opt/vlc-1.1.13/vlc")
74 app1.connector("node").connect(node1.connector("apps"))
76 xml = exp_desc.to_xml()
78 controller = ExperimentController(xml, root_dir)
80 #while not (controller.is_finished(app1.guid) and \
81 # controller.is_finished(app2.guid)):