{"action":"created","issue":{"url":"https://api.github.com/repos/jlaine/aioice/issues/2","repository_url":"https://api.github.com/repos/jlaine/aioice","labels_url":"https://api.github.com/repos/jlaine/aioice/issues/2/labels{/name}","comments_url":"https://api.github.com/repos/jlaine/aioice/issues/2/comments","events_url":"https://api.github.com/repos/jlaine/aioice/issues/2/events","html_url":"https://github.com/jlaine/aioice/issues/2","id":305235720,"node_id":"MDU6SXNzdWUzMDUyMzU3MjA=","number":2,"title":"Finer local candidate address selection","user":{"login":"sebastianriese","id":152464,"node_id":"MDQ6VXNlcjE1MjQ2NA==","avatar_url":"https://avatars1.githubusercontent.com/u/152464?v=4","gravatar_id":"","url":"https://api.github.com/users/sebastianriese","html_url":"https://github.com/sebastianriese","followers_url":"https://api.github.com/users/sebastianriese/followers","following_url":"https://api.github.com/users/sebastianriese/following{/other_user}","gists_url":"https://api.github.com/users/sebastianriese/gists{/gist_id}","starred_url":"https://api.github.com/users/sebastianriese/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sebastianriese/subscriptions","organizations_url":"https://api.github.com/users/sebastianriese/orgs","repos_url":"https://api.github.com/users/sebastianriese/repos","events_url":"https://api.github.com/users/sebastianriese/events{/privacy}","received_events_url":"https://api.github.com/users/sebastianriese/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2018-03-14T16:32:44Z","updated_at":"2018-06-27T09:44:21Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Currently all addresses on all interfaces are automatically selected as candidates by `gather_candidates` and the loopback device is only discarded based on the addresses bound to it. While this does work, it may not be desirable for all users, who for example have redundant links where one link is unfit for bulk transfers of data negotiated via ICE (e.g. a volume-limited mobile link). Other addresses should perhaps be ignored from the start because they have no routes to the public internet (e.g. a VPN link to some intranet). This information is not available at the level of aioice but may be available to an application (e.g. via configuration or tight integration with the target system).\r\n\r\nSome kind of interface with finer granularity for selecting candidates would enable the use of such information. Probably, one could simply manually modify or set `Connection.local_candidates` to achieve this, but this feels wrong, since I would consider the member variable private by default. If this is the preferred interface, this should be documented (and the issue closed).\r\n\r\nI would argue for additional methods for setting the local candidates: \r\n* by explicitly adding IPs,\r\n* by specifying interfaces whose addresses to add,\r\n* ...\r\n\r\nI would implement the changes, but wanted to discuss the preferred API first."},"comment":{"url":"https://api.github.com/repos/jlaine/aioice/issues/comments/400610786","html_url":"https://github.com/jlaine/aioice/issues/2#issuecomment-400610786","issue_url":"https://api.github.com/repos/jlaine/aioice/issues/2","id":400610786,"node_id":"MDEyOklzc3VlQ29tbWVudDQwMDYxMDc4Ng==","user":{"login":"jlaine","id":1567624,"node_id":"MDQ6VXNlcjE1Njc2MjQ=","avatar_url":"https://avatars1.githubusercontent.com/u/1567624?v=4","gravatar_id":"","url":"https://api.github.com/users/jlaine","html_url":"https://github.com/jlaine","followers_url":"https://api.github.com/users/jlaine/followers","following_url":"https://api.github.com/users/jlaine/following{/other_user}","gists_url":"https://api.github.com/users/jlaine/gists{/gist_id}","starred_url":"https://api.github.com/users/jlaine/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jlaine/subscriptions","organizations_url":"https://api.github.com/users/jlaine/orgs","repos_url":"https://api.github.com/users/jlaine/repos","events_url":"https://api.github.com/users/jlaine/events{/privacy}","received_events_url":"https://api.github.com/users/jlaine/received_events","type":"User","site_admin":false},"created_at":"2018-06-27T09:44:21Z","updated_at":"2018-06-27T09:44:21Z","author_association":"OWNER","body":"Also of interest: https://github.com/jitsi/ice4j/blob/master/doc/configuration.md"}}
{"actor":{"display_login":"jlaine"}}