实例介绍
该程序是基于SIP协议的Android端IP电话APP源代码,对开发Android电话应用的开发者有很大的帮助。
【实例截图】
【核心代码】
16359647635071668297.rar
└── Sipdroid
├── ADDITIONAL_TERMS.txt
├── AndroidManifest.xml
├── assets
│ └── alerting
├── bin
│ ├── classes.dex
│ ├── com
│ │ └── jstun
│ │ ├── core
│ │ │ ├── attribute
│ │ │ │ ├── ChangedAddress.class
│ │ │ │ ├── ChangeRequest.class
│ │ │ │ ├── Dummy.class
│ │ │ │ ├── ErrorCode.class
│ │ │ │ ├── MappedAddress.class
│ │ │ │ ├── MappedResponseChangedSourceAddressReflectedFrom.class
│ │ │ │ ├── MessageAttribute.class
│ │ │ │ ├── MessageAttributeException.class
│ │ │ │ ├── MessageAttributeInterface$MessageAttributeType.class
│ │ │ │ ├── MessageAttributeInterface.class
│ │ │ │ ├── MessageAttributeParsingException.class
│ │ │ │ ├── MessageIntegrity.class
│ │ │ │ ├── Password.class
│ │ │ │ ├── ReflectedFrom.class
│ │ │ │ ├── ResponseAddress.class
│ │ │ │ ├── SourceAddress.class
│ │ │ │ ├── UnknownAttribute.class
│ │ │ │ ├── UnknownMessageAttributeException.class
│ │ │ │ └── Username.class
│ │ │ ├── header
│ │ │ │ ├── MessageHeader.class
│ │ │ │ ├── MessageHeaderException.class
│ │ │ │ ├── MessageHeaderInterface$MessageHeaderType.class
│ │ │ │ ├── MessageHeaderInterface.class
│ │ │ │ └── MessageHeaderParsingException.class
│ │ │ └── util
│ │ │ ├── Address.class
│ │ │ ├── Utility.class
│ │ │ └── UtilityException.class
│ │ └── demo
│ │ ├── DiscoveryInfo.class
│ │ ├── DiscoveryTest.class
│ │ └── DiscoveryTestDemo.class
│ ├── org
│ │ ├── sipdroid
│ │ │ ├── codecs
│ │ │ │ ├── alaw.class
│ │ │ │ ├── BV16.class
│ │ │ │ ├── CodecBase.class
│ │ │ │ ├── Codec.class
│ │ │ │ ├── Codecs$1.class
│ │ │ │ ├── Codecs$CodecSettings.class
│ │ │ │ ├── Codecs$Map.class
│ │ │ │ ├── Codecs.class
│ │ │ │ ├── G711.class
│ │ │ │ ├── G722.class
│ │ │ │ ├── GSM.class
│ │ │ │ ├── SILK16.class
│ │ │ │ ├── SILK24.class
│ │ │ │ ├── SILK8.class
│ │ │ │ ├── Speex.class
│ │ │ │ └── ulaw.class
│ │ │ ├── media
│ │ │ │ ├── Bluetooth.class
│ │ │ │ ├── JAudioLauncher.class
│ │ │ │ ├── MediaLauncher.class
│ │ │ │ ├── RtpStreamReceiver$1.class
│ │ │ │ ├── RtpStreamReceiver.class
│ │ │ │ ├── RtpStreamSender$1.class
│ │ │ │ └── RtpStreamSender.class
│ │ │ ├── net
│ │ │ │ ├── impl
│ │ │ │ │ ├── OSNetworkSystem.class
│ │ │ │ │ └── PlainDatagramSocketImpl.class
│ │ │ │ ├── KeepAliveSip.class
│ │ │ │ ├── KeepAliveUdp.class
│ │ │ │ ├── RtpPacket.class
│ │ │ │ ├── RtpSocket.class
│ │ │ │ └── SipdroidSocket.class
│ │ │ └── sipua
│ │ │ ├── Constants$TransportConstants.class
│ │ │ ├── Constants.class
│ │ │ ├── phone
│ │ │ │ ├── ButtonGridLayout.class
│ │ │ │ ├── Call$State.class
│ │ │ │ ├── CallCard.class
│ │ │ │ ├── Call.class
│ │ │ │ ├── CallerInfoAsyncQuery$CallerInfoAsyncQueryHandler$CallerInfoWorkerHandler.class
│ │ │ │ ├── CallerInfoAsyncQuery$CallerInfoAsyncQueryHandler.class
│ │ │ │ ├── CallerInfoAsyncQuery$CookieWrapper.class
│ │ │ │ ├── CallerInfoAsyncQuery$OnQueryCompleteListener.class
│ │ │ │ ├── CallerInfoAsyncQuery$QueryPoolException.class
│ │ │ │ ├── CallerInfoAsyncQuery.class
│ │ │ │ ├── CallerInfo.class
│ │ │ │ ├── CallStateException.class
│ │ │ │ ├── Connection$DisconnectCause.class
│ │ │ │ ├── Connection.class
│ │ │ │ ├── ContactsAsyncHelper$ImageTracker.class
│ │ │ │ ├── ContactsAsyncHelper$OnImageLoadCompleteListener.class
│ │ │ │ ├── ContactsAsyncHelper$WorkerArgs.class
│ │ │ │ ├── ContactsAsyncHelper$WorkerHandler.class
│ │ │ │ ├── ContactsAsyncHelper.class
│ │ │ │ ├── Phone$State.class
│ │ │ │ ├── Phone$SuppService.class
│ │ │ │ ├── Phone.class
│ │ │ │ ├── PhoneUtils$1.class
│ │ │ │ ├── PhoneUtils$CallerInfoToken.class
│ │ │ │ ├── PhoneUtils.class
│ │ │ │ ├── SlidingCardManager$WindowAttachNotifierView.class
│ │ │ │ └── SlidingCardManager.class
│ │ │ ├── R$array.class
│ │ │ ├── R$attr.class
│ │ │ ├── R$color.class
│ │ │ ├── R$drawable.class
│ │ │ ├── R$id.class
│ │ │ ├── R$layout.class
│ │ │ ├── R$string.class
│ │ │ ├── R$xml.class
│ │ │ ├── R.class
│ │ │ ├── RegisterAgent$1.class
│ │ │ ├── RegisterAgent$2.class
│ │ │ ├── RegisterAgent.class
│ │ │ ├── RegisterAgentListener.class
│ │ │ ├── SipdroidEngine.class
│ │ │ ├── ui
│ │ │ │ ├── Activity2.class
│ │ │ │ ├── AutoAnswer.class
│ │ │ │ ├── Caller.class
│ │ │ │ ├── CallScreen$1.class
│ │ │ │ ├── CallScreen$2.class
│ │ │ │ ├── CallScreen.class
│ │ │ │ ├── ChangeAccount.class
│ │ │ │ ├── Checkin$1.class
│ │ │ │ ├── Checkin.class
│ │ │ │ ├── CreateAccount$1.class
│ │ │ │ ├── CreateAccount$2.class
│ │ │ │ ├── CreateAccount$3.class
│ │ │ │ ├── CreateAccount$4.class
│ │ │ │ ├── CreateAccount.class
│ │ │ │ ├── InCallScreen$1.class
│ │ │ │ ├── InCallScreen$2.class
│ │ │ │ ├── InCallScreen$3.class
│ │ │ │ ├── InCallScreen$4.class
│ │ │ │ ├── InCallScreen.class
│ │ │ │ ├── InstantAutoCompleteTextView.class
│ │ │ │ ├── LoopAlarm.class
│ │ │ │ ├── LoopLocation.class
│ │ │ │ ├── OneShotAlarm2.class
│ │ │ │ ├── OneShotAlarm.class
│ │ │ │ ├── OneShotLocation.class
│ │ │ │ ├── OwnWifi.class
│ │ │ │ ├── PSTN.class
│ │ │ │ ├── Receiver$1.class
│ │ │ │ ├── Receiver$2.class
│ │ │ │ ├── Receiver.class
│ │ │ │ ├── RegisterService.class
│ │ │ │ ├── Settings$1.class
│ │ │ │ ├── Settings$2.class
│ │ │ │ ├── Settings$3.class
│ │ │ │ ├── Settings.class
│ │ │ │ ├── SIP.class
│ │ │ │ ├── Sipdroid$1.class
│ │ │ │ ├── Sipdroid$2.class
│ │ │ │ ├── Sipdroid$3.class
│ │ │ │ ├── Sipdroid$4.class
│ │ │ │ ├── Sipdroid$5.class
│ │ │ │ ├── Sipdroid$6.class
│ │ │ │ ├── Sipdroid$7.class
│ │ │ │ ├── Sipdroid$8.class
│ │ │ │ ├── Sipdroid$9.class
│ │ │ │ ├── Sipdroid$CallsAdapter.class
│ │ │ │ ├── Sipdroid.class
│ │ │ │ ├── SipdroidListener.class
│ │ │ │ ├── SipRingtonePreference.class
│ │ │ │ ├── SIPUri$1.class
│ │ │ │ ├── SIPUri$2.class
│ │ │ │ ├── SIPUri$3.class
│ │ │ │ ├── SIPUri.class
│ │ │ │ ├── VideoCamera$1.class
│ │ │ │ ├── VideoCamera$MainHandler.class
│ │ │ │ ├── VideoCamera.class
│ │ │ │ ├── VideoCameraNew2.class
│ │ │ │ ├── VideoCameraNew.class
│ │ │ │ └── VideoPreview.class
│ │ │ ├── UserAgent$1.class
│ │ │ ├── UserAgent$2.class
│ │ │ ├── UserAgent$3.class
│ │ │ ├── UserAgent$4.class
│ │ │ ├── UserAgent.class
│ │ │ └── UserAgentProfile.class
│ │ └── zoolu
│ │ ├── net
│ │ │ ├── IpAddress.class
│ │ │ ├── SocketAddress.class
│ │ │ ├── TcpConnection.class
│ │ │ ├── TcpConnectionListener.class
│ │ │ ├── TcpServer.class
│ │ │ ├── TcpServerListener.class
│ │ │ ├── TcpSocket.class
│ │ │ ├── UdpPacket.class
│ │ │ ├── UdpProvider.class
│ │ │ ├── UdpProviderListener.class
│ │ │ └── UdpSocket.class
│ │ ├── sdp
│ │ │ ├── AttributeField.class
│ │ │ ├── ConnectionField.class
│ │ │ ├── MediaDescriptor.class
│ │ │ ├── MediaField.class
│ │ │ ├── OriginField.class
│ │ │ ├── SdpField.class
│ │ │ ├── SdpParser.class
│ │ │ ├── SessionDescriptor.class
│ │ │ ├── SessionNameField.class
│ │ │ └── TimeField.class
│ │ ├── sip
│ │ │ ├── address
│ │ │ │ ├── NameAddress.class
│ │ │ │ └── SipURL.class
│ │ │ ├── authentication
│ │ │ │ └── DigestAuthentication.class
│ │ │ ├── call
│ │ │ │ ├── Call.class
│ │ │ │ ├── CallListenerAdapter.class
│ │ │ │ ├── CallListener.class
│ │ │ │ ├── ExtendedCall.class
│ │ │ │ ├── ExtendedCallListener.class
│ │ │ │ └── SdpTools.class
│ │ │ ├── dialog
│ │ │ │ ├── Dialog.class
│ │ │ │ ├── DialogInfo.class
│ │ │ │ ├── ExtendedInviteDialog.class
│ │ │ │ ├── ExtendedInviteDialogListener.class
│ │ │ │ ├── InviteDialog.class
│ │ │ │ ├── InviteDialogListener.class
│ │ │ │ ├── NotifierDialog.class
│ │ │ │ ├── NotifierDialogListener.class
│ │ │ │ ├── SubscriberDialog.class
│ │ │ │ └── SubscriberDialogListener.class
│ │ │ ├── header
│ │ │ │ ├── AcceptContactHeader.class
│ │ │ │ ├── AcceptHeader.class
│ │ │ │ ├── AlertInfoHeader.class
│ │ │ │ ├── AllowEventsHeader.class
│ │ │ │ ├── AllowHeader.class
│ │ │ │ ├── AuthenticationHeader.class
│ │ │ │ ├── AuthenticationInfoHeader.class
│ │ │ │ ├── AuthorizationHeader.class
│ │ │ │ ├── BaseSipHeaders.class
│ │ │ │ ├── CallIdHeader.class
│ │ │ │ ├── ContactHeader.class
│ │ │ │ ├── ContentLengthHeader.class
│ │ │ │ ├── ContentTypeHeader.class
│ │ │ │ ├── CSeqHeader.class
│ │ │ │ ├── DateHeader.class
│ │ │ │ ├── EndPointHeader.class
│ │ │ │ ├── EventHeader.class
│ │ │ │ ├── ExpiresHeader.class
│ │ │ │ ├── FromHeader.class
│ │ │ │ ├── Header.class
│ │ │ │ ├── ListHeader.class
│ │ │ │ ├── MaxForwardsHeader.class
│ │ │ │ ├── MultipleHeader.class
│ │ │ │ ├── NameAddressHeader.class
│ │ │ │ ├── OptionHeader.class
│ │ │ │ ├── ParametricHeader.class
│ │ │ │ ├── ProxyAuthenticateHeader.class
│ │ │ │ ├── ProxyAuthorizationHeader.class
│ │ │ │ ├── ProxyRequireHeader.class
│ │ │ │ ├── RecordRouteHeader.class
│ │ │ │ ├── ReferredByHeader.class
│ │ │ │ ├── ReferToHeader.class
│ │ │ │ ├── RequestLine.class
│ │ │ │ ├── RequireHeader.class
│ │ │ │ ├── RouteHeader.class
│ │ │ │ ├── ServerHeader.class
│ │ │ │ ├── SipDateHeader.class
│ │ │ │ ├── SipHeaders.class
│ │ │ │ ├── StatusLine.class
│ │ │ │ ├── SubjectHeader.class
│ │ │ │ ├── SubscriptionStateHeader.class
│ │ │ │ ├── SupportedHeader.class
│ │ │ │ ├── ToHeader.class
│ │ │ │ ├── UnsupportedHeader.class
│ │ │ │ ├── UserAgentHeader.class
│ │ │ │ ├── ViaHeader.class
│ │ │ │ └── WwwAuthenticateHeader.class
│ │ │ ├── message
│ │ │ │ ├── BaseMessage.class
│ │ │ │ ├── BaseMessageFactory.class
│ │ │ │ ├── BaseMessageOtp.class
│ │ │ │ ├── BaseSipMethods.class
│ │ │ │ ├── BaseSipResponses.class
│ │ │ │ ├── Message.class
│ │ │ │ ├── MessageFactory.class
│ │ │ │ ├── SipMethods.class
│ │ │ │ └── SipResponses.class
│ │ │ ├── provider
│ │ │ │ ├── ConnectedTransport.class
│ │ │ │ ├── ConnectionIdentifier.class
│ │ │ │ ├── DialogIdentifier.class
│ │ │ │ ├── Identifier.class
│ │ │ │ ├── MethodIdentifier.class
│ │ │ │ ├── SipInterface.class
│ │ │ │ ├── SipInterfaceListener.class
│ │ │ │ ├── SipParser.class
│ │ │ │ ├── SipPromisqueInterface.class
│ │ │ │ ├── SipProvider.class
│ │ │ │ ├── SipProviderExceptionListener.class
│ │ │ │ ├── SipProviderListener.class
│ │ │ │ ├── SipStack.class
│ │ │ │ ├── TcpTransport.class
│ │ │ │ ├── TransactionIdentifier.class
│ │ │ │ ├── Transport.class
│ │ │ │ ├── TransportListener.class
│ │ │ │ └── UdpTransport.class
│ │ │ └── transaction
│ │ │ ├── AckTransactionClient.class
│ │ │ ├── AckTransactionServer.class
│ │ │ ├── AckTransactionServerListener.class
│ │ │ ├── InviteTransactionClient.class
│ │ │ ├── InviteTransactionServer.class
│ │ │ ├── InviteTransactionServerListener.class
│ │ │ ├── Transaction.class
│ │ │ ├── TransactionClient.class
│ │ │ ├── TransactionClientListener.class
│ │ │ ├── TransactionServer.class
│ │ │ └── TransactionServerListener.class
│ │ └── tools
│ │ ├── Archive.class
│ │ ├── Assert.class
│ │ ├── AssertException.class
│ │ ├── Base64.class
│ │ ├── Configurable.class
│ │ ├── Configure.class
│ │ ├── DateFormat.class
│ │ ├── ExceptionPrinter.class
│ │ ├── HashSet.class
│ │ ├── InnerTimer.class
│ │ ├── InnerTimerListener.class
│ │ ├── InnerTimerST.class
│ │ ├── Iterator.class
│ │ ├── Log.class
│ │ ├── LogLevel.class
│ │ ├── Mangle.class
│ │ ├── MD5.class
│ │ ├── MD5OTP.class
│ │ ├── MessageDigest.class
│ │ ├── Parser.class
│ │ ├── Random.class
│ │ ├── RotatingLog.class
│ │ ├── SimpleDigest.class
│ │ ├── Timer.class
│ │ └── TimerListener.class
│ ├── resources.ap_
│ └── SipUA.apk
├── BUILD.txt
├── CHANGELOG.TXT
├── default.properties
├── gen
│ └── org
│ └── sipdroid
│ └── sipua
│ └── R.java
├── jni
│ ├── Android.mk
│ ├── Application.mk
│ ├── bv16_jni.cpp
│ ├── bx16_fixedp
│ │ ├── bv16
│ │ │ ├── bitpack.c
│ │ │ ├── bitpack.h
│ │ │ ├── bv16cnst.h
│ │ │ ├── bv16externs.h
│ │ │ ├── bv16.h
│ │ │ ├── bv16strct.h
│ │ │ ├── bv.c
│ │ │ ├── coarptch.c
│ │ │ ├── decoder.c
│ │ │ ├── encoder.c
│ │ │ ├── excdec.c
│ │ │ ├── excquan.c
│ │ │ ├── fineptch.c
│ │ │ ├── g192.c
│ │ │ ├── g192.h
│ │ │ ├── gaindec.c
│ │ │ ├── gainquan.c
│ │ │ ├── levelest.c
│ │ │ ├── lspdec.c
│ │ │ ├── lspquan.c
│ │ │ ├── plc.c
│ │ │ ├── postfilt.c
│ │ │ ├── postfilt.h
│ │ │ ├── preproc.c
│ │ │ ├── ptquan.c
│ │ │ └── tables.c
│ │ ├── bvcommon
│ │ │ ├── a2lsp.c
│ │ │ ├── allpole.c
│ │ │ ├── allzero.c
│ │ │ ├── autocor.c
│ │ │ ├── basop32.c
│ │ │ ├── basop32.h
│ │ │ ├── bvcommon.h
│ │ │ ├── cmtables.c
│ │ │ ├── levdur.c
│ │ │ ├── lsp2a.c
│ │ │ ├── mathtables.c
│ │ │ ├── mathutil.c
│ │ │ ├── mathutil.h
│ │ │ ├── memutil.c
│ │ │ ├── memutil.h
│ │ │ ├── ptdec.c
│ │ │ ├── stblzlsp.c
│ │ │ ├── typedef.h
│ │ │ ├── utility.c
│ │ │ ├── utility.h
│ │ │ └── vqdecode.c
│ │ ├── itug191lib
│ │ │ ├── basop32.c
│ │ │ ├── basop32.h
│ │ │ ├── readme.txt
│ │ │ └── stl.h
│ │ └── itug729ilib
│ │ ├── basic_op.h
│ │ ├── oper_32b.c
│ │ ├── oper_32b.h
│ │ ├── readme.txt
│ │ └── typedef.h
│ ├── g722_jni.cpp
│ ├── gsm_jni.cpp
│ ├── OSNetworkSystem.cpp
│ ├── silk
│ │ ├── interface
│ │ │ ├── SKP_Silk_control.h
│ │ │ ├── SKP_Silk_errors.h
│ │ │ ├── SKP_Silk_SDK_API.h
│ │ │ └── SKP_Silk_typedef.h
│ │ └── src
│ │ ├── Silk_FIX.vcproj
│ │ ├── SKP_Silk_A2NLSF.c
│ │ ├── SKP_Silk_allpass_int.c
│ │ ├── SKP_Silk_ana_filt_bank_1.c
│ │ ├── SKP_Silk_apply_sine_window.c
│ │ ├── SKP_Silk_array_maxabs.c
│ │ ├── SKP_Silk_autocorr.c
│ │ ├── SKP_Silk_biquad_alt.c
│ │ ├── SKP_Silk_biquad.c
│ │ ├── SKP_Silk_burg_modified.c
│ │ ├── SKP_Silk_bwexpander_32.c
│ │ ├── SKP_Silk_bwexpander.c
│ │ ├── SKP_Silk_CNG.c
│ │ ├── SKP_Silk_code_signs.c
│ │ ├── SKP_Silk_common_pitch_est_defines.h
│ │ ├── SKP_Silk_control_codec_FIX.c
│ │ ├── SKP_Silk_corrMatrix_FIX.c
│ │ ├── SKP_Silk_create_init_destroy.c
│ │ ├── SKP_Silk_dec_API.c
│ │ ├── SKP_Silk_decode_core.c
│ │ ├── SKP_Silk_decode_frame.c
│ │ ├── SKP_Silk_decode_indices_v4.c
│ │ ├── SKP_Silk_decode_parameters.c
│ │ ├── SKP_Silk_decode_parameters_v4.c
│ │ ├── SKP_Silk_decode_pulses.c
│ │ ├── SKP_Silk_decoder_set_fs.c
│ │ ├── SKP_Silk_define_FIX.h
│ │ ├── SKP_Silk_define.h
│ │ ├── SKP_Silk_detect_SWB_input.c
│ │ ├── SKP_Silk_enc_API.c
│ │ ├── SKP_Silk_encode_frame_FIX.c
│ │ ├── SKP_Silk_encode_parameters.c
│ │ ├── SKP_Silk_encode_parameters_v4.c
│ │ ├── SKP_Silk_encode_pulses.c
│ │ ├── SKP_Silk_find_LPC_FIX.c
│ │ ├── SKP_Silk_find_LTP_FIX.c
│ │ ├── SKP_Silk_find_pitch_lags_FIX.c
│ │ ├── SKP_Silk_find_pred_coefs_FIX.c
│ │ ├── SKP_Silk_gain_quant.c
│ │ ├── SKP_Silk_HP_variable_cutoff_FIX.c
│ │ ├── SKP_Silk_init_encoder_FIX.c
│ │ ├── SKP_Silk_Inlines.h
│ │ ├── SKP_Silk_inner_prod_aligned.c
│ │ ├── SKP_Silk_interpolate.c
│ │ ├── SKP_Silk_k2a.c
│ │ ├── SKP_Silk_k2a_Q16.c
│ │ ├── SKP_Silk_LBRR_reset.c
│ │ ├── SKP_Silk_lin2log.c
│ │ ├── SKP_Silk_log2lin.c
│ │ ├── SKP_Silk_lowpass_int.c
│ │ ├── SKP_Silk_lowpass_short.c
│ │ ├── SKP_Silk_LPC_inv_pred_gain.c
│ │ ├── SKP_Silk_LPC_stabilize.c
│ │ ├── SKP_Silk_LPC_synthesis_filter.c
│ │ ├── SKP_Silk_LPC_synthesis_order16.c
│ │ ├── SKP_Silk_LP_variable_cutoff.c
│ │ ├── SKP_Silk_LSF_cos_table.c
│ │ ├── SKP_Silk_LTP_analysis_filter_FIX.c
│ │ ├── SKP_Silk_LTP_scale_ctrl_FIX.c
│ │ ├── SKP_Silk_MA.c
│ │ ├── SKP_Silk_macros.h
│ │ ├── SKP_Silk_main_FIX.h
│ │ ├── SKP_Silk_main.h
│ │ ├── SKP_Silk_NLSF2A.c
│ │ ├── SKP_Silk_NLSF2A_stable.c
│ │ ├── SKP_Silk_NLSF_MSVQ_decode.c
│ │ ├── SKP_Silk_NLSF_MSVQ_encode_FIX.c
│ │ ├── SKP_Silk_NLSF_stabilize.c
│ │ ├── SKP_Silk_NLSF_VQ_rate_distortion_FIX.c
│ │ ├── SKP_Silk_NLSF_VQ_sum_error_FIX.c
│ │ ├── SKP_Silk_NLSF_VQ_weights_laroia.c
│ │ ├── SKP_Silk_noise_shape_analysis_FIX.c
│ │ ├── SKP_Silk_NSQ.c
│ │ ├── SKP_Silk_NSQ_del_dec.c
│ │ ├── SKP_Silk_perceptual_parameters_FIX.h
│ │ ├── SKP_Silk_pitch_analysis_core.c
│ │ ├── SKP_Silk_pitch_est_defines.h
│ │ ├── SKP_Silk_pitch_est_tables.c
│ │ ├── SKP_Silk_PLC.c
│ │ ├── SKP_Silk_PLC.h
│ │ ├── SKP_Silk_prefilter_FIX.c
│ │ ├── SKP_Silk_process_gains_FIX.c
│ │ ├── SKP_Silk_process_NLSFs_FIX.c
│ │ ├── SKP_Silk_pulses_to_bytes.c
│ │ ├── SKP_Silk_quant_LTP_gains_FIX.c
│ │ ├── SKP_Silk_range_coder.c
│ │ ├── SKP_Silk_regularize_correlations_FIX.c
│ │ ├── SKP_Silk_resample_1_2.c
│ │ ├── SKP_Silk_resample_1_2_coarse.c
│ │ ├── SKP_Silk_resample_1_2_coarsest.c
│ │ ├── SKP_Silk_resample_1_3.c
│ │ ├── SKP_Silk_resample_2_1_coarse.c
│ │ ├── SKP_Silk_resample_2_3.c
│ │ ├── SKP_Silk_resample_2_3_coarse.c
│ │ ├── SKP_Silk_resample_2_3_coarsest.c
│ │ ├── SKP_Silk_resample_2_3_rom.c
│ │ ├── SKP_Silk_resample_3_1.c
│ │ ├── SKP_Silk_resample_3_2.c
│ │ ├── SKP_Silk_resample_3_2_rom.c
│ │ ├── SKP_Silk_resample_3_4.c
│ │ ├── SKP_Silk_resample_4_3.c
│ │ ├── SKP_Silk_resample_rom.h
│ │ ├── SKP_Silk_residual_energy16_FIX.c
│ │ ├── SKP_Silk_residual_energy_FIX.c
│ │ ├── SKP_Silk_scale_copy_vector16.c
│ │ ├── SKP_Silk_scale_vector.c
│ │ ├── SKP_Silk_schur64.c
│ │ ├── SKP_Silk_schur.c
│ │ ├── SKP_Silk_shell_coder.c
│ │ ├── SKP_Silk_sigm_Q15.c
│ │ ├── SKP_Silk_SigProc_FIX.h
│ │ ├── SKP_Silk_solve_LS_FIX.c
│ │ ├── SKP_Silk_sort.c
│ │ ├── SKP_Silk_structs_FIX.h
│ │ ├── SKP_Silk_structs.h
│ │ ├── SKP_Silk_sum_sqr_shift.c
│ │ ├── SKP_Silk_tables_gain.c
│ │ ├── SKP_Silk_tables.h
│ │ ├── SKP_Silk_tables_LTP.c
│ │ ├── SKP_Silk_tables_NLSF_CB0_10.c
│ │ ├── SKP_Silk_tables_NLSF_CB0_10.h
│ │ ├── SKP_Silk_tables_NLSF_CB0_16.c
│ │ ├── SKP_Silk_tables_NLSF_CB0_16.h
│ │ ├── SKP_Silk_tables_NLSF_CB1_10.c
│ │ ├── SKP_Silk_tables_NLSF_CB1_10.h
│ │ ├── SKP_Silk_tables_NLSF_CB1_16.c
│ │ ├── SKP_Silk_tables_NLSF_CB1_16.h
│ │ ├── SKP_Silk_tables_other.c
│ │ ├── SKP_Silk_tables_pitch_lag.c
│ │ ├── SKP_Silk_tables_pulses_per_block.c
│ │ ├── SKP_Silk_tables_sign.c
│ │ ├── SKP_Silk_tables_type_offset.c
│ │ ├── SKP_Silk_VAD.c
│ │ └── SKP_Silk_VQ_nearest_neighbor_FIX.c
│ ├── silk16_jni.cpp
│ ├── silk24_jni.cpp
│ ├── silk8_jni.cpp
│ ├── spandsp
│ │ ├── floating_fudge.h
│ │ ├── g722.c
│ │ ├── gsm0610_decode.c
│ │ ├── gsm0610_encode.c
│ │ ├── gsm0610_local.h
│ │ ├── gsm0610_long_term.c
│ │ ├── gsm0610_lpc.c
│ │ ├── gsm0610_preprocess.c
│ │ ├── gsm0610_rpe.c
│ │ ├── gsm0610_short_term.c
│ │ ├── mmx_sse_decs.h
│ │ ├── spandsp
│ │ │ ├── adsi.h
│ │ │ ├── arctan2.h
│ │ │ ├── async.h
│ │ │ ├── at_interpreter.h
│ │ │ ├── awgn.h
│ │ │ ├── bell_r2_mf.h
│ │ │ ├── bert.h
│ │ │ ├── biquad.h
│ │ │ ├── bit_operations.h
│ │ │ ├── bitstream.h
│ │ │ ├── complex_filters.h
│ │ │ ├── complex.h
│ │ │ ├── complex_vector_float.h
│ │ │ ├── complex_vector_int.h
│ │ │ ├── crc.h
│ │ │ ├── dc_restore.h
│ │ │ ├── dds.h
│ │ │ ├── dtmf.h
│ │ │ ├── echo.h
│ │ │ ├── expose.h
│ │ │ ├── fast_convert.h
│ │ │ ├── fax.h
│ │ │ ├── fax_modems.h
│ │ │ ├── fir.h
│ │ │ ├── fsk.h
│ │ │ ├── g168models.h
│ │ │ ├── g711.h
│ │ │ ├── g722.h
│ │ │ ├── g726.h
│ │ │ ├── gsm0610.h
│ │ │ ├── hdlc.h
│ │ │ ├── ima_adpcm.h
│ │ │ ├── logging.h
│ │ │ ├── lpc10.h
│ │ │ ├── modem_connect_tones.h
│ │ │ ├── modem_echo.h
│ │ │ ├── myinttypes.h
│ │ │ ├── noise.h
│ │ │ ├── oki_adpcm.h
│ │ │ ├── playout.h
│ │ │ ├── plc.h
│ │ │ ├── power_meter.h
│ │ │ ├── private
│ │ │ │ ├── g722.h
│ │ │ │ └── gsm0610.h
│ │ │ ├── queue.h
│ │ │ ├── saturated.h
│ │ │ ├── schedule.h
│ │ │ ├── sig_tone.h
│ │ │ ├── silence_gen.h
│ │ │ ├── super_tone_rx.h
│ │ │ ├── super_tone_tx.h
│ │ │ ├── swept_tone.h
│ │ │ ├── t30_api.h
│ │ │ ├── t30_fcf.h
│ │ │ ├── t30.h
│ │ │ ├── t30_logging.h
│ │ │ ├── t31.h
│ │ │ ├── t35.h
│ │ │ ├── t38_core.h
│ │ │ ├── t38_gateway.h
│ │ │ ├── t38_non_ecm_buffer.h
│ │ │ ├── t38_terminal.h
│ │ │ ├── t4_rx.h
│ │ │ ├── t4_tx.h
│ │ │ ├── telephony.h
│ │ │ ├── time_scale.h
│ │ │ ├── timing.h
│ │ │ ├── tone_detect.h
│ │ │ ├── tone_generate.h
│ │ │ ├── v17rx.h
│ │ │ ├── v17tx.h
│ │ │ ├── v18.h
│ │ │ ├── v22bis.h
│ │ │ ├── v27ter_rx.h
│ │ │ ├── v27ter_tx.h
│ │ │ ├── v29rx.h
│ │ │ ├── v29tx.h
│ │ │ ├── v42bis.h
│ │ │ ├── v42.h
│ │ │ ├── v8.h
│ │ │ ├── vector_float.h
│ │ │ ├── vector_int.h
│ │ │ └── version.h
│ │ ├── spandsp.h
│ │ └── vector_int.c
│ ├── speex-1.2rc1
│ │ ├── COPYING
│ │ ├── include
│ │ │ └── speex
│ │ │ ├── speex_bits.h
│ │ │ ├── speex_callbacks.h
│ │ │ ├── speex_config_types.h
│ │ │ ├── speex.h
│ │ │ └── speex_types.h
│ │ ├── libspeex
│ │ │ ├── arch.h
│ │ │ ├── bits.c
│ │ │ ├── cb_search.c
│ │ │ ├── cb_search.h
│ │ │ ├── exc_10_16_table.c
│ │ │ ├── exc_10_32_table.c
│ │ │ ├── exc_20_32_table.c
│ │ │ ├── exc_5_256_table.c
│ │ │ ├── exc_5_64_table.c
│ │ │ ├── exc_8_128_table.c
│ │ │ ├── filters.c
│ │ │ ├── filters.h
│ │ │ ├── fixed_generic.h
│ │ │ ├── gain_table.c
│ │ │ ├── gain_table_lbr.c
│ │ │ ├── high_lsp_tables.c
│ │ │ ├── lpc.c
│ │ │ ├── lpc.h
│ │ │ ├── lsp.c
│ │ │ ├── lsp.h
│ │ │ ├── lsp_tables_nb.c
│ │ │ ├── ltp.c
│ │ │ ├── ltp.h
│ │ │ ├── math_approx.h
│ │ │ ├── modes.c
│ │ │ ├── modes.h
│ │ │ ├── nb_celp.c
│ │ │ ├── nb_celp.h
│ │ │ ├── os_support.h
│ │ │ ├── quant_lsp.c
│ │ │ ├── quant_lsp.h
│ │ │ ├── sb_celp.h
│ │ │ ├── speex.c
│ │ │ ├── speex_callbacks.c
│ │ │ ├── stack_alloc.h
│ │ │ ├── vbr.c
│ │ │ ├── vbr.h
│ │ │ ├── vq.c
│ │ │ ├── vq.h
│ │ │ └── window.c
│ │ └── README.android
│ └── speex_jni.cpp
├── libs
│ └── armeabi
├── LICENSE.TXT
├── README.txt
├── res
│ ├── drawable
│ │ ├── auto_answer_disabled.png
│ │ ├── auto_answer.png
│ │ ├── configure.png
│ │ ├── conf.png
│ │ ├── contacts.png
│ │ ├── exit.png
│ │ ├── goback.png
│ │ ├── home.png
│ │ ├── ic_contacts_edit_contacts.png
│ │ ├── ic_incall_add.png
│ │ ├── ic_incall_answer.png
│ │ ├── ic_incall_end.png
│ │ ├── ic_incall_hangup.png
│ │ ├── ic_incall_ongoing.png
│ │ ├── ic_incall_onhold.png
│ │ ├── ic_launcher_phone.png
│ │ ├── ic_menu_dial_pad.png
│ │ ├── ic_menu_end_call.png
│ │ ├── icon22.png
│ │ ├── icon32.png
│ │ ├── icon64.png
│ │ ├── ic_search_contacts.png
│ │ ├── im.png
│ │ ├── incall_frame_connected_short.9.png
│ │ ├── incall_frame_connected_tall_land.9.png
│ │ ├── incall_frame_connected_tall_port.9.png
│ │ ├── incall_frame_ended_short.9.png
│ │ ├── incall_frame_ended_tall_land.9.png
│ │ ├── incall_frame_ended_tall_port.9.png
│ │ ├── incall_frame_hold_short.9.png
│ │ ├── incall_frame_hold_tall_land.9.png
│ │ ├── incall_frame_hold_tall_port.9.png
│ │ ├── incall_frame_normal_short.9.png
│ │ ├── incall_frame_normal_tall_land.9.png
│ │ ├── incall_frame_normal_tall_port.9.png
│ │ ├── incall_photo_border.9.png
│ │ ├── mute.png
│ │ ├── people.png
│ │ ├── picture_busy.png
│ │ ├── picture_conference.png
│ │ ├── picture_dialing.png
│ │ ├── picture_end.png
│ │ ├── picture_frame.png
│ │ ├── picture_unknown_2.png
│ │ ├── picture_unknown_3.png
│ │ ├── picture_unknown.png
│ │ ├── save.png
│ │ ├── stat_sys_phone_call_bluetooth.png
│ │ ├── stat_sys_phone_call.png
│ │ ├── sym_call_add_call.png
│ │ ├── sym_call_done.png
│ │ ├── sym_call_end.png
│ │ ├── sym_call_hold_off.png
│ │ ├── sym_call_hold_on.png
│ │ ├── sym_call_lcd.png
│ │ ├── sym_call_merge.png
│ │ ├── sym_call.png
│ │ ├── sym_call_redial.png
│ │ ├── sym_call_speakerphone_off.png
│ │ ├── sym_call_speakerphone_on.png
│ │ ├── sym_fav_five.png
│ │ ├── sym_incoming_call_answer_options.png
│ │ ├── sym_incoming_call_answer.png
│ │ ├── sym_incoming_call_dont_answer.png
│ │ ├── sym_incoming_call_hold_answer.png
│ │ ├── sym_item_indicator_focus.png
│ │ ├── sym_item_indicator.png
│ │ ├── sym_presence_available.png
│ │ ├── sym_presence_away.png
│ │ ├── sym_presence_idle.png
│ │ └── sym_presence_offline.png
│ ├── drawable-finger
│ │ ├── btn_dial_delete_activated.9.png
│ │ ├── btn_dial_delete_active.xml
│ │ ├── btn_dial_delete_normal.9.png
│ │ ├── btn_dial_delete_pressed.9.png
│ │ ├── btn_dial_delete_selected.9.png
│ │ ├── btn_dial_delete.xml
│ │ ├── btn_dialer_default_dial.png
│ │ ├── btn_dialer_default.png
│ │ ├── btn_dialer_dial.xml
│ │ ├── btn_dialer_pressed.9.png
│ │ ├── btn_dialer_selected.9.png
│ │ ├── btn_dialer.xml
│ │ ├── btn_dial_normal.png
│ │ ├── btn_dial_pressed.png
│ │ ├── btn_dial_selected.png
│ │ ├── btn_dial_textfield_activated.9.png
│ │ ├── btn_dial_textfield_activated_full.9.png
│ │ ├── btn_dial_textfield_active.xml
│ │ ├── btn_dial_textfield_normal.9.png
│ │ ├── btn_dial_textfield_normal_full.9.png
│ │ ├── btn_dial_textfield_pressed.9.png
│ │ ├── btn_dial_textfield_pressed_full.9.png
│ │ ├── btn_dial_textfield_selected.9.png
│ │ ├── btn_dial_textfield_selected_full.9.png
│ │ ├── btn_dial_textfield.xml
│ │ ├── btn_dial.xml
│ │ ├── dark_header.9.png
│ │ ├── dark_header_dithered.xml
│ │ ├── dial_num_0_blk.png
│ │ ├── dial_num_0_wht.png
│ │ ├── dial_num_0.xml
│ │ ├── dial_num_1_blk.png
│ │ ├── dial_num_1_no_vm_blk.png
│ │ ├── dial_num_1_no_vm_wht.png
│ │ ├── dial_num_1_no_vm.xml
│ │ ├── dial_num_1_wht.png
│ │ ├── dial_num_1.xml
│ │ ├── dial_num_2_blk.png
│ │ ├── dial_num_2_wht.png
│ │ ├── dial_num_2.xml
│ │ ├── dial_num_3_blk.png
│ │ ├── dial_num_3_wht.png
│ │ ├── dial_num_3.xml
│ │ ├── dial_num_4_blk.png
│ │ ├── dial_num_4_wht.png
│ │ ├── dial_num_4.xml
│ │ ├── dial_num_5_blk.png
│ │ ├── dial_num_5_wht.png
│ │ ├── dial_num_5.xml
│ │ ├── dial_num_6_blk.png
│ │ ├── dial_num_6_wht.png
│ │ ├── dial_num_6.xml
│ │ ├── dial_num_7_blk.png
│ │ ├── dial_num_7_wht.png
│ │ ├── dial_num_7.xml
│ │ ├── dial_num_8_blk.png
│ │ ├── dial_num_8_wht.png
│ │ ├── dial_num_8.xml
│ │ ├── dial_num_9_blk.png
│ │ ├── dial_num_9_wht.png
│ │ ├── dial_num_9.xml
│ │ ├── dial_num_pound_blk.png
│ │ ├── dial_num_pound_wht.png
│ │ ├── dial_num_pound.xml
│ │ ├── dial_num_star_blk.png
│ │ ├── dial_num_star_wht.png
│ │ ├── dial_num_star.xml
│ │ ├── ic_delete_phone_number_blk.png
│ │ ├── ic_delete_phone_number_wht.png
│ │ ├── ic_delete_phone_number.xml
│ │ ├── ic_dialer_voicemail_black.png
│ │ ├── ic_dialer_voicemail_white.png
│ │ ├── ic_dialer_voicemail.xml
│ │ ├── ic_dial_number_blk.png
│ │ ├── ic_dial_number_wht.png
│ │ ├── ic_dial_number.xml
│ │ ├── ic_dialpad_tray.png
│ │ ├── ic_headphone_deactive.png
│ │ ├── ic_headphone.png
│ │ ├── ic_launcher_contacts.png
│ │ ├── ic_menu_contact.png
│ │ ├── ic_tab_contacts.xml
│ │ ├── ic_tab_dialer.xml
│ │ ├── ic_tab_recent.xml
│ │ ├── ic_tab_selected_contacts.png
│ │ ├── ic_tab_selected_dialer.png
│ │ ├── ic_tab_selected_recent.png
│ │ ├── ic_tab_selected_stared.png
│ │ ├── ic_tab_starred.xml
│ │ ├── ic_tab_unselected_contacts.png
│ │ ├── ic_tab_unselected_dialer.png
│ │ ├── ic_tab_unselected_recent.png
│ │ ├── ic_tab_unselected_stared.png
│ │ ├── tray_handle_normal.9.png
│ │ ├── tray_handle_pressed.9.png
│ │ ├── tray_handle_selected.9.png
│ │ └── tray_handle.xml
│ ├── layout
│ │ ├── call_card_person_info.xml
│ │ ├── call_card_popup.xml
│ │ ├── call_card.xml
│ │ ├── create_dialog.xml
│ │ ├── incall.xml
│ │ ├── ongoing_call_notification.xml
│ │ ├── sipdroid.xml
│ │ └── video_camera.xml
│ ├── layout-finger
│ │ ├── dialpad.xml
│ │ ├── dtmf_display.xml
│ │ └── dtmf_twelve_key_dialer.xml
│ ├── layout-land
│ │ └── call_card_person_info.xml
│ ├── raw
│ ├── values
│ │ ├── colors.xml
│ │ └── strings.xml
│ ├── values-ca
│ │ └── strings.xml
│ ├── values-cs
│ │ └── strings.xml
│ ├── values-de
│ │ └── strings.xml
│ ├── values-es
│ │ └── strings.xml
│ ├── values-fr
│ │ └── strings.xml
│ ├── values-it
│ │ └── strings.xml
│ ├── values-nl
│ │ └── strings.xml
│ ├── values-pl
│ │ └── strings.xml
│ ├── values-pt
│ │ └── strings.xml
│ ├── values-pt-rBR
│ │ └── strings.xml
│ ├── values-ro
│ │ └── strings.xml
│ ├── values-ru
│ │ └── strings.xml
│ ├── values-sv
│ │ └── strings.xml
│ ├── values-zh
│ │ └── strings.xml
│ ├── values-zh-rCN
│ │ └── strings.xml
│ ├── values-zh-rTW
│ │ └── strings.xml
│ └── xml
│ ├── codec_settings.xml
│ └── preferences.xml
└── src
├── com
│ └── jstun
│ ├── core
│ │ ├── attribute
│ │ │ ├── ChangedAddress.java
│ │ │ ├── ChangeRequest.java
│ │ │ ├── Dummy.java
│ │ │ ├── ErrorCode.java
│ │ │ ├── MappedAddress.java
│ │ │ ├── MappedResponseChangedSourceAddressReflectedFrom.java
│ │ │ ├── MessageAttributeException.java
│ │ │ ├── MessageAttributeInterface.java
│ │ │ ├── MessageAttribute.java
│ │ │ ├── MessageAttributeParsingException.java
│ │ │ ├── MessageIntegrity.java
│ │ │ ├── Password.java
│ │ │ ├── ReflectedFrom.java
│ │ │ ├── ResponseAddress.java
│ │ │ ├── SourceAddress.java
│ │ │ ├── UnknownAttribute.java
│ │ │ ├── UnknownMessageAttributeException.java
│ │ │ └── Username.java
│ │ ├── header
│ │ │ ├── MessageHeaderException.java
│ │ │ ├── MessageHeaderInterface.java
│ │ │ ├── MessageHeader.java
│ │ │ └── MessageHeaderParsingException.java
│ │ └── util
│ │ ├── Address.java
│ │ ├── UtilityException.java
│ │ └── Utility.java
│ └── demo
│ ├── DiscoveryInfo.java
│ ├── DiscoveryTestDemo.java
│ └── DiscoveryTest.java
└── org
├── sipdroid
│ ├── codecs
│ │ ├── alaw.java
│ │ ├── BV16.java
│ │ ├── CodecBase.java
│ │ ├── Codec.java
│ │ ├── Codecs.java
│ │ ├── G711.java
│ │ ├── G722.java
│ │ ├── GSM.java
│ │ ├── SILK16.java
│ │ ├── SILK24.java
│ │ ├── SILK8.java
│ │ ├── Speex.java
│ │ └── ulaw.java
│ ├── media
│ │ ├── Bluetooth.java
│ │ ├── JAudioLauncher.java
│ │ ├── MediaLauncher.java
│ │ ├── RtpStreamReceiver.java
│ │ └── RtpStreamSender.java
│ ├── net
│ │ ├── impl
│ │ │ ├── OSNetworkSystem.java
│ │ │ └── PlainDatagramSocketImpl.java
│ │ ├── KeepAliveSip.java
│ │ ├── KeepAliveUdp.java
│ │ ├── RtpPacket.java
│ │ ├── RtpSocket.java
│ │ └── SipdroidSocket.java
│ └── sipua
│ ├── Constants.java
│ ├── phone
│ │ ├── ButtonGridLayout.java
│ │ ├── CallCard.java
│ │ ├── CallerInfoAsyncQuery.java
│ │ ├── CallerInfo.java
│ │ ├── Call.java
│ │ ├── CallStateException.java
│ │ ├── Connection.java
│ │ ├── ContactsAsyncHelper.java
│ │ ├── Phone.java
│ │ ├── PhoneUtils.java
│ │ └── SlidingCardManager.java
│ ├── RegisterAgent.java
│ ├── RegisterAgentListener.java
│ ├── SipdroidEngine.java
│ ├── ui
│ │ ├── Activity2.java
│ │ ├── AutoAnswer.java
│ │ ├── Caller.java
│ │ ├── CallScreen.java
│ │ ├── ChangeAccount.java
│ │ ├── Checkin.java
│ │ ├── CreateAccount.java
│ │ ├── InCallScreen.java
│ │ ├── InstantAutoCompleteTextView.java
│ │ ├── LoopAlarm.java
│ │ ├── LoopLocation.java
│ │ ├── OneShotAlarm2.java
│ │ ├── OneShotAlarm.java
│ │ ├── OneShotLocation.java
│ │ ├── OwnWifi.java
│ │ ├── PSTN.java
│ │ ├── Receiver.java
│ │ ├── RegisterService.java
│ │ ├── Settings.java
│ │ ├── Sipdroid.java
│ │ ├── SipdroidListener.java
│ │ ├── SIP.java
│ │ ├── SipRingtonePreference.java
│ │ ├── SIPUri.java
│ │ ├── VideoCamera.java
│ │ ├── VideoCameraNew2.java
│ │ ├── VideoCameraNew.java
│ │ └── VideoPreview.java
│ ├── UserAgent.java
│ └── UserAgentProfile.java
└── zoolu
├── net
│ ├── IpAddress.java
│ ├── SocketAddress.java
│ ├── TcpConnection.java
│ ├── TcpConnectionListener.java
│ ├── TcpServer.java
│ ├── TcpServerListener.java
│ ├── TcpSocket.java
│ ├── UdpPacket.java
│ ├── UdpProvider.java
│ ├── UdpProviderListener.java
│ └── UdpSocket.java
├── sdp
│ ├── AttributeField.java
│ ├── ConnectionField.java
│ ├── MediaDescriptor.java
│ ├── MediaField.java
│ ├── OriginField.java
│ ├── SdpField.java
│ ├── SdpParser.java
│ ├── SessionDescriptor.java
│ ├── SessionNameField.java
│ └── TimeField.java
├── sip
│ ├── address
│ │ ├── NameAddress.java
│ │ └── SipURL.java
│ ├── authentication
│ │ └── DigestAuthentication.java
│ ├── call
│ │ ├── Call.java
│ │ ├── CallListenerAdapter.java
│ │ ├── CallListener.java
│ │ ├── ExtendedCall.java
│ │ ├── ExtendedCallListener.java
│ │ └── SdpTools.java
│ ├── dialog
│ │ ├── DialogInfo.java
│ │ ├── Dialog.java
│ │ ├── ExtendedInviteDialog.java
│ │ ├── ExtendedInviteDialogListener.java
│ │ ├── InviteDialog.java
│ │ ├── InviteDialogListener.java
│ │ ├── NotifierDialog.java
│ │ ├── NotifierDialogListener.java
│ │ ├── SubscriberDialog.java
│ │ └── SubscriberDialogListener.java
│ ├── header
│ │ ├── AcceptContactHeader.java
│ │ ├── AcceptHeader.java
│ │ ├── AlertInfoHeader.java
│ │ ├── AllowEventsHeader.java
│ │ ├── AllowHeader.java
│ │ ├── AuthenticationHeader.java
│ │ ├── AuthenticationInfoHeader.java
│ │ ├── AuthorizationHeader.java
│ │ ├── BaseSipHeaders.java
│ │ ├── CallIdHeader.java
│ │ ├── ContactHeader.java
│ │ ├── ContentLengthHeader.java
│ │ ├── ContentTypeHeader.java
│ │ ├── CSeqHeader.java
│ │ ├── DateHeader.java
│ │ ├── EndPointHeader.java
│ │ ├── EventHeader.java
│ │ ├── ExpiresHeader.java
│ │ ├── FromHeader.java
│ │ ├── Header.java
│ │ ├── ListHeader.java
│ │ ├── MaxForwardsHeader.java
│ │ ├── MultipleHeader.java
│ │ ├── NameAddressHeader.java
│ │ ├── OptionHeader.java
│ │ ├── ParametricHeader.java
│ │ ├── ProxyAuthenticateHeader.java
│ │ ├── ProxyAuthorizationHeader.java
│ │ ├── ProxyRequireHeader.java
│ │ ├── RecordRouteHeader.java
│ │ ├── ReferredByHeader.java
│ │ ├── ReferToHeader.java
│ │ ├── RequestLine.java
│ │ ├── RequireHeader.java
│ │ ├── RouteHeader.java
│ │ ├── ServerHeader.java
│ │ ├── SipDateHeader.java
│ │ ├── SipHeaders.java
│ │ ├── StatusLine.java
│ │ ├── SubjectHeader.java
│ │ ├── SubscriptionStateHeader.java
│ │ ├── SupportedHeader.java
│ │ ├── ToHeader.java
│ │ ├── UnsupportedHeader.java
│ │ ├── UserAgentHeader.java
│ │ ├── ViaHeader.java
│ │ └── WwwAuthenticateHeader.java
│ ├── message
│ │ ├── BaseMessageFactory.java
│ │ ├── BaseMessage.java
│ │ ├── BaseMessageOtp.java
│ │ ├── BaseSipMethods.java
│ │ ├── BaseSipResponses.java
│ │ ├── MessageFactory.java
│ │ ├── Message.java
│ │ ├── SipMethods.java
│ │ └── SipResponses.java
│ ├── provider
│ │ ├── ConnectedTransport.java
│ │ ├── ConnectionIdentifier.java
│ │ ├── DialogIdentifier.java
│ │ ├── Identifier.java
│ │ ├── MethodIdentifier.java
│ │ ├── SipInterface.java
│ │ ├── SipInterfaceListener.java
│ │ ├── SipParser.java
│ │ ├── SipPromisqueInterface.java
│ │ ├── SipProviderExceptionListener.java
│ │ ├── SipProvider.java
│ │ ├── SipProviderListener.java
│ │ ├── SipStack.java
│ │ ├── TcpTransport.java
│ │ ├── TransactionIdentifier.java
│ │ ├── Transport.java
│ │ ├── TransportListener.java
│ │ └── UdpTransport.java
│ └── transaction
│ ├── AckTransactionClient.java
│ ├── AckTransactionServer.java
│ ├── AckTransactionServerListener.java
│ ├── InviteTransactionClient.java
│ ├── InviteTransactionServer.java
│ ├── InviteTransactionServerListener.java
│ ├── TransactionClient.java
│ ├── TransactionClientListener.java
│ ├── Transaction.java
│ ├── TransactionServer.java
│ └── TransactionServerListener.java
└── tools
├── Archive.java
├── AssertException.java
├── Assert.java
├── Base64.java
├── Configurable.java
├── Configure.java
├── DateFormat.java
├── ExceptionPrinter.java
├── HashSet.java
├── InnerTimer.java
├── InnerTimerListener.java
├── InnerTimerST.java
├── Iterator.java
├── Log.java
├── LogLevel.java
├── Mangle.java
├── MD5.java
├── MD5OTP.java
├── MessageDigest.java
├── Parser.java
├── Random.java
├── RotatingLog.java
├── SimpleDigest.java
├── Timer.java
└── TimerListener.java
109 directories, 1125 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论