|
@@ -171,15 +171,15 @@ angular.module('app').controller('PeerController', ['$scope', '$state', '$timeou
|
|
|
lxtalkClient.Invoke('{C62F6059-7741-4AC1-8B8F-97EB5F7C116C}', '_Register', '', $scope);
|
|
|
var onConnected = function (c) {
|
|
|
c.on('data', function (data) {
|
|
|
- //to do
|
|
|
- console.info(data);
|
|
|
+ // console.log('接收数据:', data.byteLength);
|
|
|
+ lxtalkClient.Invoke('{C62F6059-7741-4AC1-8B8F-97EB5F7C116C}', 'OnRecv', data, $scope);
|
|
|
});
|
|
|
c.on('close', function () {
|
|
|
delete $scope.connectedPeers[c.peer];
|
|
|
});
|
|
|
$scope.connectedPeers[c.peer] = 1;
|
|
|
+ lxtalkClient.Invoke('{C62F6059-7741-4AC1-8B8F-97EB5F7C116C}', 'OnConnected', '{"loginName":"'+c.peer+'"}', $scope);
|
|
|
};
|
|
|
-
|
|
|
$scope.options = {
|
|
|
host: '120.26.136.253',
|
|
|
port: 9000,
|
|
@@ -214,16 +214,25 @@ angular.module('app').controller('PeerController', ['$scope', '$state', '$timeou
|
|
|
$scope.peer.on('open', function (id) {
|
|
|
console.log(id);
|
|
|
});
|
|
|
- $scope.peer.on('connection', onConnected);
|
|
|
+ $scope.peer.on('connection', function(c){
|
|
|
+ c.on('open', function () {
|
|
|
+ onConnected(c);
|
|
|
+ });
|
|
|
+ });
|
|
|
$scope.peer.on('error', function (err) {
|
|
|
$timeout(function () {
|
|
|
$scope.init(jsonStr);
|
|
|
- }, 5000);
|
|
|
+ }, 50000);
|
|
|
});
|
|
|
};
|
|
|
|
|
|
$scope.connect = function (jsonStr) {
|
|
|
var data = JSON.parse(jsonStr);
|
|
|
+ data = _.assign(data, {
|
|
|
+ label: 'file',
|
|
|
+ serialization:'binary'
|
|
|
+ });
|
|
|
+ console.info(data);
|
|
|
if (!$scope.connectedPeers[data.loginName]) {
|
|
|
var c = $scope.peer.connect(data.loginName, data);
|
|
|
c.on('open', function () {
|
|
@@ -231,6 +240,7 @@ angular.module('app').controller('PeerController', ['$scope', '$state', '$timeou
|
|
|
});
|
|
|
c.on('error', function (err) {
|
|
|
console.log(err);
|
|
|
+ lxtalkClient.Invoke('{C62F6059-7741-4AC1-8B8F-97EB5F7C116C}', 'OnDisconnected', '{"loginName":"'+c.peer+'"}', $scope);
|
|
|
});
|
|
|
$scope.connectedPeers[data.loginName] = 1;
|
|
|
}
|
|
@@ -238,21 +248,15 @@ angular.module('app').controller('PeerController', ['$scope', '$state', '$timeou
|
|
|
|
|
|
$scope.send = function (jsonStr, data) {
|
|
|
var param = JSON.parse(jsonStr);
|
|
|
- var buf = new Uint8Array(data);
|
|
|
- // var str = utf8.bytesToString(buf);//new TextDecoder().decode(uint8array); data.toString('utf8')//String.fromCharCode.apply(null, buf);
|
|
|
-
|
|
|
- console.info(buf);
|
|
|
- var blob = new Blob(buf)
|
|
|
+ data = data.slice(0);
|
|
|
+ // console.log('发送数据:', data.byteLength);
|
|
|
var c = $scope.peer.connections[param.loginName];
|
|
|
- if (c) {
|
|
|
- c.send(blob);
|
|
|
+ if (c && c[0]) {
|
|
|
+ c[0].send(data);
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ lxtalkClient.Invoke('{C62F6059-7741-4AC1-8B8F-97EB5F7C116C}', 'OnDisconnected', '{"loginName":"'+param.loginName+'"}', $scope);
|
|
|
}
|
|
|
-
|
|
|
- // var reader = new FileReader();
|
|
|
- // reader.readAsText(blob, 'utf-8');
|
|
|
- // reader.onload = function (e) {
|
|
|
- // console.info(reader.result);
|
|
|
- // }
|
|
|
};
|
|
|
|
|
|
$scope.close = function (jsonStr) {
|