Also habe ich versucht, diese 2 Tage von jetzt an zu entwickeln. Die Frage ist: Ich habe einen Server, der XMPP-Protokoll verwendet, um Chats zu verarbeiten. Ich muss mich damit verbinden, aber ich entwickle eine Phonegap/Cordova-Anwendung, und dafür gibt es kein Plugin.Verbinden mit XMPP-Server mit Javascript
Ich habe versucht, mit dem Server mit Strophe.js verbinden, aber hatte keinen Erfolg. Der Server verlangt von mir eine einfache Authentifizierung und hat mir bereits ein verschlüsseltes Passwort zur Verfügung gestellt.
Beispielcode:
$scope.onConnect = function(status){
if (status == Strophe.Status.CONNECTING) {
$scope.connStatus = 'Strophe is connecting.';
} else if (status == Strophe.Status.CONNFAIL) {
$scope.connStatus = 'Strophe failed to connect.';
} else if (status == Strophe.Status.DISCONNECTING) {
$scope.connStatus = 'Strophe is disconnecting.';
} else if (status == Strophe.Status.DISCONNECTED) {
$scope.connStatus = 'Strophe is disconnected.';
} else if (status == Strophe.Status.CONNECTED) {
$scope.connStatus = 'Strophe is connected.';
}
}
$scope.chatConnect = function(ID, xmppToken){
connection = new Strophe.Connection('chat.server.com');
Strophe.SASLPlain.priority = 99;
Strophe.SASLAnonymous.test = function() {
return false;
};
Strophe.SASLMD5.test = function() {
return false;
};
Strophe.SASLSHA1.test = function() {
return false;
};
connection.rawInput = function(data){alert("Input: " + data);};
connection.rawOutput = function(data){alert("Output: " + data);};
connection.connect(ID, xmppToken, $scope.onConnect);
}
Ich bin offen auch für Vorschläge neuer Bibliotheken! Vielen Dank im Voraus.
Probieren Sie den Quickblox xmpp server aus, ich habe dies verwendet und es funktioniert in der phonegap App. –
Ich habe Strophe.js in einer Cordova App ohne Probleme verwendet, aber ich verbinde mich mit XMPP-Server, der Plain Credential (über eine HTTPS-Verbindung). – beaver
@beaver kann dir ein Beispiel geben, wie hast du das gemacht? –