在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → 蘑菇街 TeamTalk IM 多平台聊天工具 源代码

蘑菇街 TeamTalk IM 多平台聊天工具 源代码

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:50.62M
  • 下载次数:4
  • 浏览次数:101
  • 发布时间:2021-01-24
  • 实例类别:一般编程问题
  • 发 布 人:好学IT男
  • 文件格式:.zip
  • 所需积分:2
 

实例介绍

【实例简介】
蘑菇街 TeamTalk IM 多平台聊天工具 源代码
【实例截图】
【核心代码】
20e54c9c-88eb-4582-8f89-a90e88c996cd
└── TeamTalk-master
├── android
│   ├── app
│   │   ├── build.gradle
│   │   ├── libs
│   │   │   ├── android-async-http-1.4.6.jar
│   │   │   ├── netty-3.6.6.Final.jar
│   │   │   └── universal-image-loader-1.9.3.jar
│   │   └── src
│   │   └── main
│   │   ├── AndroidManifest.xml
│   │   ├── java
│   │   │   └── com
│   │   │   └── mogujie
│   │   │   └── tt
│   │   │   ├── app
│   │   │   │   ├── IMApplication.java
│   │   │   │   └── UpdateDetection.java
│   │   │   ├── config
│   │   │   │   ├── DBConstant.java
│   │   │   │   ├── HandlerConstant.java
│   │   │   │   ├── IntentConstant.java
│   │   │   │   ├── MessageConstant.java
│   │   │   │   ├── packageInfo
│   │   │   │   ├── SysConstant.java
│   │   │   │   └── UrlConstant.java
│   │   │   ├── DB
│   │   │   │   ├── dao
│   │   │   │   │   ├── DaoMaster.java
│   │   │   │   │   ├── DaoSession.java
│   │   │   │   │   ├── DepartmentDao.java
│   │   │   │   │   ├── GroupDao.java
│   │   │   │   │   ├── MessageDao.java
│   │   │   │   │   ├── SessionDao.java
│   │   │   │   │   └── UserDao.java
│   │   │   │   ├── DBInterface.java
│   │   │   │   ├── entity
│   │   │   │   │   ├── DepartmentEntity.java
│   │   │   │   │   ├── GroupEntity.java
│   │   │   │   │   ├── MessageEntity.java
│   │   │   │   │   ├── PeerEntity.java
│   │   │   │   │   ├── SessionEntity.java
│   │   │   │   │   └── UserEntity.java
│   │   │   │   └── sp
│   │   │   │   ├── ConfigurationSp.java
│   │   │   │   ├── LoginSp.java
│   │   │   │   └── SystemConfigSp.java
│   │   │   ├── imservice
│   │   │   │   ├── callback
│   │   │   │   │   ├── IMListener.java
│   │   │   │   │   ├── ListenerQueue.java
│   │   │   │   │   └── Packetlistener.java
│   │   │   │   ├── entity
│   │   │   │   │   ├── AudioMessage.java
│   │   │   │   │   ├── ImageMessage.java
│   │   │   │   │   ├── MixMessage.java
│   │   │   │   │   ├── MsgAnalyzeEngine.java
│   │   │   │   │   ├── RecentInfo.java
│   │   │   │   │   ├── SearchElement.java
│   │   │   │   │   ├── TextMessage.java
│   │   │   │   │   ├── TimeTileMessage.java
│   │   │   │   │   └── UnreadEntity.java
│   │   │   │   ├── event
│   │   │   │   │   ├── AudioEvent.java
│   │   │   │   │   ├── GroupEvent.java
│   │   │   │   │   ├── ImageMsgEvent.java
│   │   │   │   │   ├── LoginEvent.java
│   │   │   │   │   ├── MessageEvent.java
│   │   │   │   │   ├── PriorityEvent.java
│   │   │   │   │   ├── ReconnectEvent.java
│   │   │   │   │   ├── RefreshHistoryMsgEvent.java
│   │   │   │   │   ├── SelectEvent.java
│   │   │   │   │   ├── SessionEvent.java
│   │   │   │   │   ├── SocketEvent.java
│   │   │   │   │   ├── UnreadEvent.java
│   │   │   │   │   └── UserInfoEvent.java
│   │   │   │   ├── manager
│   │   │   │   │   ├── IMContactManager.java
│   │   │   │   │   ├── IMGroupManager.java
│   │   │   │   │   ├── IMHeartBeatManager.java
│   │   │   │   │   ├── IMLoginManager.java
│   │   │   │   │   ├── IMManager.java
│   │   │   │   │   ├── IMMessageManager.java
│   │   │   │   │   ├── IMNotificationManager.java
│   │   │   │   │   ├── IMPacketDispatcher.java
│   │   │   │   │   ├── IMReconnectManager.java
│   │   │   │   │   ├── IMSessionManager.java
│   │   │   │   │   ├── IMSocketManager.java
│   │   │   │   │   ├── IMStackManager.java
│   │   │   │   │   └── IMUnreadMsgManager.java
│   │   │   │   ├── network
│   │   │   │   │   ├── MsgServerHandler.java
│   │   │   │   │   └── SocketThread.java
│   │   │   │   ├── service
│   │   │   │   │   ├── IMService.java
│   │   │   │   │   ├── LoadImageService.java
│   │   │   │   │   └── PushReceiver.java
│   │   │   │   └── support
│   │   │   │   ├── audio
│   │   │   │   │   ├── AudioFileWriter.java
│   │   │   │   │   ├── OggCrc.java
│   │   │   │   │   ├── OggSpeexWriter.java
│   │   │   │   │   ├── SpeexDecoder.java
│   │   │   │   │   ├── SpeexEncoder.java
│   │   │   │   │   ├── Speex.java
│   │   │   │   │   ├── SpeexWriteClient.java
│   │   │   │   │   └── SpeexWriter.java
│   │   │   │   ├── IMServiceConnector.java
│   │   │   │   └── SequenceNumberMaker.java
│   │   │   ├── protobuf
│   │   │   │   ├── base
│   │   │   │   │   ├── DataBuffer.java
│   │   │   │   │   ├── DefaultHeader.java
│   │   │   │   │   └── Header.java
│   │   │   │   ├── helper
│   │   │   │   │   ├── EntityChangeEngine.java
│   │   │   │   │   ├── Java2ProtoBuf.java
│   │   │   │   │   └── ProtoBuf2JavaBean.java
│   │   │   │   ├── IMBaseDefine.java
│   │   │   │   ├── IMBuddy.java
│   │   │   │   ├── IMFile.java
│   │   │   │   ├── IMGroup.java
│   │   │   │   ├── IMLogin.java
│   │   │   │   ├── IMMessage.java
│   │   │   │   ├── IMOther.java
│   │   │   │   └── IMSwitchService.java
│   │   │   ├── Security.java
│   │   │   ├── ui
│   │   │   │   ├── activity
│   │   │   │   │   ├── ChatFragmentActivity.java
│   │   │   │   │   ├── ContactFragmentActivity.java
│   │   │   │   │   ├── DetailPortraitActivity.java
│   │   │   │   │   ├── GroupManagermentActivity.java
│   │   │   │   │   ├── GroupMemberSelectActivity.java
│   │   │   │   │   ├── ImageGridActivity.java
│   │   │   │   │   ├── LoginActivity.java
│   │   │   │   │   ├── MainActivity.java
│   │   │   │   │   ├── MessageActivity.java
│   │   │   │   │   ├── PickPhotoActivity.java
│   │   │   │   │   ├── PreviewActivity.java
│   │   │   │   │   ├── PreviewGifActivity.java
│   │   │   │   │   ├── PreviewMessageImagesActivity.java
│   │   │   │   │   ├── PreviewTextActivity.java
│   │   │   │   │   ├── SearchActivity.java
│   │   │   │   │   ├── SettingActivity.java
│   │   │   │   │   ├── UserInfoActivity.java
│   │   │   │   │   └── WebViewFragmentActivity.java
│   │   │   │   ├── adapter
│   │   │   │   │   ├── album
│   │   │   │   │   │   ├── AlbumHelper.java
│   │   │   │   │   │   ├── BitmapCache.java
│   │   │   │   │   │   ├── ImageBucketAdapter.java
│   │   │   │   │   │   ├── ImageBucket.java
│   │   │   │   │   │   ├── ImageGridAdapter.java
│   │   │   │   │   │   └── ImageItem.java
│   │   │   │   │   ├── ChatAdapter.java
│   │   │   │   │   ├── ContactAdapter.java
│   │   │   │   │   ├── DeptAdapter.java
│   │   │   │   │   ├── EmoGridViewAdapter.java
│   │   │   │   │   ├── GroupManagerAdapter.java
│   │   │   │   │   ├── GroupSelectAdapter.java
│   │   │   │   │   ├── InternalAdapter.java
│   │   │   │   │   ├── MessageAdapter.java
│   │   │   │   │   ├── SearchAdapter.java
│   │   │   │   │   ├── ViewPageAdapter.java
│   │   │   │   │   └── YayaEmoGridViewAdapter.java
│   │   │   │   ├── base
│   │   │   │   │   ├── TTBaseActivity.java
│   │   │   │   │   ├── TTBaseFragmentActivity.java
│   │   │   │   │   └── TTBaseFragment.java
│   │   │   │   ├── fragment
│   │   │   │   │   ├── ChatFragment.java
│   │   │   │   │   ├── ContactFragment.java
│   │   │   │   │   ├── GroupManagerFragment.java
│   │   │   │   │   ├── GroupMemberSelectFragment.java
│   │   │   │   │   ├── InternalFragment.java
│   │   │   │   │   ├── MainFragment.java
│   │   │   │   │   ├── MessageImageFragment.java
│   │   │   │   │   ├── MyFragment.java
│   │   │   │   │   ├── SearchFragment.java
│   │   │   │   │   ├── SettingFragment.java
│   │   │   │   │   ├── UserInfoFragment.java
│   │   │   │   │   └── WebviewFragment.java
│   │   │   │   ├── helper
│   │   │   │   │   ├── AudioPlayerHandler.java
│   │   │   │   │   ├── AudioRecordHandler.java
│   │   │   │   │   ├── BubbleImageHelper.java
│   │   │   │   │   ├── CheckboxConfigHelper.java
│   │   │   │   │   ├── CircleBitmapDisplayer.java
│   │   │   │   │   ├── Emoparser.java
│   │   │   │   │   ├── GifAnimationDrawable.java
│   │   │   │   │   ├── GifDecoder.java
│   │   │   │   │   ├── listener
│   │   │   │   │   │   └── OnDoubleClickListener.java
│   │   │   │   │   └── PhotoHelper.java
│   │   │   │   └── widget
│   │   │   │   ├── BubbleImageView.java
│   │   │   │   ├── CustomEditView.java
│   │   │   │   ├── CustomViewPager.java
│   │   │   │   ├── DrawableCenterEditText.java
│   │   │   │   ├── EmoGridView.java
│   │   │   │   ├── GifDecoder.java
│   │   │   │   ├── GifLoadTask.java
│   │   │   │   ├── GifView.java
│   │   │   │   ├── GroupManagerGridView.java
│   │   │   │   ├── IMBaseImageView.java
│   │   │   │   ├── IMGroupAvatar.java
│   │   │   │   ├── message
│   │   │   │   │   ├── AudioRenderView.java
│   │   │   │   │   ├── BaseMsgRenderView.java
│   │   │   │   │   ├── EmojiRenderView.java
│   │   │   │   │   ├── GifImageRenderView.java
│   │   │   │   │   ├── ImageRenderView.java
│   │   │   │   │   ├── MessageOperatePopup.java
│   │   │   │   │   ├── RenderType.java
│   │   │   │   │   ├── TextRenderView.java
│   │   │   │   │   └── TimeRenderView.java
│   │   │   │   ├── MGDialog.java
│   │   │   │   ├── MGProgressbar.java
│   │   │   │   ├── NaviTabButton.java
│   │   │   │   ├── PinkToast.java
│   │   │   │   ├── SearchEditText.java
│   │   │   │   ├── SortSideBar.java
│   │   │   │   ├── SpeekerToast.java
│   │   │   │   ├── TopTabButton.java
│   │   │   │   ├── YayaEmoGridView.java
│   │   │   │   └── ZoomableImageView.java
│   │   │   └── utils
│   │   │   ├── CharacterParser.java
│   │   │   ├── CommonUtil.java
│   │   │   ├── DateUtil.java
│   │   │   ├── DumpUtils.java
│   │   │   ├── FileUtil.java
│   │   │   ├── ImageLoaderUtil.java
│   │   │   ├── ImageUtil.java
│   │   │   ├── IMUIHelper.java
│   │   │   ├── Logger.java
│   │   │   ├── MoGuHttpClient.java
│   │   │   ├── NetworkUtil.java
│   │   │   ├── packageInfo
│   │   │   ├── pinyin
│   │   │   │   ├── HanziToPinyin3.java
│   │   │   │   └── PinYin.java
│   │   │   └── ScreenUtil.java
│   │   ├── jni
│   │   │   ├── Android.mk
│   │   │   ├── Application.mk
│   │   │   ├── include
│   │   │   │   ├── Makefile.am
│   │   │   │   ├── Makefile.in
│   │   │   │   └── speex
│   │   │   │   ├── Makefile.am
│   │   │   │   ├── Makefile.in
│   │   │   │   ├── speex_bits.h
│   │   │   │   ├── speex_buffer.h
│   │   │   │   ├── speex_callbacks.h
│   │   │   │   ├── speex_config_types.h
│   │   │   │   ├── speex_config_types.h.in
│   │   │   │   ├── speex_echo.h
│   │   │   │   ├── speex.h
│   │   │   │   ├── speex_header.h
│   │   │   │   ├── speex_jitter.h
│   │   │   │   ├── speex_preprocess.h
│   │   │   │   ├── speex_resampler.h
│   │   │   │   ├── speex_stereo.h
│   │   │   │   └── speex_types.h
│   │   │   ├── libspeex
│   │   │   │   ├── arch.h
│   │   │   │   ├── bits.c
│   │   │   │   ├── buffer.c
│   │   │   │   ├── cb_search_arm4.h
│   │   │   │   ├── cb_search_bfin.h
│   │   │   │   ├── cb_search.c
│   │   │   │   ├── cb_search.h
│   │   │   │   ├── cb_search_sse.h
│   │   │   │   ├── echo_diagnostic.m
│   │   │   │   ├── 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
│   │   │   │   ├── fftwrap.c
│   │   │   │   ├── fftwrap.h
│   │   │   │   ├── filterbank.c
│   │   │   │   ├── filterbank.h
│   │   │   │   ├── filters_arm4.h
│   │   │   │   ├── filters_bfin.h
│   │   │   │   ├── filters.c
│   │   │   │   ├── filters.h
│   │   │   │   ├── filters_sse.h
│   │   │   │   ├── fixed_arm4.h
│   │   │   │   ├── fixed_arm5e.h
│   │   │   │   ├── fixed_bfin.h
│   │   │   │   ├── fixed_debug.h
│   │   │   │   ├── fixed_generic.h
│   │   │   │   ├── gain_table.c
│   │   │   │   ├── gain_table_lbr.c
│   │   │   │   ├── hexc_10_32_table.c
│   │   │   │   ├── hexc_table.c
│   │   │   │   ├── high_lsp_tables.c
│   │   │   │   ├── jitter.c
│   │   │   │   ├── kiss_fft.c
│   │   │   │   ├── _kiss_fft_guts.h
│   │   │   │   ├── kiss_fft.h
│   │   │   │   ├── kiss_fftr.c
│   │   │   │   ├── kiss_fftr.h
│   │   │   │   ├── lpc_bfin.h
│   │   │   │   ├── lpc.c
│   │   │   │   ├── lpc.h
│   │   │   │   ├── lsp_bfin.h
│   │   │   │   ├── lsp.c
│   │   │   │   ├── lsp.h
│   │   │   │   ├── lsp_tables_nb.c
│   │   │   │   ├── ltp_arm4.h
│   │   │   │   ├── ltp_bfin.h
│   │   │   │   ├── ltp.c
│   │   │   │   ├── ltp.h
│   │   │   │   ├── ltp_sse.h
│   │   │   │   ├── Makefile.am
│   │   │   │   ├── Makefile.in
│   │   │   │   ├── math_approx.h
│   │   │   │   ├── mdf.c
│   │   │   │   ├── misc_bfin.h
│   │   │   │   ├── modes.c
│   │   │   │   ├── modes.h
│   │   │   │   ├── modes_wb.c
│   │   │   │   ├── nb_celp.c
│   │   │   │   ├── nb_celp.h
│   │   │   │   ├── os_support.h
│   │   │   │   ├── preprocess.c
│   │   │   │   ├── pseudofloat.h
│   │   │   │   ├── quant_lsp_bfin.h
│   │   │   │   ├── quant_lsp.c
│   │   │   │   ├── quant_lsp.h
│   │   │   │   ├── resample.c
│   │   │   │   ├── resample_sse.h
│   │   │   │   ├── sb_celp.c
│   │   │   │   ├── sb_celp.h
│   │   │   │   ├── scal.c
│   │   │   │   ├── smallft.c
│   │   │   │   ├── smallft.h
│   │   │   │   ├── speex.c
│   │   │   │   ├── speex_callbacks.c
│   │   │   │   ├── speex_header.c
│   │   │   │   ├── stack_alloc.h
│   │   │   │   ├── stereo.c
│   │   │   │   ├── testdenoise.c
│   │   │   │   ├── testecho.c
│   │   │   │   ├── testenc.c
│   │   │   │   ├── testenc_uwb.c
│   │   │   │   ├── testenc_wb.c
│   │   │   │   ├── testjitter.c
│   │   │   │   ├── vbr.c
│   │   │   │   ├── vbr.h
│   │   │   │   ├── vorbis_psy.h
│   │   │   │   ├── vq_arm4.h
│   │   │   │   ├── vq_bfin.h
│   │   │   │   ├── vq.c
│   │   │   │   ├── vq.h
│   │   │   │   ├── vq_sse.h
│   │   │   │   └── window.c
│   │   │   └── speex_jni.cpp
│   │   ├── jniLibs
│   │   │   ├── armeabi
│   │   │   │   ├── libsecurity.so
│   │   │   │   └── libspeex.so
│   │   │   └── armeabi-v7a
│   │   │   ├── libsecurity.so
│   │   │   └── libspeex.so
│   │   └── res
│   │   ├── anim
│   │   │   ├── login_splash.xml
│   │   │   ├── tt_album_enter.xml
│   │   │   ├── tt_album_exit.xml
│   │   │   ├── tt_image_enter.xml
│   │   │   ├── tt_image_exit.xml
│   │   │   ├── tt_image_left_enter.xml
│   │   │   ├── tt_image_left_exit.xml
│   │   │   ├── tt_speeker_in.xml
│   │   │   ├── tt_speeker_out.xml
│   │   │   ├── tt_stay.xml
│   │   │   ├── tt_stay_x.xml
│   │   │   ├── tt_voice_play_mine.xml
│   │   │   └── tt_voice_play_other.xml
│   │   ├── color
│   │   │   ├── checkbox_background.xml
│   │   │   ├── toggle_checkbox_background.xml
│   │   │   ├── tt_dialog_negative_text_color.xml
│   │   │   └── tt_positive_text_color.xml
│   │   ├── drawable
│   │   │   ├── tab_bg_selector.xml
│   │   │   ├── tt_bgd_relatly_line.xml
│   │   │   ├── tt_bt_nobgd.xml
│   │   │   ├── tt_default_emo_dots.xml
│   │   │   ├── tt_dialog_bg.xml
│   │   │   ├── tt_dialog_negative_btn_bg.xml
│   │   │   ├── tt_dialog_positive_btn_bg.xml
│   │   │   ├── tt_list_item_bk.xml
│   │   │   ├── tt_message_cursor.xml
│   │   │   ├── tt_message_image_border.xml
│   │   │   ├── tt_mine_item_bg.xml
│   │   │   ├── tt_other_item_bg.xml
│   │   │   ├── tt_panel_circle.xml
│   │   │   ├── tt_panel_edt_focused.xml
│   │   │   ├── tt_panel_edt_msg_bk.xml
│   │   │   ├── tt_panel_voice_forward.xml
│   │   │   ├── tt_pannel_edt_normal.xml
│   │   │   ├── tt_pickimage_item_bg.xml
│   │   │   ├── tt_popup_background.xml
│   │   │   ├── tt_progressbar.xml
│   │   │   ├── tt_search_edt_bk.xml
│   │   │   ├── tt_send_voice_btn_bg.xml
│   │   │   ├── tt_show_emo_btn.xml
│   │   │   └── tt_text_while.xml
│   │   ├── drawable-hdpi
│   │   │   └── tt_loading_circle.png
│   │   ├── drawable-xhdpi
│   │   │   ├── check_box.png
│   │   │   ├── check.png
│   │   │   ├── discussion_group_default.png
│   │   │   ├── group_avatar_bk.png
│   │   │   ├── group_default.png
│   │   │   ├── pc_notify.png
│   │   │   ├── seleted.png
│   │   │   ├── tele.png
│   │   │   ├── tt_album_arrow.png
│   │   │   ├── tt_album_arrow_sel.png
│   │   │   ├── tt_album_bottom_bar.png
│   │   │   ├── tt_album_img_selected.png
│   │   │   ├── tt_album_img_select_nor.png
│   │   │   ├── tt_album_item_sel_bk.png
│   │   │   ├── tt_back_btn.png
│   │   │   ├── tt_bg_popup_left_nomal.png
│   │   │   ├── tt_bg_popup_left_pressed.png
│   │   │   ├── tt_bg_popup_normal.9.png
│   │   │   ├── tt_bg_popup_pressed.9.png
│   │   │   ├── tt_bg_popup_right_nomal.png
│   │   │   ├── tt_bg_popup_right_pressed.png
│   │   │   ├── tt_chatting_biaoqing_btn_normal.png
│   │   │   ├── tt_clear_bar.png
│   │   │   ├── tt_clock_icon.png
│   │   │   ├── tt_contact_side_search.png
│   │   │   ├── tt_contact_top_left_nor.png
│   │   │   ├── tt_contact_top_left_sel.png
│   │   │   ├── tt_contact_top_right_nor.png
│   │   │   ├── tt_contact_top_right_sel.png
│   │   │   ├── tt_default_album_grid_image.png
│   │   │   ├── tt_default_arrow.png
│   │   │   ├── tt_default_btn_bk.png
│   │   │   ├── tt_default_dot_down.png
│   │   │   ├── tt_default_dot_up.png
│   │   │   ├── tt_default_emo_back_normal.png
│   │   │   ├── tt_default_image_error.png
│   │   │   ├── tt_default_image.png
│   │   │   ├── tt_default_message_error_image.png
│   │   │   ├── tt_default_message_image.png
│   │   │   ├── tt_default_user_portrait_corner.png
│   │   │   ├── tt_delete_bar.png
│   │   │   ├── tt_dialog_navigative_btn_bg_normal.9.png
│   │   │   ├── tt_dialog_navigative_btn_bg_pressed.9.png
│   │   │   ├── tt_dialog_positive_btn_bg_normal.9.png
│   │   │   ├── tt_dialog_positive_btn_bg_pressed.9.png
│   │   │   ├── tt_divide_line.png
│   │   │   ├── tt_e0.png
│   │   │   ├── tt_e10.png
│   │   │   ├── tt_e11.png
│   │   │   ├── tt_e12.png
│   │   │   ├── tt_e13.png
│   │   │   ├── tt_e14.png
│   │   │   ├── tt_e15.png
│   │   │   ├── tt_e16.png
│   │   │   ├── tt_e17.png
│   │   │   ├── tt_e18.png
│   │   │   ├── tt_e19.png
│   │   │   ├── tt_e1.png
│   │   │   ├── tt_e20.png
│   │   │   ├── tt_e21.png
│   │   │   ├── tt_e22.png
│   │   │   ├── tt_e23.png
│   │   │   ├── tt_e24.png
│   │   │   ├── tt_e25.png
│   │   │   ├── tt_e26.png
│   │   │   ├── tt_e27.png
│   │   │   ├── tt_e28.png
│   │   │   ├── tt_e29.png
│   │   │   ├── tt_e2.png
│   │   │   ├── tt_e30.png
│   │   │   ├── tt_e31.png
│   │   │   ├── tt_e32.png
│   │   │   ├── tt_e33.png
│   │   │   ├── tt_e34.png
│   │   │   ├── tt_e35.png
│   │   │   ├── tt_e36.png
│   │   │   ├── tt_e37.png
│   │   │   ├── tt_e38.png
│   │   │   ├── tt_e39.png
│   │   │   ├── tt_e3.png
│   │   │   ├── tt_e40.png
│   │   │   ├── tt_e41.png
│   │   │   ├── tt_e42.png
│   │   │   ├── tt_e43.png
│   │   │   ├── tt_e44.png
│   │   │   ├── tt_e45.png
│   │   │   ├── tt_e4.png
│   │   │   ├── tt_e5.png
│   │   │   ├── tt_e6.png
│   │   │   ├── tt_e7.png
│   │   │   ├── tt_e8.png
│   │   │   ├── tt_e9.png
│   │   │   ├── tt_empty_default_icon.png
│   │   │   ├── tt_empty_no_contact_icon.png
│   │   │   ├── tt_group_manager_add_user.png
│   │   │   ├── tt_group_manager_delete_user.png
│   │   │   ├── tt_group_tag_admin.png
│   │   │   ├── tt_ic_launcher.png
│   │   │   ├── tt_internal_page_logo.png
│   │   │   ├── tt_login_logo2.png
│   │   │   ├── tt_login_logo.png
│   │   │   ├── tt_login_pwd.png
│   │   │   ├── tt_login_user.png
│   │   │   ├── tt_logo2.png
│   │   │   ├── tt_logo.png
│   │   │   ├── tt_message_botify_no_disturb.png
│   │   │   ├── tt_message_image_default.png
│   │   │   ├── tt_message_image_error.png
│   │   │   ├── tt_message_notify.9.png
│   │   │   ├── tt_message_notify_single.png
│   │   │   ├── tt_message_text_bg.9.png
│   │   │   ├── tt_message_title_time_bg.9.png
│   │   │   ├── tt_mine_image_bk.png
│   │   │   ├── tt_mine_image_default_bk.png
│   │   │   ├── tt_mine_image_horizontal_bk.png
│   │   │   ├── tt_mine_image_vertical_bk.9.png
│   │   │   ├── tt_mine_item_bg_normal.9.png
│   │   │   ├── tt_mine_item_bg_pressed.9.png
│   │   │   ├── tt_msg_tip.png
│   │   │   ├── tt_my_message_bkgnd.9.png
│   │   │   ├── tt_new_msg_bk.png
│   │   │   ├── tt_no_disturb_image.png
│   │   │   ├── tt_other_default_image_bk.9.png
│   │   │   ├── tt_other_image_bk.png
│   │   │   ├── tt_other_image_default_bk.png
│   │   │   ├── tt_other_image_horizontal_bk.png
│   │   │   ├── tt_other_image_vertical_bk.9.png
│   │   │   ├── tt_other_item_bg_normal.9.png
│   │   │   ├── tt_other_item_bg_pressed.9.png
│   │   │   ├── tt_other_text_background.png
│   │   │   ├── tt_page_item_bk.9.png
│   │   │   ├── tt_page_my_setting.png
│   │   │   ├── tt_pannel_bk.9.png
│   │   │   ├── tt_pannel_btn_voiceforward_normal.9.png
│   │   │   ├── tt_pannel_btn_voiceforward_pressed.9.png
│   │   │   ├── tt_preview_dot_down.png
│   │   │   ├── tt_preview_dot_up.png
│   │   │   ├── tt_search.png
│   │   │   ├── tt_send_btn_bg.9.png
│   │   │   ├── tt_send_message_btn_bg.9.png
│   │   │   ├── tt_send_voice_btn_bg.9.png
│   │   │   ├── tt_send_voice_btn_bg_normal.9.png
│   │   │   ├── tt_send_voice_btn_btn_pressed.9.png
│   │   │   ├── tt_show_add_photo_btn.png
│   │   │   ├── tt_show_head_toast_bg.9.png
│   │   │   ├── tt_small_icon.png
│   │   │   ├── tt_sound_volume_01.png
│   │   │   ├── tt_sound_volume_02.png
│   │   │   ├── tt_sound_volume_03.png
│   │   │   ├── tt_sound_volume_04.png
│   │   │   ├── tt_sound_volume_05.png
│   │   │   ├── tt_sound_volume_06.png
│   │   │   ├── tt_sound_volume_07.png
│   │   │   ├── tt_sound_volume_cancel_bk.png
│   │   │   ├── tt_sound_volume_default_bk.png
│   │   │   ├── tt_sound_volume_short_tip_bk.png
│   │   │   ├── tt_speeker_tip_bg.png
│   │   │   ├── tt_splash.jpg
│   │   │   ├── tt_switch_to_keyboard_btn.png
│   │   │   ├── tt_tab_bk.png
│   │   │   ├── tt_tab_chat_nor.png
│   │   │   ├── tt_tab_chat_sel.png
│   │   │   ├── tt_tab_contact_nor.png
│   │   │   ├── tt_tab_contact_sel.png
│   │   │   ├── tt_tab_internal_nor.png
│   │   │   ├── tt_tab_internal_select.png
│   │   │   ├── tt_tab_me_nor.png
│   │   │   ├── tt_tab_me_sel.png
│   │   │   ├── tt_take_camera_btn_bg.png
│   │   │   ├── tt_take_photo_btn_bg.png
│   │   │   ├── tt_top_back.png
│   │   │   ├── tt_top_default_bk.png
│   │   │   ├── tt_top_right_group_manager.png
│   │   │   ├── tt_top_search_bg.9.png
│   │   │   ├── tt_top_search.png
│   │   │   ├── tt_unread_message_notify_bg.png
│   │   │   ├── tt_voice_btn_btn.png
│   │   │   ├── tt_voice_node_mine_playing001.png
│   │   │   ├── tt_voice_node_mine_playing002.png
│   │   │   ├── tt_voice_node_mine_playing003.png
│   │   │   ├── tt_voice_node_mine.png
│   │   │   ├── tt_voice_node_other_playing001.png
│   │   │   ├── tt_voice_node_other_playing002.png
│   │   │   ├── tt_voice_node_other_playing003.png
│   │   │   ├── tt_voice_node_other.png
│   │   │   ├── tt_waterfall_refresh_bg.9.png
│   │   │   ├── tt_yaya_e10.gif
│   │   │   ├── tt_yaya_e11.gif
│   │   │   ├── tt_yaya_e12.gif
│   │   │   ├── tt_yaya_e13.gif
│   │   │   ├── tt_yaya_e14.gif
│   │   │   ├── tt_yaya_e15.gif
│   │   │   ├── tt_yaya_e16.gif
│   │   │   ├── tt_yaya_e17.gif
│   │   │   ├── tt_yaya_e18.gif
│   │   │   ├── tt_yaya_e19.gif
│   │   │   ├── tt_yaya_e1.gif
│   │   │   ├── tt_yaya_e2.gif
│   │   │   ├── tt_yaya_e3.gif
│   │   │   ├── tt_yaya_e4.gif
│   │   │   ├── tt_yaya_e5.gif
│   │   │   ├── tt_yaya_e6.gif
│   │   │   ├── tt_yaya_e7.gif
│   │   │   ├── tt_yaya_e8.gif
│   │   │   ├── tt_yaya_e9.gif
│   │   │   ├── uncheck_box.png
│   │   │   ├── uncheck.png
│   │   │   ├── warning.png
│   │   │   ├── wifi.png
│   │   │   ├── xiaoxia.9.png
│   │   │   └── xiaoxian.9.png
│   │   ├── drawable-xxhdpi
│   │   │   └── ic_launcher.png
│   │   ├── layout
│   │   │   ├── activity_preview_message_images.xml
│   │   │   ├── fragment_message_image.xml
│   │   │   ├── fragment_preview_message_images.xml
│   │   │   ├── mogujie_notification.xml
│   │   │   ├── tt_activity_base.xml
│   │   │   ├── tt_activity_detail_portrait.xml
│   │   │   ├── tt_activity_groupmanage.xml
│   │   │   ├── tt_activity_group_member_select.xml
│   │   │   ├── tt_activity_image_grid.xml
│   │   │   ├── tt_activity_login.xml
│   │   │   ├── tt_activity_main.xml
│   │   │   ├── tt_activity_message.xml
│   │   │   ├── tt_activity_pick_photo.xml
│   │   │   ├── tt_activity_preview_gif.xml
│   │   │   ├── tt_activity_preview_text.xml
│   │   │   ├── tt_activity_preview.xml
│   │   │   ├── tt_custom_dialog.xml
│   │   │   ├── tt_dialog_call.xml
│   │   │   ├── tt_display_image_layout.xml
│   │   │   ├── tt_fragment_activity_chat.xml
│   │   │   ├── tt_fragment_activity_contact.xml
│   │   │   ├── tt_fragment_activity_search.xml
│   │   │   ├── tt_fragment_activity_setting.xml
│   │   │   ├── tt_fragment_activity_userinfo.xml
│   │   │   ├── tt_fragment_activity_webview.xml
│   │   │   ├── tt_fragment_base.xml
│   │   │   ├── tt_fragment_chat.xml
│   │   │   ├── tt_fragment_contact.xml
│   │   │   ├── tt_fragment_group_manage.xml
│   │   │   ├── tt_fragment_group_member_select.xml
│   │   │   ├── tt_fragment_internal.xml
│   │   │   ├── tt_fragment_my.xml
│   │   │   ├── tt_fragment_search.xml
│   │   │   ├── tt_fragment_setting.xml
│   │   │   ├── tt_fragment_user_detail.xml
│   │   │   ├── tt_fragment_webview.xml
│   │   │   ├── tt_group_manage_grid_item.xml
│   │   │   ├── tt_history_divider_item.xml
│   │   │   ├── tt_image_loadding_layout.xml
│   │   │   ├── tt_item_chat_group.xml
│   │   │   ├── tt_item_chat.xml
│   │   │   ├── tt_item_contact_group.xml
│   │   │   ├── tt_item_contact.xml
│   │   │   ├── tt_item_image_grid.xml
│   │   │   ├── tt_item_image_pick.xml
│   │   │   ├── tt_item_internalitem.xml
│   │   │   ├── tt_messagelist_header.xml
│   │   │   ├── tt_message_title_time.xml
│   │   │   ├── tt_mine_audio_message_item.xml
│   │   │   ├── tt_mine_emoji_message_item.xml
│   │   │   ├── tt_mine_gifimage_message_item.xml
│   │   │   ├── tt_mine_image_message_item.xml
│   │   │   ├── tt_mine_text_message_item.xml
│   │   │   ├── tt_navi_tab_button.xml
│   │   │   ├── tt_other_audio_message_item.xml
│   │   │   ├── tt_other_emoji_message_item.xml
│   │   │   ├── tt_other_gifimage_message_item.xml
│   │   │   ├── tt_other_image_message_item.xml
│   │   │   ├── tt_other_text_message_item.xml
│   │   │   ├── tt_popup_item_view.xml
│   │   │   ├── tt_popup_list.xml
│   │   │   ├── tt_progress_ly.xml
│   │   │   ├── tt_progress.xml
│   │   │   ├── tt_sound_volume_dialog.xml
│   │   │   ├── tt_speeker_layout.xml
│   │   │   ├── tt_top_tab_button.xml
│   │   │   ├── tt_top_tab.xml
│   │   │   ├── tt_update_progress.xml
│   │   │   ├── tt_view_dialog_base.xml
│   │   │   └── tt_voicetip.xml
│   │   ├── values
│   │   │   ├── attrs.xml
│   │   │   ├── biv_attrs.xml
│   │   │   ├── tt_arrays.xml
│   │   │   ├── tt_color.xml
│   │   │   ├── tt_dimens.xml
│   │   │   ├── tt_ptr_dimens.xml
│   │   │   ├── tt_pull_refresh_strings.xml
│   │   │   ├── tt_strings_activity_contact.xml
│   │   │   ├── tt_strings_activity_login.xml
│   │   │   ├── tt_strings_activity_message.xml
│   │   │   ├── tt_strings_main_page.xml
│   │   │   ├── tt_strings.xml
│   │   │   └── tt_styles.xml
│   │   ├── values-sw600dp
│   │   │   └── dimens.xml
│   │   ├── values-sw720dp-land
│   │   │   └── dimens.xml
│   │   └── values-w820dp
│   │   └── im_dimens.xml
│   ├── build.gradle
│   ├── daogenerator
│   │   ├── build.gradle
│   │   └── src
│   │   └── main
│   │   └── java
│   │   └── com
│   │   └── mogujie
│   │   └── GreenDaoGenerator.java
│   ├── mgimlibs
│   │   ├── build.gradle
│   │   └── src
│   │   └── main
│   │   ├── AndroidManifest.xml
│   │   ├── java
│   │   │   └── com
│   │   │   ├── handmark
│   │   │   │   └── pulltorefresh
│   │   │   │   └── library
│   │   │   │   ├── extras
│   │   │   │   │   ├── PullToRefreshWebView2.java
│   │   │   │   │   └── SoundPullEventListener.java
│   │   │   │   ├── ILoadingLayout.java
│   │   │   │   ├── internal
│   │   │   │   │   ├── EmptyViewMethodAccessor.java
│   │   │   │   │   ├── FlipLoadingLayout.java
│   │   │   │   │   ├── IndicatorLayout.java
│   │   │   │   │   ├── LoadingLayout.java
│   │   │   │   │   ├── RotateLoadingLayout.java
│   │   │   │   │   ├── Utils.java
│   │   │   │   │   └── ViewCompat.java
│   │   │   │   ├── IPullToRefresh.java
│   │   │   │   ├── LoadingLayoutProxy.java
│   │   │   │   ├── OverscrollHelper.java
│   │   │   │   ├── PullToRefreshAdapterViewBase.java
│   │   │   │   ├── PullToRefreshBase.java
│   │   │   │   ├── PullToRefreshExpandableListView.java
│   │   │   │   ├── PullToRefreshGridView.java
│   │   │   │   ├── PullToRefreshHorizontalScrollView.java
│   │   │   │   ├── PullToRefreshListViewForNoneHeaderDivider.java
│   │   │   │   ├── PullToRefreshListView.java
│   │   │   │   ├── PullToRefreshScrollView.java
│   │   │   │   └── PullToRefreshWebView.java
│   │   │   ├── mogujie
│   │   │   │   └── tools
│   │   │   │   ├── EncryptTools.java
│   │   │   │   ├── FileIOTools.java
│   │   │   │   ├── MGAutoUpdate.java
│   │   │   │   ├── MGJNotify.java
│   │   │   │   ├── ScreenTools.java
│   │   │   │   ├── StringTools.java
│   │   │   │   ├── SysInfo.java
│   │   │   │   └── TimeTools.java
│   │   │   └── polites
│   │   │   └── android
│   │   │   ├── Animation.java
│   │   │   ├── Animator.java
│   │   │   ├── FlingAnimation.java
│   │   │   ├── FlingAnimationListener.java
│   │   │   ├── FlingListener.java
│   │   │   ├── GestureImageView.java
│   │   │   ├── GestureImageViewListener.java
│   │   │   ├── GestureImageViewTouchListener.java
│   │   │   ├── MathUtils.java
│   │   │   ├── MoveAnimation.java
│   │   │   ├── MoveAnimationListener.java
│   │   │   ├── VectorF.java
│   │   │   ├── ZoomAnimation.java
│   │   │   └── ZoomAnimationListener.java
│   │   └── res
│   │   ├── anim
│   │   │   ├── slide_in_from_bottom.xml
│   │   │   ├── slide_in_from_top.xml
│   │   │   ├── slide_out_to_bottom.xml
│   │   │   └── slide_out_to_top.xml
│   │   ├── drawable
│   │   │   ├── captcha_lib_image_layout_shape.xml
│   │   │   ├── indicator_bg_bottom.xml
│   │   │   ├── indicator_bg_top.xml
│   │   │   └── pull_to_refresh_indicator_bg.xml
│   │   ├── drawable-xhdpi
│   │   │   ├── default_ptr_flip.png
│   │   │   ├── default_ptr_rotate.png
│   │   │   ├── ic_launcher.png
│   │   │   ├── indicator_arrow.png
│   │   │   ├── pull_to_refresh_indicator.png
│   │   │   ├── shadow_bottom.png
│   │   │   ├── shadow_left.png
│   │   │   └── shadow_right.png
│   │   ├── layout
│   │   │   ├── picutre_borad.xml
│   │   │   ├── pull_refresh_scroll_view.xml
│   │   │   ├── pull_to_refresh_header_horizontal.xml
│   │   │   └── pull_to_refresh_header_vertical.xml
│   │   └── values
│   │   ├── lib_attrs.xml
│   │   ├── prs_dimens.xml
│   │   ├── prs_strings.xml
│   │   ├── prs_styles.xml
│   │   ├── ptr_attrs.xml
│   │   ├── ptr_dimens.xml
│   │   ├── ptr_ids.xml
│   │   ├── pull_refresh_strings.xml
│   │   └── strings.xml
│   ├── README.md
│   └── settings.gradle
├── auto_setup
│   ├── gcc_setup
│   │   ├── gcc_setup.sh
│   │   └── termcap-1.3.1.tar.gz
│   ├── im_server
│   │   ├── conf
│   │   │   ├── dbproxyserver.conf
│   │   │   ├── fileserver.conf
│   │   │   ├── httpmsgserver.conf
│   │   │   ├── loginserver.conf
│   │   │   ├── msfs.conf
│   │   │   ├── msgserver.conf
│   │   │   ├── pushserver.conf
│   │   │   └── routeserver.conf
│   │   └── setup.sh
│   ├── im_web
│   │   ├── conf
│   │   │   ├── config.php
│   │   │   ├── database.php
│   │   │   └── im.com.conf
│   │   └── setup.sh
│   ├── INSTALL.md
│   ├── mariadb
│   │   ├── conf
│   │   │   └── ttopen.sql
│   │   └── setup.sh
│   ├── nginx_php
│   │   ├── nginx
│   │   │   └── setup.sh
│   │   └── php
│   │   ├── conf
│   │   │   ├── php-fpm.conf
│   │   │   └── php.ini
│   │   └── setup.sh
│   ├── README.md
│   ├── redis
│   │   ├── conf
│   │   │   └── redis.conf
│   │   └── setup.sh
│   └── setup.sh
├── doc
│   ├── http接口定义.md
│   ├── README.md
│   ├── RELEASE.md
│   └── 协议文件说明.md
├── ios
│   ├── Podfile
│   ├── Podfile.lock
│   ├── TeamTalk
│   │   ├── AppDelegate.h
│   │   ├── AppDelegate.m
│   │   ├── Base.lproj
│   │   │   └── LaunchScreen.xib
│   │   ├── Category
│   │   │   ├── DDRuntimeSwizzle.h
│   │   │   ├── DDRuntimeSwizzle.m
│   │   │   ├── NSData+Conversion.h
│   │   │   ├── NSData+Conversion.m
│   │   │   ├── NSDate+DDAddition.h
│   │   │   ├── NSDate+DDAddition.m
│   │   │   ├── NSDictionary+JSON.h
│   │   │   ├── NSDictionary+JSON.m
│   │   │   ├── NSDictionary+Safe.h
│   │   │   ├── NSDictionary+Safe.m
│   │   │   ├── NSIndexSet+AQIndexesOutsideSet.h
│   │   │   ├── NSIndexSet+AQIndexesOutsideSet.m
│   │   │   ├── NSIndexSet+AQIsSetContiguous.h
│   │   │   ├── NSIndexSet+AQIsSetContiguous.m
│   │   │   ├── NSObject+Block.h
│   │   │   ├── NSObject+Block.m
│   │   │   ├── NSString+Additions.h
│   │   │   ├── NSString+Additions.m
│   │   │   ├── NSString+DDPath.h
│   │   │   ├── NSString+DDPath.m
│   │   │   ├── NSString+JSMessagesView.h
│   │   │   ├── NSString+JSMessagesView.m
│   │   │   ├── NSURL+SafeURL.h
│   │   │   ├── NSURL+SafeURL.m
│   │   │   ├── UIAlertView+Block.h
│   │   │   ├── UIAlertView+Block.m
│   │   │   ├── UIButton+JSMessagesView.h
│   │   │   ├── UIButton+JSMessagesView.m
│   │   │   ├── UIColor+AQGridView.h
│   │   │   ├── UIColor+AQGridView.m
│   │   │   ├── UIColor+JSMessagesView.h
│   │   │   ├── UIColor+JSMessagesView.m
│   │   │   ├── UIImage+JSMessagesView.h
│   │   │   ├── UIImage+JSMessagesView.m
│   │   │   ├── UIImage+Rotate_Flip.h
│   │   │   ├── UIImage+Rotate_Flip.m
│   │   │   ├── UIImage+UIImageAddition.h
│   │   │   ├── UIImage+UIImageAddition.m
│   │   │   ├── UILabel+VerticalAlign.h
│   │   │   ├── UILabel+VerticalAlign.m
│   │   │   ├── UIScrollView+PullToLoadMore.h
│   │   │   ├── UIScrollView+PullToLoadMore.m
│   │   │   ├── UITabBar+SubView.h
│   │   │   ├── UITabBar+SubView.m
│   │   │   ├── UIView+Addition.h
│   │   │   ├── UIView+Addition.m
│   │   │   ├── UIView+AnimationOptionsForCurve.h
│   │   │   ├── UIView+AnimationOptionsForCurve.m
│   │   │   ├── UIView+PointBadge.h
│   │   │   └── UIView+PointBadge.m
│   │   ├── Config
│   │   │   ├── MTTConfig.h
│   │   │   ├── MTTConstant.h
│   │   │   ├── MTTConstant.m
│   │   │   └── MTTPinyinConstant.h
│   │   ├── Control
│   │   │   ├── MTTAvatarImageView.h
│   │   │   ├── MTTAvatarImageView.m
│   │   │   ├── MTTAvatarManager.h
│   │   │   ├── MTTAvatarManager.m
│   │   │   ├── MTTLogoAnimateView.h
│   │   │   ├── MTTLogoAnimateView.m
│   │   │   ├── TouchDownGestureRecognizer.h
│   │   │   └── TouchDownGestureRecognizer.m
│   │   ├── Entity
│   │   │   ├── MTTBaseEntity.h
│   │   │   ├── MTTBaseEntity.m
│   │   │   ├── MTTDepartment.h
│   │   │   ├── MTTDepartment.m
│   │   │   ├── MTTGroupEntity.h
│   │   │   ├── MTTGroupEntity.m
│   │   │   ├── MTTMessageEntity.h
│   │   │   ├── MTTMessageEntity.mm
│   │   │   ├── MTTSessionEntity.h
│   │   │   ├── MTTSessionEntity.m
│   │   │   ├── MTTUserEntity.h
│   │   │   └── MTTUserEntity.m
│   │   ├── Exist
│   │   │   ├── AQGridView
│   │   │   │   ├── AQGridViewAnimatorItem.h
│   │   │   │   ├── AQGridViewAnimatorItem.m
│   │   │   │   ├── AQGridViewCell+AQGridViewCellPrivate.h
│   │   │   │   ├── AQGridViewCell.h
│   │   │   │   ├── AQGridView+CellLayout.h
│   │   │   │   ├── AQGridView+CellLocationDelegation.h
│   │   │   │   ├── AQGridViewCell.m
│   │   │   │   ├── AQGridViewController.h
│   │   │   │   ├── AQGridViewController.m
│   │   │   │   ├── AQGridViewData.h
│   │   │   │   ├── AQGridViewData.m
│   │   │   │   ├── AQGridView.h
│   │   │   │   ├── AQGridView.m
│   │   │   │   ├── AQGridViewUpdateInfo.h
│   │   │   │   ├── AQGridViewUpdateInfo.m
│   │   │   │   ├── AQGridViewUpdateItem.h
│   │   │   │   └── AQGridViewUpdateItem.m
│   │   │   ├── AvatarBrowser
│   │   │   │   ├── SJAvatarBrowser.h
│   │   │   │   └── SJAvatarBrowser.m
│   │   │   ├── JSMessage
│   │   │   │   ├── JSDismissiveTextView.h
│   │   │   │   ├── JSDismissiveTextView.m
│   │   │   │   ├── JSMessageInputView.h
│   │   │   │   ├── JSMessageInputView.m
│   │   │   │   ├── JSMessageTextView.h
│   │   │   │   └── JSMessageTextView.m
│   │   │   ├── LCActionSheet
│   │   │   │   ├── Image
│   │   │   │   │   ├── bgImage_HL@2x.png
│   │   │   │   │   └── cellLine@2x.png
│   │   │   │   ├── LCActionSheet.h
│   │   │   │   └── LCActionSheet.m
│   │   │   ├── ProtocolBuffers
│   │   │   │   ├── IMBaseDefine.pb.h
│   │   │   │   ├── IMBaseDefine.pb.m
│   │   │   │   ├── IMBuddy.pb.h
│   │   │   │   ├── IMBuddy.pb.m
│   │   │   │   ├── IMFile.pb.h
│   │   │   │   ├── IMFile.pb.m
│   │   │   │   ├── IMGroup.pb.h
│   │   │   │   ├── IMGroup.pb.m
│   │   │   │   ├── IMInternal.pb.h
│   │   │   │   ├── IMInternal.pb.m
│   │   │   │   ├── IMLogin.pb.h
│   │   │   │   ├── IMLogin.pb.m
│   │   │   │   ├── IMMessage.pb.h
│   │   │   │   ├── IMMessage.pb.m
│   │   │   │   ├── IMOther.pb.h
│   │   │   │   ├── IMOther.pb.m
│   │   │   │   ├── IMServer.pb.h
│   │   │   │   ├── IMServer.pb.m
│   │   │   │   ├── IMSwitchService.pb.h
│   │   │   │   └── IMSwitchService.pb.m
│   │   │   ├── Reachability
│   │   │   │   ├── DDReachability.h
│   │   │   │   └── DDReachability.m
│   │   │   ├── Security
│   │   │   │   ├── libsecurity.a
│   │   │   │   └── security.h
│   │   │   └── Voice
│   │   │   ├── Code
│   │   │   │   └── Libs
│   │   │   │   ├── config.h
│   │   │   │   ├── libogg
│   │   │   │   │   ├── bitwise.c
│   │   │   │   │   ├── framing.c
│   │   │   │   │   └── ogg
│   │   │   │   │   ├── ogg.h
│   │   │   │   │   └── os_types.h
│   │   │   │   └── libspeex
│   │   │   │   ├── arch.h
│   │   │   │   ├── bits.c
│   │   │   │   ├── buffer.c
│   │   │   │   ├── cb_search_arm4.h
│   │   │   │   ├── cb_search_bfin.h
│   │   │   │   ├── cb_search.c
│   │   │   │   ├── cb_search.h
│   │   │   │   ├── cb_search_sse.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
│   │   │   │   ├── fftwrap.c
│   │   │   │   ├── fftwrap.h
│   │   │   │   ├── filterbank.c
│   │   │   │   ├── filterbank.h
│   │   │   │   ├── filters_arm4.h
│   │   │   │   ├── filters_bfin.h
│   │   │   │   ├── filters.c
│   │   │   │   ├── filters.h
│   │   │   │   ├── filters_sse.h
│   │   │   │   ├── fixed_arm4.h
│   │   │   │   ├── fixed_arm5e.h
│   │   │   │   ├── fixed_bfin.h
│   │   │   │   ├── fixed_debug.h
│   │   │   │   ├── fixed_generic.h
│   │   │   │   ├── gain_table.c
│   │   │   │   ├── gain_table_lbr.c
│   │   │   │   ├── hexc_10_32_table.c
│   │   │   │   ├── hexc_table.c
│   │   │   │   ├── high_lsp_tables.c
│   │   │   │   ├── jitter.c
│   │   │   │   ├── kiss_fft.c
│   │   │   │   ├── _kiss_fft_guts.h
│   │   │   │   ├── kiss_fft.h
│   │   │   │   ├── kiss_fftr.c
│   │   │   │   ├── kiss_fftr.h
│   │   │   │   ├── lpc_bfin.h
│   │   │   │   ├── lpc.c
│   │   │   │   ├── lpc.h
│   │   │   │   ├── lsp_bfin.h
│   │   │   │   ├── lsp.c
│   │   │   │   ├── lsp.h
│   │   │   │   ├── lsp_tables_nb.c
│   │   │   │   ├── ltp_arm4.h
│   │   │   │   ├── ltp_bfin.h
│   │   │   │   ├── ltp.c
│   │   │   │   ├── ltp.h
│   │   │   │   ├── ltp_sse.h
│   │   │   │   ├── math_approx.h
│   │   │   │   ├── mdf.c
│   │   │   │   ├── misc_bfin.h
│   │   │   │   ├── modes.c
│   │   │   │   ├── modes.h
│   │   │   │   ├── modes_wb.c
│   │   │   │   ├── nb_celp.c
│   │   │   │   ├── nb_celp.h
│   │   │   │   ├── os_support.h
│   │   │   │   ├── preprocess.c
│   │   │   │   ├── pseudofloat.h
│   │   │   │   ├── quant_lsp_bfin.h
│   │   │   │   ├── quant_lsp.c
│   │   │   │   ├── quant_lsp.h
│   │   │   │   ├── resample.c
│   │   │   │   ├── resample_sse.h
│   │   │   │   ├── sb_celp.c
│   │   │   │   ├── sb_celp.h
│   │   │   │   ├── scal.c
│   │   │   │   ├── smallft.c
│   │   │   │   ├── smallft.h
│   │   │   │   ├── speex
│   │   │   │   │   ├── speex_bits.h
│   │   │   │   │   ├── speex_buffer.h
│   │   │   │   │   ├── speex_callbacks.h
│   │   │   │   │   ├── speex_config_types.h
│   │   │   │   │   ├── speex_config_types.h.in
│   │   │   │   │   ├── speex_echo.h
│   │   │   │   │   ├── speex.h
│   │   │   │   │   ├── speex_header.h
│   │   │   │   │   ├── speex_jitter.h
│   │   │   │   │   ├── speex_preprocess.h
│   │   │   │   │   ├── speex_resampler.h
│   │   │   │   │   ├── speex_stereo.h
│   │   │   │   │   └── speex_types.h
│   │   │   │   ├── speex.c
│   │   │   │   ├── speex_callbacks.c
│   │   │   │   ├── speex_header.c
│   │   │   │   ├── stack_alloc.h
│   │   │   │   ├── stereo.c
│   │   │   │   ├── vbr.c
│   │   │   │   ├── vbr.h
│   │   │   │   ├── vorbis_psy.h
│   │   │   │   ├── vq_arm4.h
│   │   │   │   ├── vq_bfin.h
│   │   │   │   ├── vq.c
│   │   │   │   ├── vq.h
│   │   │   │   ├── vq_sse.h
│   │   │   │   └── window.c
│   │   │   ├── manager
│   │   │   │   ├── AQRecorder.h
│   │   │   │   ├── AQRecorder.mm
│   │   │   │   ├── Codec
│   │   │   │   │   ├── SpeexAllHeaders.h
│   │   │   │   │   ├── SpeexCodec.h
│   │   │   │   │   └── SpeexCodec.m
│   │   │   │   ├── Decapsulator.h
│   │   │   │   ├── Decapsulator.m
│   │   │   │   ├── Encapsulator.h
│   │   │   │   ├── Encapsulator.m
│   │   │   │   ├── PlayerManager.h
│   │   │   │   ├── PlayerManager.m
│   │   │   │   ├── PublicUtility
│   │   │   │   │   ├── CADebugMacros.cpp
│   │   │   │   │   ├── CADebugMacros.h
│   │   │   │   │   ├── CAMath.h
│   │   │   │   │   ├── CAStreamBasicDescription.cpp
│   │   │   │   │   ├── CAStreamBasicDescription.h
│   │   │   │   │   ├── CAXException.cpp
│   │   │   │   │   └── CAXException.h
│   │   │   │   ├── RawAudioDataPlayer.h
│   │   │   │   ├── RawAudioDataPlayer.m
│   │   │   │   ├── RecorderManager.h
│   │   │   │   └── RecorderManager.mm
│   │   │   └── SpeexAllHeaders.h
│   │   ├── GlobalData
│   │   │   ├── RuntimeStatus
│   │   │   │   ├── RuntimeStatus.h
│   │   │   │   └── RuntimeStatus.m
│   │   │   └── StateMaintance
│   │   │   ├── DDClientState.h
│   │   │   ├── DDClientState.m
│   │   │   ├── DDClientStateMaintenanceManager.h
│   │   │   └── DDClientStateMaintenanceManager.m
│   │   ├── Images.xcassets
│   │   │   ├── AppIcon.appiconset
│   │   │   │   ├── 29px@1x.png
│   │   │   │   ├── 29px@2x.png
│   │   │   │   ├── 40px@2x.png
│   │   │   │   ├── 57px@1x.png
│   │   │   │   ├── 57px@2x.png
│   │   │   │   ├── 60px@2x.png
│   │   │   │   └── Contents.json
│   │   │   ├── Find
│   │   │   │   ├── openSource.imageset
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── logo@2x.png
│   │   │   │   │   └── logo.png
│   │   │   │   ├── top_back.imageset
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── top_back@2x.png
│   │   │   │   │   └── top_back.png
│   │   │   │   └── wifi.imageset
│   │   │   │   ├── Contents.json
│   │   │   │   ├── wifi@2x.png
│   │   │   │   └── wifi.png
│   │   │   ├── Image.imageset
│   │   │   │   ├── Contents.json
│   │   │   │   └── launchimage.png
│   │   │   ├── launchimage.imageset
│   │   │   │   ├── Contents.json
│   │   │   │   ├── launchimage@2x.png
│   │   │   │   └── launchimage@3x.png
│   │   │   ├── left_bottom.imageset
│   │   │   │   ├── Contents.json
│   │   │   │   └── left_bottom.png
│   │   │   ├── left_top.imageset
│   │   │   │   ├── Contents.json
│   │   │   │   └── left_top.png
│   │   │   ├── navigation
│   │   │   │   └── contacts.imageset
│   │   │   │   ├── Contents.json
│   │   │   │   ├── user@2x.png
│   │   │   │   └── user.png
│   │   │   ├── navigationbar_back.imageset
│   │   │   │   ├── btn_navigationbar_back@2x.png
│   │   │   │   ├── btn_navigationbar_back.png
│   │   │   │   └── Contents.json
│   │   │   ├── right_bottom.imageset
│   │   │   │   ├── Contents.json
│   │   │   │   └── right_bottom.png
│   │   │   ├── right_top.imageset
│   │   │   │   ├── Contents.json
│   │   │   │   └── right_top.png
│   │   │   ├── tabbar
│   │   │   │   ├── tabBar_contacts_selected.imageset
│   │   │   │   │   ├── contact_tabbar_selected@2x.png
│   │   │   │   │   ├── contact_tabbar_selected.png
│   │   │   │   │   └── Contents.json
│   │   │   │   ├── tabBar_finder.imageset
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── nav1@2x.png
│   │   │   │   │   └── nav1.png
│   │   │   │   ├── tabBar_finder_selected.imageset
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── nav_active1@2x.png
│   │   │   │   │   └── nav_active1.png
│   │   │   │   ├── tab_nav.imageset
│   │   │   │   │   ├── Contents.json
│   │   │   │   │   ├── tab_nav@2x.png
│   │   │   │   │   └── tab_nav.png
│   │   │   │   └── tab_nav_selected.imageset
│   │   │   │   ├── Contents.json
│   │   │   │   ├── tab_nav_select@2x.png
│   │   │   │   └── tab_nav_select.png
│   │   │   ├── tt_group_manager_add_user.imageset
│   │   │   │   ├── Contents.json
│   │   │   │   ├── tt_group_manager_add_user@2x.png
│   │   │   │   ├── tt_group_manager_add_user@3x.png
│   │   │   │   └── tt_group_manager_add_user.png
│   │   │   ├── tt_group_manager_delete_user.imageset
│   │   │   │   ├── Contents.json
│   │   │   │   ├── tt_group_manager_delete_user@2x.png
│   │   │   │   ├── tt_group_manager_delete_user@3x.png
│   │   │   │   └── tt_group_manager_delete_user.png
│   │   │   └── user_placeholder.imageset
│   │   │   ├── avatar_50.png
│   │   │   ├── avatar.png
│   │   │   └── Contents.json
│   │   ├── Info.plist
│   │   ├── main.m
│   │   ├── Module
│   │   │   ├── Bubble
│   │   │   │   ├── MTTBubbleModule.h
│   │   │   │   └── MTTBubbleModule.m
│   │   │   ├── Chatting
│   │   │   │   ├── ChattingEditModule.h
│   │   │   │   ├── ChattingEditModule.m
│   │   │   │   ├── ChattingModule.h
│   │   │   │   └── ChattingModule.m
│   │   │   ├── Contacts
│   │   │   │   ├── ContactsModule.h
│   │   │   │   └── ContactsModule.m
│   │   │   ├── Emotions
│   │   │   │   ├── EmotionsModule.h
│   │   │   │   └── EmotionsModule.m
│   │   │   ├── Group
│   │   │   │   ├── DDGroupModule.h
│   │   │   │   └── DDGroupModule.m
│   │   │   ├── Login
│   │   │   │   ├── DDHttpServer.h
│   │   │   │   ├── DDHttpServer.m
│   │   │   │   ├── DDMsgServer.h
│   │   │   │   ├── DDMsgServer.m
│   │   │   │   ├── DDTcpServer.h
│   │   │   │   ├── DDTcpServer.m
│   │   │   │   ├── LoginModule.h
│   │   │   │   └── LoginModule.m
│   │   │   ├── Messages
│   │   │   │   ├── DDMessageModule.h
│   │   │   │   ├── DDMessageModule.m
│   │   │   │   ├── DDMessageSendManager.h
│   │   │   │   ├── DDMessageSendManager.mm
│   │   │   │   ├── UnAckMessageManager.h
│   │   │   │   └── UnAckMessageManager.m
│   │   │   ├── PhotosCache
│   │   │   │   ├── MTTPhotosCache.h
│   │   │   │   └── MTTPhotosCache.m
│   │   │   ├── Search
│   │   │   │   ├── DDSearch.h
│   │   │   │   ├── DDSearch.m
│   │   │   │   ├── SpellLibrary.h
│   │   │   │   └── SpellLibrary.m
│   │   │   ├── Session
│   │   │   │   ├── SessionModule.h
│   │   │   │   └── SessionModule.m
│   │   │   ├── TCPAPI
│   │   │   │   ├── BigBrotherIsWatchingYouAPI.h
│   │   │   │   ├── BigBrotherIsWatchingYouAPI.m
│   │   │   │   ├── ClientManager
│   │   │   │   │   ├── DDTcpClientManager.h
│   │   │   │   │   └── DDTcpClientManager.m
│   │   │   │   ├── DDAddMemberToGroupAPI.h
│   │   │   │   ├── DDAddMemberToGroupAPI.m
│   │   │   │   ├── DDAllUserAPI.h
│   │   │   │   ├── DDAllUserAPI.m
│   │   │   │   ├── DDAPISchedule.h
│   │   │   │   ├── DDAPISchedule.m
│   │   │   │   ├── DDAPIScheduleProtocol.h
│   │   │   │   ├── DDAPIUnrequestScheduleProtocol.h
│   │   │   │   ├── DDCreateGroupAPI.h
│   │   │   │   ├── DDCreateGroupAPI.m
│   │   │   │   ├── DDDeleteMemberFromGroupAPI.h
│   │   │   │   ├── DDDeleteMemberFromGroupAPI.m
│   │   │   │   ├── DDDepartmentAPI.h
│   │   │   │   ├── DDDepartmentAPI.m
│   │   │   │   ├── DDFixedGroupAPI.h
│   │   │   │   ├── DDFixedGroupAPI.m
│   │   │   │   ├── DDGroupMsgReceivedACKAPI.h
│   │   │   │   ├── DDGroupMsgReceivedACKAPI.m
│   │   │   │   ├── DDReceiveGroupAddMemberAPI.h
│   │   │   │   ├── DDReceiveGroupAddMemberAPI.m
│   │   │   │   ├── DDSendBuffer.h
│   │   │   │   ├── DDSendBuffer.m
│   │   │   │   ├── DDSuperAPI.h
│   │   │   │   ├── DDSuperAPI.m
│   │   │   │   ├── DDTcpProtocolHeader.h
│   │   │   │   ├── DDTcpProtocolHeader.m
│   │   │   │   ├── DDUnrequestSuperAPI.h
│   │   │   │   ├── DDUnrequestSuperAPI.m
│   │   │   │   ├── DDUserDetailInfoAPI.h
│   │   │   │   ├── DDUserDetailInfoAPI.m
│   │   │   │   ├── GetLatestMsgId.h
│   │   │   │   ├── GetLatestMsgId.m
│   │   │   │   ├── GetMsgByMsgIDsAPI.h
│   │   │   │   ├── GetMsgByMsgIDsAPI.m
│   │   │   │   ├── GetRecentSession.h
│   │   │   │   ├── GetRecentSession.mm
│   │   │   │   ├── LogoutAPI.h
│   │   │   │   ├── LogoutAPI.m
│   │   │   │   ├── MsgReadACKAPI.h
│   │   │   │   ├── MsgReadACKAPI.m
│   │   │   │   ├── MTTChangeNightModeAPI.h
│   │   │   │   ├── MTTChangeNightModeAPI.m
│   │   │   │   ├── MTTKickPCClientAPI.h
│   │   │   │   ├── MTTKickPCClientAPI.m
│   │   │   │   ├── MTTNightModeAPI.h
│   │   │   │   ├── MTTNightModeAPI.m
│   │   │   │   ├── MTTShakeAPI.h
│   │   │   │   ├── MTTShakeAPI.m
│   │   │   │   ├── MTTSignatureAPI.h
│   │   │   │   ├── MTTSignatureAPI.m
│   │   │   │   ├── MTTUsersStatAPI.h
│   │   │   │   ├── MTTUsersStatAPI.m
│   │   │   │   ├── RemoveSessionAPI.h
│   │   │   │   ├── RemoveSessionAPI.m
│   │   │   │   ├── RequestAPI
│   │   │   │   │   ├── Login
│   │   │   │   │   │   ├── HeartbeatAPI.h
│   │   │   │   │   │   ├── HeartbeatAPI.m
│   │   │   │   │   │   ├── LoginAPI.h
│   │   │   │   │   │   └── LoginAPI.mm
│   │   │   │   │   ├── Msg
│   │   │   │   │   │   ├── DDSendPhotoMessageAPI.h
│   │   │   │   │   │   ├── DDSendPhotoMessageAPI.m
│   │   │   │   │   │   ├── GetMessageQueueAPI.h
│   │   │   │   │   │   ├── GetMessageQueueAPI.m
│   │   │   │   │   │   ├── GetUnreadMessagesAPI.h
│   │   │   │   │   │   ├── GetUnreadMessagesAPI.m
│   │   │   │   │   │   ├── SendMessageAPI.h
│   │   │   │   │   │   └── SendMessageAPI.m
│   │   │   │   │   └── Users
│   │   │   │   │   ├── GetGroupInfoAPi.h
│   │   │   │   │   └── GetGroupInfoAPi.m
│   │   │   │   ├── SendPushTokenAPI.h
│   │   │   │   ├── SendPushTokenAPI.m
│   │   │   │   ├── ShieldGroupMessageAPI.h
│   │   │   │   ├── ShieldGroupMessageAPI.m
│   │   │   │   ├── Stream
│   │   │   │   │   ├── DataOutputStream+Addition.h
│   │   │   │   │   ├── DataOutputStream+Addition.m
│   │   │   │   │   ├── DDDataInputStream.h
│   │   │   │   │   ├── DDDataInputStream.m
│   │   │   │   │   ├── DDDataOutputStream.h
│   │   │   │   │   ├── DDDataOutputStream.m
│   │   │   │   │   ├── NSStream+NSStreamAddition.h
│   │   │   │   │   └── NSStream+NSStreamAddition.m
│   │   │   │   └── UnrequestAPI
│   │   │   │   ├── Kickoff
│   │   │   │   │   ├── ReceiveKickoffAPI.h
│   │   │   │   │   └── ReceiveKickoffAPI.m
│   │   │   │   ├── Msg
│   │   │   │   │   ├── DDReceiveMessageACKAPI.h
│   │   │   │   │   ├── DDReceiveMessageACKAPI.m
│   │   │   │   │   ├── DDReceiveMessageAPI.h
│   │   │   │   │   ├── DDReceiveMessageAPI.m
│   │   │   │   │   ├── MsgReadNotify.h
│   │   │   │   │   └── MsgReadNotify.m
│   │   │   │   ├── PcLogin
│   │   │   │   │   ├── MTTPCLoginStatusNotifyAPI.h
│   │   │   │   │   └── MTTPCLoginStatusNotifyAPI.m
│   │   │   │   └── Signature
│   │   │   │   ├── MTTSignNotifyAPI.h
│   │   │   │   └── MTTSignNotifyAPI.m
│   │   │   └── Users
│   │   │   ├── DDUserModule.h
│   │   │   └── DDUserModule.m
│   │   ├── Resource
│   │   │   ├── Bundle
│   │   │   │   ├── bubble.bundle
│   │   │   │   │   ├── default_blue
│   │   │   │   │   │   ├── config.json
│   │   │   │   │   │   ├── picBubble@2x.png
│   │   │   │   │   │   ├── picLeftBubble@2x.png
│   │   │   │   │   │   ├── textBubble@2x.png
│   │   │   │   │   │   ├── textLeftBubble@2x.png
│   │   │   │   │   │   └── thumb@2x.png
│   │   │   │   │   └── default_white
│   │   │   │   │   ├── config.json
│   │   │   │   │   ├── picBubble@2x.png
│   │   │   │   │   ├── picLeftBubble@2x.png
│   │   │   │   │   ├── textBubble@2x.png
│   │   │   │   │   ├── textLeftBubble@2x.png
│   │   │   │   │   └── thumb@2x.png
│   │   │   │   └── emotions.bundle
│   │   │   │   ├── 221@2x.gif
│   │   │   │   ├── 221.gif
│   │   │   │   ├── 222@2x.gif
│   │   │   │   ├── 222.gif
│   │   │   │   ├── 223@2x.gif
│   │   │   │   ├── 223.gif
│   │   │   │   ├── 224@2x.gif
│   │   │   │   ├── 224.gif
│   │   │   │   ├── 225@2x.gif
│   │   │   │   ├── 225.gif
│   │   │   │   ├── 226@2x.gif
│   │   │   │   ├── 226.gif
│   │   │   │   ├── 227@2x.gif
│   │   │   │   ├── 227.gif
│   │   │   │   ├── 228@2x.gif
│   │   │   │   ├── 228.gif
│   │   │   │   ├── 229@2x.gif
│   │   │   │   ├── 229.gif
│   │   │   │   ├── 230@2x.gif
│   │   │   │   ├── 230.gif
│   │   │   │   ├── 231@2x.gif
│   │   │   │   ├── 231.gif
│   │   │   │   ├── 232@2x.gif
│   │   │   │   ├── 232.gif
│   │   │   │   ├── 233@2x.gif
│   │   │   │   ├── 233.gif
│   │   │   │   ├── 234@2x.gif
│   │   │   │   ├── 234.gif
│   │   │   │   ├── 235@2x.gif
│   │   │   │   ├── 235.gif
│   │   │   │   ├── 236@2x.gif
│   │   │   │   ├── 236.gif
│   │   │   │   ├── 237@2x.gif
│   │   │   │   ├── 237.gif
│   │   │   │   ├── 238@2x.gif
│   │   │   │   ├── 238.gif
│   │   │   │   ├── 239@2x.gif
│   │   │   │   ├── 239.gif
│   │   │   │   ├── 240@2x.gif
│   │   │   │   └── 240.gif
│   │   │   ├── Image
│   │   │   │   ├── add@2x.png
│   │   │   │   ├── add.png
│   │   │   │   ├── chat@2x.png
│   │   │   │   ├── chatBg@2x.png
│   │   │   │   ├── chatBg.png
│   │   │   │   ├── chat_bubble_incomming@2x.png
│   │   │   │   ├── chat_bubble_incomming@3x.png
│   │   │   │   ├── chat_bubble_outgoing@2x.png
│   │   │   │   ├── chat_bubble_outgoing@3x.png
│   │   │   │   ├── chat_bubble_pre_image@2x.png
│   │   │   │   ├── chat_img_bubble_outgoing@2x.png
│   │   │   │   ├── chat_img_bubble_outgoing@3x.png
│   │   │   │   ├── chat_pick_photo@2x.png
│   │   │   │   ├── chat.png
│   │   │   │   ├── chat_shake_pc@2x.png
│   │   │   │   ├── chat_take_photo@2x.png
│   │   │   │   ├── connect_alert_mac@2x.png
│   │   │   │   ├── contact@2x.png
│   │   │   │   ├── contact.png
│   │   │   │   ├── contact_selected@2x.png
│   │   │   │   ├── contact_selected.png
│   │   │   │   ├── conversation@2x.png
│   │   │   │   ├── conversation.png
│   │   │   │   ├── conversation_selected@2x.png
│   │   │   │   ├── conversation_selected.png
│   │   │   │   ├── dd_album@2x.png
│   │   │   │   ├── dd_album.png
│   │   │   │   ├── dd_cancel_send_record@2x.png
│   │   │   │   ├── dd_cancel_send_record.png
│   │   │   │   ├── dd_emoji_delete@2x.png
│   │   │   │   ├── dd_emoji_delete.png
│   │   │   │   ├── dd_emotion@2x.png
│   │   │   │   ├── dd_emotion.png
│   │   │   │   ├── dd_has_unread_message@2x.png
│   │   │   │   ├── dd_has_unread_message.png
│   │   │   │   ├── dd_image_send@2x.png
│   │   │   │   ├── dd_image_send.png
│   │   │   │   ├── dd_input_normal@2x.png
│   │   │   │   ├── dd_input_normal.png
│   │   │   │   ├── dd_left_voice_one@2x.png
│   │   │   │   ├── dd_left_voice_one.png
│   │   │   │   ├── dd_left_voice_three@2x.png
│   │   │   │   ├── dd_left_voice_three.png
│   │   │   │   ├── dd_left_voice_two@2x.png
│   │   │   │   ├── dd_left_voice_two.png
│   │   │   │   ├── dd_photo_back@2x.png
│   │   │   │   ├── dd_photo_back.png
│   │   │   │   ├── dd_press_to_say_normal@2x.png
│   │   │   │   ├── dd_press_to_say_normal.png
│   │   │   │   ├── dd_preview_select@2x.png
│   │   │   │   ├── dd_preview_select.png
│   │   │   │   ├── dd_recent_contacts@2x.png
│   │   │   │   ├── dd_recent_contacts.png
│   │   │   │   ├── dd_recording@2x.png
│   │   │   │   ├── dd_recording.png
│   │   │   │   ├── dd_record_normal@2x.png
│   │   │   │   ├── dd_record_normal.png
│   │   │   │   ├── dd_record_release_end@2x.png
│   │   │   │   ├── dd_record_release_end.png
│   │   │   │   ├── dd_record_too_short@2x.png
│   │   │   │   ├── dd_record_too_short.png
│   │   │   │   ├── dd_right_voice_one@2x.png
│   │   │   │   ├── dd_right_voice_one.png
│   │   │   │   ├── dd_right_voice_three@2x.png
│   │   │   │   ├── dd_right_voice_three.png
│   │   │   │   ├── dd_right_voice_two@2x.png
│   │   │   │   ├── dd_right_voice_two.png
│   │   │   │   ├── dd_selected_photo@2x.png
│   │   │   │   ├── dd_selected_photo.png
│   │   │   │   ├── dd_send_failed@2x.png
│   │   │   │   ├── dd_send_failed.png
│   │   │   │   ├── dd_shake@2x.png
│   │   │   │   ├── dd_take-photo@2x.png
│   │   │   │   ├── dd_take-photo.png
│   │   │   │   ├── dd_utility@2x.png
│   │   │   │   ├── dd_utility.png
│   │   │   │   ├── dd_volumn@2x.png
│   │   │   │   ├── dd_volumn.png
│   │   │   │   ├── Default@2x.png
│   │   │   │   ├── Default-568h@2x.png
│   │   │   │   ├── Default.png
│   │   │   │   ├── delete@2x.png
│   │   │   │   ├── delete.png
│   │   │   │   ├── delImage@2x.png
│   │   │   │   ├── delImage.png
│   │   │   │   ├── edit@2x.png
│   │   │   │   ├── edit.png
│   │   │   │   ├── email@2x.png
│   │   │   │   ├── email.png
│   │   │   │   ├── group_default@2x.png
│   │   │   │   ├── group_default.png
│   │   │   │   ├── jiantou@2x.png
│   │   │   │   ├── jiantou.png
│   │   │   │   ├── left@2x.png
│   │   │   │   ├── left.png
│   │   │   │   ├── line@2x.png
│   │   │   │   ├── loginlogo.jpg
│   │   │   │   ├── loginlogo.png
│   │   │   │   ├── logo.png
│   │   │   │   ├── mac_logined@2x.png
│   │   │   │   ├── myprofile@2x.png
│   │   │   │   ├── myprofile.png
│   │   │   │   ├── myprofile_selected@2x.png
│   │   │   │   ├── myprofile_selected.png
│   │   │   │   ├── password@2x.png
│   │   │   │   ├── password.png
│   │   │   │   ├── phone@2x.png
│   │   │   │   ├── phone.png
│   │   │   │   ├── pick_bg@2x.png
│   │   │   │   ├── QRCodeScanLine@2x.png
│   │   │   │   ├── right@2x.png
│   │   │   │   ├── right.png
│   │   │   │   ├── ScanQR1@2x.png
│   │   │   │   ├── ScanQR2@2x.png
│   │   │   │   ├── ScanQR3@2x.png
│   │   │   │   ├── ScanQR4@2x.png
│   │   │   │   ├── search_back@2x.png
│   │   │   │   ├── search_bar@2x.png
│   │   │   │   ├── search_bar.png
│   │   │   │   ├── search_chat@2x.png
│   │   │   │   ├── search_department@2x.png
│   │   │   │   ├── search_group@2x.png
│   │   │   │   ├── search_icon@2x.png
│   │   │   │   ├── search_user@2x.png
│   │   │   │   ├── select@2x.png
│   │   │   │   ├── select.png
│   │   │   │   ├── setting@2x.png
│   │   │   │   ├── setting.png
│   │   │   │   ├── shielded@2x.png
│   │   │   │   ├── shielded.png
│   │   │   │   ├── star@2x.png
│   │   │   │   ├── star.png
│   │   │   │   ├── TeamTalk.xcworkspace
│   │   │   │   │   └── contents.xcworkspacedata
│   │   │   │   ├── tel@2x.png
│   │   │   │   ├── tel.png
│   │   │   │   ├── unselected@2x.png
│   │   │   │   ├── unselected.png
│   │   │   │   ├── username@2x.png
│   │   │   │   ├── username.png
│   │   │   │   ├── x@2x.png
│   │   │   │   └── x.png
│   │   │   └── Voice
│   │   │   └── msg.caf
│   │   ├── TeamTalk-Prefix.pch
│   │   ├── Util
│   │   │   ├── Http
│   │   │   │   ├── MTTAFNetworkingClient.h
│   │   │   │   └── MTTAFNetworkingClient.m
│   │   │   ├── MTTDatabaseUtil.h
│   │   │   ├── MTTDatabaseUtil.m
│   │   │   ├── MTTUtil.h
│   │   │   ├── MTTUtil.m
│   │   │   ├── Notification
│   │   │   │   ├── MTTNotification.h
│   │   │   │   └── MTTNotification.m
│   │   │   ├── SundriesCenter
│   │   │   │   ├── MTTSundriesCenter.h
│   │   │   │   └── MTTSundriesCenter.m
│   │   │   └── URLProtocal
│   │   │   ├── MTTURLProtocal.h
│   │   │   └── MTTURLProtocal.m
│   │   └── ViewController
│   │   ├── Album
│   │   │   ├── AlbumViewController.h
│   │   │   ├── AlbumViewController.m
│   │   │   ├── Cells
│   │   │   │   ├── ImageGridViewCell.h
│   │   │   │   └── ImageGridViewCell.m
│   │   │   ├── Control
│   │   │   │   ├── AlbumDetailsBottomBar.h
│   │   │   │   └── AlbumDetailsBottomBar.m
│   │   │   ├── DDAlbumDetailsViewControll.h
│   │   │   └── DDAlbumDetailsViewControll.m
│   │   ├── Base
│   │   │   ├── MTTBaseScrollViewController.h
│   │   │   ├── MTTBaseScrollViewController.m
│   │   │   ├── MTTBaseViewController.h
│   │   │   ├── MTTBaseViewController.m
│   │   │   ├── MTTPullScrollViewController.h
│   │   │   └── MTTPullScrollViewController.m
│   │   ├── Chatting
│   │   │   ├── Chatting
│   │   │   │   ├── Cells
│   │   │   │   │   ├── DDChatBaseCell.h
│   │   │   │   │   ├── DDChatBaseCell.m
│   │   │   │   │   ├── DDChatCellProtocol.h
│   │   │   │   │   ├── DDChatImageCell.h
│   │   │   │   │   ├── DDChatImageCell.m
│   │   │   │   │   ├── DDChatTextCell.h
│   │   │   │   │   ├── DDChatTextCell.m
│   │   │   │   │   ├── DDChatVoiceCell.h
│   │   │   │   │   ├── DDChatVoiceCell.m
│   │   │   │   │   ├── DDEmotionCell.h
│   │   │   │   │   ├── DDEmotionCell.m
│   │   │   │   │   ├── DDPromptCell.h
│   │   │   │   │   └── DDPromptCell.m
│   │   │   │   ├── ChattingMainViewController.h
│   │   │   │   ├── ChattingMainViewController.m
│   │   │   │   ├── ChattingMainViewController.xib
│   │   │   │   ├── ChatUtilityViewController.h
│   │   │   │   ├── ChatUtilityViewController.m
│   │   │   │   ├── Control
│   │   │   │   │   ├── MenuImageView.h
│   │   │   │   │   ├── MenuImageView.m
│   │   │   │   │   ├── RecordingView.h
│   │   │   │   │   └── RecordingView.m
│   │   │   │   ├── DDChatImagePreviewViewController.h
│   │   │   │   ├── DDChatImagePreviewViewController.m
│   │   │   │   ├── EmotionsViewController.h
│   │   │   │   └── EmotionsViewController.m
│   │   │   ├── ChattingEdit
│   │   │   │   ├── Cell
│   │   │   │   │   ├── DDPersonEditCollectionCell.h
│   │   │   │   │   ├── DDPersonEditCollectionCell.m
│   │   │   │   │   ├── MTTGroupInfoCell.h
│   │   │   │   │   └── MTTGroupInfoCell.m
│   │   │   │   ├── DDChattingEditViewController.h
│   │   │   │   └── DDChattingEditViewController.m
│   │   │   └── Group
│   │   │   ├── Cells
│   │   │   │   ├── EditContactsCell.h
│   │   │   │   ├── EditContactsCell.m
│   │   │   │   ├── EditGroupViewCell.h
│   │   │   │   └── EditGroupViewCell.m
│   │   │   ├── EditGroupViewController.h
│   │   │   ├── EditGroupViewController.m
│   │   │   └── EditGroupViewController.xib
│   │   ├── Contacts
│   │   │   ├── Cells
│   │   │   │   ├── DDContactsCell.h
│   │   │   │   ├── DDContactsCell.m
│   │   │   │   ├── MTTBaseCell.h
│   │   │   │   ├── MTTBaseCell.m
│   │   │   │   ├── MTTSearchResultCell.h
│   │   │   │   ├── MTTSearchResultCell.m
│   │   │   │   ├── MTTSearchShowMoreCell.h
│   │   │   │   ├── MTTSearchShowMoreCell.m
│   │   │   │   ├── MTTUserInfoCell.h
│   │   │   │   ├── MTTUserInfoCell.m
│   │   │   │   ├── PublicProfileCell.h
│   │   │   │   └── PublicProfileCell.m
│   │   │   ├── ContactsViewController.h
│   │   │   ├── ContactsViewController.m
│   │   │   ├── Control
│   │   │   │   ├── ContactAvatarTools.h
│   │   │   │   └── ContactAvatarTools.m
│   │   │   ├── MTTEditSignViewController.h
│   │   │   ├── MTTEditSignViewController.m
│   │   │   ├── PublicProfileViewControll.h
│   │   │   ├── PublicProfileViewControll.m
│   │   │   ├── SearchContentViewController.h
│   │   │   └── SearchContentViewController.m
│   │   ├── Find
│   │   │   ├── FinderViewController.h
│   │   │   └── FinderViewController.m
│   │   ├── Login
│   │   │   ├── MTTLoginViewController.h
│   │   │   ├── MTTLoginViewController.m
│   │   │   └── MTTLoginViewController.xib
│   │   ├── My
│   │   │   ├── MTTBubbleCollectionViewCell.h
│   │   │   ├── MTTBubbleCollectionViewCell.m
│   │   │   ├── MTTBubbleShowViewControll.h
│   │   │   ├── MTTBubbleShowViewControll.m
│   │   │   ├── MTTMyViewController.h
│   │   │   ├── MTTMyViewController.m
│   │   │   └── MTTMyViewController.xib
│   │   ├── RecentContacts
│   │   │   ├── Cells
│   │   │   │   ├── MTTPCStatusCell.h
│   │   │   │   ├── MTTPCStatusCell.m
│   │   │   │   ├── RecentUserCell.h
│   │   │   │   └── RecentUserCell.m
│   │   │   ├── MTTPCLoginViewController.h
│   │   │   ├── MTTPCLoginViewController.m
│   │   │   ├── RecentUsersViewController.h
│   │   │   ├── RecentUsersViewController.m
│   │   │   └── RecentUsersViewController.xib
│   │   ├── Root
│   │   │   ├── MTTRootViewController.h
│   │   │   └── MTTRootViewController.m
│   │   ├── ScanQR
│   │   │   ├── ScanQRCodePage.h
│   │   │   ├── ScanQRCodePage.m
│   │   │   └── ScanQRCodePage.xib
│   │   ├── Search
│   │   │   ├── MTTDetailSearchViewControll.h
│   │   │   ├── MTTDetailSearchViewControll.m
│   │   │   ├── MTTSearchDetailViewControll.h
│   │   │   └── MTTSearchDetailViewControll.m
│   │   └── Web
│   │   ├── MTTWebViewController.h
│   │   └── MTTWebViewController.m
│   ├── TeamTalkTests
│   │   ├── Info.plist
│   │   └── TeamTalkTests.m
│   ├── TeamTalk.xcodeproj
│   │   ├── project.pbxproj
│   │   ├── project.xcworkspace
│   │   │   ├── contents.xcworkspacedata
│   │   │   ├── xcshareddata
│   │   │   │   └── TeamTalk.xccheckout
│   │   │   └── xcuserdata
│   │   │   └── scorpio.xcuserdatad
│   │   │   └── UserInterfaceState.xcuserstate
│   │   ├── xcshareddata
│   │   │   └── xcschemes
│   │   │   └── TeamTalk.xcscheme
│   │   └── xcuserdata
│   │   └── scorpio.xcuserdatad
│   │   └── xcschemes
│   │   └── xcschememanagement.plist
│   └── TeamTalk.xcworkspace
│   ├── contents.xcworkspacedata
│   ├── xcshareddata
│   │   └── TeamTalk.xccheckout
│   └── xcuserdata
│   └── scorpio.xcuserdatad
│   ├── UserInterfaceState.xcuserstate
│   ├── WorkspaceSettings.xcsettings
│   └── xcdebugger
│   └── Breakpoints_v2.xcbkptlist
├── LICENSE
├── mac
│   ├── CrashReporter.framework
│   │   ├── CrashReporter
│   │   ├── Headers
│   │   ├── Resources
│   │   └── Versions
│   │   ├── A
│   │   │   ├── CrashReporter
│   │   │   ├── Headers
│   │   │   │   ├── CrashReporter.h
│   │   │   │   ├── PLCrashFeatureConfig.h
│   │   │   │   ├── PLCrashNamespace.h
│   │   │   │   ├── PLCrashReportApplicationInfo.h
│   │   │   │   ├── PLCrashReportBinaryImageInfo.h
│   │   │   │   ├── PLCrashReporterConfig.h
│   │   │   │   ├── PLCrashReporter.h
│   │   │   │   ├── PLCrashReportExceptionInfo.h
│   │   │   │   ├── PLCrashReportFormatter.h
│   │   │   │   ├── PLCrashReport.h
│   │   │   │   ├── PLCrashReportMachExceptionInfo.h
│   │   │   │   ├── PLCrashReportMachineInfo.h
│   │   │   │   ├── PLCrashReportProcessInfo.h
│   │   │   │   ├── PLCrashReportProcessorInfo.h
│   │   │   │   ├── PLCrashReportRegisterInfo.h
│   │   │   │   ├── PLCrashReportSignalInfo.h
│   │   │   │   ├── PLCrashReportStackFrameInfo.h
│   │   │   │   ├── PLCrashReportSymbolInfo.h
│   │   │   │   ├── PLCrashReportSystemInfo.h
│   │   │   │   ├── PLCrashReportTextFormatter.h
│   │   │   │   └── PLCrashReportThreadInfo.h
│   │   │   └── Resources
│   │   │   └── Info.plist
│   │   └── Current
│   ├── html
│   │   ├── css
│   │   │   ├── hook.css
│   │   │   ├── main.css
│   │   │   └── pure-min.css
│   │   ├── js
│   │   │   ├── hook.min.js
│   │   │   ├── jquery-2.1.1.min.js
│   │   │   ├── mousewheel.js
│   │   │   ├── msg.js
│   │   │   └── template.js
│   │   └── message.html
│   ├── libsecurity.a
│   ├── Podfile
│   ├── README
│   ├── Sparkle.framework
│   │   ├── Headers
│   │   ├── Resources
│   │   ├── Sparkle
│   │   └── Versions
│   │   ├── A
│   │   │   ├── Headers
│   │   │   │   ├── Sparkle.h
│   │   │   │   ├── SUAppcast.h
│   │   │   │   ├── SUAppcastItem.h
│   │   │   │   ├── SUUpdater.h
│   │   │   │   └── SUVersionComparisonProtocol.h
│   │   │   ├── Resources
│   │   │   │   ├── de.lproj
│   │   │   │   │   ├── Sparkle.strings
│   │   │   │   │   ├── SUAutomaticUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   ├── SUUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   └── SUUpdatePermissionPrompt.nib
│   │   │   │   │   ├── classes.nib
│   │   │   │   │   ├── info.nib
│   │   │   │   │   └── keyedobjects.nib
│   │   │   │   ├── en.lproj
│   │   │   │   │   ├── Sparkle.strings
│   │   │   │   │   ├── SUAutomaticUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   ├── SUUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   └── SUUpdatePermissionPrompt.nib
│   │   │   │   │   ├── classes.nib
│   │   │   │   │   ├── info.nib
│   │   │   │   │   └── keyedobjects.nib
│   │   │   │   ├── es.lproj
│   │   │   │   │   ├── Sparkle.strings
│   │   │   │   │   ├── SUAutomaticUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   ├── SUUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   └── SUUpdatePermissionPrompt.nib
│   │   │   │   │   ├── classes.nib
│   │   │   │   │   ├── info.nib
│   │   │   │   │   └── keyedobjects.nib
│   │   │   │   ├── fr_CA.lproj
│   │   │   │   ├── fr.lproj
│   │   │   │   │   ├── fr.lproj
│   │   │   │   │   ├── Sparkle.strings
│   │   │   │   │   ├── SUAutomaticUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   ├── SUUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   └── SUUpdatePermissionPrompt.nib
│   │   │   │   │   ├── classes.nib
│   │   │   │   │   ├── info.nib
│   │   │   │   │   └── keyedobjects.nib
│   │   │   │   ├── Info.plist
│   │   │   │   ├── it.lproj
│   │   │   │   │   ├── Sparkle.strings
│   │   │   │   │   ├── SUAutomaticUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   ├── SUUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   └── SUUpdatePermissionPrompt.nib
│   │   │   │   │   ├── classes.nib
│   │   │   │   │   ├── info.nib
│   │   │   │   │   └── keyedobjects.nib
│   │   │   │   ├── License.txt
│   │   │   │   ├── nl.lproj
│   │   │   │   │   ├── Sparkle.strings
│   │   │   │   │   ├── SUAutomaticUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   ├── SUUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   └── SUUpdatePermissionPrompt.nib
│   │   │   │   │   ├── classes.nib
│   │   │   │   │   ├── info.nib
│   │   │   │   │   └── keyedobjects.nib
│   │   │   │   ├── relaunch
│   │   │   │   ├── ru.lproj
│   │   │   │   │   ├── Sparkle.strings
│   │   │   │   │   ├── SUAutomaticUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   ├── SUUpdateAlert.nib
│   │   │   │   │   │   ├── classes.nib
│   │   │   │   │   │   ├── info.nib
│   │   │   │   │   │   └── keyedobjects.nib
│   │   │   │   │   └── SUUpdatePermissionPrompt.nib
│   │   │   │   │   ├── classes.nib
│   │   │   │   │   ├── info.nib
│   │   │   │   │   └── keyedobjects.nib
│   │   │   │   ├── SUModelTranslation.plist
│   │   │   │   ├── SUStatus.nib
│   │   │   │   │   ├── classes.nib
│   │   │   │   │   ├── info.nib
│   │   │   │   │   └── keyedobjects.nib
│   │   │   │   └── sv.lproj
│   │   │   │   ├── Sparkle.strings
│   │   │   │   ├── SUAutomaticUpdateAlert.nib
│   │   │   │   │   ├── classes.nib
│   │   │   │   │   ├── info.nib
│   │   │   │   │   └── keyedobjects.nib
│   │   │   │   ├── SUUpdateAlert.nib
│   │   │   │   │   ├── classes.nib
│   │   │   │   │   ├── info.nib
│   │   │   │   │   └── keyedobjects.nib
│   │   │   │   └── SUUpdatePermissionPrompt.nib
│   │   │   │   ├── classes.nib
│   │   │   │   ├── info.nib
│   │   │   │   └── keyedobjects.nib
│   │   │   └── Sparkle
│   │   └── Current
│   ├── StyleSettings.plist
│   ├── TeamTalk
│   │   ├── 221.gif
│   │   ├── 222.gif
│   │   ├── 223.gif
│   │   ├── 224.gif
│   │   ├── 225.gif
│   │   ├── 226.gif
│   │   ├── 227.gif
│   │   ├── 228.gif
│   │   ├── 229.gif
│   │   ├── 230.gif
│   │   ├── 231.gif
│   │   ├── 232.gif
│   │   ├── 233.gif
│   │   ├── 234.gif
│   │   ├── 235.gif
│   │   ├── 236.gif
│   │   ├── 237.gif
│   │   ├── 238.gif
│   │   ├── 239.gif
│   │   ├── 240.gif
│   │   ├── API
│   │   │   ├── APIGroup
│   │   │   │   ├── DDAllUserAPI.h
│   │   │   │   ├── DDAllUserAPI.m
│   │   │   │   ├── DDCreateGroupAPI.h
│   │   │   │   ├── DDCreateGroupAPI.m
│   │   │   │   ├── DDDepartmentInfoAPI.h
│   │   │   │   ├── DDDepartmentInfoAPI.m
│   │   │   │   ├── DDFileLoginAPI.h
│   │   │   │   ├── DDFileLoginAPI.m
│   │   │   │   ├── DDFileSendAPI.h
│   │   │   │   ├── DDFileSendAPI.m
│   │   │   │   ├── DDFileSendResponseAPI.h
│   │   │   │   ├── DDFileSendResponseAPI.m
│   │   │   │   ├── DDFixedGroupAPI.h
│   │   │   │   ├── DDFixedGroupAPI.m
│   │   │   │   ├── DDGetLastMessageIDAPI.h
│   │   │   │   ├── DDGetLastMessageIDAPI.m
│   │   │   │   ├── DDGetOfflineFileAPI.h
│   │   │   │   ├── DDGetOfflineFileAPI.m
│   │   │   │   ├── DDGroupInfoAPI.h
│   │   │   │   ├── DDGroupInfoAPI.m
│   │   │   │   ├── DDGroupMsgReadACKAPI.h
│   │   │   │   ├── DDGroupMsgReadACKAPI.m
│   │   │   │   ├── DDGroupMsgReceivedACKAPI.h
│   │   │   │   ├── DDGroupMsgReceivedACKAPI.m
│   │   │   │   ├── DDHeartBeatAPI.h
│   │   │   │   ├── DDHeartBeatAPI.m
│   │   │   │   ├── DDHistoryMessageApi.h
│   │   │   │   ├── DDHistoryMessageApi.m
│   │   │   │   ├── DDLoginAPI.h
│   │   │   │   ├── DDLoginAPI.mm
│   │   │   │   ├── DDModifyUserAvatarAPI.h
│   │   │   │   ├── DDModifyUserAvatarAPI.m
│   │   │   │   ├── DDMsgReadACKAPI.h
│   │   │   │   ├── DDMsgReadACKAPI.m
│   │   │   │   ├── DDOfflineFileUploadFinishedAPI.h
│   │   │   │   ├── DDOfflineFileUploadFinishedAPI.m
│   │   │   │   ├── DDReadyReceiveFileAPI.h
│   │   │   │   ├── DDReadyReceiveFileAPI.m
│   │   │   │   ├── DDRemoveSessionAPI.h
│   │   │   │   ├── DDRemoveSessionAPI.m
│   │   │   │   ├── DDSendMessageAPI.h
│   │   │   │   ├── DDSendMessageAPI.mm
│   │   │   │   ├── DDSendOffLineFileAPI.h
│   │   │   │   ├── DDSendOffLineFileAPI.m
│   │   │   │   ├── DDSendP2PCmdAPI.h
│   │   │   │   ├── DDSendP2PCmdAPI.m
│   │   │   │   ├── DDUnreadMessageAPI.h
│   │   │   │   ├── DDUnreadMessageAPI.m
│   │   │   │   ├── DDUserDetailInfoAPI.h
│   │   │   │   ├── DDUserDetailInfoAPI.m
│   │   │   │   ├── DDUserMsgReceivedACKAPI.h
│   │   │   │   ├── DDUserMsgReceivedACKAPI.m
│   │   │   │   ├── DDUserOnlineStateAPI.h
│   │   │   │   ├── DDUserOnlineStateAPI.m
│   │   │   │   ├── MTGroupChangeMemberAPI.h
│   │   │   │   └── MTGroupChangeMemberAPI.m
│   │   │   ├── DataOutputStream+Addition.h
│   │   │   ├── DataOutputStream+Addition.m
│   │   │   ├── DDAPISchedule.h
│   │   │   ├── DDAPISchedule.m
│   │   │   ├── DDAPIScheduleProtocol.h
│   │   │   ├── DDAPIUnrequestScheduleProtocol.h
│   │   │   ├── DDRecentConactsAPI.h
│   │   │   ├── DDRecentConactsAPI.m
│   │   │   ├── DDSeqNoManager.h
│   │   │   ├── DDSeqNoManager.m
│   │   │   ├── DDSuperAPI.h
│   │   │   ├── DDSuperAPI.m
│   │   │   ├── DDUnrequestSuperAPI.h
│   │   │   ├── DDUnrequestSuperAPI.m
│   │   │   └── UnrequestAPI
│   │   │   ├── DDAbortFileSendAPI.h
│   │   │   ├── DDAbortFileSendAPI.m
│   │   │   ├── DDAddOfflineFileAPI.h
│   │   │   ├── DDAddOfflineFileAPI.m
│   │   │   ├── DDDeleteOfflineFileAPI.h
│   │   │   ├── DDDeleteOfflineFileAPI.m
│   │   │   ├── DDOnlineUserListAPI.h
│   │   │   ├── DDOnlineUserListAPI.m
│   │   │   ├── DDOtherFileResponseAPI.h
│   │   │   ├── DDOtherFileResponseAPI.m
│   │   │   ├── DDOtherLinkFileServerAPI.h
│   │   │   ├── DDOtherLinkFileServerAPI.m
│   │   │   ├── DDOtherSendOfflineFileAPI.h
│   │   │   ├── DDOtherSendOfflineFileAPI.m
│   │   │   ├── DDReceiveAbortFileSendAPI.h
│   │   │   ├── DDReceiveAbortFileSendAPI.m
│   │   │   ├── DDReceiveGroupMemberChangedAPI.h
│   │   │   ├── DDReceiveGroupMemberChangedAPI.m
│   │   │   ├── DDReceiveKickAPI.h
│   │   │   ├── DDReceiveKickAPI.m
│   │   │   ├── DDReceiveMessageAPI.h
│   │   │   ├── DDReceiveMessageAPI.m
│   │   │   ├── DDReceiveOtherOfflineFileUploadFinishedAPI.h
│   │   │   ├── DDReceiveOtherOfflineFileUploadFinishedAPI.m
│   │   │   ├── DDReceiveOtherReadyAcceptFileAPI.h
│   │   │   ├── DDReceiveOtherReadyAcceptFileAPI.m
│   │   │   ├── DDReceiveOtherResponseAPI.h
│   │   │   ├── DDReceiveOtherResponseAPI.m
│   │   │   ├── DDReceiveOtherSendFileAPI.h
│   │   │   ├── DDReceiveOtherSendFileAPI.m
│   │   │   ├── DDReceiveP2PMessageAPI.h
│   │   │   ├── DDReceiveP2PMessageAPI.m
│   │   │   ├── DDReceiveStateChangedAPI.h
│   │   │   ├── DDReceiveStateChangedAPI.m
│   │   │   └── Message
│   │   │   ├── DDReceiveMsgDataReadNotifyAPI.h
│   │   │   └── DDReceiveMsgDataReadNotifyAPI.m
│   │   ├── Base.lproj
│   │   │   └── MainMenu.xib
│   │   ├── Category
│   │   │   ├── NSDictionary+Safe.h
│   │   │   ├── NSDictionary+Safe.m
│   │   │   ├── NSImage+Addition.h
│   │   │   ├── NSImage+Addition.m
│   │   │   ├── NSImageView+MTAddition.h
│   │   │   ├── NSImageView+MTAddition.m
│   │   │   ├── NSString+Additions.h
│   │   │   ├── NSString+Additions.m
│   │   │   ├── NSView+LayerAddition.h
│   │   │   ├── NSView+LayerAddition.m
│   │   │   ├── NSWindow+Addition.h
│   │   │   ├── NSWindow+Addition.m
│   │   │   ├── NSWindow+Animation.h
│   │   │   └── NSWindow+Animation.m
│   │   ├── ColorfulView
│   │   │   ├── DDAppBackgroundColorView.h
│   │   │   ├── DDAppBackgroundColorView.m
│   │   │   ├── DDCornerRadiusTextField.h
│   │   │   ├── DDCornerRadiusTextField.m
│   │   │   ├── DDCustomWindow.h
│   │   │   ├── DDCustomWindow.m
│   │   │   ├── DDGridBackgroundView.h
│   │   │   └── DDGridBackgroundView.m
│   │   ├── contacts&chats
│   │   │   ├── DDListGroup.h
│   │   │   ├── DDListGroup.m
│   │   │   ├── DDListObject.h
│   │   │   ├── DDListObject.m
│   │   │   ├── DDProxyListObject.h
│   │   │   ├── DDProxyListObject.m
│   │   │   ├── ESObjectWithProperties.h
│   │   │   └── ESObjectWithProperties.m
│   │   ├── CrashReport
│   │   │   ├── CrashReportManager.h
│   │   │   └── CrashReportManager.m
│   │   ├── DDAppDelegate.h
│   │   ├── DDAppDelegate.m
│   │   ├── DDApplication.h
│   │   ├── DDApplication.m
│   │   ├── DDChattingContactListCell.h
│   │   ├── DDChattingContactListCell.m
│   │   ├── DDChattingContactListModule.h
│   │   ├── DDChattingContactListModule.m
│   │   ├── DDChattingContactListViewController.h
│   │   ├── DDChattingContactListViewController.m
│   │   ├── DDChattingMyLine.h
│   │   ├── DDChattingMyLine.m
│   │   ├── DDChattingViewModule.h
│   │   ├── DDChattingViewModule.m
│   │   ├── DDCornerView.h
│   │   ├── DDCornerView.m
│   │   ├── DDDuoduoProtocol.h
│   │   ├── DDGroupViewController.xib
│   │   ├── DDIntranentViewController.xib
│   │   ├── DDIntranetCell.h
│   │   ├── DDIntranetCell.m
│   │   ├── DDIntranetContentViewController.h
│   │   ├── DDIntranetContentViewController.m
│   │   ├── DDIntranetContentViewController.xib
│   │   ├── DDIntranetEntity.h
│   │   ├── DDIntranetEntity.m
│   │   ├── DDIntranetModule.h
│   │   ├── DDIntranetModule.m
│   │   ├── DDIntranetViewController.h
│   │   ├── DDIntranetViewController.m
│   │   ├── DDLogic
│   │   │   ├── DDLogic.h
│   │   │   ├── DDLogic.m
│   │   │   ├── DDLogicProtocol.h
│   │   │   ├── module
│   │   │   │   ├── DDModuleDataManager.h
│   │   │   │   ├── DDModuleDataManager.m
│   │   │   │   ├── DDModuleID.h
│   │   │   │   ├── DDModuleManager.h
│   │   │   │   ├── DDModuleManager.m
│   │   │   │   ├── DDWatch.h
│   │   │   │   └── DDWatch.m
│   │   │   └── task
│   │   │   ├── DDTask.h
│   │   │   ├── DDTaskManager.h
│   │   │   ├── DDTaskManager.m
│   │   │   ├── DDTaskOperation.h
│   │   │   └── DDTaskOperation.m
│   │   ├── DDRecentContactRowView.h
│   │   ├── DDRecentContactRowView.m
│   │   ├── DDSearchResultCell.xib
│   │   ├── DDSetting.h
│   │   ├── DDSetting.m
│   │   ├── DDSetting+OffLineReadMsgManager.h
│   │   ├── DDSetting+OffLineReadMsgManager.m
│   │   ├── DDSharedDuoduo.h
│   │   ├── DDSharedDuoduo.m
│   │   ├── DDTcpClientManager.h
│   │   ├── DDTcpClientManager.m
│   │   ├── dsa_pub.pem
│   │   ├── EGOImageLoader
│   │   │   ├── EGOCache.h
│   │   │   ├── EGOCache.m
│   │   │   ├── EGOImageLoadConnection.h
│   │   │   ├── EGOImageLoadConnection.m
│   │   │   ├── EGOImageLoader.h
│   │   │   ├── EGOImageLoader.m
│   │   │   ├── EGOImageView.h
│   │   │   └── EGOImageView.m
│   │   ├── en.lproj
│   │   │   ├── Credits.rtf
│   │   │   └── InfoPlist.strings
│   │   ├── FileTransfer
│   │   │   ├── GCDAsyncSocket.h
│   │   │   └── GCDAsyncSocket.m
│   │   ├── Frameworks
│   │   │   └── ShortcutRecorder.framework
│   │   │   ├── Headers
│   │   │   ├── Resources
│   │   │   ├── ShortcutRecorder
│   │   │   └── Versions
│   │   │   ├── A
│   │   │   │   ├── Headers
│   │   │   │   │   ├── ShortcutRecorder.h
│   │   │   │   │   ├── SRCommon.h
│   │   │   │   │   ├── SRKeyCodeTransformer.h
│   │   │   │   │   ├── SRRecorderCell.h
│   │   │   │   │   ├── SRRecorderControl.h
│   │   │   │   │   └── SRValidator.h
│   │   │   │   ├── Resources
│   │   │   │   │   ├── ca.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── cs.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── da.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── de.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── el.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── en.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── es.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── es-MX.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── fr.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── Info.plist
│   │   │   │   │   ├── it.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── ja.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── ko.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── nb.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── nl.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── pl.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── pt-BR.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── pt.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── pt-PT.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── ro.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── ru.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── sk.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── SRRemoveShortcutPressed.tif
│   │   │   │   │   ├── SRRemoveShortcutRollover.tif
│   │   │   │   │   ├── SRRemoveShortcut.tif
│   │   │   │   │   ├── SRSnapback.tiff
│   │   │   │   │   ├── sv.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── th.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── zh-Hans.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   └── zh-Hant.lproj
│   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   └── ShortcutRecorder
│   │   │   └── Current
│   │   ├── HelpLib
│   │   │   ├── DDPathHelp.h
│   │   │   ├── DDPathHelp.m
│   │   │   ├── DDSundriesCenter.h
│   │   │   ├── DDSundriesCenter.m
│   │   │   └── ImageCache
│   │   │   ├── MTImageCache.h
│   │   │   ├── MTImageCache.m
│   │   │   ├── MTImageDownload.h
│   │   │   └── MTImageDownload.m
│   │   ├── html
│   │   │   ├── bg.jpg
│   │   │   ├── big.cur
│   │   │   ├── blbb.png
│   │   │   ├── blb.png
│   │   │   ├── brwb.png
│   │   │   ├── brw.png
│   │   │   ├── gifffer.js
│   │   │   ├── highlight.default.css
│   │   │   ├── highlight.min.js
│   │   │   ├── highlight.pack.js
│   │   │   ├── hook.css
│   │   │   ├── hook.min.js
│   │   │   ├── hook-spinner.gif
│   │   │   ├── iscroll.js
│   │   │   ├── iscroll-probe.js
│   │   │   ├── jquery-2.1.1.min.js
│   │   │   ├── jquery.scrollz.css
│   │   │   ├── jquery.scrollz.min.js
│   │   │   ├── main.css
│   │   │   ├── message.html
│   │   │   ├── moment-with-locales.min.js
│   │   │   ├── mousewheel.js
│   │   │   ├── msgfail.png
│   │   │   ├── msg.js
│   │   │   ├── PullToLoadHistory.js
│   │   │   ├── pure-min.css
│   │   │   ├── scrollbar.css
│   │   │   ├── solarized_dark.css
│   │   │   ├── solarized_light.css
│   │   │   ├── template.js
│   │   │   ├── voice_me.gif
│   │   │   ├── voice_me.png
│   │   │   ├── voice_other.gif
│   │   │   └── voice_other.png
│   │   ├── http
│   │   │   ├── DDHttpUtil.h
│   │   │   └── DDHttpUtil.m
│   │   ├── Images.xcassets
│   │   │   └── AppIcon.appiconset
│   │   │   └── Contents.json
│   │   ├── interface
│   │   │   ├── altertWindow
│   │   │   │   ├── DDAlertWindowController.h
│   │   │   │   ├── DDAlertWindowController.m
│   │   │   │   └── DDAlertWindowController.xib
│   │   │   ├── cells
│   │   │   │   ├── DDListCell.h
│   │   │   │   └── DDListCell.m
│   │   │   ├── chat
│   │   │   │   ├── addChatGroup
│   │   │   │   │   ├── DDAddChatGroupCell.h
│   │   │   │   │   ├── DDAddChatGroupCell.m
│   │   │   │   │   ├── DDAddChatGroup.h
│   │   │   │   │   ├── DDAddChatGroup.m
│   │   │   │   │   ├── DDAddChatGroupModel.h
│   │   │   │   │   ├── DDAddChatGroupModel.m
│   │   │   │   │   ├── DDAddChatGroupWindowController.h
│   │   │   │   │   ├── DDAddChatGroupWindowController.m
│   │   │   │   │   ├── DDAddChatGroupWindowController.xib
│   │   │   │   │   ├── DDAddGroupSelectedCell.h
│   │   │   │   │   ├── DDAddGroupSelectedCell.m
│   │   │   │   │   ├── DDClickCell.h
│   │   │   │   │   ├── DDClickCell.m
│   │   │   │   │   └── tree support
│   │   │   │   │   ├── BaseNode.h
│   │   │   │   │   ├── BaseNode.m
│   │   │   │   │   ├── ChildNode.h
│   │   │   │   │   └── ChildNode.m
│   │   │   │   ├── DDAddChatGroupWindowController.xib
│   │   │   │   ├── DDChattingHeadViewController.h
│   │   │   │   ├── DDChattingHeadViewController.m
│   │   │   │   ├── DDChattingInputView.h
│   │   │   │   ├── DDChattingInputView.m
│   │   │   │   ├── DDChattingViewController.h
│   │   │   │   ├── DDChattingViewController.m
│   │   │   │   ├── DDChattingView.xib
│   │   │   │   ├── DDEmotionAttachment.h
│   │   │   │   ├── DDEmotionAttachment.m
│   │   │   │   ├── DDImageMessage.h
│   │   │   │   ├── DDImageMessage.m
│   │   │   │   ├── DDSendingTextView.h
│   │   │   │   ├── DDSendingTextView.m
│   │   │   │   ├── DDTableView.h
│   │   │   │   ├── DDTableView.m
│   │   │   │   ├── ImageAndTextCell.h
│   │   │   │   └── ImageAndTextCell.m
│   │   │   ├── contactList
│   │   │   │   ├── contactList
│   │   │   │   │   ├── DDAbstractListController.h
│   │   │   │   │   ├── DDAbstractListController.m
│   │   │   │   │   ├── DDAnimatingListOutlineView.h
│   │   │   │   │   ├── DDAnimatingListOutlineView.m
│   │   │   │   │   ├── DDContactListWindowController.h
│   │   │   │   │   ├── DDContactListWindowController.m
│   │   │   │   │   ├── DDListController.h
│   │   │   │   │   ├── DDListController.m
│   │   │   │   │   ├── DDListOutlineView.h
│   │   │   │   │   ├── DDListOutlineView.m
│   │   │   │   │   ├── DDListWindowController.h
│   │   │   │   │   ├── DDListWindowController.m
│   │   │   │   │   ├── MainWindowSegmentedControl.h
│   │   │   │   │   └── MainWindowSegmentedControl.m
│   │   │   │   ├── ContactListWindow.xib
│   │   │   │   ├── standardWindow
│   │   │   │   │   ├── DDContactListNameButton.h
│   │   │   │   │   ├── DDContactListNameButton.m
│   │   │   │   │   ├── DDHoveringPopUpButtonCell.h
│   │   │   │   │   ├── DDHoveringPopUpButtonCell.m
│   │   │   │   │   ├── DDHoveringPopUpButton.h
│   │   │   │   │   ├── DDHoveringPopUpButton.m
│   │   │   │   │   ├── DDStandardListWindowController.h
│   │   │   │   │   └── DDStandardListWindowController.m
│   │   │   │   └── userIconChanging
│   │   │   │   ├── ContactListChangeUserPictureMenu.xib
│   │   │   │   ├── DDContactListImagePicker.h
│   │   │   │   ├── DDContactListImagePicker.m
│   │   │   │   ├── DDContactListUserPictureMenuController.h
│   │   │   │   ├── DDContactListUserPictureMenuController.m
│   │   │   │   └── IKRecentPicture.h
│   │   │   ├── DDInterfaceController.h
│   │   │   ├── DDInterfaceController.m
│   │   │   ├── DDMainWindow.h
│   │   │   ├── DDMainWindow.m
│   │   │   ├── DDWindowController.h
│   │   │   ├── DDWindowController.m
│   │   │   ├── emotion
│   │   │   │   ├── EmotionCellView.h
│   │   │   │   ├── EmotionCellView.m
│   │   │   │   ├── emotionList.xml
│   │   │   │   ├── EmotionListXmlParser.h
│   │   │   │   ├── EmotionListXmlParser.m
│   │   │   │   ├── EmotionPopover.xib
│   │   │   │   ├── EmotionViewController.h
│   │   │   │   └── EmotionViewController.m
│   │   │   ├── login window
│   │   │   │   ├── DDLoginWindowController.h
│   │   │   │   ├── DDLoginWindowController.m
│   │   │   │   ├── DDLoginWindow.h
│   │   │   │   ├── DDLoginWindow.m
│   │   │   │   └── LoginSelect.xib
│   │   │   ├── mainWindow
│   │   │   │   ├── DDImageSpreadView.h
│   │   │   │   ├── DDImageSpreadView.m
│   │   │   │   ├── DDImageView.h
│   │   │   │   ├── DDImageView.m
│   │   │   │   ├── DDMainUIController.h
│   │   │   │   ├── DDMainUIController.m
│   │   │   │   ├── DDMainWindowController.h
│   │   │   │   ├── DDMainWindowController.m
│   │   │   │   ├── DDMainWindow.xib
│   │   │   │   ├── DDSplitView.h
│   │   │   │   ├── DDSplitView.m
│   │   │   │   ├── DDTabItemView.h
│   │   │   │   ├── DDTabItemView.m
│   │   │   │   ├── FMSearchTokenField.h
│   │   │   │   ├── FMSearchTokenField.m
│   │   │   │   └── searchField
│   │   │   │   ├── DDMainSearchField.h
│   │   │   │   ├── DDMainSearchField.m
│   │   │   │   ├── DDNinePartImage.h
│   │   │   │   ├── DDNinePartImage.m
│   │   │   │   ├── DDSearchFieldCell.h
│   │   │   │   ├── DDSearchFieldCell.m
│   │   │   │   ├── DDSearchFieldController.h
│   │   │   │   ├── DDSearchFieldController.m
│   │   │   │   ├── DDSearchFieldEditorDelegate.h
│   │   │   │   ├── DDSearchFieldEditorDelegate.m
│   │   │   │   ├── DDSearchFieldResultCell.h
│   │   │   │   ├── DDSearchFieldResultCell.m
│   │   │   │   ├── FMSearchTokenAttachmentCell.h
│   │   │   │   ├── FMSearchTokenAttachmentCell.m
│   │   │   │   ├── FMSearchTokenFieldCell.h
│   │   │   │   ├── FMSearchTokenFieldCell.m
│   │   │   │   ├── SpellLibrary.h
│   │   │   │   └── SpellLibrary.m
│   │   │   └── UserData
│   │   │   ├── DDGroupDataModule.h
│   │   │   ├── DDGroupDataModule.m
│   │   │   ├── DDGroupDataWindow.h
│   │   │   ├── DDGroupDataWindow.m
│   │   │   ├── DDGroupDataWindow.xib
│   │   │   ├── DDGroupInfoCell.h
│   │   │   ├── DDGroupInfoCell.m
│   │   │   ├── DDGroupInfoManager.h
│   │   │   ├── DDGroupInfoManager.m
│   │   │   ├── DDUserDataModel.h
│   │   │   ├── DDUserDataModel.m
│   │   │   ├── DDUserDataWindowController.h
│   │   │   ├── DDUserDataWindowController.m
│   │   │   ├── DDUserInfoManager.h
│   │   │   ├── DDUserInfoManager.m
│   │   │   ├── DDUserInfoPanel.h
│   │   │   ├── DDUserInfoPanel.m
│   │   │   └── DDUserInfoPanel.xib
│   │   ├── Libraries
│   │   │   ├── libsecurity
│   │   │   │   └── security.h
│   │   │   ├── Log4Cocoa
│   │   │   │   ├── L4AppenderAttachable.h
│   │   │   │   ├── L4AppenderAttachable.m
│   │   │   │   ├── L4AppenderProtocols.h
│   │   │   │   ├── L4AppenderSkeleton.h
│   │   │   │   ├── L4AppenderSkeleton.m
│   │   │   │   ├── L4BasicConfigurator.h
│   │   │   │   ├── L4BasicConfigurator.m
│   │   │   │   ├── L4ConsoleAppender.h
│   │   │   │   ├── L4ConsoleAppender.m
│   │   │   │   ├── L4DailyRollingFileAppender.h
│   │   │   │   ├── L4DailyRollingFileAppender.m
│   │   │   │   ├── L4DenyAllFilter.h
│   │   │   │   ├── L4DenyAllFilter.m
│   │   │   │   ├── L4FileAppender.h
│   │   │   │   ├── L4FileAppender.m
│   │   │   │   ├── L4Filter.h
│   │   │   │   ├── L4Filter.m
│   │   │   │   ├── L4JSONLayout.h
│   │   │   │   ├── L4JSONLayout.m
│   │   │   │   ├── L4Layout.h
│   │   │   │   ├── L4Layout.m
│   │   │   │   ├── L4Level.h
│   │   │   │   ├── L4Level.m
│   │   │   │   ├── L4LevelMatchFilter.h
│   │   │   │   ├── L4LevelMatchFilter.m
│   │   │   │   ├── L4LevelRangeFilter.h
│   │   │   │   ├── L4LevelRangeFilter.m
│   │   │   │   ├── L4LogEvent.h
│   │   │   │   ├── L4LogEvent.m
│   │   │   │   ├── L4Logger.h
│   │   │   │   ├── L4Logger.m
│   │   │   │   ├── L4LoggerNameMatchFilter.h
│   │   │   │   ├── L4LoggerNameMatchFilter.m
│   │   │   │   ├── L4LoggerProtocols.h
│   │   │   │   ├── L4LoggerStore.h
│   │   │   │   ├── L4LoggerStore.m
│   │   │   │   ├── L4Logging.h
│   │   │   │   ├── L4Logging.m
│   │   │   │   ├── L4LogLog.h
│   │   │   │   ├── L4LogLog.m
│   │   │   │   ├── L4PatternLayout.h
│   │   │   │   ├── L4PatternLayout.m
│   │   │   │   ├── L4Properties.h
│   │   │   │   ├── L4Properties.m
│   │   │   │   ├── L4PropertyConfigurator.h
│   │   │   │   ├── L4PropertyConfigurator.m
│   │   │   │   ├── L4RollingFileAppender.h
│   │   │   │   ├── L4RollingFileAppender.m
│   │   │   │   ├── L4RootLogger.h
│   │   │   │   ├── L4RootLogger.m
│   │   │   │   ├── L4SimpleLayout.h
│   │   │   │   ├── L4SimpleLayout.m
│   │   │   │   ├── L4StringMatchFilter.h
│   │   │   │   ├── L4StringMatchFilter.m
│   │   │   │   ├── L4WriterAppender.h
│   │   │   │   ├── L4WriterAppender.m
│   │   │   │   ├── L4XMLLayout.h
│   │   │   │   ├── L4XMLLayout.m
│   │   │   │   ├── Log4CocoaDefines.h
│   │   │   │   ├── Log4Cocoa.h
│   │   │   │   ├── Log4Cocoa-Prefix.pch
│   │   │   │   ├── NSObject+Log4Cocoa.h
│   │   │   │   └── NSObject+Log4Cocoa.m
│   │   │   ├── Reachability
│   │   │   │   ├── Reachability.h
│   │   │   │   └── Reachability.m
│   │   │   └── Speex
│   │   │   ├── speexdec
│   │   │   └── speexenc
│   │   ├── main.m
│   │   ├── MD5.h
│   │   ├── MD5.m
│   │   ├── MessageReview
│   │   │   ├── DDMessageReviewContactsCellView.h
│   │   │   ├── DDMessageReviewContactsCellView.m
│   │   │   ├── DDMessageReviewContactsViewController.h
│   │   │   ├── DDMessageReviewContactsViewController.m
│   │   │   ├── DDMessageReviewModule.h
│   │   │   ├── DDMessageReviewModule.m
│   │   │   ├── DDMessageReviewTextView.h
│   │   │   ├── DDMessageReviewTextView.m
│   │   │   ├── DDMessageReviewWindowController.h
│   │   │   ├── DDMessageReviewWindowController.m
│   │   │   ├── DDMessageReviewWindow.xib
│   │   │   ├── DDMessagesReviewContentModule.h
│   │   │   ├── DDMessagesReviewContentModule.m
│   │   │   ├── DDMessagesReviewContentViewController.h
│   │   │   ├── DDMessagesReviewContentViewController.m
│   │   │   ├── DDMessagesReviewWindow.h
│   │   │   └── DDMessagesReviewWindow.m
│   │   ├── modules
│   │   │   ├── Chatting
│   │   │   │   ├── DDAtUserListViewController.h
│   │   │   │   ├── DDAtUserListViewController.m
│   │   │   │   ├── DDAtUserListViewController.xib
│   │   │   │   ├── DDChangableAttactment.h
│   │   │   │   ├── DDChangableAttactment.m
│   │   │   │   ├── DDImageUploader.h
│   │   │   │   ├── DDImageUploader.m
│   │   │   │   ├── DDMessageSendManager.h
│   │   │   │   ├── DDMessageSendManager.m
│   │   │   │   ├── DDMessageTextView.h
│   │   │   │   ├── DDMessageTextView.m
│   │   │   │   ├── DrawView.h
│   │   │   │   ├── DrawView.m
│   │   │   │   ├── EmotionManager.h
│   │   │   │   ├── EmotionManager.m
│   │   │   │   ├── MessageShowView.h
│   │   │   │   ├── MessageShowView.m
│   │   │   │   ├── MessageViewFactory.h
│   │   │   │   ├── MessageViewFactory.m
│   │   │   │   ├── NSAttributedString+Message.h
│   │   │   │   ├── NSAttributedString+Message.m
│   │   │   │   ├── NSImage+Scale.h
│   │   │   │   ├── NSImage+Scale.m
│   │   │   │   ├── NSTextView+Rect.h
│   │   │   │   ├── NSTextView+Rect.m
│   │   │   │   ├── WhiteBackgroundView.h
│   │   │   │   └── WhiteBackgroundView.m
│   │   │   ├── common
│   │   │   │   ├── DDCommonModule.h
│   │   │   │   └── DDCommonModule.m
│   │   │   ├── DB
│   │   │   │   ├── MTDatabaseUtil.h
│   │   │   │   └── MTDatabaseUtil.m
│   │   │   ├── dbmanager
│   │   │   │   ├── DDDatabaseUtil.h
│   │   │   │   └── DDDatabaseUtil.m
│   │   │   ├── DDRootModule.h
│   │   │   ├── DDRootModule.m
│   │   │   ├── Http
│   │   │   │   ├── DDHttpEntity.h
│   │   │   │   ├── DDHttpEntity.m
│   │   │   │   ├── DDHttpModule.h
│   │   │   │   └── DDHttpModule.m
│   │   │   ├── login
│   │   │   │   ├── DDHttpServer.h
│   │   │   │   ├── DDHttpServer.m
│   │   │   │   ├── DDLoginManager.h
│   │   │   │   ├── DDLoginManager.m
│   │   │   │   ├── DDLoginServer.h
│   │   │   │   ├── DDLoginServer.m
│   │   │   │   ├── DDLoginWindowControllerModule.h
│   │   │   │   ├── DDLoginWindowControllerModule.m
│   │   │   │   ├── DDMsgServer.h
│   │   │   │   ├── DDMsgServer.m
│   │   │   │   ├── DDTcpServer.h
│   │   │   │   └── DDTcpServer.m
│   │   │   ├── Main
│   │   │   │   ├── AvatorImageView.h
│   │   │   │   ├── AvatorImageView.m
│   │   │   │   ├── DDChattingWindowManager.h
│   │   │   │   ├── DDChattingWindowManager.m
│   │   │   │   ├── DDContactsRowView.h
│   │   │   │   ├── DDContactsRowView.m
│   │   │   │   ├── DDGroupCell.h
│   │   │   │   ├── DDGroupCell.m
│   │   │   │   ├── DDGroupVCModule.h
│   │   │   │   ├── DDGroupVCModule.m
│   │   │   │   ├── DDGroupViewController.h
│   │   │   │   ├── DDGroupViewController.m
│   │   │   │   ├── DDLeftBarItem.h
│   │   │   │   ├── DDLeftBarItem.m
│   │   │   │   ├── DDLeftBarViewController.h
│   │   │   │   ├── DDLeftBarViewController.m
│   │   │   │   ├── DDMainModule.h
│   │   │   │   ├── DDMainModule.m
│   │   │   │   ├── DDMainWindowControllerModule.h
│   │   │   │   ├── DDMainWindowControllerModule.m
│   │   │   │   ├── DDRecentContactsCell.h
│   │   │   │   ├── DDRecentContactsCell.m
│   │   │   │   ├── DDRecentContactsModule.h
│   │   │   │   ├── DDRecentContactsModule.m
│   │   │   │   ├── DDRecentContactsViewController.h
│   │   │   │   ├── DDRecentContactsViewController.m
│   │   │   │   ├── DDRecentContactsViewController.xib
│   │   │   │   ├── DDSearchResultCell.h
│   │   │   │   ├── DDSearchResultCell.m
│   │   │   │   ├── DDSearchViewController.h
│   │   │   │   ├── DDSearchViewController.m
│   │   │   │   ├── HoverTableRowView.h
│   │   │   │   └── HoverTableRowView.m
│   │   │   ├── message
│   │   │   │   ├── MTLastMessageManager.h
│   │   │   │   ├── MTLastMessageManager.m
│   │   │   │   ├── MTMessageEntity.h
│   │   │   │   ├── MTMessageEntity.mm
│   │   │   │   ├── MTMessageModule.h
│   │   │   │   └── MTMessageModule.m
│   │   │   ├── OriginEntity
│   │   │   │   ├── DDOriginEntity.h
│   │   │   │   ├── DDOriginEntity.m
│   │   │   │   ├── Grouyp
│   │   │   │   │   ├── MTGroupEntity.h
│   │   │   │   │   └── MTGroupEntity.m
│   │   │   │   └── User
│   │   │   │   ├── MTDepartmentEntity.h
│   │   │   │   ├── MTDepartmentEntity.m
│   │   │   │   ├── MTUserEntity.h
│   │   │   │   └── MTUserEntity.m
│   │   │   ├── OriginModule
│   │   │   │   ├── DDOriginModuleProtocol.h
│   │   │   │   ├── GroupModule
│   │   │   │   │   ├── MTGroupModule.h
│   │   │   │   │   └── MTGroupModule.m
│   │   │   │   └── UserModule
│   │   │   │   ├── MTDepartmentManager.h
│   │   │   │   ├── MTDepartmentManager.m
│   │   │   │   ├── MTUserModule.h
│   │   │   │   └── MTUserModule.m
│   │   │   ├── pb
│   │   │   │   ├── IMBaseDefine.pb.h
│   │   │   │   ├── IMBaseDefine.pb.m
│   │   │   │   ├── IMBuddy.pb.h
│   │   │   │   ├── IMBuddy.pb.m
│   │   │   │   ├── IMFile.pb.h
│   │   │   │   ├── IMFile.pb.m
│   │   │   │   ├── IMGroup.pb.h
│   │   │   │   ├── IMGroup.pb.m
│   │   │   │   ├── IMInternal.pb.h
│   │   │   │   ├── IMInternal.pb.m
│   │   │   │   ├── IMLogin.pb.h
│   │   │   │   ├── IMLogin.pb.m
│   │   │   │   ├── IMMessage.pb.h
│   │   │   │   ├── IMMessage.pb.m
│   │   │   │   ├── IMOther.pb.h
│   │   │   │   ├── IMOther.pb.m
│   │   │   │   ├── IMServer.pb.h
│   │   │   │   ├── IMServer.pb.m
│   │   │   │   ├── IMSwitchService.pb.h
│   │   │   │   ├── IMSwitchService.pb.m
│   │   │   │   ├── IMXIAOT.pb.h
│   │   │   │   └── IMXIAOT.pb.m
│   │   │   ├── session
│   │   │   │   ├── DDAddGroupMemberDepartmentCell.h
│   │   │   │   ├── DDAddGroupMemberDepartmentCell.m
│   │   │   │   ├── DDAddGroupMemberDepartmentRowView.h
│   │   │   │   ├── DDAddGroupMemberDepartmentRowView.m
│   │   │   │   ├── DDMultiSelectedOutlineView.h
│   │   │   │   ├── DDMultiSelectedOutlineView.m
│   │   │   │   ├── MTChattingInputView.h
│   │   │   │   ├── MTChattingInputView.m
│   │   │   │   ├── _SessionEntity.h
│   │   │   │   └── _SessionEntity.m
│   │   │   ├── Session1
│   │   │   │   ├── Entity
│   │   │   │   │   ├── MTSessionEntity.h
│   │   │   │   │   └── MTSessionEntity.m
│   │   │   │   └── Module
│   │   │   │   ├── MTSessionModule.h
│   │   │   │   └── MTSessionModule.m
│   │   │   └── SysConfig
│   │   │   ├── Entity
│   │   │   │   ├── MTSysConfigEntity.h
│   │   │   │   └── MTSysConfigEntity.m
│   │   │   └── Module
│   │   │   ├── MTSysConfigModule.h
│   │   │   └── MTSysConfigModule.m
│   │   ├── MTDraftManager.h
│   │   ├── MTDraftManager.m
│   │   ├── MTInputHistoryManager.h
│   │   ├── MTInputHistoryManager.m
│   │   ├── MTPreviewItem.h
│   │   ├── MTPreviewItem.m
│   │   ├── MTUnreadMessageManager.h
│   │   ├── MTUnreadMessageManager.m
│   │   ├── net
│   │   │   └── mtalk
│   │   │   ├── data
│   │   │   │   ├── DDBaseEntity.h
│   │   │   │   ├── DDBaseEntity.m
│   │   │   │   ├── DDepartment.h
│   │   │   │   ├── DDepartment.m
│   │   │   │   ├── DDIntranetMessageEntity.h
│   │   │   │   ├── DDIntranetMessageEntity.m
│   │   │   │   ├── FileTransferEntity.h
│   │   │   │   ├── FileTransferEntity.m
│   │   │   │   ├── _GroupEntity.h
│   │   │   │   ├── _GroupEntity.m
│   │   │   │   ├── LoginEntity.h
│   │   │   │   ├── LoginEntity.m
│   │   │   │   ├── MessageDate.h
│   │   │   │   ├── MessageDate.m
│   │   │   │   ├── MessageEntity.h
│   │   │   │   ├── MessageEntity.m
│   │   │   │   ├── MGJEntity.h
│   │   │   │   ├── MGJEntity.m
│   │   │   │   ├── _UserEntity.h
│   │   │   │   └── _UserEntity.m
│   │   │   ├── DataInputStream.h
│   │   │   ├── DataInputStream.m
│   │   │   ├── DataOutputStream.h
│   │   │   ├── DataOutputStream.m
│   │   │   ├── handlers
│   │   │   │   ├── MGJMTalkIMessageHanlder.h
│   │   │   │   ├── TcpProtocolHeader.h
│   │   │   │   └── TcpProtocolHeader.m
│   │   │   ├── mac
│   │   │   │   ├── NSStream+NSStreamAddition.h
│   │   │   │   └── NSStream+NSStreamAddition.m
│   │   │   └── util
│   │   │   ├── SendBuffer.h
│   │   │   └── SendBuffer.m
│   │   ├── NotificationHelp.h
│   │   ├── NotificationHelp.m
│   │   ├── perference
│   │   │   ├── DDPreferenceWinController.h
│   │   │   ├── DDPreferenceWinController.m
│   │   │   └── DDPreferenceWinController.xib
│   │   ├── PFMoveApplication.h
│   │   ├── PFMoveApplication.m
│   │   ├── preference
│   │   │   ├── DDOptionsBase.h
│   │   │   ├── DDOptionsBase.m
│   │   │   ├── DDPreferenceWinController.h
│   │   │   ├── DDPreferenceWinController.m
│   │   │   ├── DDPreferenceWinController.xib
│   │   │   ├── DDUserPreferences.h
│   │   │   └── DDUserPreferences.m
│   │   ├── protocol
│   │   │   ├── DDContactObserverManager.h
│   │   │   └── DDMainWindowControllerProtocol.h
│   │   ├── resource
│   │   │   ├── aio_recentsession_unreadmsg@2x.png
│   │   │   ├── aio_recentsession_unreadmsg.png
│   │   │   ├── aio_recentsession_unreadmsg_selected@2x.png
│   │   │   ├── aio_recentsession_unreadmsg_selected.png
│   │   │   ├── aio_recentsession_unreadmsg_selected_wide@2x.png
│   │   │   ├── aio_recentsession_unreadmsg_selected_wide.png
│   │   │   ├── aio_recentsession_unreadmsg_wide@2x.png
│   │   │   ├── aio_recentsession_unreadmsg_wide.png
│   │   │   ├── avatar_default.jpg_48x48.jpg
│   │   │   ├── bubble_left@2x.png
│   │   │   ├── bubble_left.png
│   │   │   ├── bubble_right@2x.png
│   │   │   ├── bubble_right.png
│   │   │   ├── dd_modisy_avatar@2x.png
│   │   │   ├── dd_modisy_avatar.png
│   │   │   ├── duoduo.png
│   │   │   ├── emotions
│   │   │   │   ├── 0.gif
│   │   │   │   ├── 100.gif
│   │   │   │   ├── 101.gif
│   │   │   │   ├── 102.gif
│   │   │   │   ├── 103.gif
│   │   │   │   ├── 104.gif
│   │   │   │   ├── 105.gif
│   │   │   │   ├── 106.gif
│   │   │   │   ├── 107.gif
│   │   │   │   ├── 108.gif
│   │   │   │   ├── 109.gif
│   │   │   │   ├── 10.gif
│   │   │   │   ├── 110.gif
│   │   │   │   ├── 111.gif
│   │   │   │   ├── 112.gif
│   │   │   │   ├── 113.gif
│   │   │   │   ├── 114.gif
│   │   │   │   ├── 115.gif
│   │   │   │   ├── 116.gif
│   │   │   │   ├── 117.gif
│   │   │   │   ├── 118.gif
│   │   │   │   ├── 119.gif
│   │   │   │   ├── 11.gif
│   │   │   │   ├── 120.gif
│   │   │   │   ├── 121.gif
│   │   │   │   ├── 122.gif
│   │   │   │   ├── 123.gif
│   │   │   │   ├── 124.gif
│   │   │   │   ├── 125.gif
│   │   │   │   ├── 126.gif
│   │   │   │   ├── 127.gif
│   │   │   │   ├── 128.gif
│   │   │   │   ├── 129.gif
│   │   │   │   ├── 12.gif
│   │   │   │   ├── 130.gif
│   │   │   │   ├── 131.gif
│   │   │   │   ├── 132.gif
│   │   │   │   ├── 133.gif
│   │   │   │   ├── 134.gif
│   │   │   │   ├── 135.gif
│   │   │   │   ├── 136.gif
│   │   │   │   ├── 137.gif
│   │   │   │   ├── 138.gif
│   │   │   │   ├── 139.gif
│   │   │   │   ├── 13.gif
│   │   │   │   ├── 140.gif
│   │   │   │   ├── 141.gif
│   │   │   │   ├── 142.gif
│   │   │   │   ├── 143.gif
│   │   │   │   ├── 144.gif
│   │   │   │   ├── 145.gif
│   │   │   │   ├── 146.gif
│   │   │   │   ├── 147.gif
│   │   │   │   ├── 148.gif
│   │   │   │   ├── 149.gif
│   │   │   │   ├── 14.gif
│   │   │   │   ├── 150.gif
│   │   │   │   ├── 151.gif
│   │   │   │   ├── 152.gif
│   │   │   │   ├── 153.gif
│   │   │   │   ├── 154.gif
│   │   │   │   ├── 155.gif
│   │   │   │   ├── 156.gif
│   │   │   │   ├── 157.gif
│   │   │   │   ├── 158.gif
│   │   │   │   ├── 159.gif
│   │   │   │   ├── 15.gif
│   │   │   │   ├── 160.gif
│   │   │   │   ├── 161.gif
│   │   │   │   ├── 162.gif
│   │   │   │   ├── 163.gif
│   │   │   │   ├── 164.gif
│   │   │   │   ├── 165.gif
│   │   │   │   ├── 166.gif
│   │   │   │   ├── 167.gif
│   │   │   │   ├── 168.gif
│   │   │   │   ├── 169.gif
│   │   │   │   ├── 16.gif
│   │   │   │   ├── 170.gif
│   │   │   │   ├── 171.gif
│   │   │   │   ├── 172.gif
│   │   │   │   ├── 173.gif
│   │   │   │   ├── 174.gif
│   │   │   │   ├── 175.gif
│   │   │   │   ├── 176.gif
│   │   │   │   ├── 177.gif
│   │   │   │   ├── 178.gif
│   │   │   │   ├── 179.gif
│   │   │   │   ├── 17.gif
│   │   │   │   ├── 180.gif
│   │   │   │   ├── 181.gif
│   │   │   │   ├── 182.gif
│   │   │   │   ├── 183.gif
│   │   │   │   ├── 184.gif
│   │   │   │   ├── 185.gif
│   │   │   │   ├── 186.gif
│   │   │   │   ├── 187.gif
│   │   │   │   ├── 188.gif
│   │   │   │   ├── 189.gif
│   │   │   │   ├── 18.gif
│   │   │   │   ├── 190.gif
│   │   │   │   ├── 191.gif
│   │   │   │   ├── 192.gif
│   │   │   │   ├── 193.gif
│   │   │   │   ├── 194.gif
│   │   │   │   ├── 195.gif
│   │   │   │   ├── 196.gif
│   │   │   │   ├── 197.gif
│   │   │   │   ├── 198.gif
│   │   │   │   ├── 199.gif
│   │   │   │   ├── 19.gif
│   │   │   │   ├── 1.gif
│   │   │   │   ├── 200.gif
│   │   │   │   ├── 201.gif
│   │   │   │   ├── 202.gif
│   │   │   │   ├── 203.gif
│   │   │   │   ├── 204.gif
│   │   │   │   ├── 205.gif
│   │   │   │   ├── 206.gif
│   │   │   │   ├── 207.gif
│   │   │   │   ├── 208.gif
│   │   │   │   ├── 209.gif
│   │   │   │   ├── 20.gif
│   │   │   │   ├── 210.gif
│   │   │   │   ├── 211.gif
│   │   │   │   ├── 212.gif
│   │   │   │   ├── 213.gif
│   │   │   │   ├── 214.gif
│   │   │   │   ├── 215.gif
│   │   │   │   ├── 216.gif
│   │   │   │   ├── 217.gif
│   │   │   │   ├── 218.gif
│   │   │   │   ├── 219.gif
│   │   │   │   ├── 21.gif
│   │   │   │   ├── 220.gif
│   │   │   │   ├── 22.gif
│   │   │   │   ├── 23.gif
│   │   │   │   ├── 24.gif
│   │   │   │   ├── 25.gif
│   │   │   │   ├── 26.gif
│   │   │   │   ├── 27.gif
│   │   │   │   ├── 28.gif
│   │   │   │   ├── 29.gif
│   │   │   │   ├── 2.gif
│   │   │   │   ├── 30.gif
│   │   │   │   ├── 31.gif
│   │   │   │   ├── 32.gif
│   │   │   │   ├── 33.gif
│   │   │   │   ├── 34.gif
│   │   │   │   ├── 35.gif
│   │   │   │   ├── 36.gif
│   │   │   │   ├── 37.gif
│   │   │   │   ├── 38.gif
│   │   │   │   ├── 39.gif
│   │   │   │   ├── 3.gif
│   │   │   │   ├── 40.gif
│   │   │   │   ├── 41.gif
│   │   │   │   ├── 42.gif
│   │   │   │   ├── 43.gif
│   │   │   │   ├── 44.gif
│   │   │   │   ├── 45.gif
│   │   │   │   ├── 46.gif
│   │   │   │   ├── 47.gif
│   │   │   │   ├── 48.gif
│   │   │   │   ├── 49.gif
│   │   │   │   ├── 4.gif
│   │   │   │   ├── 50.gif
│   │   │   │   ├── 51.gif
│   │   │   │   ├── 52.gif
│   │   │   │   ├── 53.gif
│   │   │   │   ├── 54.gif
│   │   │   │   ├── 55.gif
│   │   │   │   ├── 56.gif
│   │   │   │   ├── 57.gif
│   │   │   │   ├── 58.gif
│   │   │   │   ├── 59.gif
│   │   │   │   ├── 5.gif
│   │   │   │   ├── 60.gif
│   │   │   │   ├── 61.gif
│   │   │   │   ├── 62.gif
│   │   │   │   ├── 63.gif
│   │   │   │   ├── 64.gif
│   │   │   │   ├── 65.gif
│   │   │   │   ├── 66.gif
│   │   │   │   ├── 67.gif
│   │   │   │   ├── 68.gif
│   │   │   │   ├── 69.gif
│   │   │   │   ├── 6.gif
│   │   │   │   ├── 70.gif
│   │   │   │   ├── 71.gif
│   │   │   │   ├── 72.gif
│   │   │   │   ├── 73.gif
│   │   │   │   ├── 74.gif
│   │   │   │   ├── 75.gif
│   │   │   │   ├── 76.gif
│   │   │   │   ├── 77.gif
│   │   │   │   ├── 78.gif
│   │   │   │   ├── 79.gif
│   │   │   │   ├── 7.gif
│   │   │   │   ├── 80.gif
│   │   │   │   ├── 81.gif
│   │   │   │   ├── 82.gif
│   │   │   │   ├── 83.gif
│   │   │   │   ├── 84.gif
│   │   │   │   ├── 85.gif
│   │   │   │   ├── 86.gif
│   │   │   │   ├── 87.gif
│   │   │   │   ├── 88.gif
│   │   │   │   ├── 89.gif
│   │   │   │   ├── 8.gif
│   │   │   │   ├── 90.gif
│   │   │   │   ├── 91.gif
│   │   │   │   ├── 92.gif
│   │   │   │   ├── 93.gif
│   │   │   │   ├── 94.gif
│   │   │   │   ├── 95.gif
│   │   │   │   ├── 96.gif
│   │   │   │   ├── 97.gif
│   │   │   │   ├── 98.gif
│   │   │   │   ├── 99.gif
│   │   │   │   └── 9.gif
│   │   │   ├── fileTransfer
│   │   │   │   ├── filetransfer_avatar_receive@2x.png
│   │   │   │   ├── filetransfer_avatar_receive.png
│   │   │   │   ├── filetransfer_avatar_send@2x.png
│   │   │   │   ├── filetransfer_avatar_send.png
│   │   │   │   ├── filetransfer_close@2x.png
│   │   │   │   ├── filetransfer_close.png
│   │   │   │   ├── filetransfer_offline@2x.png
│   │   │   │   ├── filetransfer_offline.png
│   │   │   │   ├── filetransfer_receiver@2x.png
│   │   │   │   ├── filetransfer_receiver.png
│   │   │   │   ├── filetransfer_refuse@2x.png
│   │   │   │   ├── filetransfer_refuse.png
│   │   │   │   ├── filetransfer_search@2x.png
│   │   │   │   └── filetransfer_search.png
│   │   │   ├── group_placeholder@2x.png
│   │   │   ├── group_placeholder.png
│   │   │   ├── icon_addcontacts_disable_theme_gray@2x.png
│   │   │   ├── icon_addcontacts_disable_theme_gray.png
│   │   │   ├── icon_addcontacts_highlight_theme_gray@2x.png
│   │   │   ├── icon_addcontacts_highlight_theme_gray.png
│   │   │   ├── icon_addcontacts_theme_gray@2x.png
│   │   │   ├── icon_addcontacts_theme_gray.png
│   │   │   ├── icon_away@2x.png
│   │   │   ├── icon_away.png
│   │   │   ├── icon_check_empty@2x.png
│   │   │   ├── icon_check_empty.png
│   │   │   ├── icon_check_filled@2x.png
│   │   │   ├── icon_check_filled.png
│   │   │   ├── icon_close.png
│   │   │   ├── icon_conversation_highlight_theme_gray@2x.png
│   │   │   ├── icon_conversation_highlight_theme_gray.png
│   │   │   ├── icon_conversation_theme_gray@2x.png
│   │   │   ├── icon_conversation_theme_gray.png
│   │   │   ├── icon_fav@2x.png
│   │   │   ├── icon_fav.png
│   │   │   ├── icon_folder@2x.png
│   │   │   ├── icon_folder_h21@2x.png
│   │   │   ├── icon_folder_h21.png
│   │   │   ├── icon_folder.png
│   │   │   ├── icon_go@2x.png
│   │   │   ├── icon_go.png
│   │   │   ├── icon.icns
│   │   │   ├── icon_image_normal@2x.png
│   │   │   ├── icon_image_normal.png
│   │   │   ├── icon_offline@2x.png
│   │   │   ├── icon_offline.png
│   │   │   ├── icon_online@2x.png
│   │   │   ├── icon_online.png
│   │   │   ├── icon_organization_click_theme_gray@2x.png
│   │   │   ├── icon_organization_click_theme_gray.png
│   │   │   ├── icon_organization_highlight_theme_gray@2x.png
│   │   │   ├── icon_organization_highlight_theme_gray.png
│   │   │   ├── icon_refresh_arrow@2x.png
│   │   │   ├── icon_refresh_arrow_down@2x.png
│   │   │   ├── icon_refresh_arrow_down.png
│   │   │   ├── icon_refresh_arrow.png
│   │   │   ├── icon_screenshot@2x.png
│   │   │   ├── icon_screenshot_highlight@2x.png
│   │   │   ├── icon_screenshot_highlight.png
│   │   │   ├── icon_screenshot.png
│   │   │   ├── icon_send_file_gray@2x.png
│   │   │   ├── icon_send_file_gray.png
│   │   │   ├── icon_send_file_highlight@2x.png
│   │   │   ├── icon_send_file_highlight.png
│   │   │   ├── icon_smile@2x.png
│   │   │   ├── icon_smile_highlight@2x.png
│   │   │   ├── icon_smile_highlight.png
│   │   │   ├── icon_smile.png
│   │   │   ├── icon_statusbar_blue@2x.png
│   │   │   ├── icon_statusbar_blue.png
│   │   │   ├── icon_statusbar.tif
│   │   │   ├── icon_statusbar.tiff
│   │   │   ├── icon_unread_red@2x.png
│   │   │   ├── icon_unread_red.png
│   │   │   ├── icon_unread_red_wide@2x.png
│   │   │   ├── icon_unread_red_wide.png
│   │   │   ├── icon_user_away_h28@2x.png
│   │   │   ├── icon_user_away_h28.png
│   │   │   ├── icon_user_female_away_h28@2x.png
│   │   │   ├── icon_user_female_away_h28.png
│   │   │   ├── icon_user_female_h28@2x.png
│   │   │   ├── icon_user_female_h28.png
│   │   │   ├── icon_user_h28@2x.png
│   │   │   ├── icon_user_h28.png
│   │   │   ├── icon_user_h51@2x.png
│   │   │   ├── icon_user_h51.png
│   │   │   ├── icon_user_offline_h28@2x.png
│   │   │   ├── icon_user_offline_h28.png
│   │   │   ├── intranet_back@2x.png
│   │   │   ├── intranet_back.png
│   │   │   ├── intranet_forward@2x.png
│   │   │   ├── intranet_forward.png
│   │   │   ├── intranet_home@2x.png
│   │   │   ├── intranet_home.png
│   │   │   ├── intranet_icon@2x.png
│   │   │   ├── intranet_icon.png
│   │   │   ├── intranet_refresh@2x.png
│   │   │   ├── intranet_refresh.png
│   │   │   ├── intranet_selected@2x.png
│   │   │   ├── intranet_selected.png
│   │   │   ├── intranet_unselected@2x.png
│   │   │   ├── intranet_unselected.png
│   │   │   ├── lady_placeholder@2x.png
│   │   │   ├── lady_placeholder.png
│   │   │   ├── mainpanel_searchbar_active@2x.png
│   │   │   ├── mainpanel_searchbar_active.png
│   │   │   ├── mainpanel_searchbar_normal@2x.png
│   │   │   ├── mainpanel_searchbar_normal.png
│   │   │   ├── man_placeholder@2x.png
│   │   │   ├── man_placeholder.png
│   │   │   ├── message.mp3
│   │   │   ├── message.wav
│   │   │   ├── new resource
│   │   │   │   ├── addgroummember-unselected@2x.png
│   │   │   │   ├── addgroummember-unselected.png
│   │   │   │   ├── add-group-member@2x.png
│   │   │   │   ├── addgroupmember-arrow@2x.png
│   │   │   │   ├── addgroupmember-arrow.png
│   │   │   │   ├── addgroupmember-cancel2@2x.png
│   │   │   │   ├── addgroupmember-cancel2.png
│   │   │   │   ├── addgroupmember-cancel@2x.png
│   │   │   │   ├── addgroupmember-cancel.png
│   │   │   │   ├── add-group-member.png
│   │   │   │   ├── addgroupmember-search-background@2x.png
│   │   │   │   ├── addgroupmember-search-background.png
│   │   │   │   ├── addgroupmember-selected@2x.png
│   │   │   │   ├── addgroupmember-selected.png
│   │   │   │   ├── addgroupmember-sure@2x.png
│   │   │   │   ├── addgroupmember-sure.png
│   │   │   │   ├── almance@2x.png
│   │   │   │   ├── almance.png
│   │   │   │   ├── background@2x.png
│   │   │   │   ├── background.png
│   │   │   │   ├── bang@2x.png
│   │   │   │   ├── bang.png
│   │   │   │   ├── close@2x.png
│   │   │   │   ├── close.png
│   │   │   │   ├── emotion@2x.png
│   │   │   │   ├── emotion.png
│   │   │   │   ├── file-transmit-background@2x.png
│   │   │   │   ├── file-transmit-background.png
│   │   │   │   ├── file-transmit-cancel@2x.png
│   │   │   │   ├── file-transmit-cancel.png
│   │   │   │   ├── file-transmit-look@2x.png
│   │   │   │   ├── file-transmit-look.png
│   │   │   │   ├── file-transmit-update@2x.png
│   │   │   │   ├── file-transmit-update.png
│   │   │   │   ├── group-info-background@2x.png
│   │   │   │   ├── group-info-background.png
│   │   │   │   ├── group-info-line@2x.png
│   │   │   │   ├── group-info-line.png
│   │   │   │   ├── group-selected@2x.png
│   │   │   │   ├── group-selected.png
│   │   │   │   ├── group-unselected@2x.png
│   │   │   │   ├── group-unselected.png
│   │   │   │   ├── input-background@2x.png
│   │   │   │   ├── input-background.png
│   │   │   │   ├── left-bar-avatar@2x.png
│   │   │   │   ├── left-bar-avatar.png
│   │   │   │   ├── left-bar-selected-background@2x.png
│   │   │   │   ├── left-bar-selected-background.png
│   │   │   │   ├── login-account@2x.png
│   │   │   │   ├── login-account.png
│   │   │   │   ├── login-avatar-background@2x.png
│   │   │   │   ├── login-avatar-background.png
│   │   │   │   ├── login-background@2x.png
│   │   │   │   ├── login-background.png
│   │   │   │   ├── login-input-background@2x.png
│   │   │   │   ├── login-input-background.png
│   │   │   │   ├── login-logining@2x.png
│   │   │   │   ├── login-logining.png
│   │   │   │   ├── login-password@2x.png
│   │   │   │   ├── login-password.png
│   │   │   │   ├── message-review-double-lastpage@2x.png
│   │   │   │   ├── message-review-double-lastpage.png
│   │   │   │   ├── message-review-double-nextpage@2x.png
│   │   │   │   ├── message-review-double-nextpage.png
│   │   │   │   ├── message-review-last-page@2x.png
│   │   │   │   ├── message-review-last-page.png
│   │   │   │   ├── message-review-nextpage@2x.png
│   │   │   │   ├── message-review-nextpage.png
│   │   │   │   ├── No-File-transfor@2x.png
│   │   │   │   ├── No-File-transfor.png
│   │   │   │   ├── person-info-background@2x.png
│   │   │   │   ├── person-info-background.png
│   │   │   │   ├── person-info-chat@2x.png
│   │   │   │   ├── person-info-chat.png
│   │   │   │   ├── Recent-cell-background@2x.png
│   │   │   │   ├── Recent-cell-background.png
│   │   │   │   ├── recent-chat-selected@2x.png
│   │   │   │   ├── recent-chat-selected.png
│   │   │   │   ├── recent-chat-unselected@2x.png
│   │   │   │   ├── recent-chat-unselected.png
│   │   │   │   ├── recent-contacts-cell-background@2x.png
│   │   │   │   ├── recent-contacts-cell-background.png
│   │   │   │   ├── screen-shot@2x.png
│   │   │   │   ├── screen-shot.png
│   │   │   │   ├── search-background@2x.png
│   │   │   │   ├── search-background.png
│   │   │   │   ├── setting@2x.png
│   │   │   │   ├── setting.png
│   │   │   │   ├── shake-window@2x.png
│   │   │   │   ├── shake-window.png
│   │   │   │   ├── shield@2x.png
│   │   │   │   ├── shield.png
│   │   │   │   ├── state-background@2x.png
│   │   │   │   ├── state-background.png
│   │   │   │   ├── state-leave@2x.png
│   │   │   │   ├── state-leave.png
│   │   │   │   ├── state-offline@2x.png
│   │   │   │   ├── state-offline.png
│   │   │   │   ├── state-online@2x.png
│   │   │   │   ├── state-online.png
│   │   │   │   ├── Teamtalk-bottom@2x.png
│   │   │   │   ├── Teamtalk-bottom.png
│   │   │   │   ├── TeamTalk-Top@2x.png
│   │   │   │   ├── TeamTalk-Top.png
│   │   │   │   ├── top@2x.png
│   │   │   │   ├── top.png
│   │   │   │   ├── top-session@2x.png
│   │   │   │   ├── top-session.png
│   │   │   │   ├── transport-file@2x.png
│   │   │   │   ├── transport-file.png
│   │   │   │   ├── unread-count-background@2x.png
│   │   │   │   ├── unread-count-background.png
│   │   │   │   ├── window-titleBar-background@2x.png
│   │   │   │   ├── window-titleBar-background.png
│   │   │   │   ├── 形状-477@2x.png
│   │   │   │   └── 形状-477.png
│   │   │   ├── panel_bg_theme_gray@2x.png
│   │   │   ├── panel_bg_theme_gray.png
│   │   │   ├── preference_divider@2x.png
│   │   │   ├── preference_divider.png
│   │   │   ├── pull-to-refresh-arrow.png
│   │   │   ├── release-to-refresh.png
│   │   │   ├── ScreenCapture_toolbar_cancel.png
│   │   │   ├── ScreenCapture_toolbar_ellipse@2x.png
│   │   │   ├── ScreenCapture_toolbar_ellipse.png
│   │   │   ├── ScreenCapture_toolbar_ok.png
│   │   │   ├── ScreenCapture_toolbar_rect@2x.png
│   │   │   ├── ScreenCapture_toolbar_rect.png
│   │   │   ├── seperator_left@2x.png
│   │   │   ├── seperator_left.png
│   │   │   ├── seperator_right@2x.png
│   │   │   ├── seperator_right.png
│   │   │   ├── shield_gray@2x.png
│   │   │   ├── shield_gray.png
│   │   │   ├── shield_red@2x.png
│   │   │   ├── shield_red.png
│   │   │   ├── tabbar_bg_theme_gray@2x.png
│   │   │   ├── tabbar_bg_theme_gray.png
│   │   │   ├── tab_bg.png
│   │   │   ├── token_field_clear_btn@2x.png
│   │   │   ├── token_field_clear_btn.png
│   │   │   ├── toolbar_bg_theme_gray@2x.png
│   │   │   └── toolbar_bg_theme_gray.png
│   │   ├── SBJson
│   │   │   ├── NSObject+SBJson.h
│   │   │   ├── NSObject+SBJson.m
│   │   │   ├── SBJson.h
│   │   │   ├── SBJsonParser.h
│   │   │   ├── SBJsonParser.m
│   │   │   ├── SBJsonStreamParserAccumulator.h
│   │   │   ├── SBJsonStreamParserAccumulator.m
│   │   │   ├── SBJsonStreamParserAdapter.h
│   │   │   ├── SBJsonStreamParserAdapter.m
│   │   │   ├── SBJsonStreamParser.h
│   │   │   ├── SBJsonStreamParser.m
│   │   │   ├── SBJsonStreamParserState.h
│   │   │   ├── SBJsonStreamParserState.m
│   │   │   ├── SBJsonStreamWriterAccumulator.h
│   │   │   ├── SBJsonStreamWriterAccumulator.m
│   │   │   ├── SBJsonStreamWriter.h
│   │   │   ├── SBJsonStreamWriter.m
│   │   │   ├── SBJsonStreamWriterState.h
│   │   │   ├── SBJsonStreamWriterState.m
│   │   │   ├── SBJsonTokeniser.h
│   │   │   ├── SBJsonTokeniser.m
│   │   │   ├── SBJsonUTF8Stream.h
│   │   │   ├── SBJsonUTF8Stream.m
│   │   │   ├── SBJsonWriter.h
│   │   │   └── SBJsonWriter.m
│   │   ├── ScreenCapture
│   │   │   ├── BackgroudView.h
│   │   │   ├── BackgroudView.m
│   │   │   ├── CaptureView.h
│   │   │   ├── CaptureView.m
│   │   │   ├── CaptureWindow.h
│   │   │   ├── CaptureWindow.m
│   │   │   ├── MTScreenCaptureModule.h
│   │   │   └── MTScreenCaptureModule.m
│   │   ├── ServiceAccount
│   │   │   ├── DDServiceAccountModule.h
│   │   │   └── DDServiceAccountModule.m
│   │   ├── Services
│   │   │   ├── DDApplicationUpdate.h
│   │   │   ├── DDApplicationUpdate.m
│   │   │   ├── DDSearch.h
│   │   │   └── DDSearch.m
│   │   ├── shortcut
│   │   │   ├── MASShortcut.h
│   │   │   ├── MASShortcut.m
│   │   │   ├── MASShortcut+Monitoring.h
│   │   │   ├── MASShortcut+Monitoring.m
│   │   │   ├── MASShortcut+UserDefaults.h
│   │   │   ├── MASShortcut+UserDefaults.m
│   │   │   ├── MASShortcutView.h
│   │   │   ├── MASShortcutView.m
│   │   │   ├── MASShortcutView+UserDefaults.h
│   │   │   └── MASShortcutView+UserDefaults.m
│   │   ├── ShortcutRecorder.framework
│   │   │   ├── Headers
│   │   │   ├── Resources
│   │   │   ├── ShortcutRecorder
│   │   │   └── Versions
│   │   │   ├── A
│   │   │   │   ├── Headers
│   │   │   │   │   ├── ShortcutRecorder.h
│   │   │   │   │   ├── SRCommon.h
│   │   │   │   │   ├── SRKeyCodeTransformer.h
│   │   │   │   │   ├── SRRecorderCell.h
│   │   │   │   │   ├── SRRecorderControl.h
│   │   │   │   │   └── SRValidator.h
│   │   │   │   ├── Resources
│   │   │   │   │   ├── ca.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── cs.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── da.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── de.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── el.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── en.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── es.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── es-MX.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── fr.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── Info.plist
│   │   │   │   │   ├── it.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── ja.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── ko.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── nb.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── nl.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── pl.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── pt-BR.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── pt.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── pt-PT.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── ro.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── ru.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── sk.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── SRRemoveShortcutPressed.tif
│   │   │   │   │   ├── SRRemoveShortcutRollover.tif
│   │   │   │   │   ├── SRRemoveShortcut.tif
│   │   │   │   │   ├── SRSnapback.tiff
│   │   │   │   │   ├── sv.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── th.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   ├── zh-Hans.lproj
│   │   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   │   └── zh-Hant.lproj
│   │   │   │   │   └── ShortcutRecorder.strings
│   │   │   │   └── ShortcutRecorder
│   │   │   └── Current
│   │   ├── StateMaintenance
│   │   │   ├── DDClientState.h
│   │   │   ├── DDClientState.m
│   │   │   ├── DDClientStateMaintenanceManager.h
│   │   │   ├── DDClientStateMaintenanceManager.m
│   │   │   ├── DDCurrentUserState.h
│   │   │   ├── DDCurrentUserState.m
│   │   │   ├── StateMaintenanceManager.h
│   │   │   └── StateMaintenanceManager.m
│   │   ├── TeamTalk-Info.plist
│   │   ├── TeamTalk-Prefix.pch
│   │   └── utilities
│   │   ├── additions
│   │   │   ├── AIAttributedStringAdditions.h
│   │   │   ├── AIAttributedStringAdditions.m
│   │   │   ├── AIBezierPathAdditions.h
│   │   │   ├── AIBezierPathAdditions.m
│   │   │   ├── AIColorAdditions.h
│   │   │   ├── AIColorAdditions.m
│   │   │   ├── AIFileManagerAdditions.h
│   │   │   ├── AIFileManagerAdditions.m
│   │   │   ├── AIFontManagerAdditions.h
│   │   │   ├── AIFontManagerAdditions.m
│   │   │   ├── AIImageAdditions.h
│   │   │   ├── AIImageAdditions.m
│   │   │   ├── AIImageDrawingAdditions.h
│   │   │   ├── AIImageDrawingAdditions.m
│   │   │   ├── AIMathCompatibility.h
│   │   │   ├── AIParagraphStyleAdditions.h
│   │   │   ├── AIParagraphStyleAdditions.m
│   │   │   ├── AIPasteboardAdditions.h
│   │   │   ├── AIPasteboardAdditions.m
│   │   │   ├── AIStringUtilities.h
│   │   │   ├── AITextAttachmentAdditions.h
│   │   │   ├── AITextAttachmentAdditions.m
│   │   │   ├── AITextAttachmentExtension.h
│   │   │   ├── AITextAttachmentExtension.m
│   │   │   ├── AITextAttributes.h
│   │   │   ├── AITextAttributes.m
│   │   │   ├── AIWindowControllerAdditions.h
│   │   │   ├── AIWindowControllerAdditions.m
│   │   │   ├── DDDictionaryAdditions.h
│   │   │   ├── DDDictionaryAdditions.m
│   │   │   ├── DDSharedWriterQueue.h
│   │   │   ├── DDSharedWriterQueue.m
│   │   │   ├── DDWindowAdditions.h
│   │   │   ├── DDWindowAdditions.m
│   │   │   ├── NSEvent+DDEventAdditions.h
│   │   │   ├── NSEvent+DDEventAdditions.m
│   │   │   ├── NSFileManager+DDFileManagerAdditions.h
│   │   │   ├── NSFileManager+DDFileManagerAdditions.m
│   │   │   ├── NSString+DDStringAdditions.h
│   │   │   └── NSString+DDStringAdditions.m
│   │   ├── Constant
│   │   │   └── CONSTANT.h
│   │   ├── DDCommonApi.h
│   │   ├── DDCommonApi.m
│   │   ├── DDSound.h
│   │   ├── DDSound.m
│   │   ├── Extensions
│   │   │   ├── NSData+NSJSONSerialization.h
│   │   │   ├── NSData+NSJSONSerialization.m
│   │   │   ├── NSDictionary+MGJ.h
│   │   │   ├── NSDictionary+MGJ.m
│   │   │   ├── NSNotification+DDLogic.h
│   │   │   └── NSNotification+DDLogic.m
│   │   ├── funNewClasses
│   │   │   ├── DDMutableOwnerArray.h
│   │   │   └── DDMutableOwnerArray.m
│   │   ├── funNewControls
│   │   │   └── gridIphotoStyleView
│   │   │   ├── DDImageCollectionView.h
│   │   │   └── DDImageCollectionView.m
│   │   ├── keychainAccess
│   │   │   ├── DDKeychain.h
│   │   │   └── DDKeychain.m
│   │   ├── NSImage+Stretchable.h
│   │   ├── NSImage+Stretchable.m
│   │   ├── NSView+Addition.h
│   │   ├── NSView+Addition.m
│   │   ├── scrollbarAutoHidding
│   │   │   ├── DDAutoScrollView.h
│   │   │   └── DDAutoScrollView.m
│   │   └── ScrollToRefresh
│   │   ├── PullToRefreshClipView.h
│   │   ├── PullToRefreshClipView.m
│   │   ├── PullToRefreshDelegate.h
│   │   ├── PullToRefreshScrollView.h
│   │   └── PullToRefreshScrollView.m
│   ├── TeamTalkTests
│   │   ├── en.lproj
│   │   │   └── InfoPlist.strings
│   │   ├── TeamTalkTests-Info.plist
│   │   └── TeamTalkTests.m
│   ├── TeamTalk.xcodeproj
│   │   ├── project.pbxproj
│   │   ├── project.xcworkspace
│   │   │   ├── contents.xcworkspacedata
│   │   │   ├── xcshareddata
│   │   │   │   └── TeamTalk.xccheckout
│   │   │   └── xcuserdata
│   │   │   └── scorpio.xcuserdatad
│   │   │   └── UserInterfaceState.xcuserstate
│   │   └── xcuserdata
│   │   └── scorpio.xcuserdatad
│   │   └── xcschemes
│   │   ├── TeamTalk.xcscheme
│   │   └── xcschememanagement.plist
│   └── TeamTalk.xcworkspace
│   └── contents.xcworkspacedata
├── pb
│   ├── create.sh
│   ├── IM.BaseDefine.proto
│   ├── IM.Buddy.proto
│   ├── IM.File.proto
│   ├── IM.Group.proto
│   ├── IM.Login.proto
│   ├── IM.Message.proto
│   ├── IM.Other.proto
│   ├── IM.Server.proto
│   ├── IM.SwitchService.proto
│   └── sync.sh
├── php
│   ├── application
│   │   ├── cache
│   │   │   └── index.html
│   │   ├── config
│   │   │   ├── autoload.php
│   │   │   ├── config.php
│   │   │   ├── constants.php
│   │   │   ├── database.php
│   │   │   ├── doctypes.php
│   │   │   ├── foreign_chars.php
│   │   │   ├── hooks.php
│   │   │   ├── index.html
│   │   │   ├── migration.php
│   │   │   ├── mimes.php
│   │   │   ├── profiler.php
│   │   │   ├── routes.php
│   │   │   ├── smileys.php
│   │   │   └── user_agents.php
│   │   ├── controllers
│   │   │   ├── api.php
│   │   │   ├── auth.php
│   │   │   ├── config.php
│   │   │   ├── depart.php
│   │   │   ├── discovery.php
│   │   │   ├── group.php
│   │   │   ├── home.php
│   │   │   ├── index.html
│   │   │   └── user.php
│   │   ├── core
│   │   │   ├── index.html
│   │   │   ├── TT_Controller.php
│   │   │   └── TT_Model.php
│   │   ├── errors
│   │   │   ├── error_404.php
│   │   │   ├── error_db.php
│   │   │   ├── error_general.php
│   │   │   ├── error_php.php
│   │   │   └── index.html
│   │   ├── helpers
│   │   │   └── index.html
│   │   ├── hooks
│   │   │   └── index.html
│   │   ├── index.html
│   │   ├── language
│   │   │   ├── english
│   │   │   │   └── index.html
│   │   │   └── index.html
│   │   ├── libraries
│   │   │   ├── image_moo.php
│   │   │   └── index.html
│   │   ├── logs
│   │   │   └── index.html
│   │   ├── models
│   │   │   ├── admin_model.php
│   │   │   ├── config_model.php
│   │   │   ├── depart_model.php
│   │   │   ├── discovery_model.php
│   │   │   ├── group_model.php
│   │   │   ├── grouprelation_model.php
│   │   │   ├── index.html
│   │   │   └── user_model.php
│   │   ├── third_party
│   │   │   └── index.html
│   │   └── views
│   │   ├── auth
│   │   │   └── login.php
│   │   ├── base
│   │   │   ├── depart.php
│   │   │   ├── discovery.php
│   │   │   ├── footer.php
│   │   │   ├── group.php
│   │   │   ├── header.php
│   │   │   ├── home.php
│   │   │   ├── system.php
│   │   │   └── user.php
│   │   ├── index.html
│   │   └── welcome_message.php
│   ├── download
│   │   ├── 1427520718.jpg
│   │   ├── 1427520748.jpg
│   │   ├── 1427520832.jpg
│   │   ├── 1427521158.jpg
│   │   ├── 1427521169.jpg
│   │   ├── 1427521192.jpg
│   │   ├── 1427521202.jpg
│   │   ├── 1427521685.jpg
│   │   ├── 1427521757.jpg
│   │   ├── 1427522826.jpg
│   │   ├── 1427523084.jpg
│   │   ├── 1427523217.jpg
│   │   ├── 1428048002.png
│   │   ├── 1428048014.jpg
│   │   ├── 1428048238.jpg
│   │   ├── 1428048244.jpg
│   │   ├── 1428048250.png
│   │   ├── 1428048274.png
│   │   ├── 1428048305.png
│   │   ├── 1428048339.png
│   │   ├── 1428048381.jpg
│   │   ├── 1428048406.png
│   │   ├── 1428049085.png
│   │   ├── 1.jpg
│   │   └── logo.png
│   ├── index.php
│   ├── license.txt
│   ├── system
│   │   ├── core
│   │   │   ├── Benchmark.php
│   │   │   ├── CodeIgniter.php
│   │   │   ├── Common.php
│   │   │   ├── Config.php
│   │   │   ├── Controller.php
│   │   │   ├── Exceptions.php
│   │   │   ├── Hooks.php
│   │   │   ├── index.html
│   │   │   ├── Input.php
│   │   │   ├── Lang.php
│   │   │   ├── Loader.php
│   │   │   ├── Model.php
│   │   │   ├── Output.php
│   │   │   ├── Router.php
│   │   │   ├── Security.php
│   │   │   ├── URI.php
│   │   │   └── Utf8.php
│   │   ├── database
│   │   │   ├── DB_active_rec.php
│   │   │   ├── DB_cache.php
│   │   │   ├── DB_driver.php
│   │   │   ├── DB_forge.php
│   │   │   ├── DB.php
│   │   │   ├── DB_result.php
│   │   │   ├── DB_utility.php
│   │   │   ├── drivers
│   │   │   │   ├── cubrid
│   │   │   │   │   ├── cubrid_driver.php
│   │   │   │   │   ├── cubrid_forge.php
│   │   │   │   │   ├── cubrid_result.php
│   │   │   │   │   ├── cubrid_utility.php
│   │   │   │   │   └── index.html
│   │   │   │   ├── index.html
│   │   │   │   ├── mssql
│   │   │   │   │   ├── index.html
│   │   │   │   │   ├── mssql_driver.php
│   │   │   │   │   ├── mssql_forge.php
│   │   │   │   │   ├── mssql_result.php
│   │   │   │   │   └── mssql_utility.php
│   │   │   │   ├── mysql
│   │   │   │   │   ├── index.html
│   │   │   │   │   ├── mysql_driver.php
│   │   │   │   │   ├── mysql_forge.php
│   │   │   │   │   ├── mysql_result.php
│   │   │   │   │   └── mysql_utility.php
│   │   │   │   ├── mysqli
│   │   │   │   │   ├── index.html
│   │   │   │   │   ├── mysqli_driver.php
│   │   │   │   │   ├── mysqli_forge.php
│   │   │   │   │   ├── mysqli_result.php
│   │   │   │   │   └── mysqli_utility.php
│   │   │   │   ├── oci8
│   │   │   │   │   ├── index.html
│   │   │   │   │   ├── oci8_driver.php
│   │   │   │   │   ├── oci8_forge.php
│   │   │   │   │   ├── oci8_result.php
│   │   │   │   │   └── oci8_utility.php
│   │   │   │   ├── odbc
│   │   │   │   │   ├── index.html
│   │   │   │   │   ├── odbc_driver.php
│   │   │   │   │   ├── odbc_forge.php
│   │   │   │   │   ├── odbc_result.php
│   │   │   │   │   └── odbc_utility.php
│   │   │   │   ├── pdo
│   │   │   │   │   ├── index.html
│   │   │   │   │   ├── pdo_driver.php
│   │   │   │   │   ├── pdo_forge.php
│   │   │   │   │   ├── pdo_result.php
│   │   │   │   │   └── pdo_utility.php
│   │   │   │   ├── postgre
│   │   │   │   │   ├── index.html
│   │   │   │   │   ├── postgre_driver.php
│   │   │   │   │   ├── postgre_forge.php
│   │   │   │   │   ├── postgre_result.php
│   │   │   │   │   └── postgre_utility.php
│   │   │   │   ├── sqlite
│   │   │   │   │   ├── index.html
│   │   │   │   │   ├── sqlite_driver.php
│   │   │   │   │   ├── sqlite_forge.php
│   │   │   │   │   ├── sqlite_result.php
│   │   │   │   │   └── sqlite_utility.php
│   │   │   │   └── sqlsrv
│   │   │   │   ├── index.html
│   │   │   │   ├── sqlsrv_driver.php
│   │   │   │   ├── sqlsrv_forge.php
│   │   │   │   ├── sqlsrv_result.php
│   │   │   │   └── sqlsrv_utility.php
│   │   │   └── index.html
│   │   ├── fonts
│   │   │   ├── index.html
│   │   │   └── texb.ttf
│   │   ├── helpers
│   │   │   ├── array_helper.php
│   │   │   ├── captcha_helper.php
│   │   │   ├── cookie_helper.php
│   │   │   ├── date_helper.php
│   │   │   ├── directory_helper.php
│   │   │   ├── download_helper.php
│   │   │   ├── email_helper.php
│   │   │   ├── file_helper.php
│   │   │   ├── form_helper.php
│   │   │   ├── html_helper.php
│   │   │   ├── index.html
│   │   │   ├── inflector_helper.php
│   │   │   ├── language_helper.php
│   │   │   ├── number_helper.php
│   │   │   ├── path_helper.php
│   │   │   ├── security_helper.php
│   │   │   ├── smiley_helper.php
│   │   │   ├── string_helper.php
│   │   │   ├── text_helper.php
│   │   │   ├── typography_helper.php
│   │   │   ├── url_helper.php
│   │   │   └── xml_helper.php
│   │   ├── index.html
│   │   ├── language
│   │   │   ├── english
│   │   │   │   ├── calendar_lang.php
│   │   │   │   ├── date_lang.php
│   │   │   │   ├── db_lang.php
│   │   │   │   ├── email_lang.php
│   │   │   │   ├── form_validation_lang.php
│   │   │   │   ├── ftp_lang.php
│   │   │   │   ├── imglib_lang.php
│   │   │   │   ├── index.html
│   │   │   │   ├── migration_lang.php
│   │   │   │   ├── number_lang.php
│   │   │   │   ├── profiler_lang.php
│   │   │   │   ├── unit_test_lang.php
│   │   │   │   └── upload_lang.php
│   │   │   └── index.html
│   │   └── libraries
│   │   ├── Cache
│   │   │   ├── Cache.php
│   │   │   ├── drivers
│   │   │   │   ├── Cache_apc.php
│   │   │   │   ├── Cache_dummy.php
│   │   │   │   ├── Cache_file.php
│   │   │   │   ├── Cache_memcached.php
│   │   │   │   └── index.html
│   │   │   └── index.html
│   │   ├── Calendar.php
│   │   ├── Cart.php
│   │   ├── Driver.php
│   │   ├── Email.php
│   │   ├── Encrypt.php
│   │   ├── Form_validation.php
│   │   ├── Ftp.php
│   │   ├── Image_lib.php
│   │   ├── index.html
│   │   ├── javascript
│   │   │   ├── index.html
│   │   │   └── Jquery.php
│   │   ├── Javascript.php
│   │   ├── Log.php
│   │   ├── Migration.php
│   │   ├── Pagination.php
│   │   ├── Parser.php
│   │   ├── Profiler.php
│   │   ├── Session.php
│   │   ├── Sha1.php
│   │   ├── Table.php
│   │   ├── Trackback.php
│   │   ├── Typography.php
│   │   ├── Unit_test.php
│   │   ├── Upload.php
│   │   ├── User_agent.php
│   │   ├── Xmlrpc.php
│   │   ├── Xmlrpcs.php
│   │   └── Zip.php
│   └── ui
│   ├── css
│   │   ├── bootstrap.min.css
│   │   ├── font-awesome.min.css
│   │   ├── ionicons.min.css
│   │   ├── Jcrop.gif
│   │   ├── jquery.Jcrop.css
│   │   ├── jquery.Jcrop.min.css
│   │   ├── main.css
│   │   └── simplemodal.css
│   ├── fonts
│   │   ├── FontAwesome.otf
│   │   ├── fontawesome-webfont.eot
│   │   ├── fontawesome-webfont.svg
│   │   ├── fontawesome-webfont.ttf
│   │   ├── fontawesome-webfont.woff
│   │   ├── glyphicons-halflings-regular.eot
│   │   ├── glyphicons-halflings-regular.svg
│   │   ├── glyphicons-halflings-regular.ttf
│   │   └── glyphicons-halflings-regular.woff
│   └── js
│   ├── bootstrap.min.js
│   ├── jquery-1.11.1.min.js
│   ├── jquery.color.js
│   ├── jquery.Jcrop.js
│   ├── jquery.Jcrop.min.js
│   ├── jquery.min.js
│   ├── juicer.js
│   └── simple-modal.js
├── README.md
├── server
│   ├── run
│   │   ├── monitor.sh
│   │   └── restart.sh
│   └── src
│   ├── base
│   │   ├── atomic.h
│   │   ├── Base64.cpp
│   │   ├── Base64.h
│   │   ├── BaseSocket.cpp
│   │   ├── BaseSocket.h
│   │   ├── cmake_install.cmake
│   │   ├── CMakeLists.txt
│   │   ├── Condition.cpp
│   │   ├── Condition.h
│   │   ├── ConfigFileReader.cpp
│   │   ├── ConfigFileReader.h
│   │   ├── EncDec.cpp
│   │   ├── EncDec.h
│   │   ├── EventDispatch.cpp
│   │   ├── EventDispatch.h
│   │   ├── HttpClient.cpp
│   │   ├── HttpClient.h
│   │   ├── http_parser.cpp
│   │   ├── http_parser.h
│   │   ├── HttpParserWrapper.cpp
│   │   ├── HttpParserWrapper.h
│   │   ├── imconn.cpp
│   │   ├── imconn.h
│   │   ├── im_conn_util.cpp
│   │   ├── im_conn_util.h
│   │   ├── ImPduBase.cpp
│   │   ├── ImPduBase.h
│   │   ├── impdu.h
│   │   ├── jsoncpp
│   │   │   ├── json
│   │   │   │   ├── assertions.h
│   │   │   │   ├── autolink.h
│   │   │   │   ├── config.h
│   │   │   │   ├── features.h
│   │   │   │   ├── forwards.h
│   │   │   │   ├── json.h
│   │   │   │   ├── reader.h
│   │   │   │   ├── value.h
│   │   │   │   └── writer.h
│   │   │   ├── json_batchallocator.h
│   │   │   ├── json_internalarray.inl
│   │   │   ├── json_internalmap.inl
│   │   │   ├── json_reader.cpp
│   │   │   ├── json_tool.h
│   │   │   ├── json_value.cpp
│   │   │   ├── json_valueiterator.inl
│   │   │   └── json_writer.cpp
│   │   ├── libbase.a
│   │   ├── Lock.cpp
│   │   ├── Lock.h
│   │   ├── log4z.cpp
│   │   ├── log4z.h
│   │   ├── netlib.cpp
│   │   ├── netlib.h
│   │   ├── ostype.h
│   │   ├── pb
│   │   │   └── protocol
│   │   │   ├── IM.BaseDefine.pb.cc
│   │   │   ├── IM.BaseDefine.pb.h
│   │   │   ├── IM.Buddy.pb.cc
│   │   │   ├── IM.Buddy.pb.h
│   │   │   ├── IM.File.pb.cc
│   │   │   ├── IM.File.pb.h
│   │   │   ├── IM.Group.pb.cc
│   │   │   ├── IM.Group.pb.h
│   │   │   ├── IM.Login.pb.cc
│   │   │   ├── IM.Login.pb.h
│   │   │   ├── IM.Message.pb.cc
│   │   │   ├── IM.Message.pb.h
│   │   │   ├── IM.Other.pb.cc
│   │   │   ├── IM.Other.pb.h
│   │   │   ├── IM.Server.pb.cc
│   │   │   ├── IM.Server.pb.h
│   │   │   ├── IM.SwitchService.pb.cc
│   │   │   └── IM.SwitchService.pb.h
│   │   ├── public_define.h
│   │   ├── security
│   │   │   ├── lib
│   │   │   │   ├── linux
│   │   │   │   │   └── libsecurity.a
│   │   │   │   └── mac
│   │   │   │   └── libsecurity.a
│   │   │   └── security.h
│   │   ├── ServInfo.cpp
│   │   ├── ServInfo.h
│   │   ├── singleton.h
│   │   ├── slog
│   │   │   └── slog_api.h
│   │   ├── Task.h
│   │   ├── Thread.cpp
│   │   ├── Thread.h
│   │   ├── ThreadPool.cpp
│   │   ├── ThreadPool.h
│   │   ├── TokenValidator.cpp
│   │   ├── TokenValidator.h
│   │   ├── util.cpp
│   │   ├── util.h
│   │   ├── UtilPdu.cpp
│   │   ├── UtilPdu.h
│   │   └── version.h
│   ├── build.sh
│   ├── build_ubuntu.sh
│   ├── db_proxy_server
│   │   ├── async.h
│   │   ├── AutoPool.cpp
│   │   ├── AutoPool.h
│   │   ├── business
│   │   │   ├── AudioModel.cpp
│   │   │   ├── AudioModel.h
│   │   │   ├── Common.h
│   │   │   ├── DepartAction.cpp
│   │   │   ├── DepartAction.h
│   │   │   ├── DepartModel.cpp
│   │   │   ├── DepartModel.h
│   │   │   ├── ExterLogin.cpp
│   │   │   ├── ExterLogin.h
│   │   │   ├── FileAction.cpp
│   │   │   ├── FileAction.h
│   │   │   ├── FileModel.cpp
│   │   │   ├── FileModel.h
│   │   │   ├── GroupAction.cpp
│   │   │   ├── GroupAction.h
│   │   │   ├── GroupMessageModel.cpp
│   │   │   ├── GroupMessageModel.h
│   │   │   ├── GroupModel.cpp
│   │   │   ├── GroupModel.h
│   │   │   ├── InterLogin.cpp
│   │   │   ├── InterLogin.h
│   │   │   ├── Login.cpp
│   │   │   ├── Login.h
│   │   │   ├── LoginStrategy.h
│   │   │   ├── MessageContent.cpp
│   │   │   ├── MessageContent.h
│   │   │   ├── MessageCounter.cpp
│   │   │   ├── MessageCounter.h
│   │   │   ├── MessageModel.cpp
│   │   │   ├── MessageModel.h
│   │   │   ├── RecentSession.cpp
│   │   │   ├── RecentSession.h
│   │   │   ├── RelationModel.cpp
│   │   │   ├── RelationModel.h
│   │   │   ├── SessionModel.cpp
│   │   │   ├── SessionModel.h
│   │   │   ├── UserAction.cpp
│   │   │   ├── UserAction.h
│   │   │   ├── UserModel.cpp
│   │   │   └── UserModel.h
│   │   ├── CachePool.cpp
│   │   ├── CachePool.h
│   │   ├── CMakeLists.txt
│   │   ├── DBPool.cpp
│   │   ├── DBPool.h
│   │   ├── dbproxyserver.conf
│   │   ├── db_proxy_server.cpp
│   │   ├── HandlerMap.cpp
│   │   ├── HandlerMap.h
│   │   ├── hiredis.h
│   │   ├── libhiredis.a
│   │   ├── log4cxx.properties
│   │   ├── ProxyConn.cpp
│   │   ├── ProxyConn.h
│   │   ├── ProxyTask.cpp
│   │   ├── ProxyTask.h
│   │   ├── read.h
│   │   ├── README
│   │   ├── sds.h
│   │   ├── SyncCenter.cpp
│   │   └── SyncCenter.h
│   ├── file_server
│   │   ├── CMakeLists.txt
│   │   ├── config_util.cpp
│   │   ├── config_util.h
│   │   ├── file_client_conn.cpp
│   │   ├── file_client_conn.h
│   │   ├── file_msg_server_conn.cpp
│   │   ├── file_msg_server_conn.h
│   │   ├── fileserver.conf
│   │   ├── file_server.cpp
│   │   ├── file_server_util.h
│   │   ├── log4cxx.properties
│   │   ├── offline_file_util.h
│   │   ├── transfer_task.cpp
│   │   ├── transfer_task.h
│   │   ├── transfer_task_manager.cpp
│   │   └── transfer_task_manager.h
│   ├── hiredis
│   │   └── hiredis-master.zip
│   ├── http_msg_server
│   │   ├── AttachData.cpp
│   │   ├── AttachData.h
│   │   ├── CMakeLists.txt
│   │   ├── DBServConn.cpp
│   │   ├── DBServConn.h
│   │   ├── HttpConn.cpp
│   │   ├── HttpConn.h
│   │   ├── httpmsgserver.conf
│   │   ├── http_msg_server.cpp
│   │   ├── HttpPdu.cpp
│   │   ├── HttpPdu.h
│   │   ├── HttpQuery.cpp
│   │   ├── HttpQuery.h
│   │   ├── log4cxx.properties
│   │   ├── RouteServConn.cpp
│   │   └── RouteServConn.h
│   ├── lib
│   │   └── libbase.a
│   ├── libsecurity
│   │   ├── android
│   │   │   ├── build.sh
│   │   │   └── jni
│   │   │   ├── aes_core.cpp
│   │   │   ├── aes.h
│   │   │   ├── aes_locl.h
│   │   │   ├── Android.mk
│   │   │   ├── Application.mk
│   │   │   ├── base64.cpp
│   │   │   ├── base64.h
│   │   │   ├── CMakeLists.txt
│   │   │   ├── md5.cpp
│   │   │   ├── md5.h
│   │   │   └── security.cpp
│   │   ├── include
│   │   │   └── security.h
│   │   ├── ios
│   │   │   └── security.xcodeproj
│   │   │   ├── project.pbxproj
│   │   │   ├── project.xcworkspace
│   │   │   │   ├── contents.xcworkspacedata
│   │   │   │   ├── xcshareddata
│   │   │   │   │   └── security.xccheckout
│   │   │   │   └── xcuserdata
│   │   │   │   └── lanhu.xcuserdatad
│   │   │   │   └── UserInterfaceState.xcuserstate
│   │   │   └── xcuserdata
│   │   │   ├── lanhu.xcuserdatad
│   │   │   │   ├── xcdebugger
│   │   │   │   │   └── Breakpoints_v2.xcbkptlist
│   │   │   │   └── xcschemes
│   │   │   │   ├── security.xcscheme
│   │   │   │   └── xcschememanagement.plist
│   │   │   └── liuxueyuan.xcuserdatad
│   │   │   └── xcschemes
│   │   │   ├── security.xcscheme
│   │   │   └── xcschememanagement.plist
│   │   ├── lib
│   │   │   ├── android
│   │   │   │   └── src
│   │   │   │   └── com
│   │   │   │   └── mogujie
│   │   │   │   └── tt
│   │   │   │   └── Security.java
│   │   │   ├── ios
│   │   │   │   ├── devices
│   │   │   │   │   └── README
│   │   │   │   └── simulator
│   │   │   │   └── README
│   │   │   ├── linux
│   │   │   │   └── README
│   │   │   ├── mac
│   │   │   │   └── README
│   │   │   ├── unix
│   │   │   │   └── README
│   │   │   └── win
│   │   │   ├── debug
│   │   │   │   ├── README
│   │   │   │   └── security.lib
│   │   │   └── release
│   │   │   ├── README
│   │   │   └── security.lib
│   │   ├── src
│   │   │   ├── aes_core.cpp
│   │   │   ├── aes.h
│   │   │   ├── aes_locl.h
│   │   │   ├── Android.mk
│   │   │   ├── Application.mk
│   │   │   ├── base64.cpp
│   │   │   ├── base64.h
│   │   │   ├── CMakeLists.txt
│   │   │   ├── md5.cpp
│   │   │   ├── md5.h
│   │   │   └── security.cpp
│   │   ├── unix
│   │   │   └── build.sh
│   │   └── win
│   │   └── build.bat
│   ├── log4cxx
│   │   ├── console.cpp
│   │   ├── inputstreamreader.cpp
│   │   └── socketoutputstream.cpp
│   ├── login_server
│   │   ├── CMakeLists.txt
│   │   ├── HttpConn.cpp
│   │   ├── HttpConn.h
│   │   ├── ipparser.cpp
│   │   ├── ipparser.h
│   │   ├── log4cxx.properties
│   │   ├── LoginConn.cpp
│   │   ├── LoginConn.h
│   │   ├── loginserver.conf
│   │   └── login_server.cpp
│   ├── make_hiredis.sh
│   ├── make_log4cxx.sh
│   ├── make_mariadb.sh
│   ├── make_protobuf.sh
│   ├── msfs
│   │   ├── CMakeLists.txt
│   │   ├── CriticalSection.h
│   │   ├── FileLin.cpp
│   │   ├── FileLin.h
│   │   ├── FileManager.cpp
│   │   ├── FileManager.h
│   │   ├── HttpConn.cpp
│   │   ├── HttpConn.h
│   │   ├── main.cpp
│   │   ├── msfs.conf.example
│   │   ├── Portable.h
│   │   ├── README
│   │   ├── StringUtils.cpp
│   │   └── StringUtils.h
│   ├── msg_server
│   │   ├── AttachData.cpp
│   │   ├── AttachData.h
│   │   ├── CMakeLists.txt
│   │   ├── DBServConn.cpp
│   │   ├── DBServConn.h
│   │   ├── FileHandler.cpp
│   │   ├── FileHandler.h
│   │   ├── FileServConn.cpp
│   │   ├── FileServConn.h
│   │   ├── GroupChat.cpp
│   │   ├── GroupChat.h
│   │   ├── ImUser.cpp
│   │   ├── ImUser.h
│   │   ├── jsonxx.cpp
│   │   ├── jsonxx.h
│   │   ├── log4cxx.properties
│   │   ├── LoginServConn.cpp
│   │   ├── LoginServConn.h
│   │   ├── MsgConn.cpp
│   │   ├── MsgConn.h
│   │   ├── msgserver.conf
│   │   ├── msg_server.cpp
│   │   ├── policy.xml
│   │   ├── PushServConn.cpp
│   │   ├── PushServConn.h
│   │   ├── RouteServConn.cpp
│   │   └── RouteServConn.h
│   ├── protobuf
│   │   └── protobuf-2.6.1.tar.gz
│   ├── push_server
│   │   ├── apns_client.cpp
│   │   ├── apns_client.h
│   │   ├── apns_client_handler.cpp
│   │   ├── apns_client_handler.h
│   │   ├── apns_feedback_handler.cpp
│   │   ├── apns_feedback_handler.h
│   │   ├── apns_msg.cpp
│   │   ├── apns_msg.h
│   │   ├── bufferloop
│   │   │   └── buffer_loop.hpp
│   │   ├── byte_stream.cpp
│   │   ├── byte_stream.h
│   │   ├── CMakeLists.txt
│   │   ├── ConfigFileReader.cpp
│   │   ├── ConfigFileReader.h
│   │   ├── jsonxx.cpp
│   │   ├── jsonxx.h
│   │   ├── log4cxx.properties
│   │   ├── main.cpp
│   │   ├── pdu_msg.cpp
│   │   ├── pdu_msg.h
│   │   ├── push_app.cpp
│   │   ├── push_app_define.h
│   │   ├── push_app.h
│   │   ├── push_define.h
│   │   ├── pushserver.conf
│   │   ├── push_server.cpp
│   │   ├── push_server.h
│   │   ├── push_server_handler.cpp
│   │   ├── push_server_handler.h
│   │   ├── push_session.cpp
│   │   ├── push_session.h
│   │   ├── push_session_handler.cpp
│   │   ├── push_session_handler.h
│   │   ├── session_manager.cpp
│   │   ├── session_manager.h
│   │   ├── sigslot
│   │   │   └── sigslot.h
│   │   ├── socket
│   │   │   ├── base_handler.hpp
│   │   │   ├── base_io_stream.cpp
│   │   │   ├── base_io_stream.h
│   │   │   ├── base_msg.h
│   │   │   ├── base_socket.hpp
│   │   │   ├── base_thread.hpp
│   │   │   ├── epoll_io_loop.cpp
│   │   │   ├── epoll_io_loop.h
│   │   │   ├── io_loop.cpp
│   │   │   ├── io_loop.h
│   │   │   ├── socket_io_define.h
│   │   │   ├── socket_io.h
│   │   │   ├── ssl_client_async.cpp
│   │   │   ├── ssl_client_async.h
│   │   │   ├── tcp_client_async.cpp
│   │   │   ├── tcp_client_async.h
│   │   │   ├── tcp_server.cpp
│   │   │   ├── tcp_server.h
│   │   │   ├── tcp_session_async.cpp
│   │   │   └── tcp_session_async.h
│   │   ├── thread
│   │   │   └── base_thread.hpp
│   │   ├── timer
│   │   │   └── Timer.hpp
│   │   └── type
│   │   └── base_type.h
│   ├── README.md
│   ├── route_server
│   │   ├── CMakeLists.txt
│   │   ├── log4cxx.properties
│   │   ├── RouteConn.cpp
│   │   ├── RouteConn.h
│   │   ├── routeserver.conf
│   │   ├── route_server.cpp
│   │   ├── UserInfo.cpp
│   │   └── UserInfo.h
│   ├── slog
│   │   ├── CMakeLists.txt
│   │   ├── log4cxx.properties
│   │   ├── slog_api.cpp
│   │   └── slog_api.h
│   ├── sync_lib_for_zip.sh
│   ├── sync_lib.sh
│   ├── test
│   │   ├── ClientConn.cpp
│   │   ├── ClientConn.h
│   │   ├── Client.cpp
│   │   ├── Client.h
│   │   ├── Common.h
│   │   ├── IPacketCallback.h
│   │   ├── liblog4cxx.dylib
│   │   ├── libslog.dylib
│   │   ├── log4cxx.properties
│   │   ├── Makefile
│   │   ├── message.wav
│   │   ├── playsound.h
│   │   ├── playsound.mm
│   │   ├── SeqAlloctor.cpp
│   │   ├── SeqAlloctor.h
│   │   └── test_client.cpp
│   └── tools
│   ├── daeml.cpp
│   ├── Makefile
│   └── monitor.sh
└── win-client
├── 3rdParty
│   ├── cximage600_full.zip
│   ├── httpclient-master.zip
│   ├── include
│   │   ├── google
│   │   │   └── protobuf
│   │   │   ├── compiler
│   │   │   │   ├── code_generator.h
│   │   │   │   ├── command_line_interface.h
│   │   │   │   ├── cpp
│   │   │   │   │   └── cpp_generator.h
│   │   │   │   ├── importer.h
│   │   │   │   ├── java
│   │   │   │   │   └── java_generator.h
│   │   │   │   ├── parser.h
│   │   │   │   ├── plugin.h
│   │   │   │   └── python
│   │   │   │   └── python_generator.h
│   │   │   ├── descriptor_database.h
│   │   │   ├── descriptor.h
│   │   │   ├── descriptor.pb.h
│   │   │   ├── dynamic_message.h
│   │   │   ├── extension_set.h
│   │   │   ├── generated_enum_reflection.h
│   │   │   ├── generated_message_reflection.h
│   │   │   ├── generated_message_util.h
│   │   │   ├── io
│   │   │   │   ├── coded_stream.h
│   │   │   │   ├── gzip_stream.h
│   │   │   │   ├── printer.h
│   │   │   │   ├── strtod.h
│   │   │   │   ├── tokenizer.h
│   │   │   │   ├── zero_copy_stream.h
│   │   │   │   ├── zero_copy_stream_impl.h
│   │   │   │   └── zero_copy_stream_impl_lite.h
│   │   │   ├── message.h
│   │   │   ├── message_lite.h
│   │   │   ├── reflection_ops.h
│   │   │   ├── repeated_field.h
│   │   │   ├── service.h
│   │   │   ├── stubs
│   │   │   │   ├── atomicops.h
│   │   │   │   ├── atomicops_internals_x86_msvc.h
│   │   │   │   ├── common.h
│   │   │   │   ├── once.h
│   │   │   │   ├── platform_macros.h
│   │   │   │   ├── stl_util.h
│   │   │   │   ├── template_util.h
│   │   │   │   └── type_traits.h
│   │   │   ├── text_format.h
│   │   │   ├── unknown_field_set.h
│   │   │   ├── wire_format.h
│   │   │   ├── wire_format_lite.h
│   │   │   └── wire_format_lite_inl.h
│   │   ├── security.h
│   │   └── sqlite3
│   │   └── sqlite3.h
│   ├── jsoncpp-master.zip
│   ├── lib
│   │   ├── debug
│   │   │   ├── libprotobuf.lib
│   │   │   ├── libprotobuf-lite.lib
│   │   │   └── security.lib
│   │   ├── release
│   │   │   ├── libprotobuf.lib
│   │   │   ├── libprotobuf-lite.lib
│   │   │   └── security.lib
│   │   └── sqlite3.lib
│   ├── libogg-1.3.2.zip
│   ├── protobuf-2.6.1.zip
│   ├── readme.txt
│   ├── src
│   │   ├── cxImage
│   │   │   ├── cxImage
│   │   │   │   ├── xfile.h
│   │   │   │   ├── ximabmp.cpp
│   │   │   │   ├── ximabmp.h
│   │   │   │   ├── ximacfg.h
│   │   │   │   ├── ximadef.h
│   │   │   │   ├── ximaenc.cpp
│   │   │   │   ├── ximaexif.cpp
│   │   │   │   ├── ximage.cpp
│   │   │   │   ├── ximage.h
│   │   │   │   ├── ximagif.cpp
│   │   │   │   ├── ximagif.h
│   │   │   │   ├── ximainfo.cpp
│   │   │   │   ├── ximaiter.h
│   │   │   │   ├── ximajpg.cpp
│   │   │   │   ├── ximajpg.h
│   │   │   │   ├── ximalpha.cpp
│   │   │   │   ├── ximalyr.cpp
│   │   │   │   ├── ximapal.cpp
│   │   │   │   ├── ximapng.cpp
│   │   │   │   ├── ximapng.h
│   │   │   │   ├── ximath.h
│   │   │   │   ├── ximatran.cpp
│   │   │   │   ├── ximawbmp.cpp
│   │   │   │   ├── ximawbmp.h
│   │   │   │   ├── ximawnd.cpp
│   │   │   │   ├── xiofile.h
│   │   │   │   ├── xmemfile.cpp
│   │   │   │   └── xmemfile.h
│   │   │   ├── jpeg
│   │   │   │   ├── change.log
│   │   │   │   ├── filelist.txt
│   │   │   │   ├── jcapimin.c
│   │   │   │   ├── jcapistd.c
│   │   │   │   ├── jccoefct.c
│   │   │   │   ├── jccolor.c
│   │   │   │   ├── jcdctmgr.c
│   │   │   │   ├── jchuff.c
│   │   │   │   ├── jchuff.h
│   │   │   │   ├── jcinit.c
│   │   │   │   ├── jcmainct.c
│   │   │   │   ├── jcmarker.c
│   │   │   │   ├── jcmaster.c
│   │   │   │   ├── jcomapi.c
│   │   │   │   ├── jconfig.h
│   │   │   │   ├── jcparam.c
│   │   │   │   ├── jcphuff.c
│   │   │   │   ├── jcprepct.c
│   │   │   │   ├── jcsample.c
│   │   │   │   ├── jctrans.c
│   │   │   │   ├── jdapimin.c
│   │   │   │   ├── jdapistd.c
│   │   │   │   ├── jdatadst.c
│   │   │   │   ├── jdatasrc.c
│   │   │   │   ├── jdcoefct.c
│   │   │   │   ├── jdcolor.c
│   │   │   │   ├── jdct.h
│   │   │   │   ├── jddctmgr.c
│   │   │   │   ├── jdhuff.c
│   │   │   │   ├── jdhuff.h
│   │   │   │   ├── jdinput.c
│   │   │   │   ├── jdmainct.c
│   │   │   │   ├── jdmarker.c
│   │   │   │   ├── jdmaster.c
│   │   │   │   ├── jdmerge.c
│   │   │   │   ├── jdphuff.c
│   │   │   │   ├── jdpostct.c
│   │   │   │   ├── jdsample.c
│   │   │   │   ├── jdtrans.c
│   │   │   │   ├── jerror.c
│   │   │   │   ├── jerror.h
│   │   │   │   ├── jfdctflt.c
│   │   │   │   ├── jfdctfst.c
│   │   │   │   ├── jfdctint.c
│   │   │   │   ├── jidctflt.c
│   │   │   │   ├── jidctfst.c
│   │   │   │   ├── jidctint.c
│   │   │   │   ├── jidctred.c
│   │   │   │   ├── jinclude.h
│   │   │   │   ├── jmemmgr.c
│   │   │   │   ├── jmemnobs.c
│   │   │   │   ├── jmemsys.h
│   │   │   │   ├── jmorecfg.h
│   │   │   │   ├── Jpeg.dsp
│   │   │   │   ├── Jpeg.dsw
│   │   │   │   ├── jpegint.h
│   │   │   │   ├── jpeglib.h
│   │   │   │   ├── jquant1.c
│   │   │   │   ├── jquant2.c
│   │   │   │   ├── jutils.c
│   │   │   │   ├── jversion.h
│   │   │   │   └── Readme.txt
│   │   │   ├── png
│   │   │   │   ├── ANNOUNCE
│   │   │   │   ├── CHANGES
│   │   │   │   ├── INSTALL
│   │   │   │   ├── KNOWNBUG
│   │   │   │   ├── libpng-1.2.24.txt
│   │   │   │   ├── LICENSE
│   │   │   │   ├── png.c
│   │   │   │   ├── pngconf.h
│   │   │   │   ├── png.dsp
│   │   │   │   ├── png.dsw
│   │   │   │   ├── pngerror.c
│   │   │   │   ├── pnggccrd.c
│   │   │   │   ├── pngget.c
│   │   │   │   ├── png.h
│   │   │   │   ├── pngmem.c
│   │   │   │   ├── pngpread.c
│   │   │   │   ├── pngread.c
│   │   │   │   ├── pngrio.c
│   │   │   │   ├── pngrtran.c
│   │   │   │   ├── pngrutil.c
│   │   │   │   ├── pngset.c
│   │   │   │   ├── pngtrans.c
│   │   │   │   ├── pngvcrd.c
│   │   │   │   ├── pngwio.c
│   │   │   │   ├── pngwrite.c
│   │   │   │   ├── pngwtran.c
│   │   │   │   ├── pngwutil.c
│   │   │   │   ├── README
│   │   │   │   ├── TODO
│   │   │   │   └── Y2KINFO
│   │   │   └── zlib
│   │   │   ├── adler32.c
│   │   │   ├── algorithm.txt
│   │   │   ├── ChangeLog
│   │   │   ├── compress.c
│   │   │   ├── crc32.c
│   │   │   ├── crc32.h
│   │   │   ├── deflate.c
│   │   │   ├── deflate.h
│   │   │   ├── FAQ
│   │   │   ├── gzio.c
│   │   │   ├── infback.c
│   │   │   ├── inffast.c
│   │   │   ├── inffast.h
│   │   │   ├── inffixed.h
│   │   │   ├── inflate.c
│   │   │   ├── inflate.h
│   │   │   ├── inftrees.c
│   │   │   ├── inftrees.h
│   │   │   ├── README
│   │   │   ├── trees.c
│   │   │   ├── trees.h
│   │   │   ├── uncompr.c
│   │   │   ├── zconf.h
│   │   │   ├── zconf.in.h
│   │   │   ├── zlib.dsp
│   │   │   ├── zlib.dsw
│   │   │   ├── zlib.h
│   │   │   ├── zutil.c
│   │   │   └── zutil.h
│   │   ├── http
│   │   │   ├── httpclient
│   │   │   │   ├── base64.cpp
│   │   │   │   ├── base64.h
│   │   │   │   ├── dll_init.cpp
│   │   │   │   ├── file_reader.cpp
│   │   │   │   ├── file_reader.h
│   │   │   │   ├── file_writer.cpp
│   │   │   │   ├── file_writer.h
│   │   │   │   ├── global_defs.h
│   │   │   │   ├── http_client.cpp
│   │   │   │   ├── http_client.h
│   │   │   │   ├── httpclient.vcproj
│   │   │   │   ├── httpclient.vcxproj
│   │   │   │   ├── httpclient.vcxproj.filters
│   │   │   │   ├── http_delegate.h
│   │   │   │   ├── http_global.h
│   │   │   │   ├── http.h
│   │   │   │   ├── http_header_parser.cpp
│   │   │   │   ├── http_header_parser.h
│   │   │   │   ├── http_pool.cpp
│   │   │   │   ├── http_pool.h
│   │   │   │   ├── http_post_file.cpp
│   │   │   │   ├── http_post_file.h
│   │   │   │   ├── http_request.cpp
│   │   │   │   ├── http_request.h
│   │   │   │   ├── http_response.cpp
│   │   │   │   ├── http_response.h
│   │   │   │   ├── http_response_receiver.cpp
│   │   │   │   ├── http_response_receiver.h
│   │   │   │   ├── http_thread.cpp
│   │   │   │   ├── http_thread.h
│   │   │   │   ├── lock.h
│   │   │   │   ├── proxy_config.h
│   │   │   │   ├── proxy_socket .cpp
│   │   │   │   ├── proxy_socket.h
│   │   │   │   ├── socket_helper.cpp
│   │   │   │   ├── socket_helper.h
│   │   │   │   ├── standard_header.h
│   │   │   │   ├── streaming_socket.cpp
│   │   │   │   ├── streaming_socket.h
│   │   │   │   ├── thread.cpp
│   │   │   │   ├── thread.h
│   │   │   │   ├── url_parser.cpp
│   │   │   │   ├── url_parser.h
│   │   │   │   ├── util.cpp
│   │   │   │   └── util.h
│   │   │   ├── httpclient.sln
│   │   │   ├── LICENSE
│   │   │   ├── README.md
│   │   │   └── test
│   │   │   ├── main.cpp
│   │   │   └── test.vcproj
│   │   ├── json
│   │   │   ├── amalgamate.py
│   │   │   ├── AUTHORS
│   │   │   ├── CMakeLists.txt
│   │   │   ├── devtools
│   │   │   │   ├── agent_vmw7.json
│   │   │   │   ├── agent_vmxp.json
│   │   │   │   ├── antglob.py
│   │   │   │   ├── batchbuild.py
│   │   │   │   ├── fixeol.py
│   │   │   │   ├── __init__.py
│   │   │   │   ├── licenseupdater.py
│   │   │   │   └── tarball.py
│   │   │   ├── doc
│   │   │   │   ├── doxyfile.in
│   │   │   │   ├── footer.html
│   │   │   │   ├── header.html
│   │   │   │   ├── jsoncpp.dox
│   │   │   │   ├── readme.txt
│   │   │   │   └── roadmap.dox
│   │   │   ├── doxybuild.py
│   │   │   ├── include
│   │   │   │   ├── CMakeLists.txt
│   │   │   │   └── json
│   │   │   │   ├── assertions.h
│   │   │   │   ├── autolink.h
│   │   │   │   ├── config.h
│   │   │   │   ├── features.h
│   │   │   │   ├── forwards.h
│   │   │   │   ├── json.h
│   │   │   │   ├── reader.h
│   │   │   │   ├── value.h
│   │   │   │   └── writer.h
│   │   │   ├── LICENSE
│   │   │   ├── makefiles
│   │   │   │   └── vs71
│   │   │   │   ├── jsoncpp.sln
│   │   │   │   ├── jsontest.vcproj
│   │   │   │   ├── lib_json.vcproj
│   │   │   │   └── test_lib_json.vcproj
│   │   │   ├── makerelease.py
│   │   │   ├── NEWS.txt
│   │   │   ├── README.md
│   │   │   ├── scons-tools
│   │   │   │   ├── globtool.py
│   │   │   │   ├── srcdist.py
│   │   │   │   ├── substinfile.py
│   │   │   │   └── targz.py
│   │   │   ├── SConstruct
│   │   │   ├── src
│   │   │   │   ├── CMakeLists.txt
│   │   │   │   ├── jsontestrunner
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── main.cpp
│   │   │   │   │   └── sconscript
│   │   │   │   ├── lib_json
│   │   │   │   │   ├── CMakeLists.txt
│   │   │   │   │   ├── json_batchallocator.h
│   │   │   │   │   ├── json_internalarray.inl
│   │   │   │   │   ├── json_internalmap.inl
│   │   │   │   │   ├── json_reader.cpp
│   │   │   │   │   ├── json_tool.h
│   │   │   │   │   ├── json_value.cpp
│   │   │   │   │   ├── json_valueiterator.inl
│   │   │   │   │   ├── json_writer.cpp
│   │   │   │   │   ├── sconscript
│   │   │   │   │   └── version.h.in
│   │   │   │   └── test_lib_json
│   │   │   │   ├── CMakeLists.txt
│   │   │   │   ├── jsontest.cpp
│   │   │   │   ├── jsontest.h
│   │   │   │   ├── main.cpp
│   │   │   │   └── sconscript
│   │   │   ├── test
│   │   │   │   ├── cleantests.py
│   │   │   │   ├── data
│   │   │   │   │   ├── fail_test_array_01.json
│   │   │   │   │   ├── test_array_01.expected
│   │   │   │   │   ├── test_array_01.json
│   │   │   │   │   ├── test_array_02.expected
│   │   │   │   │   ├── test_array_02.json
│   │   │   │   │   ├── test_array_03.expected
│   │   │   │   │   ├── test_array_03.json
│   │   │   │   │   ├── test_array_04.expected
│   │   │   │   │   ├── test_array_04.json
│   │   │   │   │   ├── test_array_05.expected
│   │   │   │   │   ├── test_array_05.json
│   │   │   │   │   ├── test_array_06.expected
│   │   │   │   │   ├── test_array_06.json
│   │   │   │   │   ├── test_array_07.expected
│   │   │   │   │   ├── test_array_07.json
│   │   │   │   │   ├── test_basic_01.expected
│   │   │   │   │   ├── test_basic_01.json
│   │   │   │   │   ├── test_basic_02.expected
│   │   │   │   │   ├── test_basic_02.json
│   │   │   │   │   ├── test_basic_03.expected
│   │   │   │   │   ├── test_basic_03.json
│   │   │   │   │   ├── test_basic_04.expected
│   │   │   │   │   ├── test_basic_04.json
│   │   │   │   │   ├── test_basic_05.expected
│   │   │   │   │   ├── test_basic_05.json
│   │   │   │   │   ├── test_basic_06.expected
│   │   │   │   │   ├── test_basic_06.json
│   │   │   │   │   ├── test_basic_07.expected
│   │   │   │   │   ├── test_basic_07.json
│   │   │   │   │   ├── test_basic_08.expected
│   │   │   │   │   ├── test_basic_08.json
│   │   │   │   │   ├── test_basic_09.expected
│   │   │   │   │   ├── test_basic_09.json
│   │   │   │   │   ├── test_comment_01.expected
│   │   │   │   │   ├── test_comment_01.json
│   │   │   │   │   ├── test_comment_02.expected
│   │   │   │   │   ├── test_comment_02.json
│   │   │   │   │   ├── test_complex_01.expected
│   │   │   │   │   ├── test_complex_01.json
│   │   │   │   │   ├── test_integer_01.expected
│   │   │   │   │   ├── test_integer_01.json
│   │   │   │   │   ├── test_integer_02.expected
│   │   │   │   │   ├── test_integer_02.json
│   │   │   │   │   ├── test_integer_03.expected
│   │   │   │   │   ├── test_integer_03.json
│   │   │   │   │   ├── test_integer_04.expected
│   │   │   │   │   ├── test_integer_04.json
│   │   │   │   │   ├── test_integer_05.expected
│   │   │   │   │   ├── test_integer_05.json
│   │   │   │   │   ├── test_integer_06_64bits.expected
│   │   │   │   │   ├── test_integer_06_64bits.json
│   │   │   │   │   ├── test_integer_07_64bits.expected
│   │   │   │   │   ├── test_integer_07_64bits.json
│   │   │   │   │   ├── test_integer_08_64bits.expected
│   │   │   │   │   ├── test_integer_08_64bits.json
│   │   │   │   │   ├── test_large_01.expected
│   │   │   │   │   ├── test_large_01.json
│   │   │   │   │   ├── test_object_01.expected
│   │   │   │   │   ├── test_object_01.json
│   │   │   │   │   ├── test_object_02.expected
│   │   │   │   │   ├── test_object_02.json
│   │   │   │   │   ├── test_object_03.expected
│   │   │   │   │   ├── test_object_03.json
│   │   │   │   │   ├── test_object_04.expected
│   │   │   │   │   ├── test_object_04.json
│   │   │   │   │   ├── test_preserve_comment_01.expected
│   │   │   │   │   ├── test_preserve_comment_01.json
│   │   │   │   │   ├── test_real_01.expected
│   │   │   │   │   ├── test_real_01.json
│   │   │   │   │   ├── test_real_02.expected
│   │   │   │   │   ├── test_real_02.json
│   │   │   │   │   ├── test_real_03.expected
│   │   │   │   │   ├── test_real_03.json
│   │   │   │   │   ├── test_real_04.expected
│   │   │   │   │   ├── test_real_04.json
│   │   │   │   │   ├── test_real_05.expected
│   │   │   │   │   ├── test_real_05.json
│   │   │   │   │   ├── test_real_06.expected
│   │   │   │   │   ├── test_real_06.json
│   │   │   │   │   ├── test_real_07.expected
│   │   │   │   │   ├── test_real_07.json
│   │   │   │   │   ├── test_real_08.expected
│   │   │   │   │   ├── test_real_08.json
│   │   │   │   │   ├── test_real_09.expected
│   │   │   │   │   ├── test_real_09.json
│   │   │   │   │   ├── test_real_10.expected
│   │   │   │   │   ├── test_real_10.json
│   │   │   │   │   ├── test_real_11.expected
│   │   │   │   │   ├── test_real_11.json
│   │   │   │   │   ├── test_real_12.expected
│   │   │   │   │   ├── test_real_12.json
│   │   │   │   │   ├── test_string_01.expected
│   │   │   │   │   ├── test_string_01.json
│   │   │   │   │   ├── test_string_02.expected
│   │   │   │   │   ├── test_string_02.json
│   │   │   │   │   ├── test_string_03.expected
│   │   │   │   │   ├── test_string_03.json
│   │   │   │   │   ├── test_string_04.expected
│   │   │   │   │   ├── test_string_04.json
│   │   │   │   │   ├── test_string_05.expected
│   │   │   │   │   ├── test_string_05.json
│   │   │   │   │   ├── test_string_unicode_01.expected
│   │   │   │   │   ├── test_string_unicode_01.json
│   │   │   │   │   ├── test_string_unicode_02.expected
│   │   │   │   │   ├── test_string_unicode_02.json
│   │   │   │   │   ├── test_string_unicode_03.expected
│   │   │   │   │   ├── test_string_unicode_03.json
│   │   │   │   │   ├── test_string_unicode_04.expected
│   │   │   │   │   ├── test_string_unicode_04.json
│   │   │   │   │   ├── test_string_unicode_05.expected
│   │   │   │   │   └── test_string_unicode_05.json
│   │   │   │   ├── generate_expected.py
│   │   │   │   ├── jsonchecker
│   │   │   │   │   ├── fail10.json
│   │   │   │   │   ├── fail11.json
│   │   │   │   │   ├── fail12.json
│   │   │   │   │   ├── fail13.json
│   │   │   │   │   ├── fail14.json
│   │   │   │   │   ├── fail15.json
│   │   │   │   │   ├── fail16.json
│   │   │   │   │   ├── fail17.json
│   │   │   │   │   ├── fail18.json
│   │   │   │   │   ├── fail19.json
│   │   │   │   │   ├── fail1.json
│   │   │   │   │   ├── fail20.json
│   │   │   │   │   ├── fail21.json
│   │   │   │   │   ├── fail22.json
│   │   │   │   │   ├── fail23.json
│   │   │   │   │   ├── fail24.json
│   │   │   │   │   ├── fail25.json
│   │   │   │   │   ├── fail26.json
│   │   │   │   │   ├── fail27.json
│   │   │   │   │   ├── fail28.json
│   │   │   │   │   ├── fail29.json
│   │   │   │   │   ├── fail2.json
│   │   │   │   │   ├── fail30.json
│   │   │   │   │   ├── fail31.json
│   │   │   │   │   ├── fail32.json
│   │   │   │   │   ├── fail33.json
│   │   │   │   │   ├── fail3.json
│   │   │   │   │   ├── fail4.json
│   │   │   │   │   ├── fail5.json
│   │   │   │   │   ├── fail6.json
│   │   │   │   │   ├── fail7.json
│   │   │   │   │   ├── fail8.json
│   │   │   │   │   ├── fail9.json
│   │   │   │   │   ├── pass1.json
│   │   │   │   │   ├── pass2.json
│   │   │   │   │   ├── pass3.json
│   │   │   │   │   └── readme.txt
│   │   │   │   ├── pyjsontestrunner.py
│   │   │   │   ├── runjsontests.py
│   │   │   │   └── rununittests.py
│   │   │   └── version
│   │   ├── libogg
│   │   │   ├── include
│   │   │   │   ├── Makefile.am
│   │   │   │   ├── Makefile.in
│   │   │   │   └── ogg
│   │   │   │   ├── config_types.h.in
│   │   │   │   ├── Makefile.am
│   │   │   │   ├── Makefile.in
│   │   │   │   ├── ogg.h
│   │   │   │   └── os_types.h
│   │   │   ├── libogg_dynamic.vcproj
│   │   │   ├── libogg_dynamic.vcxproj
│   │   │   ├── libogg_dynamic.vcxproj.filters
│   │   │   ├── ogg.def
│   │   │   └── src
│   │   │   ├── bitwise.c
│   │   │   ├── framing.c
│   │   │   ├── Makefile.am
│   │   │   └── Makefile.in
│   │   ├── libspeex
│   │   │   ├── config.h
│   │   │   ├── DDlog.h
│   │   │   ├── include
│   │   │   │   ├── Makefile.am
│   │   │   │   ├── Makefile.in
│   │   │   │   └── speex
│   │   │   │   ├── Makefile.am
│   │   │   │   ├── Makefile.in
│   │   │   │   ├── speex_bits.h
│   │   │   │   ├── speex_buffer.h
│   │   │   │   ├── speex_callbacks.h
│   │   │   │   ├── speex_config_types.h.in
│   │   │   │   ├── speex_echo.h
│   │   │   │   ├── speex.h
│   │   │   │   ├── speex_header.h
│   │   │   │   ├── speex_jitter.h
│   │   │   │   ├── speex_preprocess.h
│   │   │   │   ├── speex_resampler.h
│   │   │   │   ├── speex_stereo.h
│   │   │   │   └── speex_types.h
│   │   │   ├── libspeex
│   │   │   │   ├── arch.h
│   │   │   │   ├── bits.c
│   │   │   │   ├── buffer.c
│   │   │   │   ├── cb_search_arm4.h
│   │   │   │   ├── cb_search_bfin.h
│   │   │   │   ├── cb_search.c
│   │   │   │   ├── cb_search.h
│   │   │   │   ├── cb_search_sse.h
│   │   │   │   ├── echo_diagnostic.m
│   │   │   │   ├── 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
│   │   │   │   ├── fftwrap.c
│   │   │   │   ├── fftwrap.h
│   │   │   │   ├── filterbank.c
│   │   │   │   ├── filterbank.h
│   │   │   │   ├── filters_arm4.h
│   │   │   │   ├── filters_bfin.h
│   │   │   │   ├── filters.c
│   │   │   │   ├── filters.h
│   │   │   │   ├── filters_sse.h
│   │   │   │   ├── fixed_arm4.h
│   │   │   │   ├── fixed_arm5e.h
│   │   │   │   ├── fixed_bfin.h
│   │   │   │   ├── fixed_debug.h
│   │   │   │   ├── fixed_generic.h
│   │   │   │   ├── gain_table.c
│   │   │   │   ├── gain_table_lbr.c
│   │   │   │   ├── hexc_10_32_table.c
│   │   │   │   ├── hexc_table.c
│   │   │   │   ├── high_lsp_tables.c
│   │   │   │   ├── jitter.c
│   │   │   │   ├── kiss_fft.c
│   │   │   │   ├── _kiss_fft_guts.h
│   │   │   │   ├── kiss_fft.h
│   │   │   │   ├── kiss_fftr.c
│   │   │   │   ├── kiss_fftr.h
│   │   │   │   ├── libspeex.vcproj
│   │   │   │   ├── libspeex.vcxproj
│   │   │   │   ├── libspeex.vcxproj.filters
│   │   │   │   ├── libspeex.vcxproj.user
│   │   │   │   ├── lpc_bfin.h
│   │   │   │   ├── lpc.c
│   │   │   │   ├── lpc.h
│   │   │   │   ├── lsp_bfin.h
│   │   │   │   ├── lsp.c
│   │   │   │   ├── lsp.h
│   │   │   │   ├── lsp_tables_nb.c
│   │   │   │   ├── ltp_arm4.h
│   │   │   │   ├── ltp_bfin.h
│   │   │   │   ├── ltp.c
│   │   │   │   ├── ltp.h
│   │   │   │   ├── ltp_sse.h
│   │   │   │   ├── Makefile.am
│   │   │   │   ├── Makefile.in
│   │   │   │   ├── math_approx.h
│   │   │   │   ├── mdf.c
│   │   │   │   ├── misc_bfin.h
│   │   │   │   ├── modes.c
│   │   │   │   ├── modes.h
│   │   │   │   ├── modes_wb.c
│   │   │   │   ├── nb_celp.c
│   │   │   │   ├── nb_celp.h
│   │   │   │   ├── os_support.h
│   │   │   │   ├── preprocess.c
│   │   │   │   ├── pseudofloat.h
│   │   │   │   ├── quant_lsp_bfin.h
│   │   │   │   ├── quant_lsp.c
│   │   │   │   ├── quant_lsp.h
│   │   │   │   ├── resample.c
│   │   │   │   ├── resample_sse.h
│   │   │   │   ├── sb_celp.c
│   │   │   │   ├── sb_celp.h
│   │   │   │   ├── scal.c
│   │   │   │   ├── smallft.c
│   │   │   │   ├── smallft.h
│   │   │   │   ├── speex.c
│   │   │   │   ├── speex_callbacks.c
│   │   │   │   ├── speex_header.c
│   │   │   │   ├── stack_alloc.h
│   │   │   │   ├── stereo.c
│   │   │   │   ├── testdenoise.c
│   │   │   │   ├── testecho.c
│   │   │   │   ├── testenc.c
│   │   │   │   ├── testenc_uwb.c
│   │   │   │   ├── testenc_wb.c
│   │   │   │   ├── testjitter.c
│   │   │   │   ├── vbr.c
│   │   │   │   ├── vbr.h
│   │   │   │   ├── vorbis_psy.h
│   │   │   │   ├── vq_arm4.h
│   │   │   │   ├── vq_bfin.h
│   │   │   │   ├── vq.c
│   │   │   │   ├── vq.h
│   │   │   │   ├── vq_sse.h
│   │   │   │   └── window.c
│   │   │   ├── libspeex.def
│   │   │   ├── libspeexdsp.def
│   │   │   ├── speexdec
│   │   │   │   ├── Makefile.am
│   │   │   │   ├── Makefile.in
│   │   │   │   ├── speexdec.vcproj
│   │   │   │   ├── speexdec.vcxproj
│   │   │   │   ├── speexdec.vcxproj.filters
│   │   │   │   └── speexdec.vcxproj.user
│   │   │   ├── speexenc
│   │   │   │   ├── Makefile.am
│   │   │   │   ├── Makefile.in
│   │   │   │   ├── speexenc.vcproj
│   │   │   │   ├── speexenc.vcxproj
│   │   │   │   ├── speexenc.vcxproj.filters
│   │   │   │   └── speexenc.vcxproj.user
│   │   │   └── src
│   │   │   ├── getopt1.c
│   │   │   ├── getopt.c
│   │   │   ├── getopt_win.h
│   │   │   ├── Makefile.am
│   │   │   ├── Makefile.in
│   │   │   ├── skeleton.c
│   │   │   ├── skeleton.h
│   │   │   ├── speexdec.1
│   │   │   ├── speexdec.c
│   │   │   ├── speexdec_multiThread.c
│   │   │   ├── speexenc.1
│   │   │   ├── speexenc.c
│   │   │   ├── wave_out.c
│   │   │   ├── wave_out.h
│   │   │   ├── wave_out_multiThread.c
│   │   │   ├── wav_io.c
│   │   │   └── wav_io.h
│   │   └── yaolog
│   │   ├── yaolog.cpp
│   │   └── yaolog.h
│   └── yaolog.zip
├── bin
│   └── teamtalk
│   ├── chinese.ini
│   ├── data
│   │   ├── avatar
│   │   │   ├── default.png
│   │   │   ├── DiscussionGroups.png
│   │   │   ├── gray_default.png
│   │   │   └── Groups.png
│   │   ├── Emotion
│   │   │   ├── add_emotion.png
│   │   │   ├── bg.png
│   │   │   ├── bottom.png
│   │   │   ├── btn_hot.png
│   │   │   ├── btn_push.png
│   │   │   ├── emotion.xml
│   │   │   ├── export_emotion.png
│   │   │   ├── Face
│   │   │   │   ├── 000.gif
│   │   │   │   ├── 001.gif
│   │   │   │   ├── 002.gif
│   │   │   │   ├── 003.gif
│   │   │   │   ├── 004.gif
│   │   │   │   ├── 005.gif
│   │   │   │   ├── 006.gif
│   │   │   │   ├── 007.gif
│   │   │   │   ├── 008.gif
│   │   │   │   ├── 009.gif
│   │   │   │   ├── 010.gif
│   │   │   │   ├── 011.gif
│   │   │   │   ├── 012.gif
│   │   │   │   ├── 013.gif
│   │   │   │   ├── 014.gif
│   │   │   │   ├── 015.gif
│   │   │   │   ├── 016.gif
│   │   │   │   ├── 017.gif
│   │   │   │   ├── 018.gif
│   │   │   │   ├── 019.gif
│   │   │   │   ├── 020.gif
│   │   │   │   ├── 021.gif
│   │   │   │   ├── 022.gif
│   │   │   │   ├── 023.gif
│   │   │   │   ├── 024.gif
│   │   │   │   ├── 025.gif
│   │   │   │   ├── 026.gif
│   │   │   │   ├── 027.gif
│   │   │   │   ├── 028.gif
│   │   │   │   ├── 029.gif
│   │   │   │   ├── 030.gif
│   │   │   │   ├── 031.gif
│   │   │   │   ├── 032.gif
│   │   │   │   ├── 033.gif
│   │   │   │   ├── 034.gif
│   │   │   │   ├── 035.gif
│   │   │   │   ├── 036.gif
│   │   │   │   ├── 037.gif
│   │   │   │   ├── 038.gif
│   │   │   │   ├── 039.gif
│   │   │   │   ├── 040.gif
│   │   │   │   ├── 041.gif
│   │   │   │   ├── 042.gif
│   │   │   │   ├── 043.gif
│   │   │   │   ├── 044.gif
│   │   │   │   ├── 045.gif
│   │   │   │   ├── 046.gif
│   │   │   │   ├── 047.gif
│   │   │   │   ├── 048.gif
│   │   │   │   ├── 049.gif
│   │   │   │   ├── 050.gif
│   │   │   │   ├── 051.gif
│   │   │   │   ├── 052.gif
│   │   │   │   ├── 053.gif
│   │   │   │   ├── 054.gif
│   │   │   │   ├── 055.gif
│   │   │   │   ├── 056.gif
│   │   │   │   ├── 057.gif
│   │   │   │   ├── 058.gif
│   │   │   │   ├── 059.gif
│   │   │   │   ├── 060.gif
│   │   │   │   ├── 067.gif
│   │   │   │   ├── 071.gif
│   │   │   │   ├── 081.gif
│   │   │   │   ├── 082.gif
│   │   │   │   ├── 086.gif
│   │   │   │   ├── 094.gif
│   │   │   │   ├── 096.gif
│   │   │   │   ├── 097.gif
│   │   │   │   ├── 106.gif
│   │   │   │   ├── 107.gif
│   │   │   │   ├── 108.gif
│   │   │   │   ├── 113.gif
│   │   │   │   ├── 116.gif
│   │   │   │   ├── 121.gif
│   │   │   │   ├── 122.gif
│   │   │   │   ├── 123.gif
│   │   │   │   ├── 124.gif
│   │   │   │   ├── 125.gif
│   │   │   │   ├── 126.gif
│   │   │   │   ├── 127.gif
│   │   │   │   ├── 128.gif
│   │   │   │   ├── 129.gif
│   │   │   │   ├── 130.gif
│   │   │   │   ├── 131.gif
│   │   │   │   ├── 132.gif
│   │   │   │   ├── 133.gif
│   │   │   │   ├── 134.gif
│   │   │   │   ├── 135.gif
│   │   │   │   ├── 136.gif
│   │   │   │   ├── 137.gif
│   │   │   │   ├── 138.gif
│   │   │   │   ├── 139.gif
│   │   │   │   ├── 140.gif
│   │   │   │   ├── 141.gif
│   │   │   │   ├── 142.gif
│   │   │   │   ├── 143.gif
│   │   │   │   ├── 144.gif
│   │   │   │   ├── 145.gif
│   │   │   │   ├── 146.gif
│   │   │   │   ├── 147.gif
│   │   │   │   ├── 148.gif
│   │   │   │   ├── 149.gif
│   │   │   │   ├── 150.gif
│   │   │   │   ├── 151.gif
│   │   │   │   ├── 152.gif
│   │   │   │   ├── 153.gif
│   │   │   │   ├── 154.gif
│   │   │   │   ├── 155.gif
│   │   │   │   ├── 156.gif
│   │   │   │   ├── 157.gif
│   │   │   │   ├── 159.gif
│   │   │   │   ├── 160.gif
│   │   │   │   ├── 162.gif
│   │   │   │   ├── 163.gif
│   │   │   │   ├── 164.gif
│   │   │   │   ├── 165.gif
│   │   │   │   ├── 166.gif
│   │   │   │   ├── 167.gif
│   │   │   │   ├── 168.gif
│   │   │   │   ├── 169.gif
│   │   │   │   ├── 173.gif
│   │   │   │   ├── 174.gif
│   │   │   │   ├── 175.gif
│   │   │   │   ├── 176.gif
│   │   │   │   ├── 177.gif
│   │   │   │   ├── 178.gif
│   │   │   │   ├── 179.gif
│   │   │   │   ├── 180.gif
│   │   │   │   ├── 181.gif
│   │   │   │   ├── 182.gif
│   │   │   │   ├── 183.gif
│   │   │   │   ├── 185.gif
│   │   │   │   ├── 186.gif
│   │   │   │   ├── 187.gif
│   │   │   │   ├── 188.gif
│   │   │   │   ├── 190.gif
│   │   │   │   ├── 191.gif
│   │   │   │   ├── 192.gif
│   │   │   │   ├── 193.gif
│   │   │   │   ├── 194.gif
│   │   │   │   ├── 195.gif
│   │   │   │   ├── 196.gif
│   │   │   │   ├── 197.gif
│   │   │   │   ├── 198.gif
│   │   │   │   ├── 199.gif
│   │   │   │   ├── 200.gif
│   │   │   │   ├── 201.gif
│   │   │   │   ├── 202.gif
│   │   │   │   ├── 203.gif
│   │   │   │   ├── 204.gif
│   │   │   │   ├── 205.gif
│   │   │   │   ├── 206.gif
│   │   │   │   ├── 207.gif
│   │   │   │   ├── 208.gif
│   │   │   │   ├── 209.gif
│   │   │   │   ├── 210.gif
│   │   │   │   ├── 211.gif
│   │   │   │   ├── 212.gif
│   │   │   │   ├── 213.gif
│   │   │   │   ├── 214.gif
│   │   │   │   ├── 215.gif
│   │   │   │   ├── 216.gif
│   │   │   │   ├── 217.gif
│   │   │   │   ├── 218.gif
│   │   │   │   ├── 219.gif
│   │   │   │   ├── 220.gif
│   │   │   │   ├── 221.gif
│   │   │   │   ├── 222.gif
│   │   │   │   ├── 223.gif
│   │   │   │   ├── 224.gif
│   │   │   │   ├── 225.gif
│   │   │   │   ├── 226.gif
│   │   │   │   ├── 227.gif
│   │   │   │   ├── 228.gif
│   │   │   │   ├── 229.gif
│   │   │   │   ├── 230.gif
│   │   │   │   ├── 231.gif
│   │   │   │   ├── 232.gif
│   │   │   │   ├── 233.gif
│   │   │   │   ├── 234.gif
│   │   │   │   ├── 235.gif
│   │   │   │   ├── 236.gif
│   │   │   │   ├── 237.gif
│   │   │   │   ├── 238.gif
│   │   │   │   ├── 239.gif
│   │   │   │   └── 240.gif
│   │   │   ├── IDB_BKGND.bmp
│   │   │   ├── import_emotion.png
│   │   │   ├── list_bk.png
│   │   │   ├── QSBFace.xml
│   │   │   └── sysemots.ini
│   │   ├── icons
│   │   │   ├── logo.ico
│   │   │   └── offline.ico
│   │   ├── logconfig.ini
│   │   ├── module
│   │   │   ├── css
│   │   │   │   ├── img
│   │   │   │   │   └── default
│   │   │   │   │   ├── bc.png
│   │   │   │   │   ├── split.png
│   │   │   │   │   ├── split_white.png
│   │   │   │   │   ├── unread.png
│   │   │   │   │   ├── voice_node.png
│   │   │   │   │   └── voice_play.gif
│   │   │   │   └── module-content.css
│   │   │   ├── js
│   │   │   │   ├── lib
│   │   │   │   │   ├── jquery.min.js
│   │   │   │   │   ├── json2.min.js
│   │   │   │   │   └── underscore.min.js
│   │   │   │   └── module-msgview.js
│   │   │   └── module-content.html
│   │   └── Sound
│   │   ├── callmsg.wav
│   │   ├── dingdong.wav
│   │   ├── keyboard.wav
│   │   ├── message.wav
│   │   └── system.wav
│   ├── Debug
│   │   ├── sqlite3.dll
│   │   └── ttlogconfig.ini
│   ├── gui
│   │   ├── border.png
│   │   ├── btn_hot.png
│   │   ├── btn_push.png
│   │   ├── CreateDiscussionGrpDialog
│   │   │   ├── ChangeDiscussionMemberDialog.xml
│   │   │   ├── CreateDiscussionGrpDialog.xml
│   │   │   ├── ListCreatFromItem.xml
│   │   │   └── ListGroupMembersItem.xml
│   │   ├── EmotionDialog
│   │   │   ├── add_emotion.png
│   │   │   ├── bg.png
│   │   │   ├── btn_hot.png
│   │   │   ├── btn_push.png
│   │   │   ├── Dui63.tmp
│   │   │   ├── emotion.xml
│   │   │   ├── export_emotion.png
│   │   │   ├── import_emotion.png
│   │   │   ├── list_bk.png
│   │   │   └── QSBFace.xml
│   │   ├── FileTransferDialog
│   │   │   ├── FileTransferDialog.xml
│   │   │   ├── FileTransferListItem.xml
│   │   │   ├── sendfailed.png
│   │   │   └── sendsucceed.png
│   │   ├── FloatDialog
│   │   │   └── FloatDialog.xml
│   │   ├── LoginDialog
│   │   │   ├── border.png
│   │   │   ├── btn.png
│   │   │   ├── card_user.png
│   │   │   ├── checked.png
│   │   │   ├── close_h.png
│   │   │   ├── close.png
│   │   │   ├── close_p.png
│   │   │   ├── LoginBtnBack.png
│   │   │   ├── LoginDialog.xml
│   │   │   ├── minimize_h.png
│   │   │   ├── minimize.png
│   │   │   ├── minimize_p.png
│   │   │   ├── setting_h.png
│   │   │   ├── setting.png
│   │   │   └── unchecked.png
│   │   ├── MainDialog
│   │   │   ├── border.png
│   │   │   ├── btn_hot.png
│   │   │   ├── cancel_btn.png
│   │   │   ├── cancel_btn_red.png
│   │   │   ├── close_h.png
│   │   │   ├── close.png
│   │   │   ├── close_p.png
│   │   │   ├── creatGroup.png
│   │   │   ├── DiscussionGroup.png
│   │   │   ├── eaUserListItem.xml
│   │   │   ├── Face.png
│   │   │   ├── groupListItem.xml
│   │   │   ├── Groups.png
│   │   │   ├── icon_a.png
│   │   │   ├── list_icon_a.png
│   │   │   ├── list_icon_b.png
│   │   │   ├── MainDialog.xml
│   │   │   ├── minimize_h.png
│   │   │   ├── minimize.png
│   │   │   ├── minimize_p.png
│   │   │   ├── offline.png
│   │   │   ├── online_green.png
│   │   │   ├── online.png
│   │   │   ├── recentlyListItem.xml
│   │   │   ├── scrollbar.png
│   │   │   ├── search_btn.png
│   │   │   ├── setting_h.png
│   │   │   ├── setting.png
│   │   │   ├── tab_btn.png
│   │   │   ├── unrreadcntbk.png
│   │   │   └── UserDetailInfoDialog.xml
│   │   ├── menu
│   │   │   ├── inner.png
│   │   │   ├── lineStatus.xml
│   │   │   ├── menu_bk.png
│   │   │   ├── offline.png
│   │   │   ├── online.png
│   │   │   ├── SendFile.xml
│   │   │   ├── TrayIconMenu.xml
│   │   │   └── userListMenu.xml
│   │   ├── ScreenCapture
│   │   │   ├── sc_toolbar_hover.png
│   │   │   ├── sc_toolbar_normal.png
│   │   │   └── sc_toolbar_select.png
│   │   ├── SessionDialog
│   │   │   ├── adduser.png
│   │   │   ├── blackbtn_bg.png
│   │   │   ├── border.png
│   │   │   ├── btn_bg.png
│   │   │   ├── btn_hot.png
│   │   │   ├── btn_push.png
│   │   │   ├── close_h.png
│   │   │   ├── close.png
│   │   │   ├── group_creator.png
│   │   │   ├── groupMembersListItem.xml
│   │   │   ├── max_h.png
│   │   │   ├── max.png
│   │   │   ├── minimize_h.png
│   │   │   ├── minimize.png
│   │   │   ├── restore_h.png
│   │   │   ├── restore.png
│   │   │   ├── scrollbar.png
│   │   │   ├── SessionDialog.xml
│   │   │   └── toolbtn.png
│   │   └── SysConfigDialog
│   │   ├── border_black.png
│   │   ├── radio_checked.png
│   │   ├── radio_unchecked.png
│   │   ├── ServerConfigDialog.xml
│   │   └── SysConfigDialog.xml
│   └── Release
│   ├── sqlite3.dll
│   └── ttlogconfig.ini
├── core
│   ├── DuiLib
│   │   ├── CMakeLists.txt
│   │   ├── Control
│   │   │   ├── observer_impl_base.hpp
│   │   │   ├── UIActiveX.cpp
│   │   │   ├── UIActiveX.h
│   │   │   ├── UIButton.cpp
│   │   │   ├── UIButton.h
│   │   │   ├── UICheckBox.cpp
│   │   │   ├── UICheckBox.h
│   │   │   ├── UIComboBox.cpp
│   │   │   ├── UIComboBox.h
│   │   │   ├── UICombo.cpp
│   │   │   ├── UICombo.h
│   │   │   ├── UIDateTime.cpp
│   │   │   ├── UIDateTime.h
│   │   │   ├── UIEdit.cpp
│   │   │   ├── UIEdit.h
│   │   │   ├── UIFlash.cpp
│   │   │   ├── UIFlash.h
│   │   │   ├── UIGifAnim.cpp
│   │   │   ├── UIGifAnim.h
│   │   │   ├── UILabel bak.cpp
│   │   │   ├── UILabel bak.h
│   │   │   ├── UILabel.cpp
│   │   │   ├── UILabel.h
│   │   │   ├── UIList.cpp
│   │   │   ├── UIList.h
│   │   │   ├── UIMenu.cpp
│   │   │   ├── UIMenu.h
│   │   │   ├── UIOption.cpp
│   │   │   ├── UIOption.h
│   │   │   ├── UIProgress.cpp
│   │   │   ├── UIProgress.h
│   │   │   ├── UIRichEdit.cpp
│   │   │   ├── UIRichEdit.h
│   │   │   ├── UIScrollBar.cpp
│   │   │   ├── UIScrollBar.h
│   │   │   ├── UISlider.cpp
│   │   │   ├── UISlider.h
│   │   │   ├── UIText.cpp
│   │   │   ├── UIText.h
│   │   │   ├── UITreeView.cpp
│   │   │   ├── UITreeView.h
│   │   │   ├── UIWebBrowser.cpp
│   │   │   └── UIWebBrowser.h
│   │   ├── Core
│   │   │   ├── UIBase.cpp
│   │   │   ├── UIBase.h
│   │   │   ├── UIContainer.cpp
│   │   │   ├── UIContainer.h
│   │   │   ├── UIControl.cpp
│   │   │   ├── UIControl.h
│   │   │   ├── UIDefine.h
│   │   │   ├── UIDlgBuilder.cpp
│   │   │   ├── UIDlgBuilder.h
│   │   │   ├── UIManager.cpp
│   │   │   ├── UIManager.h
│   │   │   ├── UIMarkup.cpp
│   │   │   ├── UIMarkup.h
│   │   │   ├── UIRender.cpp
│   │   │   └── UIRender.h
│   │   ├── DuiLib.vcproj
│   │   ├── DuiLib.vcxproj
│   │   ├── DuiLib.vcxproj.filters
│   │   ├── Layout
│   │   │   ├── UIChildLayout.cpp
│   │   │   ├── UIChildLayout.h
│   │   │   ├── UIHorizontalLayout.cpp
│   │   │   ├── UIHorizontalLayout.h
│   │   │   ├── UITabLayout.cpp
│   │   │   ├── UITabLayout.h
│   │   │   ├── UITileLayout.cpp
│   │   │   ├── UITileLayout.h
│   │   │   ├── UIVerticalLayout.cpp
│   │   │   └── UIVerticalLayout.h
│   │   ├── StdAfx.cpp
│   │   ├── StdAfx.h
│   │   ├── UIlib.cpp
│   │   ├── UIlib.h
│   │   └── Utils
│   │   ├── DialogManager.cpp
│   │   ├── DialogManager.h
│   │   ├── downloadmgr.h
│   │   ├── Flash11.tlb
│   │   ├── flash11.tlh
│   │   ├── FlashEventHandler.h
│   │   ├── stb_image.c
│   │   ├── UIDelegate.cpp
│   │   ├── UIDelegate.h
│   │   ├── UIShadow.cpp
│   │   ├── UIShadow.h
│   │   ├── Utils.cpp
│   │   ├── Utils.h
│   │   ├── WebBrowserEventHandler.h
│   │   ├── WinImplBase.cpp
│   │   ├── WinImplBase.h
│   │   ├── WndShadow.cpp
│   │   ├── WndShadow.h
│   │   └── XUnzip.cpp
│   ├── network
│   │   ├── BaseSocket.cpp
│   │   ├── BaseSocket.h
│   │   ├── dllmain.cpp
│   │   ├── EventDispatch.cpp
│   │   ├── EventDispatch.h
│   │   ├── imconn.cpp
│   │   ├── ImCore.cpp
│   │   ├── Lock.cpp
│   │   ├── netlib.cpp
│   │   ├── network.cpp
│   │   ├── network.vcxproj
│   │   ├── network.vcxproj.filters
│   │   ├── Operation.cpp
│   │   ├── OperationManager.cpp
│   │   ├── OperationManager.h
│   │   ├── stdafx.cpp
│   │   ├── stdafx.h
│   │   ├── targetver.h
│   │   ├── TcpSocketsManager.cpp
│   │   ├── TcpSocketsManager.h
│   │   ├── TTPBHeader.cpp
│   │   ├── util.cpp
│   │   └── UtilPdu.cpp
│   └── utility
│   ├── CppSQLite3.cpp
│   ├── IniOperation.cpp
│   ├── md5.cpp
│   ├── md5.h
│   ├── Multilingual.cpp
│   ├── res
│   │   └── utility.rc2
│   ├── Resource.h
│   ├── stdafx.cpp
│   ├── stdafx.h
│   ├── targetver.h
│   ├── TTThread.cpp
│   ├── utilCommonAPI.cpp
│   ├── utility.cpp
│   ├── utility.def
│   ├── utility.h
│   ├── utility.rc
│   ├── utility.vcxproj
│   ├── utility.vcxproj.filters
│   ├── utilStrCodingAPI.cpp
│   └── XZip.cpp
├── directui license.txt
├── duilib license.txt
├── include
│   ├── DuilibEx
│   │   └── DuilibExDll.h
│   ├── GifSmiley
│   │   └── GifSmiley.h
│   ├── GlobalConfig.h
│   ├── GlobalDefine.h
│   ├── Modules
│   │   ├── IDatabaseModule.h
│   │   ├── IEmotionModule.h
│   │   ├── IEvent.h
│   │   ├── IFileTransferModule.h
│   │   ├── IGroupListModule.h
│   │   ├── IHttpPoolModule.h
│   │   ├── ILoginModule.h
│   │   ├── IMessageModule.h
│   │   ├── IMiscModule.h
│   │   ├── IModuleInterface.h
│   │   ├── IP2PCmdModule.h
│   │   ├── IScreenCaptureModule.h
│   │   ├── ISessionModule.h
│   │   ├── ISysConfigModule.h
│   │   ├── ITcpClientModule.h
│   │   ├── IUserListModule.h
│   │   ├── MessageEntity.h
│   │   ├── ModuleBase.h
│   │   ├── ModuleDll.h
│   │   ├── ModuleObserver.h
│   │   ├── ModuleSubject.h
│   │   ├── UI
│   │   │   ├── MainListLayout.h
│   │   │   ├── SearchLayout.h
│   │   │   ├── SessionDialog.h
│   │   │   ├── SessionLayout.h
│   │   │   ├── UIEAUserTreelist.h
│   │   │   ├── UIGroupsTreelist.h
│   │   │   ├── UIIMListCommonDefine.h
│   │   │   ├── UIIMList.h
│   │   │   ├── UIRecentSessionList.h
│   │   │   └── UserDetailInfoDialog.h
│   │   └── UIEventManager.h
│   ├── network
│   │   ├── ErrorCode.h
│   │   ├── Exception.h
│   │   ├── imconn.h
│   │   ├── ImCore.h
│   │   ├── IOperation.h
│   │   ├── Lock.h
│   │   ├── netlib.h
│   │   ├── networkdll.h
│   │   ├── Operation.h
│   │   ├── ostype.h
│   │   ├── TTPBHeader.h
│   │   ├── util.h
│   │   └── UtilPdu.h
│   ├── ProtocolBuffer
│   │   ├── IM.BaseDefine.pb.cc
│   │   ├── IM.BaseDefine.pb.h
│   │   ├── IM.Buddy.pb.cc
│   │   ├── IM.Buddy.pb.h
│   │   ├── IM.File.pb.cc
│   │   ├── IM.File.pb.h
│   │   ├── IM.Group.pb.cc
│   │   ├── IM.Group.pb.h
│   │   ├── IM.Login.pb.cc
│   │   ├── IM.Login.pb.h
│   │   ├── IM.Message.pb.cc
│   │   ├── IM.Message.pb.h
│   │   ├── IM.Other.pb.cc
│   │   ├── IM.Other.pb.h
│   │   ├── IM.Server.pb.cc
│   │   ├── IM.Server.pb.h
│   │   ├── IM.SwitchService.pb.cc
│   │   └── IM.SwitchService.pb.h
│   ├── utility
│   │   ├── CppSQLite3.h
│   │   ├── IniOperation.h
│   │   ├── Multilingual.h
│   │   ├── TTThread.h
│   │   ├── utilCommonAPI.h
│   │   ├── utilityDll.h
│   │   ├── utilStrCodingAPI.h
│   │   └── XZip.h
│   └── versioninfo.h
├── solution
│   └── teamtalk.sln
├── src
│   ├── DuiLibEx
│   │   ├── DuiLibEx.cpp
│   │   ├── DuiLibEx.def
│   │   ├── DuiLibEx.h
│   │   ├── DuiLibEx.rc
│   │   ├── DuiLibEx.vcxproj
│   │   ├── DuiLibEx.vcxproj.filters
│   │   ├── res
│   │   │   └── DuiLibEx.rc2
│   │   ├── Resource.h
│   │   ├── stdafx.cpp
│   │   ├── stdafx.h
│   │   └── targetver.h
│   ├── GifSmiley
│   │   ├── GifSmiley2003.vcxproj
│   │   ├── GifSmiley2003.vcxproj.filters
│   │   ├── GifSmiley.cpp
│   │   ├── GifSmileyCtrl.cpp
│   │   ├── GifSmileyCtrl.h
│   │   ├── GifSmileyps.def
│   │   ├── GifSmiley.rc
│   │   ├── GifSmiley.rgs
│   │   ├── mAniImage.cpp
│   │   ├── m_anismiley.h
│   │   ├── Resource.h
│   │   ├── stdafx.cpp
│   │   └── stdafx.h
│   ├── Modules
│   │   ├── Base
│   │   │   ├── ModuleBase.cpp
│   │   │   ├── ModuleObserver.cpp
│   │   │   ├── ModuleSubject.cpp
│   │   │   ├── Observer.cpp
│   │   │   └── UIEventManager.cpp
│   │   ├── Database
│   │   │   ├── DatabaseModule_DepartmentInfoDB_Impl.cpp
│   │   │   ├── DatabaseModule_FileTransferHistory_Impl.cpp
│   │   │   ├── DatabaseModule_GroupInfoDB_Impl.cpp
│   │   │   ├── DatabaseModule_ImageDB_Impl.cpp
│   │   │   ├── DatabaseModule_Impl.cpp
│   │   │   ├── DatabaseModule_Impl.h
│   │   │   ├── DatabaseModule_MessageDB_Impl.cpp
│   │   │   ├── DatabaseModule_RecentSessionDB_Impl.cpp
│   │   │   └── DatabaseModule_UserInfoDB_Impl.cpp
│   │   ├── Emotion
│   │   │   ├── EmoCfgParseTool.cpp
│   │   │   ├── EmoCfgParseTool.h
│   │   │   ├── EmotionButton.cpp
│   │   │   ├── EmotionButton.h
│   │   │   ├── EmotionDialog.cpp
│   │   │   ├── EmotionDialog.h
│   │   │   ├── EmotionModule_Impl.cpp
│   │   │   └── EmotionModule_Impl.h
│   │   ├── FileTransfer
│   │   │   ├── FileTransferDialog.cpp
│   │   │   ├── FileTransferDialog.h
│   │   │   ├── FileTransferModule_Impl.cpp
│   │   │   ├── FileTransferModule_Impl.h
│   │   │   ├── FileTransferSocket.cpp
│   │   │   ├── FileTransferSocket.h
│   │   │   ├── FileTransferUIThread.cpp
│   │   │   ├── FileTransferUIThread.h
│   │   │   ├── TransferFile.cpp
│   │   │   ├── TransferFile.h
│   │   │   ├── TransferManager.cpp
│   │   │   └── TransferManager.h
│   │   ├── GroupList
│   │   │   ├── CreateDiscussionGrpDialog.cpp
│   │   │   ├── CreateDiscussionGrpDialog.h
│   │   │   ├── GroupListModule_Impl.cpp
│   │   │   ├── GroupListModule_Impl.h
│   │   │   └── UI
│   │   │   ├── ChangeDiscussionGrpMemberDialog.cpp
│   │   │   ├── ChangeDiscussionGrpMemberDialog.h
│   │   │   ├── CreateDiscussionGrpDialog.cpp
│   │   │   ├── CreateDiscussionGrpDialog.h
│   │   │   ├── ListCreatFrom.cpp
│   │   │   ├── ListCreatFrom.h
│   │   │   ├── ListGroupMembers.cpp
│   │   │   └── ListGroupMembers.h
│   │   ├── HttpPool
│   │   │   ├── HttpPoolModule_Impl.cpp
│   │   │   └── HttpPoolModule_Impl.h
│   │   ├── Login
│   │   │   ├── DoLoginServerHttpOperation.cpp
│   │   │   ├── DoLoginServerHttpOperation.h
│   │   │   ├── GetServConfigHttpOperation.cpp
│   │   │   ├── GetServConfigHttpOperation.h
│   │   │   ├── LoginDialog.cpp
│   │   │   ├── LoginDialog.h
│   │   │   ├── LoginModule_Impl.cpp
│   │   │   ├── LoginModule_Impl.h
│   │   │   ├── LoginOperation.cpp
│   │   │   ├── LoginOperation.h
│   │   │   ├── ReloginManager.cpp
│   │   │   └── ReloginManager.h
│   │   ├── Message
│   │   │   ├── MessageEntity.cpp
│   │   │   ├── MessageModule_Impl.cpp
│   │   │   ├── MessageModule_Impl.h
│   │   │   ├── ReceiveMsgManage.cpp
│   │   │   ├── ReceiveMsgManage.h
│   │   │   ├── SendMsgManage.cpp
│   │   │   └── SendMsgManage.h
│   │   ├── Misc
│   │   │   ├── MiscModule_Impl.cpp
│   │   │   └── MiscModule_Impl.h
│   │   ├── Modules.cpp
│   │   ├── Modules.def
│   │   ├── Modules.h
│   │   ├── Modules.rc
│   │   ├── Modules.vcxproj
│   │   ├── Modules.vcxproj.filters
│   │   ├── P2PCmd
│   │   │   ├── P2PCmdModule_Impl.cpp
│   │   │   └── P2PCmdModule_Impl.h
│   │   ├── res
│   │   │   └── Modules.rc2
│   │   ├── Resource.h
│   │   ├── ScreenCapture
│   │   │   ├── ScreenCapture
│   │   │   │   ├── CaptureMode
│   │   │   │   │   ├── AutoSelectMode.cpp
│   │   │   │   │   ├── AutoSelectMode.h
│   │   │   │   │   ├── CaptureMode.cpp
│   │   │   │   │   ├── CaptureMode.h
│   │   │   │   │   ├── ManalEditMode.cpp
│   │   │   │   │   ├── ManalEditMode.h
│   │   │   │   │   ├── ManalSelectMode.cpp
│   │   │   │   │   ├── ManalSelectMode.h
│   │   │   │   │   └── ModeComm.h
│   │   │   │   ├── Common.h
│   │   │   │   ├── ScreenCapture.cpp
│   │   │   │   ├── ScreenCapture.h
│   │   │   │   ├── ScreenSnapshot.cpp
│   │   │   │   ├── ScreenSnapshot.h
│   │   │   │   └── UI
│   │   │   │   ├── BkgroundUI.cpp
│   │   │   │   ├── BkgroundUI.h
│   │   │   │   ├── DlgBase.cpp
│   │   │   │   ├── Dlgbase.h
│   │   │   │   ├── EditToolbar.cpp
│   │   │   │   ├── EditToolbarUI.h
│   │   │   │   ├── UIMgr.cpp
│   │   │   │   └── UIMgr.h
│   │   │   ├── ScreenCaptureModule_Impl.cpp
│   │   │   └── ScreenCaptureModule_Impl.h
│   │   ├── Session
│   │   │   ├── ISessionModule.cpp
│   │   │   ├── Operation
│   │   │   │   ├── DownloadAvatarHttpOperation.cpp
│   │   │   │   ├── DownloadAvatarHttpOperation.h
│   │   │   │   ├── SendImgHttpOperation.cpp
│   │   │   │   ├── SendImgHttpOperation.h
│   │   │   │   ├── SyncTimerTimer.cpp
│   │   │   │   └── SyncTimerTimer.h
│   │   │   ├── SessionManager.cpp
│   │   │   ├── SessionManager.h
│   │   │   ├── SessionModule_Impl.cpp
│   │   │   ├── SessionModule_Impl.h
│   │   │   └── UI
│   │   │   ├── MainListLayout.cpp
│   │   │   ├── MainListLayout_Event.cpp
│   │   │   ├── SearchLayout.cpp
│   │   │   ├── SessionDialog.cpp
│   │   │   ├── SessionLayout.cpp
│   │   │   ├── SessionLayout_Event.cpp
│   │   │   ├── SessionLayout_Function.cpp
│   │   │   ├── UIEAUserTreelist.cpp
│   │   │   ├── UIGroupsTreelist.cpp
│   │   │   ├── UIIMEdit.cpp
│   │   │   ├── UIIMEdit.h
│   │   │   ├── UIIMListCommonDefine.cpp
│   │   │   ├── UIIMList.cpp
│   │   │   ├── UIRecentSessionList.cpp
│   │   │   └── UserDetailInfoDialog.cpp
│   │   ├── stdafx.cpp
│   │   ├── stdafx.h
│   │   ├── SysConfig
│   │   │   ├── ServerConfigDialog.cpp
│   │   │   ├── ServerConfigDialog.h
│   │   │   ├── SysConfigDialog.cpp
│   │   │   ├── SysConfigDialog.h
│   │   │   ├── SysConfigModule_Impl.cpp
│   │   │   └── SysConfigModule_Impl.h
│   │   ├── targetver.h
│   │   ├── TcpClient
│   │   │   ├── TcpClientModule_Impl.cpp
│   │   │   └── TcpClientModule_Impl.h
│   │   └── UserList
│   │   ├── IUserListModule.cpp
│   │   ├── UserListModule_Impl.cpp
│   │   └── UserListModule_Impl.h
│   └── teamtalk
│   ├── res
│   │   ├── teamtalk.ico
│   │   └── teamtalk.rc2
│   ├── Resource.h
│   ├── stdafx.cpp
│   ├── stdafx.h
│   ├── targetver.h
│   ├── teamtalk.cpp
│   ├── teamtalk.h
│   ├── teamtalk.rc
│   ├── teamtalk.vcxproj
│   ├── teamtalk.vcxproj.filters
│   └── UI
│   ├── main.cpp
│   ├── MainDialog.cpp
│   ├── MainDialog_Event.cpp
│   ├── MainDialog.h
│   ├── MainDialog_TrayIcon.cpp
│   ├── main_frame.cpp
│   ├── main_frame_event.cpp
│   └── main_frame.hpp
└── tools
├── depends
│   ├── gdiplus.dll
│   ├── mfc120u.dll
│   ├── msvcp120.dll
│   └── msvcr120.dll
├── docs
│   ├── gc
│   └── gh
└── protobuf-2.6.1
├── make_PB_Files.bat
├── protoc.exe
└── readme.txt

691 directories, 5155 files

标签:

实例下载地址

蘑菇街 TeamTalk IM 多平台聊天工具 源代码

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警