freeswitch/clients/flex/freeswitch-video.html

200 lines
6.1 KiB
HTML

<html>
<head>
<META http-equiv="Content-Type" content="text/html;charset=utf-8"></META>
<TITLE>FreeSWITCH Video Flash Phone Demo</TITLE>
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" charset="utf-8">
var flashvars = {
rtmp_url: 'rtmp://' + document.location.hostname + '/phone',
local_loopback: 2, // x pos if local video
buffer_time: 0,
width: 640,
height: 480,
display_width: 640,
display_height: 480
};
var params = {
allowScriptAccess: 'always',
wmode: 'window'
};
var current_uuid = "uuid";
var flash;
function log(msg) {
if ('console' in window) console.log(msg);
}
function login() {
flash.login($('#user').val(), '1234');
}
function register() {
flash.register($('#user').val(), 'Test');
}
function unregister() {
flash.register($('#user').val(), 'Test');
}
function makeCall() {
flash.makeCall($('#dest').val(), '', {wantVideo: "true", incomingBandwidth: "1mb"});
}
function hangup() {
flash.hangup(current_uuid);
}
function answer() {
flash.answer(current_uuid);
}
function settings() {
flash.showPrivacy();
}
function send_dtmf(digit) {
flash.sendDTMF(digit, 2000);
}
function onDisplayUpdate(uuid, name, number){
log("DisplayUpdate -- uuid: " + uuid + " name: " + name + " number: " + number);
}
function onCallState(uuid, state){
log("CallState -- uuid: " + uuid + " state: " + state);
$('#status').html(state);
}
function onIncomingCall(uuid, name, number, account, evt){
log("IncomingCall -- uuid: " + uuid + " name: " + name + " number: " + number + " account: " + account);
log(evt);
if (current_uuid == "uuid") {
var want_video = "";
current_uuid = uuid;
if (typeof(evt) === "object" && evt.want_video == "true") {
want_video = " (Video)";
}
$('#incoming_call').html("Incoming call " + uuid + " from '" + name + "' <" + number + ">" + want_video);
} else {
$("#flash")[0].hangup(uuid);
}
}
function onDisconnected(){
log("socket disconnected");
$('#status').html('Disconnected');
$('#reconnect').show();
}
function onMakeCall(uuid, number, account){
log("MakeCall -- uuid: " + uuid + " account: " + account + " number: " + number);
current_uuid = uuid;
}
function onHangup(uuid, cause){
log("Hangup -- uuid: " + uuid + " cause: " + cause);
current_uuid = "uuid";
$('#status').html("Hangup " + cause);
}
function onDebug(message){
log("debug -- " + message);
}
function onAttach(uuid){
log("Attach -- " + uuid);
}
function onConnected(session_id){
log("Connected -- sessionid: " + session_id);
$('#session_id').html(session_id);
$('#status').html('Connected');
$('#reconnect').hide();
}
function onLogin(status, user, domain){
log("Login -- status: " + status + " user: " + user + " domain: " + domain);
}
function onLogout(user, domain){
log("Logout -- user: " + user + " domain: " + domain);
}
function onInit(){console.log('initing...');}
</script>
</head>
<body>
<div id="dialpad" style="float:left;width:300px">
<table border="1" cellspacing="5" cellpadding="5" width="200">
<tr>
<th colspan = 3>Flash Phone</th>
</tr><tr>
<td colspan = 3>
<input type="text" name="x" value="9196" id="dest" size = "10">
</td>
</tr><tr>
<td><input type="button" name="k7" value="7" id="k7" onclick="send_dtmf('7')"></td>
<td><input type="button" name="k7" value="8" id="k7" onclick="send_dtmf('8')"></td>
<td><input type="button" name="k7" value="9" id="k7" onclick="send_dtmf('9')"></td>
</tr><tr>
<td><input type="button" name="k7" value="4" id="k7" onclick="send_dtmf('4')"></td>
<td><input type="button" name="k7" value="5" id="k7" onclick="send_dtmf('5')"></td>
<td><input type="button" name="k7" value="6" id="k7" onclick="send_dtmf('6')"></td>
</tr><tr>
<td><input type="button" name="k7" value="1" id="k7" onclick="send_dtmf('1')"></td>
<td><input type="button" name="k7" value="2" id="k7" onclick="send_dtmf('2')"></td>
<td><input type="button" name="k7" value="3" id="k7" onclick="send_dtmf('3')"></td>
</tr><tr>
<td><input type="button" name="k7" value="*" id="k7" onclick="send_dtmf('*')"></td>
<td><input type="button" name="k7" value="0" id="k7" onclick="send_dtmf('0')"></td>
<td><input type="button" name="k7" value="#" id="k7" onclick="send_dtmf('#')"></td>
</tr><tr>
<td colspan="3">
<span id="status">Ready</span>
<span id="reconnect" style="display:none">
<a href='#' onclick="flash.connect();return false;">Reconnect</a>
</span>
</td>
</tr>
</table>
</div>
<div>
SessionID: <span id = "session_id"></span><br>
Incoming: <span id = "incoming_call"></span>
<br>
<input type="text" name="user" value="1019@192.168.7.4" id="user">
<input type="button" name="Call" value="Login" onclick = "login()" id="Login">
<input type="button" name="Register" value="Register" onclick = "register()" id="Register">
<input type="button" name="Register" value="UnRegister" onclick = "unregister()" id="UnRegister">
<br>
<input type="button" name="Call" value="Call" onclick = "makeCall()" id="Call">
<input type="button" name="Call" value="Hangup" onclick = "hangup()" id="Hangup">
<input type="button" name="some_name" value="Answer" id="some_name" onclick="answer()">
<input type="button" name="some_name" value="Settings" id="some_name" onclick="settings()">
</div>
<div style="border:0px solid blue;float:left;padding:0px">
<div id="flash">
<h1>Alternative content</h1>
<p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>
</div>
</div>
<br style="clear:both">
<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
swfobject.embedSWF("freeswitch-h264.swf", "flash", "640", "480", "11.2.202.229", "expressInstall.swf", flashvars, params, []);
flash = $('#flash')[0];
$('#user').val("1000@" + window.location.hostname);
});
</script>
</body>
</html>