1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
'use strict';
angular.module('Alias.services', [], function($provide) {
$provide.factory('StropheSrv', ['$log', '$rootScope',
function($log, $rootScope) {
var connection = new Strophe.Connection(BOSH_SERVICE);
return {
login: function(name, password, connect_callback) {
connection.connect(name, password, connect_callback);
},
sendIQ: function(query, callback) {
connection.sendIQ(query, function (data) {
$rootScope.$apply(callback(data));
});
},
addHandler: function(callback, name) {
connection.addHandler(function(stanza){
$rootScope.$apply(callback(stanza));
}, null, name, null, null, null, null);
},
send: function(stanza) {
$rootScope.$apply(connection.send(stanza));
}
};
}]);
});
|