You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
sems/doc/dsm/examples/test_conference.dsm

56 lines
1.5 KiB

import(mod_conference)
initial state lobby
enter { playFile(wav/default_en.wav) };
state room;
transition "lobby to room" lobby - noAudioTest / {
conference.setPlayoutType(adaptive);
conference.join(myroom);
} -> room;
transition "key 1 pressed" room - keyPress(1); test($is_spkonly == "") / {
set($is_spkonly=1);
closePlaylist(false);
conference.rejoin(myroom, speakonly);
} -> room;
transition "key 1 pressed - spkonly" room - keyPress(1); test($is_spkonly == "1") / {
set($is_spkonly="");
closePlaylist(false);
conference.rejoin(myroom);
} -> room;
transition "key 2 pressed" room - keyPress(2); test($is_listenonly == "") / {
set($is_listenonly=1);
closePlaylist(false);
conference.rejoin(myroom, listenonly);
} -> room;
transition "key 2 pressed - listenonly" room - keyPress(2); test($is_listenonly == "1") / {
set($is_listenonly="");
closePlaylist(false);
conference.rejoin(myroom);
} -> room;
transition "kick event" room - eventTest(#action==kick) / closePlaylist(false); conference.leave(); stop(true) -> end;
transition "leave event" room - eventTest(#action==leave) / {
closePlaylist(false);
conference.leave()
} -> outside;
state outside
enter {
log(2, now outside);
};
transition "join event" outside - eventTest(#action==join) / conference.join(myroom) -> room;
transition "join event" outside - eventTest(#action==joinroom) / conference.join(#room) -> room;
transition "bye recvd" (lobby, room) - hangup / closePlaylist(false); conference.leave(); stop(false); -> end;
state end;