Avatar billede foghster Nybegynder
06. juni 2002 - 19:24 Der er 5 kommentarer

Roster til Instant Messenger

Hvorledes laver man bedst muligt en roster(liste der holder styr på kontaktpersoner) til en Instant Messenger. Kodeeksempel ønskes
Avatar billede disky Nybegynder
06. juni 2002 - 19:34 #1
bruger en HashMap

har ikke tid til at lave et eksempel
Avatar billede quaid Nybegynder
08. juni 2002 - 10:18 #2
Kom lige med lidt flere oplysninger om hvordan den liste ser ud.
Det er som disky siger lettest at bruge en hashMAp, da den så indexerer efter navnet. Hvad havde du tænkt dig at gemme ? bare en String med alle oplysninger på de enkelte person eller hvad ????
QD::
Avatar billede foghster Nybegynder
08. juni 2002 - 10:23 #3
Vi skal ligesom i MSN Messenger have en funktionalitet hvor vi kan tilføje brugere fra serveren til vores program + se deres status.
Disse brugere er allerede gemt og oprettet på serveren - nu skal vi nbare kunne hente dem ind i vores program!?
Avatar billede quaid Nybegynder
08. juni 2002 - 10:34 #4
Jeg kender ikke Messenger. Du siger oplysningerne ligger på serveren. hvordan er de gemt der ? Hvad får du retur hvis du vil hente plysningerne ? Xml eller hvad ?
QD::
Avatar billede foghster Nybegynder
09. juni 2002 - 14:28 #5
Vi regner med, at de er gemt som en række vectorer (hvis det giver mening?). Sagen er, at vi er på bar bund med termerne, og kan kun se håbløst på API'ens mange metoder (her i blandt "hashmap").

HEr er hvad vi arbejder ud fra:

import java.util.*;
import dk.au.imv.jabber.*;

public class mainTest implements IJabber {

    public mainTest() {
        JabberServer js = new JabberServer(this);
        JID me = new JID();
        me.setPassword("test1");
        me.setUsername("Test1");
        me.setServer("ishtar.imv.au.dk");
        System.out.println("JID: " + me);
        //boolean res = js.createNewAccount(); 
        js.attachUser(me);

        boolean res = js.logOn();
        js.setStatus("available");

        System.out.println("JS done: " + res);
       
        js.getRoster();
       
        try {
            Thread.sleep(10000); // vent 2 min
        } catch (Exception e) {
            System.out.println(e.toString());
        }

        js.msgSend(me, "Subj er hej", "body er ingenting");
        js.setStatus("gonner");

        try {
            Thread.sleep(120000); // 2 min
        } catch (Exception e) {
            System.out.println(e.toString());
        }
        res = js.logOff();

        System.out.println("JS doone: " + res);
    }

    public void msgReceived(String from, String subject, String body) {
        System.out.println("RECI:" + body);
    }

    public void rosterChange(Vector v) {
        System.out.println("VECTOR:" + v);
    }

    public void connectionClosed() {
        System.out.println("conn closed");
    }

    public static void main(String[] args) {
        new mainTest();
    }
}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester