@girs/nice-0.1 0.1.0-3.2.5 → 0.1.0-3.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/nice-0.1.d.cts +418 -0
- package/nice-0.1.d.ts +418 -0
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|

|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
GJS TypeScript type definitions for Nice-0.1, generated from library version 0.1.0 using [ts-for-gir](https://github.com/gjsify/ts-for-gir) v3.2.
|
|
8
|
+
GJS TypeScript type definitions for Nice-0.1, generated from library version 0.1.0 using [ts-for-gir](https://github.com/gjsify/ts-for-gir) v3.2.6.
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
## Install
|
package/nice-0.1.d.cts
CHANGED
|
@@ -760,6 +760,189 @@ export module Agent {
|
|
|
760
760
|
* finish before signaling the #NiceAgent::candidate-gathering-done signal
|
|
761
761
|
*/
|
|
762
762
|
upnp_timeout?: number | null
|
|
763
|
+
/**
|
|
764
|
+
* Whether to perform periodic consent freshness checks as specified in
|
|
765
|
+
* RFC 7675. When %TRUE, the agent will periodically send binding requests
|
|
766
|
+
* to the peer to maintain the consent to send with the peer. On receipt
|
|
767
|
+
* of any authenticated error response, a component will immediately move
|
|
768
|
+
* to the failed state.
|
|
769
|
+
*
|
|
770
|
+
* Setting this property to %TRUE implies that 'keepalive-conncheck' should
|
|
771
|
+
* be %TRUE as well.
|
|
772
|
+
*/
|
|
773
|
+
consentFreshness?: boolean | null
|
|
774
|
+
/**
|
|
775
|
+
* Whether the agent has the controlling role. This property should
|
|
776
|
+
* be modified before gathering candidates, any modification occuring
|
|
777
|
+
* later will be hold until ICE is restarted.
|
|
778
|
+
*/
|
|
779
|
+
controllingMode?: boolean | null
|
|
780
|
+
/**
|
|
781
|
+
* Force all traffic to go through a relay for added privacy, this
|
|
782
|
+
* allows hiding the local IP address. When this is enabled, so
|
|
783
|
+
* local candidates are available before relay servers have been set
|
|
784
|
+
* with nice_agent_set_relay_info().
|
|
785
|
+
*/
|
|
786
|
+
forceRelay?: boolean | null
|
|
787
|
+
fullMode?: boolean | null
|
|
788
|
+
/**
|
|
789
|
+
* Whether the agent should use ICE-TCP when gathering candidates.
|
|
790
|
+
* If the option is disabled, no TCP candidates will be generated. If the
|
|
791
|
+
* agent is in reliable mode, then pseudotcp will need to be used over UDP
|
|
792
|
+
* candidates.
|
|
793
|
+
* <para>
|
|
794
|
+
* This option should be set before gathering candidates and should not be
|
|
795
|
+
* modified afterwards.
|
|
796
|
+
* </para>
|
|
797
|
+
* The #NiceAgent:ice-tcp property can be set at the same time as the
|
|
798
|
+
* #NiceAgent:ice-udp property, but both cannot be unset at the same time.
|
|
799
|
+
* If #NiceAgent:ice-udp is set to %FALSE, then this property cannot be set
|
|
800
|
+
* to %FALSE as well.
|
|
801
|
+
* <note>
|
|
802
|
+
* <para>
|
|
803
|
+
* ICE-TCP is only supported for %NICE_COMPATIBILITY_RFC5245,
|
|
804
|
+
* %NICE_COMPATIBILITY_OC2007 and %NICE_COMPATIBILITY_OC2007R2 compatibility
|
|
805
|
+
* modes.
|
|
806
|
+
* </para>
|
|
807
|
+
* </note>
|
|
808
|
+
*/
|
|
809
|
+
iceTcp?: boolean | null
|
|
810
|
+
/**
|
|
811
|
+
* Whether to perform Trickle ICE as per draft-ietf-ice-trickle-ice-21.
|
|
812
|
+
* When %TRUE, the agent will postpone changing a component state to
|
|
813
|
+
* %NICE_COMPONENT_STATE_FAILED until nice_agent_peer_candidate_gathering_done()
|
|
814
|
+
* has been called with the ID of the component's stream.
|
|
815
|
+
*/
|
|
816
|
+
iceTrickle?: boolean | null
|
|
817
|
+
/**
|
|
818
|
+
* Whether the agent should use ICE-UDP when gathering candidates.
|
|
819
|
+
* If the option is disabled, no UDP candidates will be generated. If the
|
|
820
|
+
* agent is in reliable mode, then pseudotcp will not be used since pseudotcp
|
|
821
|
+
* works on top of UDP candidates.
|
|
822
|
+
* <para>
|
|
823
|
+
* This option should be set before gathering candidates and should not be
|
|
824
|
+
* modified afterwards.
|
|
825
|
+
* </para>
|
|
826
|
+
* The #NiceAgent:ice-udp property can be set at the same time as the
|
|
827
|
+
* #NiceAgent:ice-tcp property, but both cannot be unset at the same time.
|
|
828
|
+
* If #NiceAgent:ice-tcp is set to %FALSE, then this property cannot be set
|
|
829
|
+
* to %FALSE as well.
|
|
830
|
+
*/
|
|
831
|
+
iceUdp?: boolean | null
|
|
832
|
+
/**
|
|
833
|
+
* A final timeout in msec, launched when the agent becomes idle,
|
|
834
|
+
* before stopping its activity.
|
|
835
|
+
*
|
|
836
|
+
* This timer will delay the decision to set a component as failed.
|
|
837
|
+
* This delay is added to reduce the chance to see the agent receiving
|
|
838
|
+
* new stun activity just after the conncheck list has been declared
|
|
839
|
+
* failed (some valid pairs, no nominated pair, and no in-progress
|
|
840
|
+
* pairs), reactiviting conncheck activity, and causing a (valid)
|
|
841
|
+
* state transitions like that: connecting -> failed -> connecting ->
|
|
842
|
+
* connected -> ready. Such transitions are not buggy per-se, but may
|
|
843
|
+
* break the test-suite, that counts precisely the number of time each
|
|
844
|
+
* state has been set, and doesnt expect these transcient failed
|
|
845
|
+
* states.
|
|
846
|
+
*
|
|
847
|
+
* This timer is also useful when the agent is in controlled mode and
|
|
848
|
+
* the other controlling peer takes some time to elect its nominated
|
|
849
|
+
* pair (this may be the case for SfB peers).
|
|
850
|
+
*
|
|
851
|
+
* This timer is *NOT* part if the RFC5245, as this situation is not
|
|
852
|
+
* covered in sect 8.1.2 "Updating States", but deals with a real
|
|
853
|
+
* use-case, where a controlled agent can not wait forever for the
|
|
854
|
+
* other peer to make a nomination decision.
|
|
855
|
+
*
|
|
856
|
+
* Also note that the value of this timeout will not delay the
|
|
857
|
+
* emission of 'connected' and 'ready' agent signals, and will not
|
|
858
|
+
* slow down the behaviour of the agent when the peer agent works
|
|
859
|
+
* in a timely manner.
|
|
860
|
+
*/
|
|
861
|
+
idleTimeout?: number | null
|
|
862
|
+
/**
|
|
863
|
+
* Use binding requests as keepalives instead of binding
|
|
864
|
+
* indications. This means that the keepalives may time out which
|
|
865
|
+
* will change the component state to %NICE_COMPONENT_STATE_FAILED.
|
|
866
|
+
*
|
|
867
|
+
* Enabing this is a slight violation of RFC 5245 section 10 which
|
|
868
|
+
* recommends using Binding Indications for keepalives.
|
|
869
|
+
*
|
|
870
|
+
* This is always enabled if the compatibility mode is
|
|
871
|
+
* %NICE_COMPATIBILITY_GOOGLE.
|
|
872
|
+
*
|
|
873
|
+
* This is always enabled if the 'consent-freshness' property is %TRUE
|
|
874
|
+
*/
|
|
875
|
+
keepaliveConncheck?: boolean | null
|
|
876
|
+
/**
|
|
877
|
+
* A GLib main context is needed for all timeouts used by libnice.
|
|
878
|
+
* This is a property being set by the nice_agent_new() call.
|
|
879
|
+
*/
|
|
880
|
+
mainContext?: any | null
|
|
881
|
+
maxConnectivityChecks?: number | null
|
|
882
|
+
/**
|
|
883
|
+
* The proxy server IP used to bypass a proxy firewall
|
|
884
|
+
*/
|
|
885
|
+
proxyIp?: string | null
|
|
886
|
+
/**
|
|
887
|
+
* The password used to authenticate with the proxy
|
|
888
|
+
*/
|
|
889
|
+
proxyPassword?: string | null
|
|
890
|
+
/**
|
|
891
|
+
* The proxy server port used to bypass a proxy firewall
|
|
892
|
+
*/
|
|
893
|
+
proxyPort?: number | null
|
|
894
|
+
/**
|
|
895
|
+
* The type of proxy set in the proxy-ip property
|
|
896
|
+
*/
|
|
897
|
+
proxyType?: number | null
|
|
898
|
+
/**
|
|
899
|
+
* The username used to authenticate with the proxy
|
|
900
|
+
*/
|
|
901
|
+
proxyUsername?: string | null
|
|
902
|
+
/**
|
|
903
|
+
* The initial timeout (msecs) of the STUN binding requests
|
|
904
|
+
* used in the gathering stage, to find our local candidates.
|
|
905
|
+
* This property is described as 'RTO' in the RFC 5389 and RFC 5245.
|
|
906
|
+
* This timeout is doubled for each retransmission, until
|
|
907
|
+
* #NiceAgent:stun-max-retransmissions have been done,
|
|
908
|
+
* with an exception for the last restransmission, where the timeout is
|
|
909
|
+
* divided by two instead (RFC 5389 indicates that a customisable
|
|
910
|
+
* multiplier 'Rm' to 'RTO' should be used).
|
|
911
|
+
*/
|
|
912
|
+
stunInitialTimeout?: number | null
|
|
913
|
+
/**
|
|
914
|
+
* The maximum number of retransmissions of the STUN binding requests
|
|
915
|
+
* used in the gathering stage, to find our local candidates, and used
|
|
916
|
+
* in the connection check stage, to test the validity of each
|
|
917
|
+
* constructed pair. This property is described as 'Rc' in the RFC
|
|
918
|
+
* 5389, with a default value of 7. The timeout of each STUN request
|
|
919
|
+
* is doubled for each retransmission, so the choice of this value has
|
|
920
|
+
* a direct impact on the time needed to move from the CONNECTED state
|
|
921
|
+
* to the READY state, and on the time needed to complete the GATHERING
|
|
922
|
+
* state.
|
|
923
|
+
*/
|
|
924
|
+
stunMaxRetransmissions?: number | null
|
|
925
|
+
stunPacingTimer?: number | null
|
|
926
|
+
/**
|
|
927
|
+
* The initial timeout of the STUN binding requests used
|
|
928
|
+
* for a reliable timer.
|
|
929
|
+
*/
|
|
930
|
+
stunReliableTimeout?: number | null
|
|
931
|
+
stunServer?: string | null
|
|
932
|
+
stunServerPort?: number | null
|
|
933
|
+
/**
|
|
934
|
+
* Support RENOMINATION STUN attribute proposed here:
|
|
935
|
+
* https://tools.ietf.org/html/draft-thatcher-ice-renomination-00 As
|
|
936
|
+
* soon as RENOMINATION attribute is received from remote
|
|
937
|
+
* candidate's address, corresponding candidates pair gets
|
|
938
|
+
* selected. This is specific to Google Chrome/libWebRTC.
|
|
939
|
+
*/
|
|
940
|
+
supportRenomination?: boolean | null
|
|
941
|
+
/**
|
|
942
|
+
* The maximum amount of time (in milliseconds) to wait for UPnP discovery to
|
|
943
|
+
* finish before signaling the #NiceAgent::candidate-gathering-done signal
|
|
944
|
+
*/
|
|
945
|
+
upnpTimeout?: number | null
|
|
763
946
|
}
|
|
764
947
|
|
|
765
948
|
}
|
|
@@ -790,6 +973,28 @@ export interface Agent {
|
|
|
790
973
|
* </para>
|
|
791
974
|
*/
|
|
792
975
|
readonly bytestream_tcp: boolean
|
|
976
|
+
/**
|
|
977
|
+
* This property defines whether receive/send over a TCP or pseudo-TCP, in
|
|
978
|
+
* reliable mode, are considered as packetized or as bytestream.
|
|
979
|
+
* In unreliable mode, every send/recv is considered as packetized, and
|
|
980
|
+
* this property is ignored and cannot be set.
|
|
981
|
+
* <para>
|
|
982
|
+
* In reliable mode, this property will always return %TRUE in the
|
|
983
|
+
* %NICE_COMPATIBILITY_GOOGLE compatibility mode.
|
|
984
|
+
* </para>
|
|
985
|
+
* If the property is %TRUE, the stream is considered in bytestream mode
|
|
986
|
+
* and data can be read with any receive size. If the property is %FALSE, then
|
|
987
|
+
* the stream is considred packetized and each receive will return one packet
|
|
988
|
+
* of the same size as what was sent from the peer. If in packetized mode,
|
|
989
|
+
* then doing a receive with a size smaller than the packet, will cause the
|
|
990
|
+
* remaining bytes in the packet to be dropped, breaking the reliability
|
|
991
|
+
* of the stream.
|
|
992
|
+
* <para>
|
|
993
|
+
* This property is currently read-only, and will become read/write once
|
|
994
|
+
* bytestream mode will be supported.
|
|
995
|
+
* </para>
|
|
996
|
+
*/
|
|
997
|
+
readonly bytestreamTcp: boolean
|
|
793
998
|
/**
|
|
794
999
|
* The Nice agent can work in various compatibility modes depending on
|
|
795
1000
|
* what the application/peer needs.
|
|
@@ -807,12 +1012,29 @@ export interface Agent {
|
|
|
807
1012
|
* be %TRUE as well.
|
|
808
1013
|
*/
|
|
809
1014
|
readonly consent_freshness: boolean
|
|
1015
|
+
/**
|
|
1016
|
+
* Whether to perform periodic consent freshness checks as specified in
|
|
1017
|
+
* RFC 7675. When %TRUE, the agent will periodically send binding requests
|
|
1018
|
+
* to the peer to maintain the consent to send with the peer. On receipt
|
|
1019
|
+
* of any authenticated error response, a component will immediately move
|
|
1020
|
+
* to the failed state.
|
|
1021
|
+
*
|
|
1022
|
+
* Setting this property to %TRUE implies that 'keepalive-conncheck' should
|
|
1023
|
+
* be %TRUE as well.
|
|
1024
|
+
*/
|
|
1025
|
+
readonly consentFreshness: boolean
|
|
810
1026
|
/**
|
|
811
1027
|
* Whether the agent has the controlling role. This property should
|
|
812
1028
|
* be modified before gathering candidates, any modification occuring
|
|
813
1029
|
* later will be hold until ICE is restarted.
|
|
814
1030
|
*/
|
|
815
1031
|
controlling_mode: boolean
|
|
1032
|
+
/**
|
|
1033
|
+
* Whether the agent has the controlling role. This property should
|
|
1034
|
+
* be modified before gathering candidates, any modification occuring
|
|
1035
|
+
* later will be hold until ICE is restarted.
|
|
1036
|
+
*/
|
|
1037
|
+
controllingMode: boolean
|
|
816
1038
|
/**
|
|
817
1039
|
* Force all traffic to go through a relay for added privacy, this
|
|
818
1040
|
* allows hiding the local IP address. When this is enabled, so
|
|
@@ -820,7 +1042,15 @@ export interface Agent {
|
|
|
820
1042
|
* with nice_agent_set_relay_info().
|
|
821
1043
|
*/
|
|
822
1044
|
force_relay: boolean
|
|
1045
|
+
/**
|
|
1046
|
+
* Force all traffic to go through a relay for added privacy, this
|
|
1047
|
+
* allows hiding the local IP address. When this is enabled, so
|
|
1048
|
+
* local candidates are available before relay servers have been set
|
|
1049
|
+
* with nice_agent_set_relay_info().
|
|
1050
|
+
*/
|
|
1051
|
+
forceRelay: boolean
|
|
823
1052
|
readonly full_mode: boolean
|
|
1053
|
+
readonly fullMode: boolean
|
|
824
1054
|
/**
|
|
825
1055
|
* Whether the agent should use ICE-TCP when gathering candidates.
|
|
826
1056
|
* If the option is disabled, no TCP candidates will be generated. If the
|
|
@@ -843,6 +1073,28 @@ export interface Agent {
|
|
|
843
1073
|
* </note>
|
|
844
1074
|
*/
|
|
845
1075
|
ice_tcp: boolean
|
|
1076
|
+
/**
|
|
1077
|
+
* Whether the agent should use ICE-TCP when gathering candidates.
|
|
1078
|
+
* If the option is disabled, no TCP candidates will be generated. If the
|
|
1079
|
+
* agent is in reliable mode, then pseudotcp will need to be used over UDP
|
|
1080
|
+
* candidates.
|
|
1081
|
+
* <para>
|
|
1082
|
+
* This option should be set before gathering candidates and should not be
|
|
1083
|
+
* modified afterwards.
|
|
1084
|
+
* </para>
|
|
1085
|
+
* The #NiceAgent:ice-tcp property can be set at the same time as the
|
|
1086
|
+
* #NiceAgent:ice-udp property, but both cannot be unset at the same time.
|
|
1087
|
+
* If #NiceAgent:ice-udp is set to %FALSE, then this property cannot be set
|
|
1088
|
+
* to %FALSE as well.
|
|
1089
|
+
* <note>
|
|
1090
|
+
* <para>
|
|
1091
|
+
* ICE-TCP is only supported for %NICE_COMPATIBILITY_RFC5245,
|
|
1092
|
+
* %NICE_COMPATIBILITY_OC2007 and %NICE_COMPATIBILITY_OC2007R2 compatibility
|
|
1093
|
+
* modes.
|
|
1094
|
+
* </para>
|
|
1095
|
+
* </note>
|
|
1096
|
+
*/
|
|
1097
|
+
iceTcp: boolean
|
|
846
1098
|
/**
|
|
847
1099
|
* Whether to perform Trickle ICE as per draft-ietf-ice-trickle-ice-21.
|
|
848
1100
|
* When %TRUE, the agent will postpone changing a component state to
|
|
@@ -850,6 +1102,13 @@ export interface Agent {
|
|
|
850
1102
|
* has been called with the ID of the component's stream.
|
|
851
1103
|
*/
|
|
852
1104
|
ice_trickle: boolean
|
|
1105
|
+
/**
|
|
1106
|
+
* Whether to perform Trickle ICE as per draft-ietf-ice-trickle-ice-21.
|
|
1107
|
+
* When %TRUE, the agent will postpone changing a component state to
|
|
1108
|
+
* %NICE_COMPONENT_STATE_FAILED until nice_agent_peer_candidate_gathering_done()
|
|
1109
|
+
* has been called with the ID of the component's stream.
|
|
1110
|
+
*/
|
|
1111
|
+
iceTrickle: boolean
|
|
853
1112
|
/**
|
|
854
1113
|
* Whether the agent should use ICE-UDP when gathering candidates.
|
|
855
1114
|
* If the option is disabled, no UDP candidates will be generated. If the
|
|
@@ -865,6 +1124,21 @@ export interface Agent {
|
|
|
865
1124
|
* to %FALSE as well.
|
|
866
1125
|
*/
|
|
867
1126
|
ice_udp: boolean
|
|
1127
|
+
/**
|
|
1128
|
+
* Whether the agent should use ICE-UDP when gathering candidates.
|
|
1129
|
+
* If the option is disabled, no UDP candidates will be generated. If the
|
|
1130
|
+
* agent is in reliable mode, then pseudotcp will not be used since pseudotcp
|
|
1131
|
+
* works on top of UDP candidates.
|
|
1132
|
+
* <para>
|
|
1133
|
+
* This option should be set before gathering candidates and should not be
|
|
1134
|
+
* modified afterwards.
|
|
1135
|
+
* </para>
|
|
1136
|
+
* The #NiceAgent:ice-udp property can be set at the same time as the
|
|
1137
|
+
* #NiceAgent:ice-tcp property, but both cannot be unset at the same time.
|
|
1138
|
+
* If #NiceAgent:ice-tcp is set to %FALSE, then this property cannot be set
|
|
1139
|
+
* to %FALSE as well.
|
|
1140
|
+
*/
|
|
1141
|
+
iceUdp: boolean
|
|
868
1142
|
/**
|
|
869
1143
|
* A final timeout in msec, launched when the agent becomes idle,
|
|
870
1144
|
* before stopping its activity.
|
|
@@ -895,6 +1169,36 @@ export interface Agent {
|
|
|
895
1169
|
* in a timely manner.
|
|
896
1170
|
*/
|
|
897
1171
|
idle_timeout: number
|
|
1172
|
+
/**
|
|
1173
|
+
* A final timeout in msec, launched when the agent becomes idle,
|
|
1174
|
+
* before stopping its activity.
|
|
1175
|
+
*
|
|
1176
|
+
* This timer will delay the decision to set a component as failed.
|
|
1177
|
+
* This delay is added to reduce the chance to see the agent receiving
|
|
1178
|
+
* new stun activity just after the conncheck list has been declared
|
|
1179
|
+
* failed (some valid pairs, no nominated pair, and no in-progress
|
|
1180
|
+
* pairs), reactiviting conncheck activity, and causing a (valid)
|
|
1181
|
+
* state transitions like that: connecting -> failed -> connecting ->
|
|
1182
|
+
* connected -> ready. Such transitions are not buggy per-se, but may
|
|
1183
|
+
* break the test-suite, that counts precisely the number of time each
|
|
1184
|
+
* state has been set, and doesnt expect these transcient failed
|
|
1185
|
+
* states.
|
|
1186
|
+
*
|
|
1187
|
+
* This timer is also useful when the agent is in controlled mode and
|
|
1188
|
+
* the other controlling peer takes some time to elect its nominated
|
|
1189
|
+
* pair (this may be the case for SfB peers).
|
|
1190
|
+
*
|
|
1191
|
+
* This timer is *NOT* part if the RFC5245, as this situation is not
|
|
1192
|
+
* covered in sect 8.1.2 "Updating States", but deals with a real
|
|
1193
|
+
* use-case, where a controlled agent can not wait forever for the
|
|
1194
|
+
* other peer to make a nomination decision.
|
|
1195
|
+
*
|
|
1196
|
+
* Also note that the value of this timeout will not delay the
|
|
1197
|
+
* emission of 'connected' and 'ready' agent signals, and will not
|
|
1198
|
+
* slow down the behaviour of the agent when the peer agent works
|
|
1199
|
+
* in a timely manner.
|
|
1200
|
+
*/
|
|
1201
|
+
idleTimeout: number
|
|
898
1202
|
/**
|
|
899
1203
|
* Use binding requests as keepalives instead of binding
|
|
900
1204
|
* indications. This means that the keepalives may time out which
|
|
@@ -909,32 +1213,72 @@ export interface Agent {
|
|
|
909
1213
|
* This is always enabled if the 'consent-freshness' property is %TRUE
|
|
910
1214
|
*/
|
|
911
1215
|
keepalive_conncheck: boolean
|
|
1216
|
+
/**
|
|
1217
|
+
* Use binding requests as keepalives instead of binding
|
|
1218
|
+
* indications. This means that the keepalives may time out which
|
|
1219
|
+
* will change the component state to %NICE_COMPONENT_STATE_FAILED.
|
|
1220
|
+
*
|
|
1221
|
+
* Enabing this is a slight violation of RFC 5245 section 10 which
|
|
1222
|
+
* recommends using Binding Indications for keepalives.
|
|
1223
|
+
*
|
|
1224
|
+
* This is always enabled if the compatibility mode is
|
|
1225
|
+
* %NICE_COMPATIBILITY_GOOGLE.
|
|
1226
|
+
*
|
|
1227
|
+
* This is always enabled if the 'consent-freshness' property is %TRUE
|
|
1228
|
+
*/
|
|
1229
|
+
keepaliveConncheck: boolean
|
|
912
1230
|
/**
|
|
913
1231
|
* A GLib main context is needed for all timeouts used by libnice.
|
|
914
1232
|
* This is a property being set by the nice_agent_new() call.
|
|
915
1233
|
*/
|
|
916
1234
|
readonly main_context: any
|
|
1235
|
+
/**
|
|
1236
|
+
* A GLib main context is needed for all timeouts used by libnice.
|
|
1237
|
+
* This is a property being set by the nice_agent_new() call.
|
|
1238
|
+
*/
|
|
1239
|
+
readonly mainContext: any
|
|
917
1240
|
max_connectivity_checks: number
|
|
1241
|
+
maxConnectivityChecks: number
|
|
918
1242
|
/**
|
|
919
1243
|
* The proxy server IP used to bypass a proxy firewall
|
|
920
1244
|
*/
|
|
921
1245
|
proxy_ip: string | null
|
|
1246
|
+
/**
|
|
1247
|
+
* The proxy server IP used to bypass a proxy firewall
|
|
1248
|
+
*/
|
|
1249
|
+
proxyIp: string | null
|
|
922
1250
|
/**
|
|
923
1251
|
* The password used to authenticate with the proxy
|
|
924
1252
|
*/
|
|
925
1253
|
proxy_password: string | null
|
|
1254
|
+
/**
|
|
1255
|
+
* The password used to authenticate with the proxy
|
|
1256
|
+
*/
|
|
1257
|
+
proxyPassword: string | null
|
|
926
1258
|
/**
|
|
927
1259
|
* The proxy server port used to bypass a proxy firewall
|
|
928
1260
|
*/
|
|
929
1261
|
proxy_port: number
|
|
1262
|
+
/**
|
|
1263
|
+
* The proxy server port used to bypass a proxy firewall
|
|
1264
|
+
*/
|
|
1265
|
+
proxyPort: number
|
|
930
1266
|
/**
|
|
931
1267
|
* The type of proxy set in the proxy-ip property
|
|
932
1268
|
*/
|
|
933
1269
|
proxy_type: number
|
|
1270
|
+
/**
|
|
1271
|
+
* The type of proxy set in the proxy-ip property
|
|
1272
|
+
*/
|
|
1273
|
+
proxyType: number
|
|
934
1274
|
/**
|
|
935
1275
|
* The username used to authenticate with the proxy
|
|
936
1276
|
*/
|
|
937
1277
|
proxy_username: string | null
|
|
1278
|
+
/**
|
|
1279
|
+
* The username used to authenticate with the proxy
|
|
1280
|
+
*/
|
|
1281
|
+
proxyUsername: string | null
|
|
938
1282
|
/**
|
|
939
1283
|
* Whether the agent is providing a reliable transport of messages (through
|
|
940
1284
|
* ICE-TCP or PseudoTCP over ICE-UDP)
|
|
@@ -951,6 +1295,17 @@ export interface Agent {
|
|
|
951
1295
|
* multiplier 'Rm' to 'RTO' should be used).
|
|
952
1296
|
*/
|
|
953
1297
|
stun_initial_timeout: number
|
|
1298
|
+
/**
|
|
1299
|
+
* The initial timeout (msecs) of the STUN binding requests
|
|
1300
|
+
* used in the gathering stage, to find our local candidates.
|
|
1301
|
+
* This property is described as 'RTO' in the RFC 5389 and RFC 5245.
|
|
1302
|
+
* This timeout is doubled for each retransmission, until
|
|
1303
|
+
* #NiceAgent:stun-max-retransmissions have been done,
|
|
1304
|
+
* with an exception for the last restransmission, where the timeout is
|
|
1305
|
+
* divided by two instead (RFC 5389 indicates that a customisable
|
|
1306
|
+
* multiplier 'Rm' to 'RTO' should be used).
|
|
1307
|
+
*/
|
|
1308
|
+
stunInitialTimeout: number
|
|
954
1309
|
/**
|
|
955
1310
|
* The maximum number of retransmissions of the STUN binding requests
|
|
956
1311
|
* used in the gathering stage, to find our local candidates, and used
|
|
@@ -963,14 +1318,34 @@ export interface Agent {
|
|
|
963
1318
|
* state.
|
|
964
1319
|
*/
|
|
965
1320
|
stun_max_retransmissions: number
|
|
1321
|
+
/**
|
|
1322
|
+
* The maximum number of retransmissions of the STUN binding requests
|
|
1323
|
+
* used in the gathering stage, to find our local candidates, and used
|
|
1324
|
+
* in the connection check stage, to test the validity of each
|
|
1325
|
+
* constructed pair. This property is described as 'Rc' in the RFC
|
|
1326
|
+
* 5389, with a default value of 7. The timeout of each STUN request
|
|
1327
|
+
* is doubled for each retransmission, so the choice of this value has
|
|
1328
|
+
* a direct impact on the time needed to move from the CONNECTED state
|
|
1329
|
+
* to the READY state, and on the time needed to complete the GATHERING
|
|
1330
|
+
* state.
|
|
1331
|
+
*/
|
|
1332
|
+
stunMaxRetransmissions: number
|
|
966
1333
|
stun_pacing_timer: number
|
|
1334
|
+
stunPacingTimer: number
|
|
967
1335
|
/**
|
|
968
1336
|
* The initial timeout of the STUN binding requests used
|
|
969
1337
|
* for a reliable timer.
|
|
970
1338
|
*/
|
|
971
1339
|
stun_reliable_timeout: number
|
|
1340
|
+
/**
|
|
1341
|
+
* The initial timeout of the STUN binding requests used
|
|
1342
|
+
* for a reliable timer.
|
|
1343
|
+
*/
|
|
1344
|
+
stunReliableTimeout: number
|
|
972
1345
|
stun_server: string | null
|
|
1346
|
+
stunServer: string | null
|
|
973
1347
|
stun_server_port: number
|
|
1348
|
+
stunServerPort: number
|
|
974
1349
|
/**
|
|
975
1350
|
* Support RENOMINATION STUN attribute proposed here:
|
|
976
1351
|
* https://tools.ietf.org/html/draft-thatcher-ice-renomination-00 As
|
|
@@ -979,6 +1354,14 @@ export interface Agent {
|
|
|
979
1354
|
* selected. This is specific to Google Chrome/libWebRTC.
|
|
980
1355
|
*/
|
|
981
1356
|
support_renomination: boolean
|
|
1357
|
+
/**
|
|
1358
|
+
* Support RENOMINATION STUN attribute proposed here:
|
|
1359
|
+
* https://tools.ietf.org/html/draft-thatcher-ice-renomination-00 As
|
|
1360
|
+
* soon as RENOMINATION attribute is received from remote
|
|
1361
|
+
* candidate's address, corresponding candidates pair gets
|
|
1362
|
+
* selected. This is specific to Google Chrome/libWebRTC.
|
|
1363
|
+
*/
|
|
1364
|
+
supportRenomination: boolean
|
|
982
1365
|
/**
|
|
983
1366
|
* Whether the agent should use UPnP to open a port in the router and
|
|
984
1367
|
* get the external IP
|
|
@@ -989,6 +1372,11 @@ export interface Agent {
|
|
|
989
1372
|
* finish before signaling the #NiceAgent::candidate-gathering-done signal
|
|
990
1373
|
*/
|
|
991
1374
|
upnp_timeout: number
|
|
1375
|
+
/**
|
|
1376
|
+
* The maximum amount of time (in milliseconds) to wait for UPnP discovery to
|
|
1377
|
+
* finish before signaling the #NiceAgent::candidate-gathering-done signal
|
|
1378
|
+
*/
|
|
1379
|
+
upnpTimeout: number
|
|
992
1380
|
|
|
993
1381
|
// Owm methods of Nice-0.1.Nice.Agent
|
|
994
1382
|
|
|
@@ -1881,6 +2269,21 @@ export module PseudoTcpSocket {
|
|
|
1881
2269
|
* Support is enabled by default.
|
|
1882
2270
|
*/
|
|
1883
2271
|
support_fin_ack?: boolean | null
|
|
2272
|
+
ackDelay?: number | null
|
|
2273
|
+
noDelay?: boolean | null
|
|
2274
|
+
rcvBuf?: number | null
|
|
2275
|
+
sndBuf?: number | null
|
|
2276
|
+
/**
|
|
2277
|
+
* Whether to support the FIN–ACK extension to the pseudo-TCP protocol for
|
|
2278
|
+
* this socket. The extension is only compatible with other libnice pseudo-TCP
|
|
2279
|
+
* stacks, and not with Jingle pseudo-TCP stacks. If enabled, support is
|
|
2280
|
+
* negotiatied on connection setup, so it is safe for a #PseudoTcpSocket with
|
|
2281
|
+
* support enabled to be used with one with it disabled, or with a Jingle
|
|
2282
|
+
* pseudo-TCP socket which doesn’t support it at all.
|
|
2283
|
+
*
|
|
2284
|
+
* Support is enabled by default.
|
|
2285
|
+
*/
|
|
2286
|
+
supportFinAck?: boolean | null
|
|
1884
2287
|
}
|
|
1885
2288
|
|
|
1886
2289
|
}
|
|
@@ -1890,11 +2293,15 @@ export interface PseudoTcpSocket {
|
|
|
1890
2293
|
// Own properties of Nice-0.1.Nice.PseudoTcpSocket
|
|
1891
2294
|
|
|
1892
2295
|
ack_delay: number
|
|
2296
|
+
ackDelay: number
|
|
1893
2297
|
callbacks: any
|
|
1894
2298
|
readonly conversation: number
|
|
1895
2299
|
no_delay: boolean
|
|
2300
|
+
noDelay: boolean
|
|
1896
2301
|
rcv_buf: number
|
|
2302
|
+
rcvBuf: number
|
|
1897
2303
|
snd_buf: number
|
|
2304
|
+
sndBuf: number
|
|
1898
2305
|
readonly state: number
|
|
1899
2306
|
/**
|
|
1900
2307
|
* Whether to support the FIN–ACK extension to the pseudo-TCP protocol for
|
|
@@ -1907,6 +2314,17 @@ export interface PseudoTcpSocket {
|
|
|
1907
2314
|
* Support is enabled by default.
|
|
1908
2315
|
*/
|
|
1909
2316
|
readonly support_fin_ack: boolean
|
|
2317
|
+
/**
|
|
2318
|
+
* Whether to support the FIN–ACK extension to the pseudo-TCP protocol for
|
|
2319
|
+
* this socket. The extension is only compatible with other libnice pseudo-TCP
|
|
2320
|
+
* stacks, and not with Jingle pseudo-TCP stacks. If enabled, support is
|
|
2321
|
+
* negotiatied on connection setup, so it is safe for a #PseudoTcpSocket with
|
|
2322
|
+
* support enabled to be used with one with it disabled, or with a Jingle
|
|
2323
|
+
* pseudo-TCP socket which doesn’t support it at all.
|
|
2324
|
+
*
|
|
2325
|
+
* Support is enabled by default.
|
|
2326
|
+
*/
|
|
2327
|
+
readonly supportFinAck: boolean
|
|
1910
2328
|
|
|
1911
2329
|
// Owm methods of Nice-0.1.Nice.PseudoTcpSocket
|
|
1912
2330
|
|
package/nice-0.1.d.ts
CHANGED
|
@@ -762,6 +762,189 @@ module Agent {
|
|
|
762
762
|
* finish before signaling the #NiceAgent::candidate-gathering-done signal
|
|
763
763
|
*/
|
|
764
764
|
upnp_timeout?: number | null
|
|
765
|
+
/**
|
|
766
|
+
* Whether to perform periodic consent freshness checks as specified in
|
|
767
|
+
* RFC 7675. When %TRUE, the agent will periodically send binding requests
|
|
768
|
+
* to the peer to maintain the consent to send with the peer. On receipt
|
|
769
|
+
* of any authenticated error response, a component will immediately move
|
|
770
|
+
* to the failed state.
|
|
771
|
+
*
|
|
772
|
+
* Setting this property to %TRUE implies that 'keepalive-conncheck' should
|
|
773
|
+
* be %TRUE as well.
|
|
774
|
+
*/
|
|
775
|
+
consentFreshness?: boolean | null
|
|
776
|
+
/**
|
|
777
|
+
* Whether the agent has the controlling role. This property should
|
|
778
|
+
* be modified before gathering candidates, any modification occuring
|
|
779
|
+
* later will be hold until ICE is restarted.
|
|
780
|
+
*/
|
|
781
|
+
controllingMode?: boolean | null
|
|
782
|
+
/**
|
|
783
|
+
* Force all traffic to go through a relay for added privacy, this
|
|
784
|
+
* allows hiding the local IP address. When this is enabled, so
|
|
785
|
+
* local candidates are available before relay servers have been set
|
|
786
|
+
* with nice_agent_set_relay_info().
|
|
787
|
+
*/
|
|
788
|
+
forceRelay?: boolean | null
|
|
789
|
+
fullMode?: boolean | null
|
|
790
|
+
/**
|
|
791
|
+
* Whether the agent should use ICE-TCP when gathering candidates.
|
|
792
|
+
* If the option is disabled, no TCP candidates will be generated. If the
|
|
793
|
+
* agent is in reliable mode, then pseudotcp will need to be used over UDP
|
|
794
|
+
* candidates.
|
|
795
|
+
* <para>
|
|
796
|
+
* This option should be set before gathering candidates and should not be
|
|
797
|
+
* modified afterwards.
|
|
798
|
+
* </para>
|
|
799
|
+
* The #NiceAgent:ice-tcp property can be set at the same time as the
|
|
800
|
+
* #NiceAgent:ice-udp property, but both cannot be unset at the same time.
|
|
801
|
+
* If #NiceAgent:ice-udp is set to %FALSE, then this property cannot be set
|
|
802
|
+
* to %FALSE as well.
|
|
803
|
+
* <note>
|
|
804
|
+
* <para>
|
|
805
|
+
* ICE-TCP is only supported for %NICE_COMPATIBILITY_RFC5245,
|
|
806
|
+
* %NICE_COMPATIBILITY_OC2007 and %NICE_COMPATIBILITY_OC2007R2 compatibility
|
|
807
|
+
* modes.
|
|
808
|
+
* </para>
|
|
809
|
+
* </note>
|
|
810
|
+
*/
|
|
811
|
+
iceTcp?: boolean | null
|
|
812
|
+
/**
|
|
813
|
+
* Whether to perform Trickle ICE as per draft-ietf-ice-trickle-ice-21.
|
|
814
|
+
* When %TRUE, the agent will postpone changing a component state to
|
|
815
|
+
* %NICE_COMPONENT_STATE_FAILED until nice_agent_peer_candidate_gathering_done()
|
|
816
|
+
* has been called with the ID of the component's stream.
|
|
817
|
+
*/
|
|
818
|
+
iceTrickle?: boolean | null
|
|
819
|
+
/**
|
|
820
|
+
* Whether the agent should use ICE-UDP when gathering candidates.
|
|
821
|
+
* If the option is disabled, no UDP candidates will be generated. If the
|
|
822
|
+
* agent is in reliable mode, then pseudotcp will not be used since pseudotcp
|
|
823
|
+
* works on top of UDP candidates.
|
|
824
|
+
* <para>
|
|
825
|
+
* This option should be set before gathering candidates and should not be
|
|
826
|
+
* modified afterwards.
|
|
827
|
+
* </para>
|
|
828
|
+
* The #NiceAgent:ice-udp property can be set at the same time as the
|
|
829
|
+
* #NiceAgent:ice-tcp property, but both cannot be unset at the same time.
|
|
830
|
+
* If #NiceAgent:ice-tcp is set to %FALSE, then this property cannot be set
|
|
831
|
+
* to %FALSE as well.
|
|
832
|
+
*/
|
|
833
|
+
iceUdp?: boolean | null
|
|
834
|
+
/**
|
|
835
|
+
* A final timeout in msec, launched when the agent becomes idle,
|
|
836
|
+
* before stopping its activity.
|
|
837
|
+
*
|
|
838
|
+
* This timer will delay the decision to set a component as failed.
|
|
839
|
+
* This delay is added to reduce the chance to see the agent receiving
|
|
840
|
+
* new stun activity just after the conncheck list has been declared
|
|
841
|
+
* failed (some valid pairs, no nominated pair, and no in-progress
|
|
842
|
+
* pairs), reactiviting conncheck activity, and causing a (valid)
|
|
843
|
+
* state transitions like that: connecting -> failed -> connecting ->
|
|
844
|
+
* connected -> ready. Such transitions are not buggy per-se, but may
|
|
845
|
+
* break the test-suite, that counts precisely the number of time each
|
|
846
|
+
* state has been set, and doesnt expect these transcient failed
|
|
847
|
+
* states.
|
|
848
|
+
*
|
|
849
|
+
* This timer is also useful when the agent is in controlled mode and
|
|
850
|
+
* the other controlling peer takes some time to elect its nominated
|
|
851
|
+
* pair (this may be the case for SfB peers).
|
|
852
|
+
*
|
|
853
|
+
* This timer is *NOT* part if the RFC5245, as this situation is not
|
|
854
|
+
* covered in sect 8.1.2 "Updating States", but deals with a real
|
|
855
|
+
* use-case, where a controlled agent can not wait forever for the
|
|
856
|
+
* other peer to make a nomination decision.
|
|
857
|
+
*
|
|
858
|
+
* Also note that the value of this timeout will not delay the
|
|
859
|
+
* emission of 'connected' and 'ready' agent signals, and will not
|
|
860
|
+
* slow down the behaviour of the agent when the peer agent works
|
|
861
|
+
* in a timely manner.
|
|
862
|
+
*/
|
|
863
|
+
idleTimeout?: number | null
|
|
864
|
+
/**
|
|
865
|
+
* Use binding requests as keepalives instead of binding
|
|
866
|
+
* indications. This means that the keepalives may time out which
|
|
867
|
+
* will change the component state to %NICE_COMPONENT_STATE_FAILED.
|
|
868
|
+
*
|
|
869
|
+
* Enabing this is a slight violation of RFC 5245 section 10 which
|
|
870
|
+
* recommends using Binding Indications for keepalives.
|
|
871
|
+
*
|
|
872
|
+
* This is always enabled if the compatibility mode is
|
|
873
|
+
* %NICE_COMPATIBILITY_GOOGLE.
|
|
874
|
+
*
|
|
875
|
+
* This is always enabled if the 'consent-freshness' property is %TRUE
|
|
876
|
+
*/
|
|
877
|
+
keepaliveConncheck?: boolean | null
|
|
878
|
+
/**
|
|
879
|
+
* A GLib main context is needed for all timeouts used by libnice.
|
|
880
|
+
* This is a property being set by the nice_agent_new() call.
|
|
881
|
+
*/
|
|
882
|
+
mainContext?: any | null
|
|
883
|
+
maxConnectivityChecks?: number | null
|
|
884
|
+
/**
|
|
885
|
+
* The proxy server IP used to bypass a proxy firewall
|
|
886
|
+
*/
|
|
887
|
+
proxyIp?: string | null
|
|
888
|
+
/**
|
|
889
|
+
* The password used to authenticate with the proxy
|
|
890
|
+
*/
|
|
891
|
+
proxyPassword?: string | null
|
|
892
|
+
/**
|
|
893
|
+
* The proxy server port used to bypass a proxy firewall
|
|
894
|
+
*/
|
|
895
|
+
proxyPort?: number | null
|
|
896
|
+
/**
|
|
897
|
+
* The type of proxy set in the proxy-ip property
|
|
898
|
+
*/
|
|
899
|
+
proxyType?: number | null
|
|
900
|
+
/**
|
|
901
|
+
* The username used to authenticate with the proxy
|
|
902
|
+
*/
|
|
903
|
+
proxyUsername?: string | null
|
|
904
|
+
/**
|
|
905
|
+
* The initial timeout (msecs) of the STUN binding requests
|
|
906
|
+
* used in the gathering stage, to find our local candidates.
|
|
907
|
+
* This property is described as 'RTO' in the RFC 5389 and RFC 5245.
|
|
908
|
+
* This timeout is doubled for each retransmission, until
|
|
909
|
+
* #NiceAgent:stun-max-retransmissions have been done,
|
|
910
|
+
* with an exception for the last restransmission, where the timeout is
|
|
911
|
+
* divided by two instead (RFC 5389 indicates that a customisable
|
|
912
|
+
* multiplier 'Rm' to 'RTO' should be used).
|
|
913
|
+
*/
|
|
914
|
+
stunInitialTimeout?: number | null
|
|
915
|
+
/**
|
|
916
|
+
* The maximum number of retransmissions of the STUN binding requests
|
|
917
|
+
* used in the gathering stage, to find our local candidates, and used
|
|
918
|
+
* in the connection check stage, to test the validity of each
|
|
919
|
+
* constructed pair. This property is described as 'Rc' in the RFC
|
|
920
|
+
* 5389, with a default value of 7. The timeout of each STUN request
|
|
921
|
+
* is doubled for each retransmission, so the choice of this value has
|
|
922
|
+
* a direct impact on the time needed to move from the CONNECTED state
|
|
923
|
+
* to the READY state, and on the time needed to complete the GATHERING
|
|
924
|
+
* state.
|
|
925
|
+
*/
|
|
926
|
+
stunMaxRetransmissions?: number | null
|
|
927
|
+
stunPacingTimer?: number | null
|
|
928
|
+
/**
|
|
929
|
+
* The initial timeout of the STUN binding requests used
|
|
930
|
+
* for a reliable timer.
|
|
931
|
+
*/
|
|
932
|
+
stunReliableTimeout?: number | null
|
|
933
|
+
stunServer?: string | null
|
|
934
|
+
stunServerPort?: number | null
|
|
935
|
+
/**
|
|
936
|
+
* Support RENOMINATION STUN attribute proposed here:
|
|
937
|
+
* https://tools.ietf.org/html/draft-thatcher-ice-renomination-00 As
|
|
938
|
+
* soon as RENOMINATION attribute is received from remote
|
|
939
|
+
* candidate's address, corresponding candidates pair gets
|
|
940
|
+
* selected. This is specific to Google Chrome/libWebRTC.
|
|
941
|
+
*/
|
|
942
|
+
supportRenomination?: boolean | null
|
|
943
|
+
/**
|
|
944
|
+
* The maximum amount of time (in milliseconds) to wait for UPnP discovery to
|
|
945
|
+
* finish before signaling the #NiceAgent::candidate-gathering-done signal
|
|
946
|
+
*/
|
|
947
|
+
upnpTimeout?: number | null
|
|
765
948
|
}
|
|
766
949
|
|
|
767
950
|
}
|
|
@@ -792,6 +975,28 @@ interface Agent {
|
|
|
792
975
|
* </para>
|
|
793
976
|
*/
|
|
794
977
|
readonly bytestream_tcp: boolean
|
|
978
|
+
/**
|
|
979
|
+
* This property defines whether receive/send over a TCP or pseudo-TCP, in
|
|
980
|
+
* reliable mode, are considered as packetized or as bytestream.
|
|
981
|
+
* In unreliable mode, every send/recv is considered as packetized, and
|
|
982
|
+
* this property is ignored and cannot be set.
|
|
983
|
+
* <para>
|
|
984
|
+
* In reliable mode, this property will always return %TRUE in the
|
|
985
|
+
* %NICE_COMPATIBILITY_GOOGLE compatibility mode.
|
|
986
|
+
* </para>
|
|
987
|
+
* If the property is %TRUE, the stream is considered in bytestream mode
|
|
988
|
+
* and data can be read with any receive size. If the property is %FALSE, then
|
|
989
|
+
* the stream is considred packetized and each receive will return one packet
|
|
990
|
+
* of the same size as what was sent from the peer. If in packetized mode,
|
|
991
|
+
* then doing a receive with a size smaller than the packet, will cause the
|
|
992
|
+
* remaining bytes in the packet to be dropped, breaking the reliability
|
|
993
|
+
* of the stream.
|
|
994
|
+
* <para>
|
|
995
|
+
* This property is currently read-only, and will become read/write once
|
|
996
|
+
* bytestream mode will be supported.
|
|
997
|
+
* </para>
|
|
998
|
+
*/
|
|
999
|
+
readonly bytestreamTcp: boolean
|
|
795
1000
|
/**
|
|
796
1001
|
* The Nice agent can work in various compatibility modes depending on
|
|
797
1002
|
* what the application/peer needs.
|
|
@@ -809,12 +1014,29 @@ interface Agent {
|
|
|
809
1014
|
* be %TRUE as well.
|
|
810
1015
|
*/
|
|
811
1016
|
readonly consent_freshness: boolean
|
|
1017
|
+
/**
|
|
1018
|
+
* Whether to perform periodic consent freshness checks as specified in
|
|
1019
|
+
* RFC 7675. When %TRUE, the agent will periodically send binding requests
|
|
1020
|
+
* to the peer to maintain the consent to send with the peer. On receipt
|
|
1021
|
+
* of any authenticated error response, a component will immediately move
|
|
1022
|
+
* to the failed state.
|
|
1023
|
+
*
|
|
1024
|
+
* Setting this property to %TRUE implies that 'keepalive-conncheck' should
|
|
1025
|
+
* be %TRUE as well.
|
|
1026
|
+
*/
|
|
1027
|
+
readonly consentFreshness: boolean
|
|
812
1028
|
/**
|
|
813
1029
|
* Whether the agent has the controlling role. This property should
|
|
814
1030
|
* be modified before gathering candidates, any modification occuring
|
|
815
1031
|
* later will be hold until ICE is restarted.
|
|
816
1032
|
*/
|
|
817
1033
|
controlling_mode: boolean
|
|
1034
|
+
/**
|
|
1035
|
+
* Whether the agent has the controlling role. This property should
|
|
1036
|
+
* be modified before gathering candidates, any modification occuring
|
|
1037
|
+
* later will be hold until ICE is restarted.
|
|
1038
|
+
*/
|
|
1039
|
+
controllingMode: boolean
|
|
818
1040
|
/**
|
|
819
1041
|
* Force all traffic to go through a relay for added privacy, this
|
|
820
1042
|
* allows hiding the local IP address. When this is enabled, so
|
|
@@ -822,7 +1044,15 @@ interface Agent {
|
|
|
822
1044
|
* with nice_agent_set_relay_info().
|
|
823
1045
|
*/
|
|
824
1046
|
force_relay: boolean
|
|
1047
|
+
/**
|
|
1048
|
+
* Force all traffic to go through a relay for added privacy, this
|
|
1049
|
+
* allows hiding the local IP address. When this is enabled, so
|
|
1050
|
+
* local candidates are available before relay servers have been set
|
|
1051
|
+
* with nice_agent_set_relay_info().
|
|
1052
|
+
*/
|
|
1053
|
+
forceRelay: boolean
|
|
825
1054
|
readonly full_mode: boolean
|
|
1055
|
+
readonly fullMode: boolean
|
|
826
1056
|
/**
|
|
827
1057
|
* Whether the agent should use ICE-TCP when gathering candidates.
|
|
828
1058
|
* If the option is disabled, no TCP candidates will be generated. If the
|
|
@@ -845,6 +1075,28 @@ interface Agent {
|
|
|
845
1075
|
* </note>
|
|
846
1076
|
*/
|
|
847
1077
|
ice_tcp: boolean
|
|
1078
|
+
/**
|
|
1079
|
+
* Whether the agent should use ICE-TCP when gathering candidates.
|
|
1080
|
+
* If the option is disabled, no TCP candidates will be generated. If the
|
|
1081
|
+
* agent is in reliable mode, then pseudotcp will need to be used over UDP
|
|
1082
|
+
* candidates.
|
|
1083
|
+
* <para>
|
|
1084
|
+
* This option should be set before gathering candidates and should not be
|
|
1085
|
+
* modified afterwards.
|
|
1086
|
+
* </para>
|
|
1087
|
+
* The #NiceAgent:ice-tcp property can be set at the same time as the
|
|
1088
|
+
* #NiceAgent:ice-udp property, but both cannot be unset at the same time.
|
|
1089
|
+
* If #NiceAgent:ice-udp is set to %FALSE, then this property cannot be set
|
|
1090
|
+
* to %FALSE as well.
|
|
1091
|
+
* <note>
|
|
1092
|
+
* <para>
|
|
1093
|
+
* ICE-TCP is only supported for %NICE_COMPATIBILITY_RFC5245,
|
|
1094
|
+
* %NICE_COMPATIBILITY_OC2007 and %NICE_COMPATIBILITY_OC2007R2 compatibility
|
|
1095
|
+
* modes.
|
|
1096
|
+
* </para>
|
|
1097
|
+
* </note>
|
|
1098
|
+
*/
|
|
1099
|
+
iceTcp: boolean
|
|
848
1100
|
/**
|
|
849
1101
|
* Whether to perform Trickle ICE as per draft-ietf-ice-trickle-ice-21.
|
|
850
1102
|
* When %TRUE, the agent will postpone changing a component state to
|
|
@@ -852,6 +1104,13 @@ interface Agent {
|
|
|
852
1104
|
* has been called with the ID of the component's stream.
|
|
853
1105
|
*/
|
|
854
1106
|
ice_trickle: boolean
|
|
1107
|
+
/**
|
|
1108
|
+
* Whether to perform Trickle ICE as per draft-ietf-ice-trickle-ice-21.
|
|
1109
|
+
* When %TRUE, the agent will postpone changing a component state to
|
|
1110
|
+
* %NICE_COMPONENT_STATE_FAILED until nice_agent_peer_candidate_gathering_done()
|
|
1111
|
+
* has been called with the ID of the component's stream.
|
|
1112
|
+
*/
|
|
1113
|
+
iceTrickle: boolean
|
|
855
1114
|
/**
|
|
856
1115
|
* Whether the agent should use ICE-UDP when gathering candidates.
|
|
857
1116
|
* If the option is disabled, no UDP candidates will be generated. If the
|
|
@@ -867,6 +1126,21 @@ interface Agent {
|
|
|
867
1126
|
* to %FALSE as well.
|
|
868
1127
|
*/
|
|
869
1128
|
ice_udp: boolean
|
|
1129
|
+
/**
|
|
1130
|
+
* Whether the agent should use ICE-UDP when gathering candidates.
|
|
1131
|
+
* If the option is disabled, no UDP candidates will be generated. If the
|
|
1132
|
+
* agent is in reliable mode, then pseudotcp will not be used since pseudotcp
|
|
1133
|
+
* works on top of UDP candidates.
|
|
1134
|
+
* <para>
|
|
1135
|
+
* This option should be set before gathering candidates and should not be
|
|
1136
|
+
* modified afterwards.
|
|
1137
|
+
* </para>
|
|
1138
|
+
* The #NiceAgent:ice-udp property can be set at the same time as the
|
|
1139
|
+
* #NiceAgent:ice-tcp property, but both cannot be unset at the same time.
|
|
1140
|
+
* If #NiceAgent:ice-tcp is set to %FALSE, then this property cannot be set
|
|
1141
|
+
* to %FALSE as well.
|
|
1142
|
+
*/
|
|
1143
|
+
iceUdp: boolean
|
|
870
1144
|
/**
|
|
871
1145
|
* A final timeout in msec, launched when the agent becomes idle,
|
|
872
1146
|
* before stopping its activity.
|
|
@@ -897,6 +1171,36 @@ interface Agent {
|
|
|
897
1171
|
* in a timely manner.
|
|
898
1172
|
*/
|
|
899
1173
|
idle_timeout: number
|
|
1174
|
+
/**
|
|
1175
|
+
* A final timeout in msec, launched when the agent becomes idle,
|
|
1176
|
+
* before stopping its activity.
|
|
1177
|
+
*
|
|
1178
|
+
* This timer will delay the decision to set a component as failed.
|
|
1179
|
+
* This delay is added to reduce the chance to see the agent receiving
|
|
1180
|
+
* new stun activity just after the conncheck list has been declared
|
|
1181
|
+
* failed (some valid pairs, no nominated pair, and no in-progress
|
|
1182
|
+
* pairs), reactiviting conncheck activity, and causing a (valid)
|
|
1183
|
+
* state transitions like that: connecting -> failed -> connecting ->
|
|
1184
|
+
* connected -> ready. Such transitions are not buggy per-se, but may
|
|
1185
|
+
* break the test-suite, that counts precisely the number of time each
|
|
1186
|
+
* state has been set, and doesnt expect these transcient failed
|
|
1187
|
+
* states.
|
|
1188
|
+
*
|
|
1189
|
+
* This timer is also useful when the agent is in controlled mode and
|
|
1190
|
+
* the other controlling peer takes some time to elect its nominated
|
|
1191
|
+
* pair (this may be the case for SfB peers).
|
|
1192
|
+
*
|
|
1193
|
+
* This timer is *NOT* part if the RFC5245, as this situation is not
|
|
1194
|
+
* covered in sect 8.1.2 "Updating States", but deals with a real
|
|
1195
|
+
* use-case, where a controlled agent can not wait forever for the
|
|
1196
|
+
* other peer to make a nomination decision.
|
|
1197
|
+
*
|
|
1198
|
+
* Also note that the value of this timeout will not delay the
|
|
1199
|
+
* emission of 'connected' and 'ready' agent signals, and will not
|
|
1200
|
+
* slow down the behaviour of the agent when the peer agent works
|
|
1201
|
+
* in a timely manner.
|
|
1202
|
+
*/
|
|
1203
|
+
idleTimeout: number
|
|
900
1204
|
/**
|
|
901
1205
|
* Use binding requests as keepalives instead of binding
|
|
902
1206
|
* indications. This means that the keepalives may time out which
|
|
@@ -911,32 +1215,72 @@ interface Agent {
|
|
|
911
1215
|
* This is always enabled if the 'consent-freshness' property is %TRUE
|
|
912
1216
|
*/
|
|
913
1217
|
keepalive_conncheck: boolean
|
|
1218
|
+
/**
|
|
1219
|
+
* Use binding requests as keepalives instead of binding
|
|
1220
|
+
* indications. This means that the keepalives may time out which
|
|
1221
|
+
* will change the component state to %NICE_COMPONENT_STATE_FAILED.
|
|
1222
|
+
*
|
|
1223
|
+
* Enabing this is a slight violation of RFC 5245 section 10 which
|
|
1224
|
+
* recommends using Binding Indications for keepalives.
|
|
1225
|
+
*
|
|
1226
|
+
* This is always enabled if the compatibility mode is
|
|
1227
|
+
* %NICE_COMPATIBILITY_GOOGLE.
|
|
1228
|
+
*
|
|
1229
|
+
* This is always enabled if the 'consent-freshness' property is %TRUE
|
|
1230
|
+
*/
|
|
1231
|
+
keepaliveConncheck: boolean
|
|
914
1232
|
/**
|
|
915
1233
|
* A GLib main context is needed for all timeouts used by libnice.
|
|
916
1234
|
* This is a property being set by the nice_agent_new() call.
|
|
917
1235
|
*/
|
|
918
1236
|
readonly main_context: any
|
|
1237
|
+
/**
|
|
1238
|
+
* A GLib main context is needed for all timeouts used by libnice.
|
|
1239
|
+
* This is a property being set by the nice_agent_new() call.
|
|
1240
|
+
*/
|
|
1241
|
+
readonly mainContext: any
|
|
919
1242
|
max_connectivity_checks: number
|
|
1243
|
+
maxConnectivityChecks: number
|
|
920
1244
|
/**
|
|
921
1245
|
* The proxy server IP used to bypass a proxy firewall
|
|
922
1246
|
*/
|
|
923
1247
|
proxy_ip: string | null
|
|
1248
|
+
/**
|
|
1249
|
+
* The proxy server IP used to bypass a proxy firewall
|
|
1250
|
+
*/
|
|
1251
|
+
proxyIp: string | null
|
|
924
1252
|
/**
|
|
925
1253
|
* The password used to authenticate with the proxy
|
|
926
1254
|
*/
|
|
927
1255
|
proxy_password: string | null
|
|
1256
|
+
/**
|
|
1257
|
+
* The password used to authenticate with the proxy
|
|
1258
|
+
*/
|
|
1259
|
+
proxyPassword: string | null
|
|
928
1260
|
/**
|
|
929
1261
|
* The proxy server port used to bypass a proxy firewall
|
|
930
1262
|
*/
|
|
931
1263
|
proxy_port: number
|
|
1264
|
+
/**
|
|
1265
|
+
* The proxy server port used to bypass a proxy firewall
|
|
1266
|
+
*/
|
|
1267
|
+
proxyPort: number
|
|
932
1268
|
/**
|
|
933
1269
|
* The type of proxy set in the proxy-ip property
|
|
934
1270
|
*/
|
|
935
1271
|
proxy_type: number
|
|
1272
|
+
/**
|
|
1273
|
+
* The type of proxy set in the proxy-ip property
|
|
1274
|
+
*/
|
|
1275
|
+
proxyType: number
|
|
936
1276
|
/**
|
|
937
1277
|
* The username used to authenticate with the proxy
|
|
938
1278
|
*/
|
|
939
1279
|
proxy_username: string | null
|
|
1280
|
+
/**
|
|
1281
|
+
* The username used to authenticate with the proxy
|
|
1282
|
+
*/
|
|
1283
|
+
proxyUsername: string | null
|
|
940
1284
|
/**
|
|
941
1285
|
* Whether the agent is providing a reliable transport of messages (through
|
|
942
1286
|
* ICE-TCP or PseudoTCP over ICE-UDP)
|
|
@@ -953,6 +1297,17 @@ interface Agent {
|
|
|
953
1297
|
* multiplier 'Rm' to 'RTO' should be used).
|
|
954
1298
|
*/
|
|
955
1299
|
stun_initial_timeout: number
|
|
1300
|
+
/**
|
|
1301
|
+
* The initial timeout (msecs) of the STUN binding requests
|
|
1302
|
+
* used in the gathering stage, to find our local candidates.
|
|
1303
|
+
* This property is described as 'RTO' in the RFC 5389 and RFC 5245.
|
|
1304
|
+
* This timeout is doubled for each retransmission, until
|
|
1305
|
+
* #NiceAgent:stun-max-retransmissions have been done,
|
|
1306
|
+
* with an exception for the last restransmission, where the timeout is
|
|
1307
|
+
* divided by two instead (RFC 5389 indicates that a customisable
|
|
1308
|
+
* multiplier 'Rm' to 'RTO' should be used).
|
|
1309
|
+
*/
|
|
1310
|
+
stunInitialTimeout: number
|
|
956
1311
|
/**
|
|
957
1312
|
* The maximum number of retransmissions of the STUN binding requests
|
|
958
1313
|
* used in the gathering stage, to find our local candidates, and used
|
|
@@ -965,14 +1320,34 @@ interface Agent {
|
|
|
965
1320
|
* state.
|
|
966
1321
|
*/
|
|
967
1322
|
stun_max_retransmissions: number
|
|
1323
|
+
/**
|
|
1324
|
+
* The maximum number of retransmissions of the STUN binding requests
|
|
1325
|
+
* used in the gathering stage, to find our local candidates, and used
|
|
1326
|
+
* in the connection check stage, to test the validity of each
|
|
1327
|
+
* constructed pair. This property is described as 'Rc' in the RFC
|
|
1328
|
+
* 5389, with a default value of 7. The timeout of each STUN request
|
|
1329
|
+
* is doubled for each retransmission, so the choice of this value has
|
|
1330
|
+
* a direct impact on the time needed to move from the CONNECTED state
|
|
1331
|
+
* to the READY state, and on the time needed to complete the GATHERING
|
|
1332
|
+
* state.
|
|
1333
|
+
*/
|
|
1334
|
+
stunMaxRetransmissions: number
|
|
968
1335
|
stun_pacing_timer: number
|
|
1336
|
+
stunPacingTimer: number
|
|
969
1337
|
/**
|
|
970
1338
|
* The initial timeout of the STUN binding requests used
|
|
971
1339
|
* for a reliable timer.
|
|
972
1340
|
*/
|
|
973
1341
|
stun_reliable_timeout: number
|
|
1342
|
+
/**
|
|
1343
|
+
* The initial timeout of the STUN binding requests used
|
|
1344
|
+
* for a reliable timer.
|
|
1345
|
+
*/
|
|
1346
|
+
stunReliableTimeout: number
|
|
974
1347
|
stun_server: string | null
|
|
1348
|
+
stunServer: string | null
|
|
975
1349
|
stun_server_port: number
|
|
1350
|
+
stunServerPort: number
|
|
976
1351
|
/**
|
|
977
1352
|
* Support RENOMINATION STUN attribute proposed here:
|
|
978
1353
|
* https://tools.ietf.org/html/draft-thatcher-ice-renomination-00 As
|
|
@@ -981,6 +1356,14 @@ interface Agent {
|
|
|
981
1356
|
* selected. This is specific to Google Chrome/libWebRTC.
|
|
982
1357
|
*/
|
|
983
1358
|
support_renomination: boolean
|
|
1359
|
+
/**
|
|
1360
|
+
* Support RENOMINATION STUN attribute proposed here:
|
|
1361
|
+
* https://tools.ietf.org/html/draft-thatcher-ice-renomination-00 As
|
|
1362
|
+
* soon as RENOMINATION attribute is received from remote
|
|
1363
|
+
* candidate's address, corresponding candidates pair gets
|
|
1364
|
+
* selected. This is specific to Google Chrome/libWebRTC.
|
|
1365
|
+
*/
|
|
1366
|
+
supportRenomination: boolean
|
|
984
1367
|
/**
|
|
985
1368
|
* Whether the agent should use UPnP to open a port in the router and
|
|
986
1369
|
* get the external IP
|
|
@@ -991,6 +1374,11 @@ interface Agent {
|
|
|
991
1374
|
* finish before signaling the #NiceAgent::candidate-gathering-done signal
|
|
992
1375
|
*/
|
|
993
1376
|
upnp_timeout: number
|
|
1377
|
+
/**
|
|
1378
|
+
* The maximum amount of time (in milliseconds) to wait for UPnP discovery to
|
|
1379
|
+
* finish before signaling the #NiceAgent::candidate-gathering-done signal
|
|
1380
|
+
*/
|
|
1381
|
+
upnpTimeout: number
|
|
994
1382
|
|
|
995
1383
|
// Owm methods of Nice-0.1.Nice.Agent
|
|
996
1384
|
|
|
@@ -1883,6 +2271,21 @@ module PseudoTcpSocket {
|
|
|
1883
2271
|
* Support is enabled by default.
|
|
1884
2272
|
*/
|
|
1885
2273
|
support_fin_ack?: boolean | null
|
|
2274
|
+
ackDelay?: number | null
|
|
2275
|
+
noDelay?: boolean | null
|
|
2276
|
+
rcvBuf?: number | null
|
|
2277
|
+
sndBuf?: number | null
|
|
2278
|
+
/**
|
|
2279
|
+
* Whether to support the FIN–ACK extension to the pseudo-TCP protocol for
|
|
2280
|
+
* this socket. The extension is only compatible with other libnice pseudo-TCP
|
|
2281
|
+
* stacks, and not with Jingle pseudo-TCP stacks. If enabled, support is
|
|
2282
|
+
* negotiatied on connection setup, so it is safe for a #PseudoTcpSocket with
|
|
2283
|
+
* support enabled to be used with one with it disabled, or with a Jingle
|
|
2284
|
+
* pseudo-TCP socket which doesn’t support it at all.
|
|
2285
|
+
*
|
|
2286
|
+
* Support is enabled by default.
|
|
2287
|
+
*/
|
|
2288
|
+
supportFinAck?: boolean | null
|
|
1886
2289
|
}
|
|
1887
2290
|
|
|
1888
2291
|
}
|
|
@@ -1892,11 +2295,15 @@ interface PseudoTcpSocket {
|
|
|
1892
2295
|
// Own properties of Nice-0.1.Nice.PseudoTcpSocket
|
|
1893
2296
|
|
|
1894
2297
|
ack_delay: number
|
|
2298
|
+
ackDelay: number
|
|
1895
2299
|
callbacks: any
|
|
1896
2300
|
readonly conversation: number
|
|
1897
2301
|
no_delay: boolean
|
|
2302
|
+
noDelay: boolean
|
|
1898
2303
|
rcv_buf: number
|
|
2304
|
+
rcvBuf: number
|
|
1899
2305
|
snd_buf: number
|
|
2306
|
+
sndBuf: number
|
|
1900
2307
|
readonly state: number
|
|
1901
2308
|
/**
|
|
1902
2309
|
* Whether to support the FIN–ACK extension to the pseudo-TCP protocol for
|
|
@@ -1909,6 +2316,17 @@ interface PseudoTcpSocket {
|
|
|
1909
2316
|
* Support is enabled by default.
|
|
1910
2317
|
*/
|
|
1911
2318
|
readonly support_fin_ack: boolean
|
|
2319
|
+
/**
|
|
2320
|
+
* Whether to support the FIN–ACK extension to the pseudo-TCP protocol for
|
|
2321
|
+
* this socket. The extension is only compatible with other libnice pseudo-TCP
|
|
2322
|
+
* stacks, and not with Jingle pseudo-TCP stacks. If enabled, support is
|
|
2323
|
+
* negotiatied on connection setup, so it is safe for a #PseudoTcpSocket with
|
|
2324
|
+
* support enabled to be used with one with it disabled, or with a Jingle
|
|
2325
|
+
* pseudo-TCP socket which doesn’t support it at all.
|
|
2326
|
+
*
|
|
2327
|
+
* Support is enabled by default.
|
|
2328
|
+
*/
|
|
2329
|
+
readonly supportFinAck: boolean
|
|
1912
2330
|
|
|
1913
2331
|
// Owm methods of Nice-0.1.Nice.PseudoTcpSocket
|
|
1914
2332
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@girs/nice-0.1",
|
|
3
|
-
"version": "0.1.0-3.2.
|
|
3
|
+
"version": "0.1.0-3.2.6",
|
|
4
4
|
"description": "GJS TypeScript type definitions for Nice-0.1, generated from library version 0.1.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "nice-0.1.js",
|
|
@@ -25,10 +25,10 @@
|
|
|
25
25
|
"test:cjs": "NODE_OPTIONS=--max_old_space_size=9216 tsc --noEmit nice-0.1.d.cts"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@girs/gio-2.0": "^2.78.0-3.2.
|
|
29
|
-
"@girs/gjs": "^3.2.
|
|
30
|
-
"@girs/glib-2.0": "^2.78.0-3.2.
|
|
31
|
-
"@girs/gobject-2.0": "^2.78.0-3.2.
|
|
28
|
+
"@girs/gio-2.0": "^2.78.0-3.2.6",
|
|
29
|
+
"@girs/gjs": "^3.2.6",
|
|
30
|
+
"@girs/glib-2.0": "^2.78.0-3.2.6",
|
|
31
|
+
"@girs/gobject-2.0": "^2.78.0-3.2.6"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"typescript": "*"
|