public ParkedCallEvent(final org.asteriskjava.manager.event.ParkedCallEvent event) throws InvalidChannelName { super(event); final AsteriskPBX pbx = (AsteriskPBX) PBXFactory.getActivePBX(); if (event.getParkerDialString() != null) this.fromChannel = pbx.internalRegisterChannel(event.getParkerDialString(), ChannelImpl.UNKNOWN_UNIQUE_ID); else this.fromChannel = null; this.timeout = event.getTimeout(); this.exten = event.getExten(); }
void handleParkedCallEvent(ParkedCallEvent event) { // Only bristuffed versions: AsteriskChannelImpl channel = // getChannelImplById(event.getUniqueId()); AsteriskChannelImpl channel = getChannelImplByNameAndActive(event.getChannel()); if (channel == null) { logger.info("Ignored ParkedCallEvent for unknown channel " + event.getChannel()); return; } synchronized (channel) { // todo The context should be "parkedcalls" or whatever has been configured in features.conf // unfortunately we don't get the context in the ParkedCallEvent so for now we'll set it to // null. Extension ext = new Extension(null, event.getExten(), 1); channel.setParkedAt(ext); logger.info( "Channel " + channel.getName() + " is parked at " + channel.getParkedAt().getExtension()); } }