websocket implementation angular
by Yonathan Benitah
HTML
<div ng-app="myApp">
<div ng-controller="myController">
<input type="text" ng-model="test"/>
<button ng-click="send(msg)">Send</button>
{{test}}
</div>
</div>
JavaScript
var app = angular.module('myApp', [])
.config(function(wsImplementationProvider){
wsImplementationProvider.url = 'wss://echo.websocket.org';
})
.provider('wsImplementation', function(){
this.url;
this.$get = function(){
var $socket = new WebSocket(this.url);
$socket.Send = function(msg){
$socket.send(msg);
}
$socket.onmessage = function(msg){
console.log(msg);
}
return $socket;
};
})
.factory('Model', function(wsImplementation){
Model = {};
Model.send = function(msg){
wsImplementation.Send(Model, msg);
}
Model.set = function(msg){
console.log(msg);
}
wsImplementation.onMessage = function(msg){
console.log(msg);
}
wsImplementation.onopen = function(){
console.log("Socket has been opened!");
}
//wsImplementation.update = function(msg){
// this.socket.send(msg);
//}
return Model;
})
.controller('myController', function ($scope, Model) {
debugger;
$scope.Model = Model;
console.log('coucou')
$scope.send = function(msg){
$scope.test = 'totot';
$scope.Model.send(msg);
}
});