This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
The transport (NAT traversal technique) to be used for this stream. Well-known values include:
This property cannot change once the stream has been created, so there is no change notification.
A list of mappings describing TURN or Google relay servers available for the client to use in its candidate gathering, as determined from the protocol. Map keys are:
ip
- stype
- sEither udp
for UDP (UDP MUST be assumed if this
key is omitted), tcp
for TCP, or
tls
.
The precise meaning of this key depends on the
ice-udp
, tls
means
TLS over TCP as referenced by ICE draft 19, and if
NATTraversal is gtalk-p2p
, tls
means
a fake SSL session over TCP as implemented by libjingle.
port
- qusername
- spassword
- scomponent
- uAn equivalent of the gtalk-p2p-relay-token property on MediaSignalling channels is not included here. The connection manager should be responsible for making the necessary HTTP requests to turn the token into a username and password.
The type of relay server that this represents depends on
the value of the
If relaying is not possible for this stream, the list is empty.
This property cannot change once the stream has been created, so there is no change notification.
Used to provide codecs after Ready(), so the media client can go ready for an incoming call and exchange candidates/codecs before knowing what local codecs are available.
This is useful for gatewaying calls between two connection managers.
Given an incoming call, you need to call
In this situation, you would pass an empty list of codecs to the incoming call's Ready method, then later call SetLocalCodecs on the incoming call in order to respond to the offer.
Emitted when the connection manager wishes to place the stream on hold (so the streaming client should free hardware or software resources) or take the stream off hold (so the streaming client should reacquire the necessary resources).
When placing a channel's streams on hold, the connection manager SHOULD notify the remote contact that this will be done (if appropriate in the protocol) before it emits this signal.
It is assumed that relinquishing a resource will not fail. If it does, the call is probably doomed anyway.
When unholding a channel's streams, the connection manager SHOULD emit this signal and wait for success to be indicated via HoldState before it notifies the remote contact that the channel has been taken off hold.
This means that if a resource is unavailable, the remote contact will never even be told that we tried to acquire it.