Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add
close/1
function.This function irreversibly closes ICE agent but does not terminate its process. Later calls to getters (e.g.
get_stats/1
) are still allowed but the agent can no longer be used to establish a connection.NOTE The best solution would be to modify ICE agent API to be similar to Erlang's :gen_udp API where, after closing a socket,
:gen_udp
functions return{:error, :closed}
tuple. This however, would require a lot of changes. Other incorrect actions e.g. setting remote credentials in a wrong state, are also ignored i.e. no error is returned. If we find this problematic, we will modify ICE agent API in the future.Related to: elixir-webrtc/ex_webrtc#218