ورود

View Full Version : خالی بودن لیست افراد در برنامه چت



Tiyana
سه شنبه 17 تیر 1393, 13:27 عصر
سلام،من یه برنامه چت دارم که میاد به سرور google talk وصل میشه و با رمز و پسورد جیمیل اتصال برقرار میشه اما موقعی که میخوام لیست افراد حاضر رو داشته باشم getRoster هیچی برنمیگردونه و هیچ فردی رو پیدا نمیکنه کسی میدونه مشکل از چیه؟



public void connect()
{
final ProgressDialog dialog = ProgressDialog.show(this," در حال اتصال به سرور...", "لطفا صبر کنید...", false);


Thread t = new Thread(new Runnable()
{
@Override
public void run()
{
// Create a connection
ConnectionConfiguration connConfig = new ConnectionConfiguration(HOST, PORT, SERVICE);
XMPPConnection connection = new XMPPConnection(connConfig);

//ConnectionConfiguration config = new ConnectionConfiguration("192.168.0.101", 5222);
//XMPPConnection connection = new XMPPConnection("192.168.0.101");


try
{
connection.connect();
Log.i("XMPPChatDemoActivity","Connected to " + connection.getHost());
}
catch (XMPPException ex)
{
Log.e("XMPPChatDemoActivity", "Failed to connect to "+ connection.getHost());
Log.e("XMPPChatDemoActivity", ex.toString());
setConnection(null);
}

try
{
//SASLAuthentication.supportSASLMechanism("PLAIN", 0);
connection.login(USERNAME, PASSWORD);
Log.i("XMPPChatDemoActivity","Logged in as " + connection.getUser());


// Set the status to available
Presence presence = new Presence(Presence.Type.available);
connection.sendPacket(presence);
setConnection(connection);

Roster roster = connection.getRoster();
Collection<RosterEntry> entries = roster.getEntries();
for (RosterEntry entry : entries)
{

Log.d("XMPPChatDemoActivity","--------------------------------------");
Log.d("XMPPChatDemoActivity", "RosterEntry " + entry);
Log.d("XMPPChatDemoActivity",
"User: " + entry.getUser());
Log.d("XMPPChatDemoActivity",
"Name: " + entry.getName());
Log.d("XMPPChatDemoActivity",
"Status: " + entry.getStatus());
Log.d("XMPPChatDemoActivity",
"Type: " + entry.getType());

Presence entryPresence = roster.getPresence(entry.getUser());


Log.d("XMPPChatDemoActivity", "Presence Status: "+ entryPresence.getStatus());
Log.d("XMPPChatDemoActivity", "Presence Type: "+ entryPresence.getType());

Presence.Type type = entryPresence.getType();

if (type == Presence.Type.available)
Log.d("XMPPChatDemoActivity", "Presence AVIALABLE");

Log.d("XMPPChatDemoActivity", "Presence : "+ entryPresence);
}
}

catch (XMPPException ex)
{
Log.e("XMPPChatDemoActivity", "Failed to log in as "+ USERNAME);
Log.e("XMPPChatDemoActivity", ex.toString());
setConnection(null);
}
dialog.dismiss();
}
});
t.start();
dialog.show();
}
}