blob: 3560e52dca1820b0a1f38cee5fcc377a7edaa70d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
/*
* SIP Communicator, the OpenSource Java VoIP and Instant Messaging client.
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package net.java.sip.communicator.service.protocol;
import net.java.sip.communicator.service.protocol.event.CallListener;
/**
* An Operation Set defining all basic telephony operations such as conducting
* simple calls and etc. Note that video is not considered as a part of a
* supplementary operation set and if included in the service should be available
* behind the basic telephoy set.
*
* @author Emil Ivov
*/
public interface OperationSetBasicTelephony
extends OperationSet
{
/**
* Registers the specified CallListener with this provider so that it could
* be notified when incoming calls are received. This method is called
* by the implementation of the PhoneUI service.
* @param listener the listener to register with this provider.
*/
public void addCallListener(CallListener listener);
/**
* Removes the specified listener from the list of call listeners.
* @param listener the listener to unregister.
*/
public void removeCallListener(CallListener listener);
/**
* Create a new call and invite the specified CallParticipant to it.
* @param uri the address of the callee that we should invite to a new
* call.
* @return CallParticipant the CallParticipant that will represented by the
* specified uri. All following state change events will be delivered
* through that call participant. The Call that this participant is a member
* of could be retrieved from the CallParticipatn instance with the use
* of the corresponding method.
*/
public Call createCall(String uri);
/**
* Indicates a user request to answer an incoming call from the specified
* CallParticipant.
* @param participant the call participant that we'd like to anwer.
*/
public void answerCallParticipant(CallParticipant participant);
/**
* Puts the specified CallParticipant "on hold". In other words incoming
* media flows are not played and outgoing media flows are either muted or
* stopped, without actually interrupting the session.
* @param participant the participant that we'd like to put on hold.
*/
public void putOnHold(CallParticipant participant);
/**
* Resumes communication with a call participant previously put on hold. If
* the specified participant is not "On Hold" at the time putOffHold is
* called, the method has no effect.
* @param participant the call participant to put on hold.
*/
public void putOffHold(CallParticipant participant);
/**
* Indicates a user request to end a call with the specified call
* particiapnt.
* @param participant the participant that we'd like to hang up on.
*/
public void hangupCallParticipant(CallParticipant participant);
/**
* Returns an iterator over all currently active calls.
* @return Iterator
*/
public java.util.Iterator getActiveCalls();
}
|