|
Avaya Conferencing Provider API | |||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||
See:
Description
| Packages | |
|---|---|
| com.avaya.conferencing.api.acp.control | The Avaya Conferencing Provider Interface API. |
| com.avaya.conferencing.api.acp.control.events | Avaya Conferencing Provider Interface Events. |
| com.avaya.conferencing.api.acp.control.exceptions | Exceptions thrown by the Avaya Conferencing Provider Interface. |
| com.avaya.conferencing.api.acp.control.operations | Operations supported by the Avaya Conferencing Provider Interface. |
The Avaya Conferencing Provider Interface allows connection to Avaya products that provide Conferencing functions. This interface consists of two components:
The API is designed to allow different implementations to provide additional functionality in a discoverable manner. Thus allowing for the development of applications (providing they are designed to support functionality discovery) that can expose additional functionality when it is provided by the implementation without rewriting the application.
Most applications written for this API will use three interfaces: Connection,
Conference and EndPoint.
Connection represents the connection to the Avaya Conferencing Provider.
A Connection is obtained from
the static class ConferencingProviders.
Use the Connection to obtain the
Conferences and/or EndPoints
which your application wants to control or monitor. When finished with the
Connection you must call the close() method to close the
connection.
Conference represents a conference on the Avaya Conferencing Provider.
Conference-level control and monitoring can be performed on this object and it contains the
EndPoints that are participating in the conference.
EndPoint represents a media input, which may be one of several inputs. The Media inputs may be concepts such as SIP based telephony and Video/Mixed-media Conferencing.
The following code illustrates a simple example that prints out a list of all conferences and their callees:
package acpi.example;
import java.io.IOException;
import com.avaya.conferencing.api.acp.control.Conference;
import com.avaya.conferencing.api.acp.control.ConferencingProviders;
import com.avaya.conferencing.api.acp.control.Connection;
import com.avaya.conferencing.api.acp.control.EndPoint;
import com.avaya.conferencing.api.acp.control.ConferencingObject;
public class ActiveConferenceLister {
public static void main(String[] args) {
// check that we have the connection details
if (args.length != 3) {
System.out.println("The command line parameters are, in order:"
+ " connectionUrl username password");
return;
}
// try and get a connection
Connection connection;
try {
connection = ConferencingProviders
.getConnection(args[0], args[1], args[2]);
} catch (IOException e) {
System.out.println("Could not establish a connection to " + args[0]);
e.printStackTrace();
return;
}
try {
int confNum = 0;
System.out.println("Active Conferences");
// iterate through all the conferences
for (Conference conference : connection.getConferences()) {
if (!conference.getEndPoints().isEmpty()) {
// print details of the conference
confNum += 1;
System.out.println("Conference #" + confNum);
printProperties(conference);
// list all the child conferences
int epNum = 0;
for (EndPoint endPoint: conference.getEndPoints()) {
System.out.print(" " + ++epNum);
printProperties(endPoint);
}
}
}
} finally {
// close the connection
connection.close();
}
}
private static void printProperties(ConferencingObject<?> conferencingObject) {
// determine the properties supported by a conferencing
// object and display their current values
for (String properyName : conferencingObject.getProperties()) {
System.out.print(" " + properyName + "=" + conferencingObject.getPropertyValue(properyName));
}
System.out.println();
}
}
|
Avaya Conferencing Provider API | |||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||