All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.asteriskjava.live.QueueMemberState Maven / Gradle / Ivy

The newest version!
/*
 *  Copyright 2004-2006 Stefan Reuter
 *
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 *
 */
package org.asteriskjava.live;

import org.asteriskjava.manager.event.QueueMemberEvent;

/**
 * Represents the status of a Queue member.
 *
 * 
* Valid status codes are: *
*
AST_DEVICE_UNKNOWN (0)
*
Queue member is available
*
AST_DEVICE_NOT_INUSE (1)
*
?
*
AST_DEVICE_INUSE (2)
*
?
*
AST_DEVICE_BUSY (3)
*
?
*
AST_DEVICE_INVALID (4)
*
?
*
AST_DEVICE_UNAVAILABLE (5)
*
?
*
AST_DEVICE_RINGING (6)
*
?
*
AST_DEVICE_RINGINUSE (7)
*
?
*
AST_DEVICE_ONHOLD (8)
*
?
*
* * @author Patrick Breucking * @author itaqua * @version $Id$ * @see org.asteriskjava.manager.event.QueueMemberEvent * @since 0.3.1 */ public enum QueueMemberState { DEVICE_UNKNOWN(QueueMemberEvent.AST_DEVICE_UNKNOWN), /** * Queue member is available, eg. Agent is logged in but idle. */ DEVICE_NOT_INUSE(QueueMemberEvent.AST_DEVICE_NOT_INUSE), DEVICE_INUSE(QueueMemberEvent.AST_DEVICE_INUSE), /** * Busy means, phone is in action, eg. is ringing, in call. */ DEVICE_BUSY(QueueMemberEvent.AST_DEVICE_BUSY), DEVICE_INVALID(QueueMemberEvent.AST_DEVICE_INVALID), /** * Device is not available for call, eg. Agent is logged off. */ DEVICE_UNAVAILABLE(QueueMemberEvent.AST_DEVICE_UNAVAILABLE), /** * Device is ringing. */ DEVICE_RINGING(QueueMemberEvent.AST_DEVICE_RINGING), /** * Device is ringing *and* in use. */ DEVICE_RINGINUSE(QueueMemberEvent.AST_DEVICE_RINGINUSE), /** * Device is on hold */ DEVICE_ONHOLD(QueueMemberEvent.AST_DEVICE_ONHOLD); private final int status; /** * Creates a new instance. * * @param status the numerical status code. */ QueueMemberState(int status) { this.status = status; } /** * Returns the numerical status code. * * @return the numerical status code. * @see org.asteriskjava.manager.event.QueueMemberEvent#getStatus() */ public int getStatus() { return status; } /** * Returns value specified by int. Use this to transform * {@link org.asteriskjava.manager.event.QueueMemberEvent#getStatus()}. * * @param status integer representation of the status. * @return corresponding QueueMemberState object or null if none matches. */ public static QueueMemberState valueOf(Integer status) { if (status == null) { return null; } for (QueueMemberState tmp : QueueMemberState.values()) { if (tmp.getStatus() == status) { return tmp; } } return null; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy