Commit Graph

41 Commits

Author SHA1 Message Date
Assad Obaid
6e72493517 Set the proxy dialer
Sets the proxy dialer in the ice package.

Relates to pion/ice#284
2020-10-09 13:01:38 -07:00
Sean DuBois
89c51a156c Rename SettingEngine mDNS Config option
GenerateMulticastDNSCandidates -> SetICEMulticastDNSMode.
Before a user wasn't able to disable mDNS. By changing it we can
do more with this API.
2020-10-05 16:52:21 -07:00
soolaugust
6f6de25b24 Modify all hdlr to handler for better reading
change hdlr -> handler, Hdlr -> Handler for better reading.
Since this is first commit, add myself to contributors
2020-08-17 22:04:29 -07:00
Jerko Steiner
cd3beeab24 Upgrade pion/ice to v2.0.0-rc.9
Add support for more stable ICE TCP API.
2020-08-01 11:11:51 +02:00
Jerko Steiner
2236ddeafd Add experimental support for ICE TCP
See pion/ice issue and PR:

- https://github.com/pion/ice/tree/issue-196
- https://github.com/pion/ice/pull/226
2020-07-15 15:08:37 +02:00
Sean DuBois
9ed5fd393c Remove CandidateSelectionTimeout
pion/ice now will use any valid candidate pair to exchange data.
Before we needed this we would wait to be selected before sending data,
now we just use anything that is connected.
2020-07-06 01:04:22 -07:00
Sean DuBois
f2941469f4 Implement ICE Restarts
Resolves #1251
2020-06-29 23:09:18 -07:00
Sean DuBois
bb3aa9717f Move to pion/ice@v2
Removed support for trickle ice

Resolves #1274
2020-06-28 00:01:47 -07:00
Atsushi Watanabe
be9fde1fd3 Fix ICEGatherer state change callback order
Don't call handlers in goroutine to guarantee the ordering and
avoid changing internal state during callback.
2020-03-10 16:32:44 +09:00
Jorropo
8fe6f7fa34 Adding documentation about OnICECandidate
Follow up to #1051.
2020-02-26 20:30:15 -08:00
Sean DuBois
e45c256e6c Fix GetStats SEGV
Fix crash when GetStats called on Closed PeerConnection

Resolves #1005
2020-02-06 14:17:43 -08:00
Sean DuBois
efe2c58d4e Add test for OnICEGatheringStateChange
Resolves #767
2020-01-30 00:19:32 -08:00
Sean DuBois
d10941f2a4 Add SettingEngine entries needed for offline sync
Allow users to set statice ICECredentials and to disable
DTLS Certificate Verification
2019-12-09 16:43:44 -08:00
Sean DuBois
70157302b6 Bump pion/ice
SettingEngine now allows setting static MulticastDNS HostName
2019-12-08 22:17:30 -08:00
Sean DuBois
99c0f8d32c GenerateMulticastDNSCandidates in SettingEngine
Users can now generate MulticastDNS candidates by enabling this option
in the SettingEngine.
2019-12-08 14:15:27 -08:00
Sean DuBois
1d42a11bde Add vnet to SettingEngine
Also add simple example to show usage

Resolves #778
2019-12-08 01:03:17 -08:00
Sean DuBois
b5154b499e Only create ICEGather via API
Use values directly from SettingValues instead of just copying
when calling NewICEGatherer. This greatly reduces the LoC and makes
the public API a little cleaner.

Resolves #872
2019-11-21 11:18:05 -08:00
Vicken Simonian
5f25df2209 Various spell fixes
For error types, vars, docs and comments
2019-10-17 23:31:21 -07:00
Sebastian Waisbrot
c12ebcf0e2 Honor nat 1to1 config when creating agent
NAT 1to1 config was set and not used
2019-09-26 15:02:24 -07:00
Yutaka Takeda
d4053a8b71 Updates per code reviews
Use ICECandidateType instead of string
Combine two methods to one SetNAT1To1IPs
Resolves #835
2019-09-26 02:15:34 -07:00
Yutaka Takeda
918412679f Support 1:1 NAT option
Resolves #835
2019-09-26 02:15:34 -07:00
Aaron France
cabbd8b52f Add InterfaceFilter to SettingEngine
This allows users to filter interfaces from ICE gathering

Resolves #843

Co-authored-by: Sean DuBois <sean@siobud.com>
2019-09-25 01:16:17 -07:00
Sebastian Waisbrot
e0aab79044 Support running ICE lite locally and on a remote
* Parse ice-lite property from remote SessionDescription
* Add option to SettingEngine that allows the local ICEAgent to run
  in lite mode
2019-09-12 11:42:16 -07:00
Atsushi Watanabe
ea81c1804b Fix possible ill-order of OnLocalCandidate call
onLocalCandidateHdlr was called in one candidate per one goroutine.
It is not guaranteed to be called in-order,
and nil can be sent before the final candidate.
2019-08-17 00:49:37 -07:00
Sean DuBois
fd9dfab0af Guard against nil OnLocalCandidate handler
Currently the ICEGather will crash if trickle is enabled and
OnLocalCandidate hasn't been defined. This adds a simple nil check
to make sure we don't crash if the user doesn't set a OnLocalCandidate
callback
2019-07-29 17:28:24 -07:00
Sean DuBois
10d2ca3d88 Enable gochecknoglobals linter
Resolves #434
2019-07-09 23:31:56 +01:00
Hugo Arregui
93261960b1 Basic stats
Load DC, CandidatePair and Candidate basic stats
2019-06-25 19:36:57 +00:00
Sean DuBois
2838b1a836 Move ICE code out of internal
Users are unable to use the callbacks inside `internal/ice`.
Even though we alias things like OnSelectedCandidatePairChange
are unusable since in the package they use `ice.Candidate` instead of
`ICECandidate`
2019-06-15 01:29:08 -07:00
Adam Kiss
7756848a4c Moved ice related files to internal/ice
Moved ice related files to internal/ice. Added ice.go and
ice_go.go files containing aliases to internal/ice. Added
internal/tools/gen/genaliasdocs.go helper script for generating the
documentation for these aliases. Dropped ice
prefix from file names in internal/ice package.
2019-06-03 10:57:27 -07:00
Sean DuBois
1d721199ef Add ICE Trickle support
Resolves pion/ice#51

Co-authored-by: Konstantin Itskov <konstantin.itskov@kovits.com>
2019-05-29 17:15:28 -07:00
Adam Kiss
8289a3e7cc Prepare for internal/ice package
Removed SDP dependency from ice files. Exported string to ice enum
functions. Exported ICEServer.Validate.
2019-05-26 14:09:38 +02:00
Sean DuBois
b2049be130 Support ICETransportPolicy
Add support for ICETransportPolicy and ICEGatherPolicy for ORTC
2019-05-26 00:54:43 -07:00
Adam Kiss
60b1dfdafc Removed API dependency from ice related structs
ICEGatherer and ICETransport will no longer have a field of type API.
Instead every necessary settings are passed to these structs
one-by-one.
2019-05-10 15:33:01 +02:00
Sean DuBois
1cdfc10c84 Mass replace pions -> pion
Pions organization was renamed to pion
2019-04-04 15:32:03 -07:00
Hugo Arregui
87897285b1 Custom Loggers
Define LoggerFactory as part of the SettingEngine
2019-04-01 11:14:13 -03:00
Sean DuBois
b4bc4798b9 Move ICE out of tree
Relates to #361
2019-03-25 23:31:43 -07:00
Alex Browne
012a7ea686 Improve build tags for Wasm
Fixes #515

This includes a few small and closely related changes:

1. All occurrences of the build tag `+build js` have been changed to the
   more precise `+build js,wasm`. This will exclude the files from being
   included by third-party compilers like GopherJS, with which they are
   incompatible.
2. Some files which are incompatible with JavaScript/Wasm now have the
   correct build tag (`+build -js`) so they will be excluded from Wasm
   builds.
3. Some configuration options which are incompatible with
   JavaScript/Wasm (or at least the current bindings) will now no longer
   appear in Wasm builds. This meant creating new files with new struct
   definitions and the appropriate build tags.
2019-03-22 10:48:03 -07:00
Konstantin Itskov
d23ceed6d4 Add a customization to control network types
- Fix an issue with ipv6 srflx candidates gathering.
- Add SetNetworkTypes config to SettingEngine to control what network
  types are allowed to be connected.

Resolves #460
2019-03-12 21:36:52 -04:00
Michael MacDonald
5084ad3370 Move pkg/ice to internal/ice
Avoid exposing any non-standard API.
2019-03-01 08:07:42 -05:00
Sean DuBois
632b16b852 Update golangci-lint to v14.0.0
Update linter to newest version and fix all new issues
2019-02-17 21:35:04 -08:00
Max Hawkins
0647ce9c26 Remove rtc prefix from filenames
Relates to #408
2019-02-17 16:22:56 -08:00