[guardian-dev] Gibberbot Smack XMPPConnection
Leonid Verhovskij
l.verhovskij at creosoft.de
Mon Jun 17 10:20:48 EDT 2013
Hi,
i am trying to integrate file transfer into Gibberbot.
I already tested File transfer with Android-Smack lib successful with
the following code in my test app:
// Create the file transfer manager
new ServiceDiscoveryManager(mConnections.get(0).connection);
//mConnections.get(0).connection is XMPPConnection from Smack
Lib here
// FileTransferNegotiator.setServiceEnabled(connection, true);
FileTransferManager manager = new FileTransferManager(
mConnections.get(0).connection);
// FileTransferNegotiator.setServiceEnabled(connection, true);
OutgoingFileTransfer transfer =
manager.createOutgoingFileTransfer(user
+ "/office"); //Hardcoded for testing purpose only
File file = new File(getRealPathFromURI(selectedImage));
try {
transfer.sendFile(file, "Image");
} catch (XMPPException e) {
e.printStackTrace();
}
while (!transfer.isDone()) {
if (transfer.getStatus().equals(Status.error)) {
System.out.println("ERROR!!! " + transfer.getError());
} else if (transfer.getStatus().equals(Status.cancelled)
|| transfer.getStatus().equals(Status.refused)) {
System.out.println("Cancelled!!! " + transfer.getError());
}
try {
Thread.sleep(1000L);
Log.i("transfer file",
"sending file status :- " + transfer.getStatus()
+ " "
+ "progress:-" + transfer.getProgress());
} catch (InterruptedException e) {
e.printStackTrace();
}
}
if (transfer.getStatus().equals(Status.refused)
|| transfer.getStatus().equals(Status.error)
|| transfer.getStatus().equals(Status.cancelled)) {
System.out
.println("refused cancelled error " +
transfer.getError());
} else {
System.out.println("Success");
}
As you can see i use XMPPConnection from Smack Lib, how can i get it in
Gibberbot?
I try to integrate it in
/info/guardianproject/otr/app/im/app/NewChatActivity.java
Thanks for advice.
More information about the Guardian-dev
mailing list