hello team,

I'm very newbie on this technologies.
I think this is great project.

I want to handle sip client register/unregister event.
Is there any example ho to do this. ?

I took HelloLiveEverything example and made some changes but nothing of
them help.

mu example looks like :


import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;

import org.asteriskjava.live.AsteriskAgent;
import org.asteriskjava.live.AsteriskChannel;
import org.asteriskjava.live.AsteriskQueue;
import org.asteriskjava.live.AsteriskQueueEntry;
import org.asteriskjava.live.AsteriskQueueListener;
import org.asteriskjava.live.AsteriskQueueMember;
import org.asteriskjava.live.AsteriskServer;
import org.asteriskjava.live.AsteriskServerListener;
import org.asteriskjava.live.DefaultAsteriskServer;
import org.asteriskjava.live.ManagerCommunicationException;
import org.asteriskjava.live.MeetMeRoom;
import org.asteriskjava.live.MeetMeUser;
import org.asteriskjava.live.internal.AsteriskAgentImpl;
import org.asteriskjava.manager.ManagerConnection;
import org.asteriskjava.manager.ManagerConnectionFactory;
import org.asteriskjava.manager.ManagerEventListener;
import org.asteriskjava.manager.event.DialEvent;
import org.asteriskjava.manager.event.ManagerEvent;

public class HelloLiveEverything implements AsteriskServerListener,
PropertyChangeListener, ManagerEventListener, AsteriskQueueListener {
    private AsteriskServer asteriskServer;
    private ManagerConnection managerConnection;
    private ManagerConnectionFactory factory;

    public HelloLiveEverything() {
        try {
            asteriskServer = new DefaultAsteriskServer("192.168.1.28",
"manager", "pa55w0rd");
            this.factory = new ManagerConnectionFactory("192.168.1.28",
"manager", "pa55w0rd");
            this.managerConnection = factory.createManagerConnection();
        } catch (Exception e) {
            e.printStackTrace();
        }

    }

    public void run() throws ManagerCommunicationException {
        // listen for new events
        asteriskServer.addAsteriskServerListener(this);
        managerConnection.addEventListener(this);

        // add property change listeners to existing objects
        for (AsteriskChannel asteriskChannel :
asteriskServer.getChannels()) {
            // System.out.println(asteriskChannel);
            asteriskChannel.addPropertyChangeListener(this);
        }

        for (AsteriskQueue asteriskQueue : asteriskServer.getQueues()) {
            System.out.println("asteriskQueue = " +
asteriskQueue.getName());
            for (AsteriskQueueEntry entry : asteriskQueue.getEntries()) {
                System.out.println("entry = " + entry);
                entry.addPropertyChangeListener(this);
            }
            for (AsteriskQueueMember member : asteriskQueue.getMembers()) {
                //System.out.println("member = " + member);
                member.addPropertyChangeListener(this);
            }
        }

        for (MeetMeRoom meetMeRoom : asteriskServer.getMeetMeRooms()) {
            // System.out.println(meetMeRoom);
            for (MeetMeUser user : meetMeRoom.getUsers()) {
                user.addPropertyChangeListener(this);
            }
        }
        for (AsteriskAgent asteriskAgent : asteriskServer.getAgents()) {
            asteriskAgent.addPropertyChangeListener(this);
        }
    }

    @Override
    public void onNewAsteriskChannel(AsteriskChannel channel) {
        System.out.println(channel);
        channel.addPropertyChangeListener(this);
    }

    @Override
    public void onNewMeetMeUser(MeetMeUser user) {
        System.out.println(user);
        user.addPropertyChangeListener(this);
    }

    @Override
    public void propertyChange(PropertyChangeEvent propertyChangeEvent) {
        System.out.println(propertyChangeEvent);
    }

    @Override
    public void onNewAgent(AsteriskAgentImpl agent) {
        System.out.println(agent);
        agent.addPropertyChangeListener(this);
    }

    @Override
    public void onNewQueueEntry(AsteriskQueueEntry entry) {
        System.out.println(entry);
        entry.addPropertyChangeListener(this);
    }

    @Override
    public void onManagerEvent(ManagerEvent event) {
        String event_name = event.getClass().getSimpleName();
        System.out.println("11111111111111111111111111 . event_name = " +
event_name);
        if (event_name.equals("DialEvent")) {
            DialEvent e = (DialEvent) event;
            System.out.println(e.getCallerIdNum());// caller number
            System.out.println(e.getDestination());// Called number
            // do something here
        }
    }


    @Override
    public void onEntryLeave(AsteriskQueueEntry arg0) {
        System.out.println("1. onEntryLeave");
    }

    @Override
    public void onEntryServiceLevelExceeded(AsteriskQueueEntry arg0) {
        System.out.println("2. onEntryServiceLevelExceeded");
    }

    @Override
    public void onMemberAdded(AsteriskQueueMember arg0) {
        System.out.println("3. onMemberAdded");
    }

    @Override
    public void onMemberRemoved(AsteriskQueueMember arg0) {
        System.out.println("4. onMemberRemoved");
    }

    @Override
    public void onMemberStateChange(AsteriskQueueMember arg0) {
        System.out.println("5. onMemberStateChange");
    }

    @Override
    public void onNewEntry(AsteriskQueueEntry arg0) {
        System.out.println("6. onNewEntry");
    }


    public static void main(String[] args) throws Exception {
        try {
            HelloLiveEverything helloLiveEverything = new
HelloLiveEverything();
            helloLiveEverything.run();
            while (true) {
                Thread.sleep(100);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}


but when sip clients register or unregister i didn't get any event.


Thanks in advance.
Best regards,
Paata Lominadze.
------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Asterisk-java-users mailing list
Asterisk-java-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/asterisk-java-users

Reply via email to