├── ios
├── VoiceClientExample
│ ├── en.lproj
│ │ └── InfoPlist.strings
│ ├── Default.png
│ ├── Default@2x.png
│ ├── Default-568h@2x.png
│ ├── VoiceClientExample-Prefix.pch
│ ├── main.m
│ ├── ViewController.h
│ ├── XmppClientDelegate.h
│ ├── AppDelegate.h
│ ├── VoiceClientExample-Info.plist
│ ├── ViewController.mm
│ └── VoiceClientDelegate.h
└── Readme.txt
├── android
├── voice-client-aidl
│ ├── src
│ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── tuenti
│ │ │ └── voice
│ │ │ └── core
│ │ │ ├── data
│ │ │ ├── Call.aidl
│ │ │ ├── Buddy.aidl
│ │ │ └── Connection.aidl
│ │ │ └── service
│ │ │ ├── IStatServiceCallback.aidl
│ │ │ ├── IBuddyServiceCallback.aidl
│ │ │ ├── IConnectionServiceCallback.aidl
│ │ │ ├── IStatService.aidl
│ │ │ ├── IBuddyService.aidl
│ │ │ ├── IConnectionService.aidl
│ │ │ ├── ICallServiceCallback.aidl
│ │ │ ├── ICallService.aidl
│ │ │ └── VoiceClientService.java
│ ├── res
│ │ └── drawable
│ │ │ └── icon.png
│ ├── AndroidManifest.xml
│ └── pom.xml
├── voice-client-example
│ ├── res
│ │ ├── drawable
│ │ │ ├── presence_away.png
│ │ │ ├── presence_busy.png
│ │ │ ├── presence_online.png
│ │ │ ├── presence_offline.png
│ │ │ ├── dialpad_background.xml
│ │ │ ├── list_selector_focused_and_checked.xml
│ │ │ ├── list_divider.xml
│ │ │ ├── notification_cancel_icon.xml
│ │ │ ├── btn_compound_mute.xml
│ │ │ ├── btn_compound_hold.xml
│ │ │ ├── btn_compound_background.xml
│ │ │ ├── edit_text_background.xml
│ │ │ ├── end_call_background.xml
│ │ │ ├── action_call_background.xml
│ │ │ └── btn_compound_audio.xml
│ │ ├── raw
│ │ │ └── outgoing_call_ring.ogg
│ │ ├── drawable-hdpi
│ │ │ ├── endcall_active.png
│ │ │ ├── endcall_disable.png
│ │ │ ├── ic_action_icon.png
│ │ │ ├── picture_unknown.png
│ │ │ ├── ic_dial_end_call.png
│ │ │ ├── ic_mute_holo_dark.png
│ │ │ ├── ic_dial_action_call.png
│ │ │ ├── ic_sound_holo_dark.png
│ │ │ ├── list_focused_holo.9.png
│ │ │ ├── ic_ab_dialer_holo_dark.png
│ │ │ ├── ic_bluetooth_holo_dark.png
│ │ │ ├── dial_background_texture.png
│ │ │ ├── ic_hold_pause_holo_dark.png
│ │ │ ├── list_pressed_holo_dark.9.png
│ │ │ ├── endcall_background_texture.png
│ │ │ ├── ic_more_indicator_holo_dark.png
│ │ │ ├── ic_sound_handset_holo_dark.png
│ │ │ ├── actioncall_background_texture.png
│ │ │ ├── ic_sound_bluetooth_holo_dark.png
│ │ │ ├── ic_active_state_dialer_holo_dark.png
│ │ │ ├── ic_sound_speakerphone_holo_dark.png
│ │ │ └── ic_sound_off_speakerphone_holo_dark.png
│ │ ├── drawable-mdpi
│ │ │ ├── endcall_active.png
│ │ │ ├── endcall_disable.png
│ │ │ ├── ic_action_icon.png
│ │ │ ├── picture_unknown.png
│ │ │ ├── ic_dial_end_call.png
│ │ │ ├── ic_mute_holo_dark.png
│ │ │ ├── ic_dial_action_call.png
│ │ │ ├── ic_sound_holo_dark.png
│ │ │ ├── list_focused_holo.9.png
│ │ │ ├── notification_cancel.png
│ │ │ ├── notification_generic.png
│ │ │ ├── profile_placeholder.png
│ │ │ ├── ic_ab_dialer_holo_dark.png
│ │ │ ├── ic_bluetooth_holo_dark.png
│ │ │ ├── dial_background_texture.png
│ │ │ ├── ic_hold_pause_holo_dark.png
│ │ │ ├── list_pressed_holo_dark.9.png
│ │ │ ├── endcall_background_texture.png
│ │ │ ├── ic_more_indicator_holo_dark.png
│ │ │ ├── ic_sound_handset_holo_dark.png
│ │ │ ├── notification_cancel_pressed.png
│ │ │ ├── actioncall_background_texture.png
│ │ │ ├── ic_sound_bluetooth_holo_dark.png
│ │ │ ├── ic_active_state_dialer_holo_dark.png
│ │ │ ├── ic_sound_speakerphone_holo_dark.png
│ │ │ └── ic_sound_off_speakerphone_holo_dark.png
│ │ ├── xml
│ │ │ └── authenticator.xml
│ │ ├── menu
│ │ │ ├── buddies.xml
│ │ │ ├── accounts.xml
│ │ │ └── audio_mode_menu.xml
│ │ ├── values
│ │ │ ├── dimens.xml
│ │ │ └── colors.xml
│ │ └── layout
│ │ │ ├── item_list_activity.xml
│ │ │ ├── item_list.xml
│ │ │ ├── account_item.xml
│ │ │ └── buddy_item.xml
│ ├── src
│ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── tuenti
│ │ │ └── voice
│ │ │ └── example
│ │ │ ├── util
│ │ │ ├── IConnectionMonitor.java
│ │ │ ├── ProcessUtil.java
│ │ │ └── NetworkPreference.java
│ │ │ ├── ui
│ │ │ ├── connection
│ │ │ │ ├── AccountConstants.java
│ │ │ │ └── ConnectionListAdapter.java
│ │ │ └── buddy
│ │ │ │ ├── BuddyLoader.java
│ │ │ │ └── BuddyListAdapter.java
│ │ │ ├── Intents.java
│ │ │ └── service
│ │ │ └── AuthenticatedVoiceClientService.java
│ └── project.properties
├── voice-client-core
│ ├── src
│ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── tuenti
│ │ │ └── voice
│ │ │ └── core
│ │ │ ├── OnStatListener.java
│ │ │ ├── manager
│ │ │ ├── StatManager.java
│ │ │ ├── ConnectionManager.java
│ │ │ ├── BuddyManager.java
│ │ │ └── CallManager.java
│ │ │ ├── AudioPlayout.java
│ │ │ ├── PortAllocatorFilter.java
│ │ │ ├── util
│ │ │ └── Compatibility.java
│ │ │ ├── OnBuddyListener.java
│ │ │ ├── OnConnectionListener.java
│ │ │ ├── XmppSocketClose.java
│ │ │ ├── data
│ │ │ └── BuddyComparator.java
│ │ │ ├── BuddyListState.java
│ │ │ ├── XmppState.java
│ │ │ ├── XmppPresenceAvailable.java
│ │ │ ├── XmppPresenceShow.java
│ │ │ ├── XmppError.java
│ │ │ ├── OnCallListener.java
│ │ │ ├── CallError.java
│ │ │ └── CallState.java
│ └── pom.xml
└── voice-client-native
│ ├── jni
│ ├── android_makefiles
│ │ ├── expat.mk
│ │ ├── gtest.mk
│ │ ├── libyuv.mk
│ │ ├── libjpeg_turbo.mk
│ │ └── libsrtp.mk
│ ├── default_debug.mk
│ ├── tuenti_debug.mk
│ ├── default_debug_video.mk
│ ├── video_debug.mk
│ ├── tuenti_release.mk
│ ├── default_release.mk
│ ├── video_final.mk
│ ├── video_release.mk
│ ├── tuenti_final.mk
│ ├── android-webrtc.mk
│ ├── default_final.mk
│ └── libjingle_config.mk
│ └── pom.xml
├── third_party
├── libvpx
│ └── source
│ │ └── config
│ │ ├── android
│ │ ├── vpx_config.c
│ │ ├── vpx_version.h
│ │ └── vpx_config.h
│ │ ├── win
│ │ ├── ia32
│ │ │ ├── asm_dec_offsets.asm
│ │ │ ├── vpx_version.h
│ │ │ ├── asm_com_offsets.asm
│ │ │ ├── vpx_config.c
│ │ │ ├── vpx_config.asm
│ │ │ ├── asm_enc_offsets.asm
│ │ │ └── vpx_config.h
│ │ └── x64
│ │ │ ├── asm_dec_offsets.asm
│ │ │ ├── vpx_version.h
│ │ │ ├── asm_com_offsets.asm
│ │ │ ├── vpx_config.c
│ │ │ ├── vpx_config.asm
│ │ │ ├── asm_enc_offsets.asm
│ │ │ └── vpx_config.h
│ │ ├── linux
│ │ ├── arm
│ │ │ ├── vpx_version.h
│ │ │ ├── vpx_config.c
│ │ │ ├── asm_enc_offsets.asm
│ │ │ ├── vpx_config.asm
│ │ │ └── vpx_config.h
│ │ ├── ia32
│ │ │ ├── vpx_version.h
│ │ │ ├── vpx_config.c
│ │ │ ├── asm_enc_offsets.asm
│ │ │ ├── vpx_config.asm
│ │ │ └── vpx_config.h
│ │ ├── x64
│ │ │ ├── vpx_version.h
│ │ │ ├── vpx_config.c
│ │ │ ├── asm_enc_offsets.asm
│ │ │ ├── vpx_config.asm
│ │ │ └── vpx_config.h
│ │ └── arm-neon
│ │ │ ├── vpx_version.h
│ │ │ ├── asm_com_offsets.asm
│ │ │ ├── vpx_config.c
│ │ │ ├── asm_enc_offsets.asm
│ │ │ ├── vpx_config.asm
│ │ │ └── vpx_config.h
│ │ └── mac
│ │ ├── ia32
│ │ ├── vpx_version.h
│ │ ├── vpx_config.c
│ │ ├── asm_enc_offsets.asm
│ │ ├── vpx_config.asm
│ │ └── vpx_config.h
│ │ └── x64
│ │ ├── vpx_version.h
│ │ ├── vpx_config.c
│ │ ├── asm_enc_offsets.asm
│ │ ├── vpx_config.asm
│ │ └── vpx_config.h
└── google-gflags
│ ├── README.webrtc
│ ├── LICENSE
│ └── google-gflags.gyp
├── client
├── unit
│ ├── webrtcjingletest.cc
│ └── clientsignalingthread_unittest.cc
├── xmppmessage.h
├── xmpplog.h
├── keepalivetask.cc
├── receivemessagetask.cc
├── threadpriorityhandler.h
├── client_defines.h
├── logging.h
├── sendmessagetask.h
├── Android.mk
├── receivemessagetask.h
├── presenceouttask.h
├── sendmessagetask.cc
├── keepalivetask.h
└── threadpriorityhandler.cc
├── tools
├── tagit.sh
├── test
│ ├── res
│ │ └── values
│ │ │ └── strings.xml
│ ├── AndroidManifest.xml
│ └── native_test_apk.xml
├── create_supplement_gypi.py
└── gen_tests_apk.sh
├── .gitignore
└── LICENSE.txt
/ios/VoiceClientExample/en.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
1 | /* Localized versions of Info.plist keys */
2 |
3 |
--------------------------------------------------------------------------------
/android/voice-client-aidl/src/main/java/com/tuenti/voice/core/data/Call.aidl:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.data;
2 |
3 | parcelable Call;
--------------------------------------------------------------------------------
/ios/VoiceClientExample/Default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/ios/VoiceClientExample/Default.png
--------------------------------------------------------------------------------
/android/voice-client-aidl/src/main/java/com/tuenti/voice/core/data/Buddy.aidl:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.data;
2 |
3 | parcelable Buddy;
--------------------------------------------------------------------------------
/ios/VoiceClientExample/Default@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/ios/VoiceClientExample/Default@2x.png
--------------------------------------------------------------------------------
/android/voice-client-aidl/src/main/java/com/tuenti/voice/core/data/Connection.aidl:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.data;
2 |
3 | parcelable Connection;
--------------------------------------------------------------------------------
/ios/VoiceClientExample/Default-568h@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/ios/VoiceClientExample/Default-568h@2x.png
--------------------------------------------------------------------------------
/android/voice-client-aidl/res/drawable/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-aidl/res/drawable/icon.png
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/android/vpx_config.c:
--------------------------------------------------------------------------------
1 | static const char* const cfg = "--target=generic-gnu";
2 | const char *vpx_codec_build_config(void) {return cfg;}
3 |
--------------------------------------------------------------------------------
/client/unit/webrtcjingletest.cc:
--------------------------------------------------------------------------------
1 | #include "talk/base/gunit.h"
2 |
3 | namespace tuenti {
4 |
5 | class WebrtcJingleTest : public testing::Test {
6 | };
7 | } // namespace tuenti
8 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/presence_away.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable/presence_away.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/presence_busy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable/presence_busy.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/presence_online.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable/presence_online.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/raw/outgoing_call_ring.ogg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/raw/outgoing_call_ring.ogg
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/presence_offline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable/presence_offline.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/endcall_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/endcall_active.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/endcall_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/endcall_disable.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_action_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_action_icon.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/picture_unknown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/picture_unknown.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/endcall_active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/endcall_active.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/endcall_disable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/endcall_disable.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_action_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_action_icon.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/picture_unknown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/picture_unknown.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_dial_end_call.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_dial_end_call.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_mute_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_mute_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_dial_end_call.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_dial_end_call.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_mute_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_mute_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_dial_action_call.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_dial_action_call.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_sound_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_sound_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/list_focused_holo.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/list_focused_holo.9.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_dial_action_call.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_dial_action_call.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_sound_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_sound_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/list_focused_holo.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/list_focused_holo.9.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/notification_cancel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/notification_cancel.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/notification_generic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/notification_generic.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/profile_placeholder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/profile_placeholder.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_ab_dialer_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_ab_dialer_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_bluetooth_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_bluetooth_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_ab_dialer_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_ab_dialer_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_bluetooth_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_bluetooth_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/dial_background_texture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/dial_background_texture.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_hold_pause_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_hold_pause_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/list_pressed_holo_dark.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/list_pressed_holo_dark.9.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/dial_background_texture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/dial_background_texture.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_hold_pause_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_hold_pause_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/list_pressed_holo_dark.9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/list_pressed_holo_dark.9.png
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/OnStatListener.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | public interface OnStatListener
4 | {
5 | void onStatsUpdated( final String stats );
6 | }
7 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/endcall_background_texture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/endcall_background_texture.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_more_indicator_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_more_indicator_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_sound_handset_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_sound_handset_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/endcall_background_texture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/endcall_background_texture.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_more_indicator_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_more_indicator_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_sound_handset_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_sound_handset_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/notification_cancel_pressed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/notification_cancel_pressed.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/actioncall_background_texture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/actioncall_background_texture.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_sound_bluetooth_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_sound_bluetooth_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/actioncall_background_texture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/actioncall_background_texture.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_sound_bluetooth_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_sound_bluetooth_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_active_state_dialer_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_active_state_dialer_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_sound_speakerphone_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_sound_speakerphone_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_active_state_dialer_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_active_state_dialer_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_sound_speakerphone_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_sound_speakerphone_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-hdpi/ic_sound_off_speakerphone_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-hdpi/ic_sound_off_speakerphone_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable-mdpi/ic_sound_off_speakerphone_holo_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/lukeweber/webrtc-jingle-client/HEAD/android/voice-client-example/res/drawable-mdpi/ic_sound_off_speakerphone_holo_dark.png
--------------------------------------------------------------------------------
/android/voice-client-aidl/src/main/java/com/tuenti/voice/core/service/IStatServiceCallback.aidl:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.service;
2 |
3 | oneway interface IStatServiceCallback {
4 |
5 | void handleStatsUpdate( in String stats );
6 |
7 | }
8 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/xml/authenticator.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/dialpad_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
--------------------------------------------------------------------------------
/android/voice-client-aidl/src/main/java/com/tuenti/voice/core/service/IBuddyServiceCallback.aidl:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.service;
2 |
3 | import com.tuenti.voice.core.data.Buddy;
4 |
5 | oneway interface IBuddyServiceCallback {
6 |
7 | void handleBuddyUpdated( in Buddy[] buddies );
8 |
9 | }
--------------------------------------------------------------------------------
/android/voice-client-aidl/src/main/java/com/tuenti/voice/core/service/IConnectionServiceCallback.aidl:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.service;
2 |
3 | oneway interface IConnectionServiceCallback {
4 |
5 | void handleLoggingIn();
6 | void handleLoggedIn();
7 | void handleLoggedOut();
8 |
9 | }
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/manager/StatManager.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.manager;
2 |
3 | public interface StatManager
4 | {
5 | // -------------------------- OTHER METHODS --------------------------
6 |
7 | void handleStatsUpdate( String stats);
8 | }
9 |
--------------------------------------------------------------------------------
/android/voice-client-example/src/main/java/com/tuenti/voice/example/util/IConnectionMonitor.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.example.util;
2 |
3 | public interface IConnectionMonitor {
4 | public void onConnectionEstablished();
5 | public void onConnectionLost();
6 | public void onConnectivityLost();
7 | }
8 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/menu/buddies.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/android/vpx_version.h:
--------------------------------------------------------------------------------
1 | #define VERSION_MAJOR 0
2 | #define VERSION_MINOR 9
3 | #define VERSION_PATCH 6
4 | #define VERSION_EXTRA ""
5 | #define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
6 | #define VERSION_STRING_NOSP "v0.9.6"
7 | #define VERSION_STRING " v0.9.6"
8 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/menu/accounts.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/ia32/asm_dec_offsets.asm:
--------------------------------------------------------------------------------
1 | bool_decoder_user_buffer_end EQU 0
2 | bool_decoder_user_buffer EQU 4
3 | bool_decoder_value EQU 8
4 | bool_decoder_count EQU 12
5 | bool_decoder_range EQU 16
6 | END
7 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/x64/asm_dec_offsets.asm:
--------------------------------------------------------------------------------
1 | bool_decoder_user_buffer_end EQU 0
2 | bool_decoder_user_buffer EQU 8
3 | bool_decoder_value EQU 16
4 | bool_decoder_count EQU 24
5 | bool_decoder_range EQU 28
6 | END
7 |
--------------------------------------------------------------------------------
/android/voice-client-aidl/src/main/java/com/tuenti/voice/core/service/IStatService.aidl:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.service;
2 |
3 | import com.tuenti.voice.core.service.IStatServiceCallback;
4 |
5 | interface IStatService {
6 | void registerCallback( IStatServiceCallback cb );
7 | void unregisterCallback( IStatServiceCallback cb );
8 | }
9 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/list_selector_focused_and_checked.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/arm/vpx_version.h:
--------------------------------------------------------------------------------
1 | #define VERSION_MAJOR 1
2 | #define VERSION_MINOR 1
3 | #define VERSION_PATCH 0
4 | #define VERSION_EXTRA "6-gdd6134b"
5 | #define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
6 | #define VERSION_STRING_NOSP "v1.1.0-6-gdd6134b"
7 | #define VERSION_STRING " v1.1.0-6-gdd6134b"
8 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/ia32/vpx_version.h:
--------------------------------------------------------------------------------
1 | #define VERSION_MAJOR 1
2 | #define VERSION_MINOR 1
3 | #define VERSION_PATCH 0
4 | #define VERSION_EXTRA "6-gdd6134b"
5 | #define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
6 | #define VERSION_STRING_NOSP "v1.1.0-6-gdd6134b"
7 | #define VERSION_STRING " v1.1.0-6-gdd6134b"
8 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/x64/vpx_version.h:
--------------------------------------------------------------------------------
1 | #define VERSION_MAJOR 1
2 | #define VERSION_MINOR 1
3 | #define VERSION_PATCH 0
4 | #define VERSION_EXTRA "6-gdd6134b"
5 | #define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
6 | #define VERSION_STRING_NOSP "v1.1.0-6-gdd6134b"
7 | #define VERSION_STRING " v1.1.0-6-gdd6134b"
8 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/mac/ia32/vpx_version.h:
--------------------------------------------------------------------------------
1 | #define VERSION_MAJOR 1
2 | #define VERSION_MINOR 1
3 | #define VERSION_PATCH 0
4 | #define VERSION_EXTRA "6-gdd6134b"
5 | #define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
6 | #define VERSION_STRING_NOSP "v1.1.0-6-gdd6134b"
7 | #define VERSION_STRING " v1.1.0-6-gdd6134b"
8 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/mac/x64/vpx_version.h:
--------------------------------------------------------------------------------
1 | #define VERSION_MAJOR 1
2 | #define VERSION_MINOR 1
3 | #define VERSION_PATCH 0
4 | #define VERSION_EXTRA "6-gdd6134b"
5 | #define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
6 | #define VERSION_STRING_NOSP "v1.1.0-6-gdd6134b"
7 | #define VERSION_STRING " v1.1.0-6-gdd6134b"
8 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/ia32/vpx_version.h:
--------------------------------------------------------------------------------
1 | #define VERSION_MAJOR 1
2 | #define VERSION_MINOR 1
3 | #define VERSION_PATCH 0
4 | #define VERSION_EXTRA "6-gdd6134b"
5 | #define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
6 | #define VERSION_STRING_NOSP "v1.1.0-6-gdd6134b"
7 | #define VERSION_STRING " v1.1.0-6-gdd6134b"
8 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/x64/vpx_version.h:
--------------------------------------------------------------------------------
1 | #define VERSION_MAJOR 1
2 | #define VERSION_MINOR 1
3 | #define VERSION_PATCH 0
4 | #define VERSION_EXTRA "6-gdd6134b"
5 | #define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
6 | #define VERSION_STRING_NOSP "v1.1.0-6-gdd6134b"
7 | #define VERSION_STRING " v1.1.0-6-gdd6134b"
8 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/arm-neon/vpx_version.h:
--------------------------------------------------------------------------------
1 | #define VERSION_MAJOR 1
2 | #define VERSION_MINOR 1
3 | #define VERSION_PATCH 0
4 | #define VERSION_EXTRA "6-gdd6134b"
5 | #define VERSION_PACKED ((VERSION_MAJOR<<16)|(VERSION_MINOR<<8)|(VERSION_PATCH))
6 | #define VERSION_STRING_NOSP "v1.1.0-6-gdd6134b"
7 | #define VERSION_STRING " v1.1.0-6-gdd6134b"
8 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/AudioPlayout.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | public enum AudioPlayout
4 | {
5 | ENABLED;
6 |
7 | // -------------------------- STATIC METHODS --------------------------
8 |
9 | public static AudioPlayout fromInteger( int i )
10 | {
11 | return ENABLED;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/android/voice-client-aidl/src/main/java/com/tuenti/voice/core/service/IBuddyService.aidl:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.service;
2 |
3 | import com.tuenti.voice.core.service.IBuddyServiceCallback;
4 |
5 | interface IBuddyService {
6 |
7 | void requestBuddyUpdate();
8 | void registerCallback( IBuddyServiceCallback cb );
9 | void unregisterCallback( IBuddyServiceCallback cb );
10 |
11 | }
--------------------------------------------------------------------------------
/tools/tagit.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | TOOLSDIR="$( cd "$( dirname "$0" )" && pwd )"
3 | TRUNKDIR="$( dirname $TOOLSDIR )"
4 | pushd $TRUNKDIR
5 | # find the list of files with h & cc extensions then ignore the toplevel base dir
6 |
7 | find . -type f|egrep "\.(h|cc)$"|grep -v "^./base" > tagindex;
8 | # create C++ tags from the list
9 | ctags --tag-relative=yes --languages=C++ -L tagindex;
10 | popd
11 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/PortAllocatorFilter.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | public enum PortAllocatorFilter {
4 |
5 | NO_FILTER,
6 | TURN;
7 |
8 | private static final PortAllocatorFilter[] filterValues = PortAllocatorFilter
9 | .values();
10 |
11 | public static PortAllocatorFilter fromInteger(int i) {
12 | return filterValues[i];
13 | }
14 |
15 | }
--------------------------------------------------------------------------------
/android/voice-client-example/res/values/dimens.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 80dp
4 | 24dp
5 | 16dp
6 | 8dp
7 | 20dp
8 |
--------------------------------------------------------------------------------
/android/voice-client-aidl/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/manager/ConnectionManager.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.manager;
2 |
3 | public interface ConnectionManager
4 | {
5 | // -------------------------- OTHER METHODS --------------------------
6 |
7 | void handleXmppError( int error );
8 |
9 | void handleXmppSocketClose( int state );
10 |
11 | void handleXmppStateChanged( int state );
12 | }
13 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/util/Compatibility.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.util;
2 |
3 | import android.os.Build;
4 |
5 | public final class Compatibility
6 | {
7 | // -------------------------- STATIC METHODS --------------------------
8 |
9 | public static boolean isCompatible( int apiLevel )
10 | {
11 | return Build.VERSION.SDK_INT >= apiLevel;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/OnBuddyListener.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | import com.tuenti.voice.core.data.Buddy;
4 |
5 | public interface OnBuddyListener
6 | {
7 | // -------------------------- OTHER METHODS --------------------------
8 |
9 | void onBuddyUpdated( Buddy[] buddies );
10 |
11 | void onRegisterBuddyListener();
12 |
13 | void requestBuddyUpdate();
14 | }
15 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/android_makefiles/expat.mk:
--------------------------------------------------------------------------------
1 | LOCAL_PATH:= $(MY_THIRD_PARTY_PATH)/expat
2 | include $(CLEAR_VARS)
3 |
4 | LOCAL_MODULE:= libexpat_static
5 |
6 | LOCAL_SRC_FILES := \
7 | files/lib/xmlparse.c \
8 | files/lib/xmlrole.c \
9 | files/lib/xmltok.c
10 |
11 | LOCAL_CFLAGS := \
12 | -DHAVE_EXPAT_CONFIG_H
13 |
14 | LOCAL_C_INCLUDES += \
15 | $(LOCAL_PATH)/files/lib
16 |
17 | include $(BUILD_STATIC_LIBRARY)
18 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/android_makefiles/gtest.mk:
--------------------------------------------------------------------------------
1 | LOCAL_PATH:= $(MY_GTEST_PATH)
2 | include $(CLEAR_VARS)
3 |
4 | LOCAL_C_INCLUDES := \
5 | $(MY_GTEST_PATH) \
6 | $(MY_GTEST_PATH)/include
7 | LOCAL_MODULE:= gunit
8 |
9 | ifeq ($(TARGET_ARCH),x86)
10 | LOCAL_CFLAGS:= \
11 | -DGTEST_HAS_CLONE=0
12 | endif
13 |
14 | LOCAL_SRC_FILES:= src/gtest-all.cc
15 | LOCAL_CPP_EXTENSION:= .cc
16 | include $(BUILD_STATIC_LIBRARY)
17 |
--------------------------------------------------------------------------------
/ios/VoiceClientExample/VoiceClientExample-Prefix.pch:
--------------------------------------------------------------------------------
1 | //
2 | // Prefix header for all source files of the 'VoiceClientExample' target in the 'VoiceClientExample' project
3 | //
4 |
5 | #import
6 |
7 | #ifndef __IPHONE_5_0
8 | #warning "This project uses features only available in iOS SDK 5.0 and later."
9 | #endif
10 |
11 | #ifdef __OBJC__
12 | #import
13 | #import
14 | #endif
15 |
--------------------------------------------------------------------------------
/ios/VoiceClientExample/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // VoiceClientExample
4 | //
5 | // Created by Luke Weber on 12/17/12.
6 | // Copyright (c) 2012 Luke Weber. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | #import "AppDelegate.h"
12 |
13 | int main(int argc, char *argv[])
14 | {
15 | @autoreleasepool {
16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/OnConnectionListener.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | import com.tuenti.voice.core.data.Connection;
4 |
5 | public interface OnConnectionListener
6 | {
7 | // -------------------------- OTHER METHODS --------------------------
8 |
9 | void login( Connection connection );
10 |
11 | void onLoggedIn();
12 |
13 | void onLoggedOut();
14 |
15 | void onLoggingIn();
16 | }
17 |
--------------------------------------------------------------------------------
/tools/test/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
10 | replaceme
11 |
12 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/list_divider.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
5 |
6 |
7 |
8 |
9 | -
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/manager/BuddyManager.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.manager;
2 |
3 | public interface BuddyManager
4 | {
5 | // -------------------------- OTHER METHODS --------------------------
6 |
7 | void handleBuddyAdded( String remoteJid, String nick, int available, int show );
8 |
9 | void handleBuddyListChanged( int state, String remoteJid );
10 |
11 | void handlePresenceChanged( String remoteJid, int available, int show );
12 | }
13 |
--------------------------------------------------------------------------------
/third_party/google-gflags/README.webrtc:
--------------------------------------------------------------------------------
1 | URL: http://code.google.com/p/google-gflags/
2 | Version: 1.5
3 | License: New BSD
4 | License File: LICENSE
5 |
6 | Description:
7 | The gflags package contains a library that implements commandline
8 | flags processing. As such it's a replacement for getopt(). It has
9 | increased flexibility, including built-in support for C++ types like
10 | string, and the ability to define flags in the source file in which
11 | they're used.
12 |
13 | Local Modifications: None
14 |
--------------------------------------------------------------------------------
/android/voice-client-aidl/src/main/java/com/tuenti/voice/core/service/IConnectionService.aidl:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.service;
2 |
3 | import com.tuenti.voice.core.data.Connection;
4 | import com.tuenti.voice.core.service.IConnectionServiceCallback;
5 |
6 | interface IConnectionService {
7 |
8 | void login( in Connection connection );
9 | void logout();
10 | void registerCallback( IConnectionServiceCallback cb );
11 | void unregisterCallback( IConnectionServiceCallback cb );
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/manager/CallManager.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.manager;
2 |
3 | public interface CallManager
4 | {
5 | // -------------------------- OTHER METHODS --------------------------
6 |
7 | void handleCallError( int error, long callId );
8 |
9 | void handleCallStateChanged( int state, String remoteJid, long callId );
10 |
11 | void handleCallTrackerId( long callId, String callTrackerId );
12 |
13 | void handleAudioPlayout();
14 | }
15 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/XmppSocketClose.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | public enum XmppSocketClose
4 | {
5 | CLOSED;
6 |
7 | // ------------------------------ FIELDS ------------------------------
8 |
9 | private static final XmppSocketClose[] xmppSocketCloseValues = XmppSocketClose.values();
10 |
11 | // -------------------------- STATIC METHODS --------------------------
12 |
13 | public static XmppSocketClose fromInteger( int i )
14 | {
15 | return CLOSED;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/data/BuddyComparator.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.data;
2 |
3 | import java.util.Comparator;
4 |
5 | public class BuddyComparator
6 | implements Comparator
7 | {
8 | // ------------------------ INTERFACE METHODS ------------------------
9 |
10 | // --------------------- Interface Comparator ---------------------
11 |
12 | @Override
13 | public int compare( Buddy b1, Buddy b2 )
14 | {
15 | return b1.getRemoteJid().compareTo( b2.getRemoteJid() );
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/android/voice-client-aidl/src/main/java/com/tuenti/voice/core/service/ICallServiceCallback.aidl:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.service;
2 |
3 | import com.tuenti.voice.core.data.Call;
4 |
5 | oneway interface ICallServiceCallback {
6 |
7 | void handleCallInProgress();
8 | void handleIncomingCall( in Call call );
9 | void handleIncomingCallAccepted();
10 | void handleIncomingCallTerminated( in Call call );
11 | void handleOutgoingCall( in Call call );
12 | void handleOutgoingCallAccepted();
13 | void handleOutgoingCallTerminated( in Call call );
14 | }
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/notification_cancel_icon.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/client/unit/clientsignalingthread_unittest.cc:
--------------------------------------------------------------------------------
1 | #include "talk/base/gunit.h"
2 | #include "client/clientsignalingthread.h"
3 |
4 | namespace tuenti {
5 |
6 | TEST(WebrtcJingleTest, ConstructDestruct) {
7 | for (int i = 0; i < 5; ++i) {
8 | StunConfig* cfg = new StunConfig();
9 | ClientSignalingThread *clientsignalingthread = new ClientSignalingThread();
10 | clientsignalingthread->Login("lukewebertest@gmail.com", "testtester", cfg, "talk.google.com", 5222, false, 0, true);
11 | delete clientsignalingthread;
12 | delete cfg;
13 | }
14 | }
15 | } //namespace tuenti
16 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/BuddyListState.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | public enum BuddyListState
4 | {
5 | ADD,
6 | REMOVE,
7 | RESET;
8 |
9 | // ------------------------------ FIELDS ------------------------------
10 |
11 | private static final BuddyListState[] buddyListStateValues = BuddyListState.values();
12 |
13 | // -------------------------- STATIC METHODS --------------------------
14 |
15 | public static BuddyListState fromInteger( int i )
16 | {
17 | return buddyListStateValues[i];
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/XmppState.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | public enum XmppState
4 | {
5 | NONE,
6 | START,
7 | OPENING,
8 | OPEN,
9 | CLOSED;
10 |
11 | // ------------------------------ FIELDS ------------------------------
12 |
13 | private static final XmppState[] xmppStateValues = XmppState.values();
14 |
15 | // -------------------------- STATIC METHODS --------------------------
16 |
17 | public static XmppState fromInteger( int i )
18 | {
19 | return xmppStateValues[i];
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/android/voice-client-aidl/src/main/java/com/tuenti/voice/core/service/ICallService.aidl:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.service;
2 |
3 | import com.tuenti.voice.core.service.ICallServiceCallback;
4 |
5 | interface ICallService {
6 |
7 | void acceptCall( long callId );
8 | void call( String remoteJid );
9 | void declineCall( long callId, boolean busy );
10 | void endCall( long callId );
11 | void toggleMute( long callId );
12 | void toggleHold( long callId );
13 | void registerCallback( ICallServiceCallback cb );
14 | void unregisterCallback( ICallServiceCallback cb );
15 |
16 | }
--------------------------------------------------------------------------------
/android/voice-client-example/src/main/java/com/tuenti/voice/example/ui/connection/AccountConstants.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.example.ui.connection;
2 |
3 | public interface AccountConstants
4 | {
5 | // ------------------------------ FIELDS ------------------------------
6 |
7 | /**
8 | * Account name
9 | */
10 | String ACCOUNT_NAME = "TuentiVoice";
11 |
12 | /**
13 | * Account type
14 | */
15 | String ACCOUNT_TYPE = "com.tuenti.voice";
16 |
17 | /**
18 | * Provider authority
19 | */
20 | String PROVIDER_AUTHORITY = "com.tuenti.voice.sync";
21 | }
22 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/layout/item_list_activity.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
11 |
12 |
16 |
17 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #1E1E1E
4 | #A0000000
5 | #FFFFFF
6 | #8033b5e5
7 | #E2E2E2
8 | #FFFFFF
9 | #F8F8F8
10 | #EDEDED
11 | #959595
12 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/XmppPresenceAvailable.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | public enum XmppPresenceAvailable
4 | {
5 | XMPP_PRESENCE_UNAVAILABLE,
6 | XMPP_PRESENCE_AVAILABLE,
7 | XMPP_PRESENCE_ERROR;
8 |
9 | // ------------------------------ FIELDS ------------------------------
10 |
11 | private static final XmppPresenceAvailable[] values = XmppPresenceAvailable.values();
12 |
13 | // -------------------------- STATIC METHODS --------------------------
14 |
15 | public static XmppPresenceAvailable fromInteger( int i )
16 | {
17 | return values[i];
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/ios/VoiceClientExample/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // VoiceClientExample
4 | //
5 | // Created by Luke Weber on 12/17/12.
6 | // Copyright (c) 2012 Luke Weber. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @class ButtonController;
12 | @interface ViewController : UIViewController {
13 | // UIButton *loginButton_;
14 | IBOutlet UILabel *statsLabel_;
15 | }
16 |
17 | //@property (nonatomic, retain) UIButton *loginButton;
18 | - (IBAction)init:(id)sender;
19 | - (IBAction)login:(id)sender;
20 | - (IBAction)logout:(id)sender;
21 | - (IBAction)call:(id)sender;
22 | - (void)statsUpdate:(NSString *)stats;
23 |
24 | @end
25 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/XmppPresenceShow.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | public enum XmppPresenceShow
4 | {
5 | XMPP_PRESENCE_CHAT,
6 | XMPP_PRESENCE_DEFAULT,
7 | XMPP_PRESENCE_AWAY,
8 | XMPP_PRESENCE_XA,
9 | XMPP_PRESENCE_DND;
10 |
11 | // ------------------------------ FIELDS ------------------------------
12 |
13 | private static final XmppPresenceShow[] values = XmppPresenceShow.values();
14 |
15 | // -------------------------- STATIC METHODS --------------------------
16 |
17 | public static XmppPresenceShow fromInteger( int i )
18 | {
19 | return values[i];
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/btn_compound_mute.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
10 | -
11 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/btn_compound_hold.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
10 | -
11 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/arm-neon/asm_com_offsets.asm:
--------------------------------------------------------------------------------
1 | @ This file was created from a .asm file
2 | @ using the ads2gas.pl script.
3 | .equ DO1STROUNDING, 0
4 | .equ yv12_buffer_config_y_width , 0
5 | .equ yv12_buffer_config_y_height , 4
6 | .equ yv12_buffer_config_y_stride , 8
7 | .equ yv12_buffer_config_uv_width , 12
8 | .equ yv12_buffer_config_uv_height , 16
9 | .equ yv12_buffer_config_uv_stride , 20
10 | .equ yv12_buffer_config_y_buffer , 24
11 | .equ yv12_buffer_config_u_buffer , 28
12 | .equ yv12_buffer_config_v_buffer , 32
13 | .equ yv12_buffer_config_border , 40
14 | .equ VP8BORDERINPIXELS_VAL , 32
15 | .equ MFQE_PRECISION_VAL , 4
16 | .section .note.GNU-stack,"",%progbits
17 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/ia32/asm_com_offsets.asm:
--------------------------------------------------------------------------------
1 | yv12_buffer_config_y_width EQU 0
2 | yv12_buffer_config_y_height EQU 4
3 | yv12_buffer_config_y_stride EQU 8
4 | yv12_buffer_config_uv_width EQU 12
5 | yv12_buffer_config_uv_height EQU 16
6 | yv12_buffer_config_uv_stride EQU 20
7 | yv12_buffer_config_y_buffer EQU 24
8 | yv12_buffer_config_u_buffer EQU 28
9 | yv12_buffer_config_v_buffer EQU 32
10 | yv12_buffer_config_border EQU 40
11 | VP8BORDERINPIXELS_VAL EQU 32
12 | MFQE_PRECISION_VAL EQU 4
13 | END
14 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/x64/asm_com_offsets.asm:
--------------------------------------------------------------------------------
1 | yv12_buffer_config_y_width EQU 0
2 | yv12_buffer_config_y_height EQU 4
3 | yv12_buffer_config_y_stride EQU 8
4 | yv12_buffer_config_uv_width EQU 12
5 | yv12_buffer_config_uv_height EQU 16
6 | yv12_buffer_config_uv_stride EQU 20
7 | yv12_buffer_config_y_buffer EQU 24
8 | yv12_buffer_config_u_buffer EQU 32
9 | yv12_buffer_config_v_buffer EQU 40
10 | yv12_buffer_config_border EQU 56
11 | VP8BORDERINPIXELS_VAL EQU 32
12 | MFQE_PRECISION_VAL EQU 4
13 | END
14 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/layout/item_list.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
11 |
12 |
18 |
19 |
--------------------------------------------------------------------------------
/android/voice-client-example/src/main/java/com/tuenti/voice/example/Intents.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.example;
2 |
3 | public class Intents
4 | {
5 |
6 | /**
7 | * Prefix for all intents created
8 | */
9 | public static final String INTENT_PREFIX = "com.tuenti.voice.example.";
10 |
11 | /**
12 | * Prefix for all extra data added to intents
13 | */
14 | public static final String INTENT_EXTRA_PREFIX = INTENT_PREFIX + "extra.";
15 |
16 | /**
17 | * Call extra
18 | */
19 | public static final String EXTRA_CALL = INTENT_EXTRA_PREFIX + "CALL";
20 |
21 | /**
22 | * Connection extra
23 | */
24 | public static final String EXTRA_CONNECTION = INTENT_EXTRA_PREFIX + "CONNECTION";
25 | }
26 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/XmppError.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | public enum XmppError
4 | {
5 | NONE,
6 | XML,
7 | STREAM,
8 | VERSION,
9 | UNAUTHORIZED,
10 | TLS,
11 | AUTH,
12 | BIND,
13 | CONNECTION_CLOSED,
14 | DOCUMENT_CLOSED,
15 | SOCKET,
16 | NETWORK_TIMEOUT,
17 | MISSING_USERNAME;
18 |
19 | // ------------------------------ FIELDS ------------------------------
20 |
21 | private static final XmppError[] xmppErrorValues = XmppError.values();
22 |
23 | // -------------------------- STATIC METHODS --------------------------
24 |
25 | public static XmppError fromInteger( int i )
26 | {
27 | return xmppErrorValues[i];
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/client/xmppmessage.h:
--------------------------------------------------------------------------------
1 | #ifndef CLIENT_XMPPMESSAGE_H
2 | #define CLIENT_XMPPMESSAGE_H
3 |
4 | #include
5 | #include "talk/xmpp/jid.h"
6 |
7 | namespace tuenti {
8 |
9 | enum XmppMessageState {
10 | XMPP_CHAT_NONE,
11 | XMPP_CHAT_ACTIVE,
12 | XMPP_CHAT_COMPOSING,
13 | XMPP_CHAT_PAUSED,
14 | XMPP_CHAT_INACTIVE,
15 | XMPP_CHAT_GONE
16 | };
17 |
18 | struct XmppMessage {
19 | std::string body;
20 | buzz::Jid jid;
21 | tuenti::XmppMessageState state;
22 | XmppMessage(std::string jid_str, tuenti::XmppMessageState state_,
23 | std::string body_)
24 | : body(body_),
25 | jid(jid_str),
26 | state(state_) {}
27 | XmppMessage(){}
28 | };
29 |
30 | } // namespace tuenti
31 | #endif // CLIENT_XMPPMESSAGE_H
32 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/default_debug.mk:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
2 | #
3 | # Use of this source code is governed by a BSD-style license
4 | # that can be found in the LICENSE file in the root of the source
5 | # tree. An additional intellectual property rights grant can be found
6 | # in the file PATENTS. All contributing project authors may
7 | # be found in the AUTHORS file in the root of the source tree.
8 | APP_ABI := armeabi armeabi-v7a mips x86
9 | APP_PLATFORM := android-9
10 | APP_CPPFLAGS += -fno-rtti
11 | APP_CFLAGS += \
12 | -D_DEBUG=1 \
13 | -DENABLE_DEBUG=1 \
14 | -DLOGGING=1 \
15 | -DWEBRTC_ANDROID_DEBUG=1
16 | APP_STL := stlport_static
17 | APP_OPTIM := debug
18 | ENABLE_WEBRTC_TRACE := 1
19 | ENABLE_UNITTEST := 1
20 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/mac/ia32/vpx_config.c:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | static const char* const cfg = "--target=x86-darwin9-gcc --enable-pic --enable-error-concealment --disable-install-docs --disable-install-srcs --disable-internal-stats --disable-install-libs --disable-install-bins --enable-realtime-only";
9 | const char *vpx_codec_build_config(void) {return cfg;}
10 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/mac/x64/vpx_config.c:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | static const char* const cfg = "--target=x86_64-darwin10-gcc --enable-pic --enable-error-concealment --disable-install-docs --disable-install-srcs --disable-internal-stats --disable-install-libs --disable-install-bins --enable-realtime-only";
9 | const char *vpx_codec_build_config(void) {return cfg;}
10 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/ia32/vpx_config.c:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | static const char* const cfg = "--target=x86-linux-gcc --enable-pic --enable-error-concealment --disable-install-docs --disable-install-srcs --disable-examples --disable-internal-stats --disable-install-libs --disable-install-bins --enable-realtime-only";
9 | const char *vpx_codec_build_config(void) {return cfg;}
10 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/tuenti_debug.mk:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
2 | #
3 | # Use of this source code is governed by a BSD-style license
4 | # that can be found in the LICENSE file in the root of the source
5 | # tree. An additional intellectual property rights grant can be found
6 | # in the file PATENTS. All contributing project authors may
7 | # be found in the AUTHORS file in the root of the source tree.
8 | APP_ABI := armeabi armeabi-v7a x86
9 | APP_PLATFORM := android-9
10 | APP_CPPFLAGS += -fno-rtti
11 | APP_CFLAGS += \
12 | -D_DEBUG=1 \
13 | -DENABLE_DEBUG=1 \
14 | -DLOGGING=1 \
15 | -DWEBRTC_ANDROID_DEBUG=1 \
16 | -DTUENTI_CUSTOM_BUILD=1
17 | APP_STL := stlport_static
18 | APP_OPTIM := debug
19 | ENABLE_WEBRTC_TRACE := 1
20 | ENABLE_UNITTEST := 1
21 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/x64/vpx_config.c:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | static const char* const cfg = "--target=x86_64-linux-gcc --enable-pic --enable-error-concealment --disable-install-docs --disable-install-srcs --disable-examples --disable-internal-stats --disable-install-libs --disable-install-bins --enable-realtime-only";
9 | const char *vpx_codec_build_config(void) {return cfg;}
10 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/default_debug_video.mk:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
2 | #
3 | # Use of this source code is governed by a BSD-style license
4 | # that can be found in the LICENSE file in the root of the source
5 | # tree. An additional intellectual property rights grant can be found
6 | # in the file PATENTS. All contributing project authors may
7 | # be found in the AUTHORS file in the root of the source tree.
8 | APP_ABI := armeabi armeabi-v7a mips x86
9 | APP_PLATFORM := android-9
10 | APP_CPPFLAGS += -fno-rtti
11 | APP_CFLAGS += \
12 | -D_DEBUG=1 \
13 | -DENABLE_DEBUG=1 \
14 | -DLOGGING=1 \
15 | -DWEBRTC_ANDROID_DEBUG=1
16 | APP_STL := stlport_static
17 | APP_OPTIM := debug
18 | ENABLE_VIDEO := 1
19 | ENABLE_WEBRTC_TRACE := 1
20 | ENABLE_UNITTEST := 1
21 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/video_debug.mk:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
2 | #
3 | # Use of this source code is governed by a BSD-style license
4 | # that can be found in the LICENSE file in the root of the source
5 | # tree. An additional intellectual property rights grant can be found
6 | # in the file PATENTS. All contributing project authors may
7 | # be found in the AUTHORS file in the root of the source tree.
8 | APP_ABI := armeabi-v7a
9 | APP_PLATFORM := android-9
10 | APP_CPPFLAGS += -fno-rtti
11 | APP_CFLAGS += \
12 | -DHAVE_WEBRTC_VIDEO \
13 | -D_DEBUG=1 \
14 | -DENABLE_DEBUG=1 \
15 | -DLOGGING=1 \
16 | -DWEBRTC_ANDROID_DEBUG=1
17 | APP_STL := stlport_static
18 | APP_OPTIM := debug
19 | ENABLE_WEBRTC_TRACE := 1
20 | ENABLE_UNITTEST := 1
21 | ENABLE_VIDEO := 1
22 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/ia32/vpx_config.c:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | static const char* const cfg = "--target=x86-win32-vs9 --enable-pic --enable-error-concealment --disable-install-docs --disable-install-srcs --disable-examples --disable-internal-stats --disable-install-libs --disable-install-bins --enable-realtime-only --enable-static-msvcrt --as=yasm";
9 | const char *vpx_codec_build_config(void) {return cfg;}
10 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/x64/vpx_config.c:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | static const char* const cfg = "--target=x86_64-win64-vs9 --enable-pic --enable-error-concealment --disable-install-docs --disable-install-srcs --disable-examples --disable-internal-stats --disable-install-libs --disable-install-bins --enable-realtime-only --enable-static-msvcrt --as=yasm";
9 | const char *vpx_codec_build_config(void) {return cfg;}
10 |
--------------------------------------------------------------------------------
/ios/VoiceClientExample/XmppClientDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // XmppClientDelegate.h
3 | // Viny
4 | //
5 | // Created by Hai Le Gia on 3/1/13.
6 | // Copyright (c) 2013 Hai Le Gia. All rights reserved.
7 | //
8 |
9 | #import
10 | #include
11 | #import "GCDAsyncSocket.h"
12 | #import "XMPPStream.h"
13 | #import "XMPPModule.h"
14 | #import "VoiceClientDelegate.h"
15 |
16 | @interface XmppClientDelegate : XMPPModule
17 |
18 | @property (nonatomic, assign) GCDAsyncSocket* asyncSocket;
19 |
20 | - (id)init;
21 | - (id)initWithDispatchQueue:(dispatch_queue_t)queue;
22 |
23 | //XmppOutputHandler, call only from XMPPClient::Private
24 | -(VoiceClientDelegate*) getVoiceClientDelegate;
25 | -(void)writeOutput:(const char *) bytes withLenght:(size_t) len;
26 | -(void)startTLS:(const std::string &) domainname;
27 | -(void)closeConnection;
28 |
29 | @end
30 |
--------------------------------------------------------------------------------
/tools/create_supplement_gypi.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python
2 | # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 | #
4 | # Use of this source code is governed by a BSD-style license
5 | # that can be found in the LICENSE file in the root of the source
6 | # tree. An additional intellectual property rights grant can be found
7 | # in the file PATENTS. All contributing project authors may
8 | # be found in the AUTHORS file in the root of the source tree.
9 |
10 | import sys
11 |
12 | supplement_gypi = """#!/usr/bin/env python
13 | # This file is generated by %s. Not for check-in.
14 | # Please see the WebRTC DEPS file for details.
15 | {
16 | 'variables': {
17 | 'build_with_chromium': 0,
18 | }
19 | }
20 | """
21 |
22 | def main(argv):
23 | open(argv[1], 'w').write(supplement_gypi % argv[0])
24 |
25 | if __name__ == '__main__':
26 | sys.exit(main(sys.argv))
27 |
--------------------------------------------------------------------------------
/android/voice-client-example/project.properties:
--------------------------------------------------------------------------------
1 | # This file is automatically generated by Android Tools.
2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED!
3 | #
4 | # This file must be checked in Version Control Systems.
5 | #
6 | # To customize properties used by the Ant build system edit
7 | # "ant.properties", and override values to adapt the script to your
8 | # project structure.
9 | #
10 | # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
11 | #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
12 |
13 | # Project target.
14 | target=android-14
15 | android.library.reference.1=../voice-client-aidl
16 | android.library.reference.2=gen-external-apklibs/com.actionbarsherlock_actionbarsherlock_4.2.0
17 | android.library.reference.3=gen-external-apklibs/com.github.kevinsawicki_wishlist_0.8
18 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/arm/vpx_config.c:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | static const char* const cfg = "--sdk-path=/usr/local/google/users/holmer/code/android/android-ndk-r7c --target=armv5te-android-gcc --enable-pic --enable-error-concealment --disable-install-docs --disable-install-srcs --disable-examples --disable-internal-stats --disable-install-libs --disable-install-bins --enable-realtime-only --enable-postproc";
9 | const char *vpx_codec_build_config(void) {return cfg;}
10 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | voice-client-core/obj
2 | android/voice-client-example/libs
3 | android/voice-client-core/bin
4 | android/voice-client-core/gen
5 | android/voice-client-core/obj
6 | config.mk
7 |
8 | *.target.mk
9 | *.Makefile
10 | Makefile
11 | tools/*
12 | third_party/*
13 | testing/*
14 | base/*
15 | build/*
16 | gyp-mac-tool
17 | client/supplement.gypi
18 |
19 | #Android generated
20 | bin
21 | gen
22 | lint.xml
23 |
24 | #Eclipse
25 | .project
26 | .classpath
27 | .settings
28 | .checkstyle
29 |
30 | #IntelliJ IDEA
31 | .idea
32 | *.iml
33 | *.ipr
34 | *.iws
35 | classes
36 | gen-external-apklibs
37 |
38 | #Maven
39 | target
40 | release.properties
41 | pom.xml.*
42 |
43 | #Ant
44 | #build.xml
45 | ant.properties
46 | local.properties
47 | proguard.cfg
48 | proguard-project.txt
49 |
50 | #XCode
51 | webrtcjingle.xcodeproj
52 | xcodebuild
53 |
54 | #Other
55 | .DS_Store
56 | tmp
57 | tags
58 | tagindex
59 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/OnCallListener.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | import com.tuenti.voice.core.data.Call;
4 |
5 | public interface OnCallListener
6 | {
7 | // -------------------------- OTHER METHODS --------------------------
8 |
9 | void acceptCall( long callId );
10 |
11 | void call( String remoteJid );
12 |
13 | void declineCall( long callId, boolean busy );
14 |
15 | void endCall( long callId );
16 |
17 | void onCallInProgress();
18 |
19 | void onIncomingCall( Call call );
20 |
21 | void onIncomingCallAccepted();
22 |
23 | void onIncomingCallTerminated( Call call );
24 |
25 | void onOutgoingCall( Call call );
26 |
27 | void onOutgoingCallAccepted();
28 |
29 | void onOutgoingCallTerminated( Call call );
30 |
31 | void toggleHold( long callId );
32 |
33 | void toggleMute( long callId );
34 | }
35 |
--------------------------------------------------------------------------------
/tools/gen_tests_apk.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | LIB_LIST="libjingle_unittest \
4 | libjingle_media_unittest \
5 | libjingle_p2p_unittest \
6 | libwebrtcjingle_unittest"
7 |
8 | export ANDROID_SDK_VERSION=14
9 |
10 | TOOLSDIR="$( cd "$( dirname "$0" )" && pwd )"
11 | TRUNKDIR="$( dirname $TOOLSDIR )"
12 |
13 | OUT_DIR=${TRUNKDIR}"/voice_test"
14 | APP_ABI_LIST="armeabi armeabi-v7a mips x86"
15 |
16 | rm -rf $OUT_DIR
17 |
18 | for app_abi in $APP_ABI_LIST
19 | do
20 | mkdir -p $OUT_DIR/$app_abi
21 |
22 | for lib in $LIB_LIST
23 | do
24 | ${TRUNKDIR}/tools/test/generate_native_test.py \
25 | --native_library=${TRUNKDIR}/android/voice-client-core/libs/${app_abi}/${lib}.so \
26 | --output=$OUT_DIR/${app_abi}/${lib} \
27 | --app_abi=${app_abi} \
28 | --strip-binary=i686-linux-android-strip \
29 | --ant-args=-DPRODUCT_DIR=$OUT_DIR/${app_abi}
30 | done
31 | done
32 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/tuenti_release.mk:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
2 | #
3 | # Use of this source code is governed by a BSD-style license
4 | # that can be found in the LICENSE file in the root of the source
5 | # tree. An additional intellectual property rights grant can be found
6 | # in the file PATENTS. All contributing project authors may
7 | # be found in the AUTHORS file in the root of the source tree.
8 | APP_ABI := armeabi armeabi-v7a x86
9 | APP_PLATFORM := android-9
10 | APP_CPPFLAGS += \
11 | -fno-rtti -ffast-math -O3
12 |
13 | APP_CFLAGS += \
14 | -DENABLE_DEBUG=0 \
15 | -DTUENTI_CUSTOM_BUILD=1 \
16 | -DLOGGING=1 \
17 | -fvisibility=hidden \
18 | -ffunction-sections \
19 | -fdata-sections
20 |
21 | APP_LDFLAGS += -Wl,--gc-sections \
22 | -Wl,--icf=safe
23 |
24 | APP_STL := stlport_static
25 | APP_OPTIM := release
26 | ENABLE_WEBRTC_TRACE := 0
27 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/arm-neon/vpx_config.c:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | static const char* const cfg = "--sdk-path=/usr/local/google/users/holmer/code/android/android-ndk-r7c --target=armv7-android-gcc --enable-pic --enable-error-concealment --disable-install-docs --disable-install-srcs --disable-examples --disable-internal-stats --disable-install-libs --disable-install-bins --enable-realtime-only --enable-postproc --disable-runtime-cpu-detect";
9 | const char *vpx_codec_build_config(void) {return cfg;}
10 |
--------------------------------------------------------------------------------
/client/xmpplog.h:
--------------------------------------------------------------------------------
1 | #ifndef _XMPPLOG_H_
2 | #define _XMPPLOG_H_
3 |
4 | #include "talk/base/logging.h"
5 | #include "talk/base/sigslot.h"
6 | #include "client/logging.h"
7 |
8 | namespace tuenti {
9 | class XmppLog : public sigslot::has_slots<> {
10 | public:
11 | XmppLog() :
12 | debug_input_buf_(NULL), debug_input_len_(0), debug_input_alloc_(0),
13 | debug_output_buf_(NULL), debug_output_len_(0), debug_output_alloc_(0),
14 | censor_password_(false)
15 | {}
16 | void Input(const char * data, int len);
17 | void Output(const char * data, int len);
18 | private:
19 | char * debug_input_buf_;
20 | int debug_input_len_;
21 | int debug_input_alloc_;
22 | char * debug_output_buf_;
23 | int debug_output_len_;
24 | int debug_output_alloc_;
25 | bool censor_password_;
26 | bool IsAuthTag(const char * str, size_t len);
27 | void DebugPrint(char * buf, int * plen, bool output);
28 | };
29 | }
30 | #endif // _XMPPLOG_H_
31 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/CallError.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | public enum CallError
4 | {
5 | ERROR_NONE, // no error
6 | ERROR_TIME, // no response to signaling
7 | ERROR_RESPONSE, // error during signaling
8 | ERROR_NETWORK, // network error, could not allocate network resources
9 | ERROR_CONTENT, // channel errors in SetLocalContent/SetRemoteContent
10 | ERROR_TRANSPORT, // transport error of some kind
11 | ERROR_ACK_TIME; // no ack response to signaling, client not available
12 |
13 | // ------------------------------ FIELDS ------------------------------
14 |
15 | private static final CallError[] callErrorValues = CallError.values();
16 |
17 | // -------------------------- STATIC METHODS --------------------------
18 |
19 | public static CallError fromInteger( int i )
20 | {
21 | return callErrorValues[i];
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/default_release.mk:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
2 | #
3 | # Use of this source code is governed by a BSD-style license
4 | # that can be found in the LICENSE file in the root of the source
5 | # tree. An additional intellectual property rights grant can be found
6 | # in the file PATENTS. All contributing project authors may
7 | # be found in the AUTHORS file in the root of the source tree.
8 |
9 | # Build both ARMv5TE and ARMv7-A x86 and mips machine code.
10 | APP_ABI := armeabi armeabi-v7a
11 | APP_PLATFORM := android-9
12 | APP_CPPFLAGS += \
13 | -fno-rtti -ffast-math -O3
14 |
15 | APP_CFLAGS += \
16 | -DENABLE_DEBUG=0 \
17 | -DLOGGING=0 \
18 | -fvisibility=hidden \
19 | -ffunction-sections \
20 | -fdata-sections
21 |
22 | APP_LDFLAGS += -Wl,--gc-sections \
23 | -Wl,--icf=safe
24 |
25 | APP_STL := stlport_static
26 | APP_OPTIM := release
27 | ENABLE_WEBRTC_TRACE := 0
28 |
--------------------------------------------------------------------------------
/android/voice-client-core/src/main/java/com/tuenti/voice/core/CallState.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core;
2 |
3 | public enum CallState
4 | {
5 | INIT,
6 | SENT_INITIATE,
7 | RECEIVED_INITIATE,
8 | RECEIVED_INITIATE_ACK,
9 | SENT_PR_ACCEPT,
10 | SENT_ACCEPT,
11 | RECEIVED_PR_ACCEPT,
12 | RECEIVED_ACCEPT,
13 | SENT_MODIFY,
14 | RECEIVED_MODIFY,
15 | SENT_BUSY,
16 | SENT_REJECT,
17 | RECEIVED_BUSY,
18 | RECEIVED_REJECT,
19 | SENT_REDIRECT,
20 | SENT_TERMINATE,
21 | RECEIVED_TERMINATE,
22 | IN_PROGRESS,
23 | DE_INIT;
24 |
25 | // ------------------------------ FIELDS ------------------------------
26 |
27 | private static final CallState[] callStateValues = CallState.values();
28 |
29 | // -------------------------- STATIC METHODS --------------------------
30 |
31 | public static CallState fromInteger( int i )
32 | {
33 | return callStateValues[i];
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/android/voice-client-example/src/main/java/com/tuenti/voice/example/ui/buddy/BuddyLoader.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.example.ui.buddy;
2 |
3 | import android.content.Context;
4 | import com.github.kevinsawicki.wishlist.AsyncLoader;
5 | import com.tuenti.voice.core.data.Buddy;
6 |
7 | import java.util.List;
8 |
9 | public class BuddyLoader
10 | extends AsyncLoader>
11 | {
12 | // ------------------------------ FIELDS ------------------------------
13 |
14 | private List mBuddies;
15 |
16 | // --------------------------- CONSTRUCTORS ---------------------------
17 |
18 | public BuddyLoader( final Context context, final List buddies )
19 | {
20 | super( context );
21 | mBuddies = buddies;
22 | }
23 |
24 | // -------------------------- OTHER METHODS --------------------------
25 |
26 | @Override
27 | public List loadInBackground()
28 | {
29 | return mBuddies;
30 | }
31 | }
--------------------------------------------------------------------------------
/android/voice-client-example/src/main/java/com/tuenti/voice/example/util/ProcessUtil.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.example.util;
2 |
3 | import android.app.ActivityManager;
4 | import android.app.ActivityManager.RunningAppProcessInfo;
5 | import android.content.Context;
6 | import android.util.Log;
7 | import android.os.Process;
8 |
9 | public class ProcessUtil {
10 |
11 | private static final String VoiceClientSerivceProcessName = "com.tuenti.voice.example:VoiceClientService";
12 |
13 | public static boolean isRemoteService(Context context){
14 | ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
15 | for (RunningAppProcessInfo process : manager.getRunningAppProcesses()) {
16 | if (VoiceClientSerivceProcessName.equals(process.processName)) {
17 | return Process.myPid() == process.pid;
18 | }
19 | }
20 | return false;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/btn_compound_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
9 |
12 |
14 |
16 |
17 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/edit_text_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | -
5 |
6 |
7 |
8 |
9 |
10 |
11 | -
16 |
17 |
18 |
19 |
20 |
21 | -
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/video_final.mk:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
2 | #
3 | # Use of this source code is governed by a BSD-style license
4 | # that can be found in the LICENSE file in the root of the source
5 | # tree. An additional intellectual property rights grant can be found
6 | # in the file PATENTS. All contributing project authors may
7 | # be found in the AUTHORS file in the root of the source tree.
8 |
9 | # Build both ARMv5TE and ARMv7-A x86 and mips machine code.
10 | NDK_TOOLCHAIN_VERSION=clang3.1
11 | APP_ABI := armeabi-v7a
12 | APP_PLATFORM := android-9
13 | APP_CPPFLAGS += \
14 | -fno-rtti -ffast-math -O3
15 | APP_CFLAGS += \
16 | -DHAVE_WEBRTC_VIDEO \
17 | -DENABLE_DEBUG=0 \
18 | -DLOGGING=0 \
19 | -fvisibility=hidden \
20 | -ffunction-sections \
21 | -fdata-sections
22 | APP_LDFLAGS += -Wl,--gc-sections
23 | ifneq ($(TARGET_ARCH),mips)
24 | APP_LDFLAGS += -Wl,--icf=safe
25 | endif
26 | APP_STL := stlport_static
27 | APP_OPTIM := release
28 | ENABLE_WEBRTC_TRACE := 0
29 | ENABLE_VIDEO := 1
30 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/video_release.mk:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
2 | #
3 | # Use of this source code is governed by a BSD-style license
4 | # that can be found in the LICENSE file in the root of the source
5 | # tree. An additional intellectual property rights grant can be found
6 | # in the file PATENTS. All contributing project authors may
7 | # be found in the AUTHORS file in the root of the source tree.
8 |
9 | # Build both ARMv5TE and ARMv7-A x86 and mips machine code.
10 | #NDK_TOOLCHAIN_VERSION=clang3.1
11 | APP_ABI := armeabi-v7a
12 | APP_PLATFORM := android-9
13 | APP_CPPFLAGS += \
14 | -fno-rtti -ffast-math -O3
15 | APP_CFLAGS += \
16 | -DHAVE_WEBRTC_VIDEO \
17 | -DENABLE_DEBUG=0 \
18 | -DLOGGING=0
19 | -fvisibility=hidden \
20 | -ffunction-sections \
21 | -fdata-sections
22 | APP_LDFLAGS += -Wl,--gc-sections
23 | ifneq ($(TARGET_ARCH),mips)
24 | APP_LDFLAGS += -Wl,--icf=safe
25 | endif
26 | APP_STL := stlport_static
27 | APP_OPTIM := release
28 | ENABLE_WEBRTC_TRACE := 0
29 | ENABLE_VIDEO := 1
30 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/end_call_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | -
6 |
9 |
10 |
11 | -
12 |
15 |
16 |
17 | -
18 |
19 |
-
20 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/action_call_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | -
6 |
9 |
10 |
11 | -
12 |
15 |
16 |
17 | -
18 |
19 |
-
20 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/android/voice-client-example/src/main/java/com/tuenti/voice/example/util/NetworkPreference.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.example.util;
2 |
3 | import android.content.Context;
4 | import android.net.ConnectivityManager;
5 | import android.net.NetworkInfo;
6 |
7 | public class NetworkPreference {
8 |
9 |
10 | private Context mContext;
11 | private ConnectivityManager mConnManager;
12 |
13 | public NetworkPreference(Context context){
14 | mContext = context;
15 | }
16 |
17 | public void enableStickyNetworkPreference(){
18 | mConnManager = (ConnectivityManager) mContext.getSystemService(Context.CONNECTIVITY_SERVICE);
19 | NetworkInfo networkInfo = mConnManager.getActiveNetworkInfo();
20 | if (networkInfo != null) {
21 | int type = networkInfo.getType();
22 | mConnManager.setNetworkPreference(type);
23 | }
24 | }
25 |
26 | public void unsetNetworkPreference(){
27 | if(mConnManager != null) {
28 | mConnManager.setNetworkPreference(ConnectivityManager.DEFAULT_NETWORK_PREFERENCE);
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/android/voice-client-example/src/main/java/com/tuenti/voice/example/service/AuthenticatedVoiceClientService.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.example.service;
2 |
3 | import android.accounts.AccountManager;
4 | import android.content.Intent;
5 | import android.os.IBinder;
6 | import com.tuenti.voice.core.service.VoiceClientService;
7 |
8 | public final class AuthenticatedVoiceClientService
9 | extends VoiceClientService
10 | {
11 | // ------------------------------ FIELDS ------------------------------
12 |
13 | private static AccountAuthenticator AUTHENTICATOR;
14 |
15 | // -------------------------- OTHER METHODS --------------------------
16 |
17 | public IBinder onBind( Intent intent )
18 | {
19 | if ( intent.getAction().equals( AccountManager.ACTION_AUTHENTICATOR_INTENT ) )
20 | {
21 | return getAuthenticator().getIBinder();
22 | }
23 | return super.onBind( intent );
24 | }
25 |
26 | private AccountAuthenticator getAuthenticator()
27 | {
28 | if ( AUTHENTICATOR == null )
29 | {
30 | AUTHENTICATOR = new AccountAuthenticator( this );
31 | }
32 | return AUTHENTICATOR;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/tuenti_final.mk:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
2 | #
3 | # Use of this source code is governed by a BSD-style license
4 | # that can be found in the LICENSE file in the root of the source
5 | # tree. An additional intellectual property rights grant can be found
6 | # in the file PATENTS. All contributing project authors may
7 | # be found in the AUTHORS file in the root of the source tree.
8 | APP_ABI := armeabi armeabi-v7a x86
9 | #Crash in optimized neon code with clang.
10 | #NDK_TOOLCHAIN_VERSION=clang3.1
11 | #Mips temporarily not building
12 | #Below code has no effect as TARGET_ARCH is not defined at this level
13 | #FILE is only parsed one time.
14 | #ifneq ($(TARGET_ARCH),mips)
15 | # APP_LDFLAGS += -Wl,--icf=safe
16 | #endif
17 |
18 | APP_PLATFORM := android-9
19 | APP_CPPFLAGS += \
20 | -fno-rtti -ffast-math -O3
21 | APP_CFLAGS += \
22 | -DENABLE_DEBUG=0 \
23 | -DTUENTI_CUSTOM_BUILD=1 \
24 | -DLOGGING=0 \
25 | -fvisibility=hidden \
26 | -ffunction-sections \
27 | -fdata-sections
28 | APP_LDFLAGS += -Wl,--gc-sections
29 | APP_LDFLAGS += -Wl,--icf=safe
30 | APP_STL := stlport_static
31 | APP_OPTIM := release
32 | ENABLE_WEBRTC_TRACE := 0
33 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/android-webrtc.mk:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
2 | #
3 | # Use of this source code is governed by a BSD-style license
4 | # that can be found in the LICENSE file in the root of the source
5 | # tree. An additional intellectual property rights grant can be found
6 | # in the file PATENTS. All contributing project authors may
7 | # be found in the AUTHORS file in the root of the source tree.
8 |
9 | # These defines will apply to all source files
10 | # Think again before changing it
11 | MY_WEBRTC_COMMON_DEFS := \
12 | '-DWEBRTC_TARGET_PC' \
13 | '-DWEBRTC_LINUX' \
14 | '-DWEBRTC_THREAD_RR' \
15 | '-DWEBRTC_CLOCK_TYPE_REALTIME' \
16 | '-DWEBRTC_ANDROID' \
17 | '-DWEBRTC_SVNREVISION="2356"' \
18 | '-DWEBRTC_EXTERNAL_TRANSPORT'
19 |
20 | ifeq ($(TARGET_ARCH), arm)
21 | MY_WEBRTC_COMMON_DEFS += \
22 | '-DWEBRTC_ARCH_ARM'
23 | endif
24 |
25 | ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
26 | WEBRTC_BUILD_NEON_LIBS := true
27 | MY_WEBRTC_COMMON_DEFS += \
28 | '-DWEBRTC_ARCH_ARM_V7A' \
29 | '-DWEBRTC_DETECT_ARM_NEON'
30 |
31 | MY_ARM_CFLAGS_NEON := \
32 | -flax-vector-conversions
33 | else
34 | WEBRTC_BUILD_NEON_LIBS := false
35 | endif
36 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/android_makefiles/libyuv.mk:
--------------------------------------------------------------------------------
1 | LOCAL_PATH:= $(MY_THIRD_PARTY_PATH)/libyuv
2 | include $(CLEAR_VARS)
3 |
4 | LOCAL_MODULE:= libyuv
5 |
6 | LOCAL_SRC_FILES := \
7 | source/compare.cc \
8 | source/compare_common.cc \
9 | source/compare_neon.cc \
10 | source/compare_posix.cc \
11 | source/compare_win.cc \
12 | source/convert.cc \
13 | source/convert_argb.cc \
14 | source/convert_from.cc \
15 | source/convert_from_argb.cc \
16 | source/cpu_id.cc \
17 | source/format_conversion.cc \
18 | source/memcpy_mips.S \
19 | source/mjpeg_decoder.cc \
20 | source/planar_functions.cc \
21 | source/rotate.cc \
22 | source/rotate_argb.cc \
23 | source/rotate_mips.cc \
24 | source/rotate_neon.cc \
25 | source/row_any.cc \
26 | source/row_common.cc \
27 | source/row_mips.cc \
28 | source/row_neon.cc \
29 | source/row_posix.cc \
30 | source/row_win.cc \
31 | source/scale.cc \
32 | source/scale_argb.cc \
33 | source/scale_argb_neon.cc \
34 | source/scale_mips.cc \
35 | source/scale_neon.cc \
36 | source/video_common.cc \
37 |
38 | LOCAL_CFLAGS := \
39 | -DHAVE_JPEG
40 |
41 | LOCAL_C_INCLUDES += \
42 | $(MY_THIRD_PARTY_PATH)/libjpeg_turbo \
43 | $(LOCAL_PATH)/include \
44 | $(LOCAL_PATH)
45 |
46 | include $(BUILD_STATIC_LIBRARY)
47 |
--------------------------------------------------------------------------------
/ios/Readme.txt:
--------------------------------------------------------------------------------
1 | IPhone build working in a basic state with a login, logout and call button.
2 |
3 | Starting points
4 | * Apply the following patches
5 | * Autogenerate an xcode project with
6 | ./build/gyp_chromium --depth=. -DOS=ios -Dinclude_tests=0 -Denable_protobuf=0 -Denable_video=0 webrtcjingle.gyp
7 | * open webrtcjingle.xcodeproj
8 | * Modify usernames/servers, etc in ios/VoiceClientExample/VoiceClientDelegate.mm
9 | * Build and deploy
10 | * May experience issues about sse from audio_processing.gypi. If you push to an IOS device add -Dtarget_arch=arm. If emulator, the other command will probably work.
11 |
12 | ===Patches===
13 | .../webrtcjingleproject/trunk/third_party/expat$ svn diff
14 | Index: expat.gyp
15 | ===================================================================
16 | --- expat.gyp (revision 169394)
17 | +++ expat.gyp (working copy)
18 | @@ -7,7 +7,7 @@
19 | 'conditions': [
20 | # On Linux, we implicitly already depend on expat via fontconfig;
21 | # let's not pull it in twice.
22 | - ['os_posix == 1 and OS != "mac" and OS != "android"', {
23 | + ['os_posix == 1 and OS != "mac" and OS != "android" and OS != "ios"', {
24 | 'use_system_expat%': 1,
25 | }, {
26 | 'use_system_expat%': 0,
27 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/default_final.mk:
--------------------------------------------------------------------------------
1 | # Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
2 | #
3 | # Use of this source code is governed by a BSD-style license
4 | # that can be found in the LICENSE file in the root of the source
5 | # tree. An additional intellectual property rights grant can be found
6 | # in the file PATENTS. All contributing project authors may
7 | # be found in the AUTHORS file in the root of the source tree.
8 |
9 | # Build both ARMv5TE and ARMv7-A x86 and mips machine code.
10 | APP_ABI := armeabi armeabi-v7a x86
11 | #Crash in optimized neon code with clang.
12 | #NDK_TOOLCHAIN_VERSION=clang3.1
13 | #Mips temporarily not building
14 | #Below code has no effect as TARGET_ARCH is not defined at this level
15 | #FILE is only parsed one time.
16 | #ifneq ($(TARGET_ARCH),mips)
17 | # APP_LDFLAGS += -Wl,--icf=safe
18 | #endif
19 | APP_PLATFORM := android-9
20 |
21 | APP_CPPFLAGS += \
22 | -fno-rtti -ffast-math -O3
23 |
24 | APP_CFLAGS += \
25 | -DENABLE_DEBUG=0 \
26 | -DLOGGING=0 \
27 | -fvisibility=hidden \
28 | -ffunction-sections \
29 | -fdata-sections
30 |
31 | APP_LDFLAGS += -Wl,--gc-sections \
32 | -Wl,--icf=safe
33 |
34 | APP_STL := stlport_static
35 | APP_OPTIM := release
36 | ENABLE_WEBRTC_TRACE := 0
37 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/android_makefiles/libjpeg_turbo.mk:
--------------------------------------------------------------------------------
1 | LOCAL_PATH:= $(MY_THIRD_PARTY_PATH)/libjpeg_turbo
2 | include $(CLEAR_VARS)
3 |
4 | LOCAL_MODULE:= libjpeg_turbo
5 |
6 | LOCAL_SRC_FILES := \
7 | jcapimin.c \
8 | jcapistd.c \
9 | jccoefct.c \
10 | jccolor.c \
11 | jcdctmgr.c \
12 | jchuff.c \
13 | jcinit.c \
14 | jcmainct.c \
15 | jcmarker.c \
16 | jcmaster.c \
17 | jcomapi.c \
18 | jcparam.c \
19 | jcphuff.c \
20 | jcprepct.c \
21 | jcsample.c \
22 | jdapimin.c \
23 | jdapistd.c \
24 | jdatadst.c \
25 | jdatasrc.c \
26 | jdcoefct.c \
27 | jdcolor.c \
28 | jddctmgr.c \
29 | jdhuff.c \
30 | jdinput.c \
31 | jdmainct.c \
32 | jdmarker.c \
33 | jdmaster.c \
34 | jdmerge.c \
35 | jdphuff.c \
36 | jdpostct.c \
37 | jdsample.c \
38 | jerror.c \
39 | jfdctflt.c \
40 | jfdctfst.c \
41 | jfdctint.c \
42 | jidctflt.c \
43 | jidctfst.c \
44 | jidctint.c \
45 | jidctred.c \
46 | jmemmgr.c \
47 | jmemnobs.c \
48 | jquant1.c \
49 | jquant2.c \
50 | jutils.c
51 |
52 | ifeq ($(TARGET_ARCH_ABI),armeabi-v7a)
53 | LOCAL_SRC_FILES += \
54 | simd/jsimd_arm.c \
55 | simd/jsimd_arm_neon.S
56 | endif
57 |
58 | LOCAL_CFLAGS := \
59 | -DWITH_SIMD \
60 | -DMOTION_JPEG_SUPPORTED
61 |
62 | LOCAL_C_INCLUDES += \
63 | $(LOCAL_PATH)
64 |
65 | include $(BUILD_STATIC_LIBRARY)
66 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/drawable/btn_compound_audio.xml:
--------------------------------------------------------------------------------
1 |
15 |
16 |
17 |
18 |
19 |
22 |
23 |
24 | -
25 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/ia32/asm_enc_offsets.asm:
--------------------------------------------------------------------------------
1 | vp8_block_coeff EQU 4
2 | vp8_block_zbin EQU 20
3 | vp8_block_round EQU 28
4 | vp8_block_quant EQU 8
5 | vp8_block_quant_fast EQU 12
6 | vp8_block_zbin_extra EQU 32
7 | vp8_block_zrun_zbin_boost EQU 24
8 | vp8_block_quant_shift EQU 16
9 | vp8_blockd_qcoeff EQU 0
10 | vp8_blockd_dequant EQU 12
11 | vp8_blockd_dqcoeff EQU 4
12 | vp8_blockd_eob EQU 20
13 | vp8_block_base_src EQU 36
14 | vp8_block_src EQU 40
15 | vp8_block_src_diff EQU 0
16 | vp8_block_src_stride EQU 44
17 | vp8_blockd_predictor EQU 8
18 | vp8_writer_lowvalue EQU 0
19 | vp8_writer_range EQU 4
20 | vp8_writer_count EQU 8
21 | vp8_writer_pos EQU 12
22 | vp8_writer_buffer EQU 16
23 | vp8_writer_buffer_end EQU 20
24 | vp8_writer_error EQU 24
25 | tokenextra_token EQU 6
26 | tokenextra_extra EQU 4
27 | tokenextra_context_tree EQU 0
28 | tokenextra_skip_eob_node EQU 7
29 | TOKENEXTRA_SZ EQU 8
30 | vp8_extra_bit_struct_sz EQU 16
31 | vp8_token_value EQU 0
32 | vp8_token_len EQU 4
33 | vp8_extra_bit_struct_tree EQU 0
34 | vp8_extra_bit_struct_prob EQU 4
35 | vp8_extra_bit_struct_len EQU 8
36 | vp8_extra_bit_struct_base_val EQU 12
37 | vp8_comp_tplist EQU 170716
38 | vp8_comp_common EQU 104032
39 | vp8_comp_bc EQU 116240
40 | vp8_writer_sz EQU 36
41 | tokenlist_start EQU 0
42 | tokenlist_stop EQU 4
43 | TOKENLIST_SZ EQU 8
44 | vp8_common_mb_rows EQU 2296
45 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/mac/ia32/asm_enc_offsets.asm:
--------------------------------------------------------------------------------
1 | vp8_block_coeff EQU 4
2 | vp8_block_zbin EQU 20
3 | vp8_block_round EQU 28
4 | vp8_block_quant EQU 8
5 | vp8_block_quant_fast EQU 12
6 | vp8_block_zbin_extra EQU 32
7 | vp8_block_zrun_zbin_boost EQU 24
8 | vp8_block_quant_shift EQU 16
9 | vp8_blockd_qcoeff EQU 0
10 | vp8_blockd_dequant EQU 12
11 | vp8_blockd_dqcoeff EQU 4
12 | vp8_blockd_eob EQU 20
13 | vp8_block_base_src EQU 36
14 | vp8_block_src EQU 40
15 | vp8_block_src_diff EQU 0
16 | vp8_block_src_stride EQU 44
17 | vp8_blockd_predictor EQU 8
18 | vp8_writer_lowvalue EQU 0
19 | vp8_writer_range EQU 4
20 | vp8_writer_count EQU 8
21 | vp8_writer_pos EQU 12
22 | vp8_writer_buffer EQU 16
23 | vp8_writer_buffer_end EQU 20
24 | vp8_writer_error EQU 24
25 | tokenextra_token EQU 6
26 | tokenextra_extra EQU 4
27 | tokenextra_context_tree EQU 0
28 | tokenextra_skip_eob_node EQU 7
29 | TOKENEXTRA_SZ EQU 8
30 | vp8_extra_bit_struct_sz EQU 16
31 | vp8_token_value EQU 0
32 | vp8_token_len EQU 4
33 | vp8_extra_bit_struct_tree EQU 0
34 | vp8_extra_bit_struct_prob EQU 4
35 | vp8_extra_bit_struct_len EQU 8
36 | vp8_extra_bit_struct_base_val EQU 12
37 | vp8_comp_tplist EQU 170600
38 | vp8_comp_common EQU 104032
39 | vp8_comp_bc EQU 116160
40 | vp8_writer_sz EQU 36
41 | tokenlist_start EQU 0
42 | tokenlist_stop EQU 4
43 | TOKENLIST_SZ EQU 8
44 | vp8_common_mb_rows EQU 2216
45 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/x64/asm_enc_offsets.asm:
--------------------------------------------------------------------------------
1 | vp8_block_coeff EQU 8
2 | vp8_block_zbin EQU 40
3 | vp8_block_round EQU 56
4 | vp8_block_quant EQU 16
5 | vp8_block_quant_fast EQU 24
6 | vp8_block_zbin_extra EQU 64
7 | vp8_block_zrun_zbin_boost EQU 48
8 | vp8_block_quant_shift EQU 32
9 | vp8_blockd_qcoeff EQU 0
10 | vp8_blockd_dequant EQU 24
11 | vp8_blockd_dqcoeff EQU 8
12 | vp8_blockd_eob EQU 40
13 | vp8_block_base_src EQU 72
14 | vp8_block_src EQU 80
15 | vp8_block_src_diff EQU 0
16 | vp8_block_src_stride EQU 84
17 | vp8_blockd_predictor EQU 16
18 | vp8_writer_lowvalue EQU 0
19 | vp8_writer_range EQU 4
20 | vp8_writer_count EQU 8
21 | vp8_writer_pos EQU 12
22 | vp8_writer_buffer EQU 16
23 | vp8_writer_buffer_end EQU 24
24 | vp8_writer_error EQU 32
25 | tokenextra_token EQU 10
26 | tokenextra_extra EQU 8
27 | tokenextra_context_tree EQU 0
28 | tokenextra_skip_eob_node EQU 11
29 | TOKENEXTRA_SZ EQU 16
30 | vp8_extra_bit_struct_sz EQU 24
31 | vp8_token_value EQU 0
32 | vp8_token_len EQU 4
33 | vp8_extra_bit_struct_tree EQU 0
34 | vp8_extra_bit_struct_prob EQU 8
35 | vp8_extra_bit_struct_len EQU 16
36 | vp8_extra_bit_struct_base_val EQU 20
37 | vp8_comp_tplist EQU 173256
38 | vp8_comp_common EQU 105952
39 | vp8_comp_bc EQU 118384
40 | vp8_writer_sz EQU 56
41 | tokenlist_start EQU 0
42 | tokenlist_stop EQU 8
43 | TOKENLIST_SZ EQU 16
44 | vp8_common_mb_rows EQU 2488
45 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/mac/x64/asm_enc_offsets.asm:
--------------------------------------------------------------------------------
1 | vp8_block_coeff EQU 8
2 | vp8_block_zbin EQU 40
3 | vp8_block_round EQU 56
4 | vp8_block_quant EQU 16
5 | vp8_block_quant_fast EQU 24
6 | vp8_block_zbin_extra EQU 64
7 | vp8_block_zrun_zbin_boost EQU 48
8 | vp8_block_quant_shift EQU 32
9 | vp8_blockd_qcoeff EQU 0
10 | vp8_blockd_dequant EQU 24
11 | vp8_blockd_dqcoeff EQU 8
12 | vp8_blockd_eob EQU 40
13 | vp8_block_base_src EQU 72
14 | vp8_block_src EQU 80
15 | vp8_block_src_diff EQU 0
16 | vp8_block_src_stride EQU 84
17 | vp8_blockd_predictor EQU 16
18 | vp8_writer_lowvalue EQU 0
19 | vp8_writer_range EQU 4
20 | vp8_writer_count EQU 8
21 | vp8_writer_pos EQU 12
22 | vp8_writer_buffer EQU 16
23 | vp8_writer_buffer_end EQU 24
24 | vp8_writer_error EQU 32
25 | tokenextra_token EQU 10
26 | tokenextra_extra EQU 8
27 | tokenextra_context_tree EQU 0
28 | tokenextra_skip_eob_node EQU 11
29 | TOKENEXTRA_SZ EQU 16
30 | vp8_extra_bit_struct_sz EQU 24
31 | vp8_token_value EQU 0
32 | vp8_token_len EQU 4
33 | vp8_extra_bit_struct_tree EQU 0
34 | vp8_extra_bit_struct_prob EQU 8
35 | vp8_extra_bit_struct_len EQU 16
36 | vp8_extra_bit_struct_base_val EQU 20
37 | vp8_comp_tplist EQU 173112
38 | vp8_comp_common EQU 105952
39 | vp8_comp_bc EQU 118320
40 | vp8_writer_sz EQU 56
41 | tokenlist_start EQU 0
42 | tokenlist_stop EQU 8
43 | TOKENLIST_SZ EQU 16
44 | vp8_common_mb_rows EQU 2424
45 |
--------------------------------------------------------------------------------
/tools/test/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
12 |
13 |
14 |
15 |
16 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/android/voice-client-native/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 | 4.0.0
5 |
6 |
7 | com.tuenti.voice
8 | voice-parent
9 | 1.0-SNAPSHOT
10 | ../pom.xml
11 |
12 | voice-native
13 | so
14 | Tuenti Voice Client Native Library
15 |
16 |
17 |
18 |
19 | com.jayway.maven.plugins.android.generation2
20 | android-maven-plugin
21 | true
22 |
23 | ${android.ndkappfile}
24 | libs
25 | all
26 | voiceclient
27 | true
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/android/voice-client-example/src/main/java/com/tuenti/voice/example/ui/connection/ConnectionListAdapter.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.example.ui.connection;
2 |
3 | import android.view.LayoutInflater;
4 | import com.github.kevinsawicki.wishlist.SingleTypeAdapter;
5 | import com.tuenti.voice.core.data.Connection;
6 | import com.tuenti.voice.example.R;
7 |
8 | public class ConnectionListAdapter
9 | extends SingleTypeAdapter
10 | {
11 | // --------------------------- CONSTRUCTORS ---------------------------
12 |
13 | public ConnectionListAdapter( final LayoutInflater inflater, final Connection[] connections )
14 | {
15 | super( inflater, R.layout.account_item );
16 | setItems( connections );
17 | }
18 |
19 | @Override
20 | protected int[] getChildViewIds()
21 | {
22 | return new int[]{R.id.account_name, R.id.presence, R.id.status};
23 | }
24 |
25 | @Override
26 | protected void update( final int position, final Connection connection )
27 | {
28 | setText( 0, connection.getUsername() );
29 | imageView( 1 ).setImageResource( getImageResource( connection ) );
30 | setText( 2, connection.getPresenceId() );
31 | }
32 |
33 | private int getImageResource( final Connection connection )
34 | {
35 | if ( connection.getPresenceId() == R.string.presence_available )
36 | {
37 | return R.drawable.presence_online;
38 | }
39 | return R.drawable.presence_offline;
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/third_party/google-gflags/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2006, Google Inc.
2 | All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with or without
5 | modification, are permitted provided that the following conditions are
6 | met:
7 |
8 | * Redistributions of source code must retain the above copyright
9 | notice, this list of conditions and the following disclaimer.
10 | * Redistributions in binary form must reproduce the above
11 | copyright notice, this list of conditions and the following disclaimer
12 | in the documentation and/or other materials provided with the
13 | distribution.
14 | * Neither the name of Google Inc. nor the names of its
15 | contributors may be used to endorse or promote products derived from
16 | this software without specific prior written permission.
17 |
18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22 | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 |
--------------------------------------------------------------------------------
/ios/VoiceClientExample/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // VoiceClientExample
4 | //
5 | // Created by Luke Weber on 12/17/12.
6 | // Copyright (c) 2012 Luke Weber. All rights reserved.
7 | //
8 | #import
9 | #import "xmppframework/XMPPFramework.h"
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (nonatomic, strong) UIWindow *window;
14 |
15 | @property (nonatomic, strong) XMPPStream *xmppStream;
16 | @property (nonatomic, strong) XMPPReconnect *xmppReconnect;
17 | @property (nonatomic, strong) XMPPRoster *xmppRoster;
18 | @property (nonatomic, strong) XMPPRosterCoreDataStorage *xmppRosterStorage;
19 | @property (nonatomic, strong) XMPPvCardTempModule *xmppvCardTempModule;
20 | @property (nonatomic, strong) XMPPvCardAvatarModule *xmppvCardAvatarModule;
21 | @property (nonatomic, strong) XMPPCapabilities *xmppCapabilities;
22 | @property (nonatomic, strong) XMPPCapabilitiesCoreDataStorage *xmppCapabilitiesStorage;
23 | @property (nonatomic, strong) XMPPvCardCoreDataStorage* xmppvCardStorage;
24 | @property BOOL reconnectAfterClosed;
25 | @property (nonatomic, strong) XMPPJID* myJid;
26 | @property (nonatomic, strong) NSString* password;
27 |
28 | - (NSManagedObjectContext *)managedObjectContext_roster;
29 | - (NSManagedObjectContext *)managedObjectContext_capabilities;
30 |
31 | - (void)setupStream;
32 | - (void)teardownStream;
33 | - (void)goOnline;
34 | - (void)goOffline;
35 |
36 | - (BOOL)connect;
37 | - (void)disconnect;
38 |
39 | #pragma mark VoiceClientDelegate section
40 | -(void)call:(NSString*) jid;
41 | #pragma mark -
42 | @end
43 |
44 |
--------------------------------------------------------------------------------
/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2012, Tuenti technologies. All rights reserved.
2 |
3 | Redistribution and use in source and binary forms, with or without
4 | modification, are permitted provided that the following conditions are
5 | met:
6 |
7 | * Redistributions of source code must retain the above copyright
8 | notice, this list of conditions and the following disclaimer.
9 |
10 | * Redistributions in binary form must reproduce the above copyright
11 | notice, this list of conditions and the following disclaimer in
12 | the documentation and/or other materials provided with the
13 | distribution.
14 |
15 | * Neither the name of Tuenti technologies nor the names of its
16 | contributors may be used to endorse or promote products derived
17 | from this software without specific prior written permission.
18 |
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23 | HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
--------------------------------------------------------------------------------
/android/voice-client-native/jni/libjingle_config.mk:
--------------------------------------------------------------------------------
1 | LIBJINGLE_CPPFLAGS := \
2 | -DGTEST_RELATIVE_PATH \
3 | -DDISABLE_DYNAMIC_CAST \
4 | -D_REENTRANT \
5 | -DPOSIX \
6 | -DOS_LINUX=OS_LINUX \
7 | -DLINUX \
8 | -DANDROID \
9 | -DEXPAT_RELATIVE_PATH \
10 | -DSRTP_RELATIVE_PATH \
11 | -DXML_STATIC \
12 | -DFEATURE_ENABLE_SSL \
13 | -DHAVE_OPENSSL_SSL_H=1 \
14 | -DFEATURE_ENABLE_VOICEMAIL \
15 | -DFEATURE_ENABLE_PSTN \
16 | -DHAVE_SRTP \
17 | -DNO_SOUND_SYSTEM \
18 | -DWEBRTC_RELATIVE_PATH \
19 | -DEXPAT_RELATIVE_PATH \
20 | -DHAVE_WEBRTC_VOICE \
21 | -DDISABLE_YUV
22 |
23 | MY_LIBJINGLE_C_INCLUDES := \
24 | $(MY_THIRD_PARTY_PATH)/openssl/openssl/include \
25 | $(MY_THIRD_PARTY_PATH)/openssl/config/android \
26 | $(MY_THIRD_PARTY_PATH)/libsrtp/source/config \
27 | $(MY_THIRD_PARTY_PATH)/libsrtp/source/srtp \
28 | $(MY_THIRD_PARTY_PATH)/libsrtp/source/srtp/include \
29 | $(MY_THIRD_PARTY_PATH)/libsrtp/source/srtp/crypto/include \
30 | $(MY_THIRD_PARTY_PATH) \
31 | $(MY_THIRD_PARTY_PATH)/libjingle \
32 | $(MY_THIRD_PARTY_PATH)/webrtc \
33 | $(MY_THIRD_PARTY_PATH)/webrtc/modules/interface \
34 | $(MY_THIRD_PARTY_PATH)/expat/files/lib
35 |
36 | MY_UNITTEST_CFLAGS := $(LIBJINGLE_CPPFLAGS) \
37 | -DHAVE_STDLIB_H \
38 | -DHAVE_STRING_H \
39 | -DCPU_RISC \
40 | -DSIZEOF_UNSIGNED_LONG=4 \
41 | -DSIZEOF_UNSIGNED_LONG_LONG=8 \
42 | -DHAVE_STDINT_H \
43 | -DHAVE_INTTYPES_H \
44 | -DHAVE_NETINET_IN_H \
45 | -DHAVE_UINT64_T \
46 | -DHAVE_UINT32_T \
47 | -DHAVE_UINT16_T \
48 | -DHAVE_UINT8_T \
49 | -DHAVE_UINT_T \
50 | -DUSE_WEBRTC_313_BRANCH
51 |
52 | GTEST_C_INCLUDES := \
53 | $(MY_GTEST_PATH) \
54 | $(MY_GTEST_PATH)/include
55 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/arm/asm_enc_offsets.asm:
--------------------------------------------------------------------------------
1 | @ This file was created from a .asm file
2 | @ using the ads2gas.pl script.
3 | .equ DO1STROUNDING, 0
4 | .equ vp8_block_coeff , 4
5 | .equ vp8_block_zbin , 20
6 | .equ vp8_block_round , 28
7 | .equ vp8_block_quant , 8
8 | .equ vp8_block_quant_fast , 12
9 | .equ vp8_block_zbin_extra , 32
10 | .equ vp8_block_zrun_zbin_boost , 24
11 | .equ vp8_block_quant_shift , 16
12 | .equ vp8_blockd_qcoeff , 0
13 | .equ vp8_blockd_dequant , 12
14 | .equ vp8_blockd_dqcoeff , 4
15 | .equ vp8_blockd_eob , 20
16 | .equ vp8_block_base_src , 36
17 | .equ vp8_block_src , 40
18 | .equ vp8_block_src_diff , 0
19 | .equ vp8_block_src_stride , 44
20 | .equ vp8_blockd_predictor , 8
21 | .equ vp8_writer_lowvalue , 0
22 | .equ vp8_writer_range , 4
23 | .equ vp8_writer_count , 8
24 | .equ vp8_writer_pos , 12
25 | .equ vp8_writer_buffer , 16
26 | .equ vp8_writer_buffer_end , 20
27 | .equ vp8_writer_error , 24
28 | .equ tokenextra_token , 6
29 | .equ tokenextra_extra , 4
30 | .equ tokenextra_context_tree , 0
31 | .equ tokenextra_skip_eob_node , 7
32 | .equ TOKENEXTRA_SZ , 8
33 | .equ vp8_extra_bit_struct_sz , 16
34 | .equ vp8_token_value , 0
35 | .equ vp8_token_len , 4
36 | .equ vp8_extra_bit_struct_tree , 0
37 | .equ vp8_extra_bit_struct_prob , 4
38 | .equ vp8_extra_bit_struct_len , 8
39 | .equ vp8_extra_bit_struct_base_val , 12
40 | .equ vp8_comp_tplist , 167128
41 | .equ vp8_comp_common , 103296
42 | .equ vp8_comp_bc , 112656
43 | .equ vp8_writer_sz , 36
44 | .equ tokenlist_start , 0
45 | .equ tokenlist_stop , 4
46 | .equ TOKENLIST_SZ , 8
47 | .equ vp8_common_mb_rows , 2392
48 | .section .note.GNU-stack,"",%progbits
49 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/arm-neon/asm_enc_offsets.asm:
--------------------------------------------------------------------------------
1 | @ This file was created from a .asm file
2 | @ using the ads2gas.pl script.
3 | .equ DO1STROUNDING, 0
4 | .equ vp8_block_coeff , 4
5 | .equ vp8_block_zbin , 20
6 | .equ vp8_block_round , 28
7 | .equ vp8_block_quant , 8
8 | .equ vp8_block_quant_fast , 12
9 | .equ vp8_block_zbin_extra , 32
10 | .equ vp8_block_zrun_zbin_boost , 24
11 | .equ vp8_block_quant_shift , 16
12 | .equ vp8_blockd_qcoeff , 0
13 | .equ vp8_blockd_dequant , 12
14 | .equ vp8_blockd_dqcoeff , 4
15 | .equ vp8_blockd_eob , 20
16 | .equ vp8_block_base_src , 36
17 | .equ vp8_block_src , 40
18 | .equ vp8_block_src_diff , 0
19 | .equ vp8_block_src_stride , 44
20 | .equ vp8_blockd_predictor , 8
21 | .equ vp8_writer_lowvalue , 0
22 | .equ vp8_writer_range , 4
23 | .equ vp8_writer_count , 8
24 | .equ vp8_writer_pos , 12
25 | .equ vp8_writer_buffer , 16
26 | .equ vp8_writer_buffer_end , 20
27 | .equ vp8_writer_error , 24
28 | .equ tokenextra_token , 6
29 | .equ tokenextra_extra , 4
30 | .equ tokenextra_context_tree , 0
31 | .equ tokenextra_skip_eob_node , 7
32 | .equ TOKENEXTRA_SZ , 8
33 | .equ vp8_extra_bit_struct_sz , 16
34 | .equ vp8_token_value , 0
35 | .equ vp8_token_len , 4
36 | .equ vp8_extra_bit_struct_tree , 0
37 | .equ vp8_extra_bit_struct_prob , 4
38 | .equ vp8_extra_bit_struct_len , 8
39 | .equ vp8_extra_bit_struct_base_val , 12
40 | .equ vp8_comp_tplist , 167128
41 | .equ vp8_comp_common , 103296
42 | .equ vp8_comp_bc , 112656
43 | .equ vp8_writer_sz , 36
44 | .equ tokenlist_start , 0
45 | .equ tokenlist_stop , 4
46 | .equ TOKENLIST_SZ , 8
47 | .equ vp8_common_mb_rows , 2392
48 | .section .note.GNU-stack,"",%progbits
49 |
--------------------------------------------------------------------------------
/client/keepalivetask.cc:
--------------------------------------------------------------------------------
1 | // Copyright 2011 Google Inc. All Rights Reserved.
2 |
3 | #include "client/keepalivetask.h"
4 |
5 | #include "talk/base/logging.h"
6 | #include "talk/base/scoped_ptr.h"
7 | #include "talk/xmpp/constants.h"
8 | #include "talk/xmpp/xmppclient.h"
9 |
10 | namespace tuenti {
11 |
12 | KeepAliveTask::KeepAliveTask(buzz::XmppClient* client,
13 | talk_base::MessageQueue* message_queue,
14 | uint32 keepalive_period_millis)
15 | : buzz::XmppTask(client, buzz::XmppEngine::HL_NONE),
16 | message_queue_(message_queue),
17 | keepalive_period_millis_(keepalive_period_millis),
18 | next_keepalive_time_(0),
19 | client_(client) {
20 | }
21 |
22 | bool KeepAliveTask::HandleStanza(const buzz::XmlElement* stanza) {
23 | //Shouldn't hit this.
24 | ASSERT(false);
25 | return false;
26 | }
27 |
28 | // This task runs indefinitely and remains in either the start or blocked
29 | // states.
30 | int KeepAliveTask::ProcessStart() {
31 | LOG(LS_INFO) << "Processing keepalive";
32 |
33 | uint32 now = talk_base::Time();
34 |
35 | // Send a keepalive if it's time.
36 | if (now >= next_keepalive_time_) {
37 | client_->SendRaw(" ");
38 |
39 | next_keepalive_time_ = now + keepalive_period_millis_;
40 |
41 | // Wake ourselves up when it's time to send another ping or when the ping
42 | // times out (so we can fire a signal).
43 | message_queue_->PostDelayed(keepalive_period_millis_, this);
44 | }
45 |
46 | return STATE_BLOCKED;
47 | }
48 |
49 | void KeepAliveTask::OnMessage(talk_base::Message* msg) {
50 | // Get the task manager to run this task so we can send a ping or signal or
51 | // process a ping response.
52 | Wake();
53 | }
54 |
55 | } // namespace tuenti
56 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/ia32/vpx_config.asm:
--------------------------------------------------------------------------------
1 | ARCH_ARM equ 0
2 | ARCH_MIPS equ 0
3 | ARCH_X86 equ 1
4 | ARCH_X86_64 equ 0
5 | ARCH_PPC32 equ 0
6 | ARCH_PPC64 equ 0
7 | HAVE_EDSP equ 0
8 | HAVE_MEDIA equ 0
9 | HAVE_NEON equ 0
10 | HAVE_MIPS32 equ 0
11 | HAVE_MMX equ 1
12 | HAVE_SSE equ 1
13 | HAVE_SSE2 equ 1
14 | HAVE_SSE3 equ 1
15 | HAVE_SSSE3 equ 1
16 | HAVE_SSE4_1 equ 1
17 | HAVE_ALTIVEC equ 0
18 | HAVE_VPX_PORTS equ 1
19 | HAVE_STDINT_H equ 1
20 | HAVE_ALT_TREE_LAYOUT equ 0
21 | HAVE_PTHREAD_H equ 1
22 | HAVE_SYS_MMAN_H equ 1
23 | HAVE_UNISTD_H equ 1
24 | CONFIG_EXTERNAL_BUILD equ 0
25 | CONFIG_INSTALL_DOCS equ 0
26 | CONFIG_INSTALL_BINS equ 0
27 | CONFIG_INSTALL_LIBS equ 0
28 | CONFIG_INSTALL_SRCS equ 0
29 | CONFIG_DEBUG equ 0
30 | CONFIG_GPROF equ 0
31 | CONFIG_GCOV equ 0
32 | CONFIG_RVCT equ 0
33 | CONFIG_GCC equ 1
34 | CONFIG_MSVS equ 0
35 | CONFIG_PIC equ 1
36 | CONFIG_BIG_ENDIAN equ 0
37 | CONFIG_CODEC_SRCS equ 0
38 | CONFIG_DEBUG_LIBS equ 0
39 | CONFIG_FAST_UNALIGNED equ 1
40 | CONFIG_MEM_MANAGER equ 0
41 | CONFIG_MEM_TRACKER equ 0
42 | CONFIG_MEM_CHECKS equ 0
43 | CONFIG_MD5 equ 1
44 | CONFIG_DEQUANT_TOKENS equ 0
45 | CONFIG_DC_RECON equ 0
46 | CONFIG_RUNTIME_CPU_DETECT equ 1
47 | CONFIG_POSTPROC equ 1
48 | CONFIG_MULTITHREAD equ 1
49 | CONFIG_INTERNAL_STATS equ 0
50 | CONFIG_VP8_ENCODER equ 1
51 | CONFIG_VP8_DECODER equ 1
52 | CONFIG_VP8 equ 1
53 | CONFIG_ENCODERS equ 1
54 | CONFIG_DECODERS equ 1
55 | CONFIG_STATIC_MSVCRT equ 0
56 | CONFIG_SPATIAL_RESAMPLING equ 1
57 | CONFIG_REALTIME_ONLY equ 1
58 | CONFIG_ONTHEFLY_BITPACKING equ 0
59 | CONFIG_ERROR_CONCEALMENT equ 1
60 | CONFIG_SHARED equ 0
61 | CONFIG_STATIC equ 1
62 | CONFIG_SMALL equ 0
63 | CONFIG_POSTPROC_VISUALIZER equ 0
64 | CONFIG_OS_SUPPORT equ 1
65 | CONFIG_UNIT_TESTS equ 0
66 | CONFIG_MULTI_RES_ENCODING equ 0
67 | CONFIG_TEMPORAL_DENOISING equ 1
68 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/x64/vpx_config.asm:
--------------------------------------------------------------------------------
1 | ARCH_ARM equ 0
2 | ARCH_MIPS equ 0
3 | ARCH_X86 equ 0
4 | ARCH_X86_64 equ 1
5 | ARCH_PPC32 equ 0
6 | ARCH_PPC64 equ 0
7 | HAVE_EDSP equ 0
8 | HAVE_MEDIA equ 0
9 | HAVE_NEON equ 0
10 | HAVE_MIPS32 equ 0
11 | HAVE_MMX equ 1
12 | HAVE_SSE equ 1
13 | HAVE_SSE2 equ 1
14 | HAVE_SSE3 equ 1
15 | HAVE_SSSE3 equ 1
16 | HAVE_SSE4_1 equ 1
17 | HAVE_ALTIVEC equ 0
18 | HAVE_VPX_PORTS equ 1
19 | HAVE_STDINT_H equ 1
20 | HAVE_ALT_TREE_LAYOUT equ 0
21 | HAVE_PTHREAD_H equ 1
22 | HAVE_SYS_MMAN_H equ 1
23 | HAVE_UNISTD_H equ 1
24 | CONFIG_EXTERNAL_BUILD equ 0
25 | CONFIG_INSTALL_DOCS equ 0
26 | CONFIG_INSTALL_BINS equ 0
27 | CONFIG_INSTALL_LIBS equ 0
28 | CONFIG_INSTALL_SRCS equ 0
29 | CONFIG_DEBUG equ 0
30 | CONFIG_GPROF equ 0
31 | CONFIG_GCOV equ 0
32 | CONFIG_RVCT equ 0
33 | CONFIG_GCC equ 1
34 | CONFIG_MSVS equ 0
35 | CONFIG_PIC equ 1
36 | CONFIG_BIG_ENDIAN equ 0
37 | CONFIG_CODEC_SRCS equ 0
38 | CONFIG_DEBUG_LIBS equ 0
39 | CONFIG_FAST_UNALIGNED equ 1
40 | CONFIG_MEM_MANAGER equ 0
41 | CONFIG_MEM_TRACKER equ 0
42 | CONFIG_MEM_CHECKS equ 0
43 | CONFIG_MD5 equ 1
44 | CONFIG_DEQUANT_TOKENS equ 0
45 | CONFIG_DC_RECON equ 0
46 | CONFIG_RUNTIME_CPU_DETECT equ 1
47 | CONFIG_POSTPROC equ 1
48 | CONFIG_MULTITHREAD equ 1
49 | CONFIG_INTERNAL_STATS equ 0
50 | CONFIG_VP8_ENCODER equ 1
51 | CONFIG_VP8_DECODER equ 1
52 | CONFIG_VP8 equ 1
53 | CONFIG_ENCODERS equ 1
54 | CONFIG_DECODERS equ 1
55 | CONFIG_STATIC_MSVCRT equ 0
56 | CONFIG_SPATIAL_RESAMPLING equ 1
57 | CONFIG_REALTIME_ONLY equ 1
58 | CONFIG_ONTHEFLY_BITPACKING equ 0
59 | CONFIG_ERROR_CONCEALMENT equ 1
60 | CONFIG_SHARED equ 0
61 | CONFIG_STATIC equ 1
62 | CONFIG_SMALL equ 0
63 | CONFIG_POSTPROC_VISUALIZER equ 0
64 | CONFIG_OS_SUPPORT equ 1
65 | CONFIG_UNIT_TESTS equ 0
66 | CONFIG_MULTI_RES_ENCODING equ 0
67 | CONFIG_TEMPORAL_DENOISING equ 1
68 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/mac/ia32/vpx_config.asm:
--------------------------------------------------------------------------------
1 | ARCH_ARM equ 0
2 | ARCH_MIPS equ 0
3 | ARCH_X86 equ 1
4 | ARCH_X86_64 equ 0
5 | ARCH_PPC32 equ 0
6 | ARCH_PPC64 equ 0
7 | HAVE_EDSP equ 0
8 | HAVE_MEDIA equ 0
9 | HAVE_NEON equ 0
10 | HAVE_MIPS32 equ 0
11 | HAVE_MMX equ 1
12 | HAVE_SSE equ 1
13 | HAVE_SSE2 equ 1
14 | HAVE_SSE3 equ 1
15 | HAVE_SSSE3 equ 1
16 | HAVE_SSE4_1 equ 1
17 | HAVE_ALTIVEC equ 0
18 | HAVE_VPX_PORTS equ 1
19 | HAVE_STDINT_H equ 1
20 | HAVE_ALT_TREE_LAYOUT equ 0
21 | HAVE_PTHREAD_H equ 1
22 | HAVE_SYS_MMAN_H equ 1
23 | HAVE_UNISTD_H equ 1
24 | CONFIG_EXTERNAL_BUILD equ 0
25 | CONFIG_INSTALL_DOCS equ 0
26 | CONFIG_INSTALL_BINS equ 0
27 | CONFIG_INSTALL_LIBS equ 0
28 | CONFIG_INSTALL_SRCS equ 0
29 | CONFIG_DEBUG equ 0
30 | CONFIG_GPROF equ 0
31 | CONFIG_GCOV equ 0
32 | CONFIG_RVCT equ 0
33 | CONFIG_GCC equ 1
34 | CONFIG_MSVS equ 0
35 | CONFIG_PIC equ 1
36 | CONFIG_BIG_ENDIAN equ 0
37 | CONFIG_CODEC_SRCS equ 0
38 | CONFIG_DEBUG_LIBS equ 0
39 | CONFIG_FAST_UNALIGNED equ 1
40 | CONFIG_MEM_MANAGER equ 0
41 | CONFIG_MEM_TRACKER equ 0
42 | CONFIG_MEM_CHECKS equ 0
43 | CONFIG_MD5 equ 1
44 | CONFIG_DEQUANT_TOKENS equ 0
45 | CONFIG_DC_RECON equ 0
46 | CONFIG_RUNTIME_CPU_DETECT equ 1
47 | CONFIG_POSTPROC equ 1
48 | CONFIG_MULTITHREAD equ 1
49 | CONFIG_INTERNAL_STATS equ 0
50 | CONFIG_VP8_ENCODER equ 1
51 | CONFIG_VP8_DECODER equ 1
52 | CONFIG_VP8 equ 1
53 | CONFIG_ENCODERS equ 1
54 | CONFIG_DECODERS equ 1
55 | CONFIG_STATIC_MSVCRT equ 0
56 | CONFIG_SPATIAL_RESAMPLING equ 1
57 | CONFIG_REALTIME_ONLY equ 1
58 | CONFIG_ONTHEFLY_BITPACKING equ 0
59 | CONFIG_ERROR_CONCEALMENT equ 1
60 | CONFIG_SHARED equ 0
61 | CONFIG_STATIC equ 1
62 | CONFIG_SMALL equ 0
63 | CONFIG_POSTPROC_VISUALIZER equ 0
64 | CONFIG_OS_SUPPORT equ 1
65 | CONFIG_UNIT_TESTS equ 0
66 | CONFIG_MULTI_RES_ENCODING equ 0
67 | CONFIG_TEMPORAL_DENOISING equ 1
68 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/mac/x64/vpx_config.asm:
--------------------------------------------------------------------------------
1 | ARCH_ARM equ 0
2 | ARCH_MIPS equ 0
3 | ARCH_X86 equ 0
4 | ARCH_X86_64 equ 1
5 | ARCH_PPC32 equ 0
6 | ARCH_PPC64 equ 0
7 | HAVE_EDSP equ 0
8 | HAVE_MEDIA equ 0
9 | HAVE_NEON equ 0
10 | HAVE_MIPS32 equ 0
11 | HAVE_MMX equ 1
12 | HAVE_SSE equ 1
13 | HAVE_SSE2 equ 1
14 | HAVE_SSE3 equ 1
15 | HAVE_SSSE3 equ 1
16 | HAVE_SSE4_1 equ 1
17 | HAVE_ALTIVEC equ 0
18 | HAVE_VPX_PORTS equ 1
19 | HAVE_STDINT_H equ 1
20 | HAVE_ALT_TREE_LAYOUT equ 0
21 | HAVE_PTHREAD_H equ 1
22 | HAVE_SYS_MMAN_H equ 1
23 | HAVE_UNISTD_H equ 1
24 | CONFIG_EXTERNAL_BUILD equ 0
25 | CONFIG_INSTALL_DOCS equ 0
26 | CONFIG_INSTALL_BINS equ 0
27 | CONFIG_INSTALL_LIBS equ 0
28 | CONFIG_INSTALL_SRCS equ 0
29 | CONFIG_DEBUG equ 0
30 | CONFIG_GPROF equ 0
31 | CONFIG_GCOV equ 0
32 | CONFIG_RVCT equ 0
33 | CONFIG_GCC equ 1
34 | CONFIG_MSVS equ 0
35 | CONFIG_PIC equ 1
36 | CONFIG_BIG_ENDIAN equ 0
37 | CONFIG_CODEC_SRCS equ 0
38 | CONFIG_DEBUG_LIBS equ 0
39 | CONFIG_FAST_UNALIGNED equ 1
40 | CONFIG_MEM_MANAGER equ 0
41 | CONFIG_MEM_TRACKER equ 0
42 | CONFIG_MEM_CHECKS equ 0
43 | CONFIG_MD5 equ 1
44 | CONFIG_DEQUANT_TOKENS equ 0
45 | CONFIG_DC_RECON equ 0
46 | CONFIG_RUNTIME_CPU_DETECT equ 1
47 | CONFIG_POSTPROC equ 1
48 | CONFIG_MULTITHREAD equ 1
49 | CONFIG_INTERNAL_STATS equ 0
50 | CONFIG_VP8_ENCODER equ 1
51 | CONFIG_VP8_DECODER equ 1
52 | CONFIG_VP8 equ 1
53 | CONFIG_ENCODERS equ 1
54 | CONFIG_DECODERS equ 1
55 | CONFIG_STATIC_MSVCRT equ 0
56 | CONFIG_SPATIAL_RESAMPLING equ 1
57 | CONFIG_REALTIME_ONLY equ 1
58 | CONFIG_ONTHEFLY_BITPACKING equ 0
59 | CONFIG_ERROR_CONCEALMENT equ 1
60 | CONFIG_SHARED equ 0
61 | CONFIG_STATIC equ 1
62 | CONFIG_SMALL equ 0
63 | CONFIG_POSTPROC_VISUALIZER equ 0
64 | CONFIG_OS_SUPPORT equ 1
65 | CONFIG_UNIT_TESTS equ 0
66 | CONFIG_MULTI_RES_ENCODING equ 0
67 | CONFIG_TEMPORAL_DENOISING equ 1
68 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/ia32/vpx_config.asm:
--------------------------------------------------------------------------------
1 | ARCH_ARM equ 0
2 | ARCH_MIPS equ 0
3 | ARCH_X86 equ 1
4 | ARCH_X86_64 equ 0
5 | ARCH_PPC32 equ 0
6 | ARCH_PPC64 equ 0
7 | HAVE_EDSP equ 0
8 | HAVE_MEDIA equ 0
9 | HAVE_NEON equ 0
10 | HAVE_MIPS32 equ 0
11 | HAVE_MMX equ 1
12 | HAVE_SSE equ 1
13 | HAVE_SSE2 equ 1
14 | HAVE_SSE3 equ 1
15 | HAVE_SSSE3 equ 1
16 | HAVE_SSE4_1 equ 1
17 | HAVE_ALTIVEC equ 0
18 | HAVE_VPX_PORTS equ 1
19 | HAVE_STDINT_H equ 0
20 | HAVE_ALT_TREE_LAYOUT equ 0
21 | HAVE_PTHREAD_H equ 0
22 | HAVE_SYS_MMAN_H equ 0
23 | HAVE_UNISTD_H equ 0
24 | CONFIG_EXTERNAL_BUILD equ 1
25 | CONFIG_INSTALL_DOCS equ 0
26 | CONFIG_INSTALL_BINS equ 0
27 | CONFIG_INSTALL_LIBS equ 0
28 | CONFIG_INSTALL_SRCS equ 0
29 | CONFIG_DEBUG equ 0
30 | CONFIG_GPROF equ 0
31 | CONFIG_GCOV equ 0
32 | CONFIG_RVCT equ 0
33 | CONFIG_GCC equ 0
34 | CONFIG_MSVS equ 1
35 | CONFIG_PIC equ 1
36 | CONFIG_BIG_ENDIAN equ 0
37 | CONFIG_CODEC_SRCS equ 0
38 | CONFIG_DEBUG_LIBS equ 0
39 | CONFIG_FAST_UNALIGNED equ 1
40 | CONFIG_MEM_MANAGER equ 0
41 | CONFIG_MEM_TRACKER equ 0
42 | CONFIG_MEM_CHECKS equ 0
43 | CONFIG_MD5 equ 1
44 | CONFIG_DEQUANT_TOKENS equ 0
45 | CONFIG_DC_RECON equ 0
46 | CONFIG_RUNTIME_CPU_DETECT equ 1
47 | CONFIG_POSTPROC equ 1
48 | CONFIG_MULTITHREAD equ 1
49 | CONFIG_INTERNAL_STATS equ 0
50 | CONFIG_VP8_ENCODER equ 1
51 | CONFIG_VP8_DECODER equ 1
52 | CONFIG_VP8 equ 1
53 | CONFIG_ENCODERS equ 1
54 | CONFIG_DECODERS equ 1
55 | CONFIG_STATIC_MSVCRT equ 1
56 | CONFIG_SPATIAL_RESAMPLING equ 1
57 | CONFIG_REALTIME_ONLY equ 1
58 | CONFIG_ONTHEFLY_BITPACKING equ 0
59 | CONFIG_ERROR_CONCEALMENT equ 1
60 | CONFIG_SHARED equ 0
61 | CONFIG_STATIC equ 1
62 | CONFIG_SMALL equ 0
63 | CONFIG_POSTPROC_VISUALIZER equ 0
64 | CONFIG_OS_SUPPORT equ 1
65 | CONFIG_UNIT_TESTS equ 0
66 | CONFIG_MULTI_RES_ENCODING equ 0
67 | CONFIG_TEMPORAL_DENOISING equ 1
68 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/x64/vpx_config.asm:
--------------------------------------------------------------------------------
1 | ARCH_ARM equ 0
2 | ARCH_MIPS equ 0
3 | ARCH_X86 equ 0
4 | ARCH_X86_64 equ 1
5 | ARCH_PPC32 equ 0
6 | ARCH_PPC64 equ 0
7 | HAVE_EDSP equ 0
8 | HAVE_MEDIA equ 0
9 | HAVE_NEON equ 0
10 | HAVE_MIPS32 equ 0
11 | HAVE_MMX equ 1
12 | HAVE_SSE equ 1
13 | HAVE_SSE2 equ 1
14 | HAVE_SSE3 equ 1
15 | HAVE_SSSE3 equ 1
16 | HAVE_SSE4_1 equ 1
17 | HAVE_ALTIVEC equ 0
18 | HAVE_VPX_PORTS equ 1
19 | HAVE_STDINT_H equ 0
20 | HAVE_ALT_TREE_LAYOUT equ 0
21 | HAVE_PTHREAD_H equ 0
22 | HAVE_SYS_MMAN_H equ 0
23 | HAVE_UNISTD_H equ 0
24 | CONFIG_EXTERNAL_BUILD equ 1
25 | CONFIG_INSTALL_DOCS equ 0
26 | CONFIG_INSTALL_BINS equ 0
27 | CONFIG_INSTALL_LIBS equ 0
28 | CONFIG_INSTALL_SRCS equ 0
29 | CONFIG_DEBUG equ 0
30 | CONFIG_GPROF equ 0
31 | CONFIG_GCOV equ 0
32 | CONFIG_RVCT equ 0
33 | CONFIG_GCC equ 0
34 | CONFIG_MSVS equ 1
35 | CONFIG_PIC equ 1
36 | CONFIG_BIG_ENDIAN equ 0
37 | CONFIG_CODEC_SRCS equ 0
38 | CONFIG_DEBUG_LIBS equ 0
39 | CONFIG_FAST_UNALIGNED equ 1
40 | CONFIG_MEM_MANAGER equ 0
41 | CONFIG_MEM_TRACKER equ 0
42 | CONFIG_MEM_CHECKS equ 0
43 | CONFIG_MD5 equ 1
44 | CONFIG_DEQUANT_TOKENS equ 0
45 | CONFIG_DC_RECON equ 0
46 | CONFIG_RUNTIME_CPU_DETECT equ 1
47 | CONFIG_POSTPROC equ 1
48 | CONFIG_MULTITHREAD equ 1
49 | CONFIG_INTERNAL_STATS equ 0
50 | CONFIG_VP8_ENCODER equ 1
51 | CONFIG_VP8_DECODER equ 1
52 | CONFIG_VP8 equ 1
53 | CONFIG_ENCODERS equ 1
54 | CONFIG_DECODERS equ 1
55 | CONFIG_STATIC_MSVCRT equ 1
56 | CONFIG_SPATIAL_RESAMPLING equ 1
57 | CONFIG_REALTIME_ONLY equ 1
58 | CONFIG_ONTHEFLY_BITPACKING equ 0
59 | CONFIG_ERROR_CONCEALMENT equ 1
60 | CONFIG_SHARED equ 0
61 | CONFIG_STATIC equ 1
62 | CONFIG_SMALL equ 0
63 | CONFIG_POSTPROC_VISUALIZER equ 0
64 | CONFIG_OS_SUPPORT equ 1
65 | CONFIG_UNIT_TESTS equ 0
66 | CONFIG_MULTI_RES_ENCODING equ 0
67 | CONFIG_TEMPORAL_DENOISING equ 1
68 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/menu/audio_mode_menu.xml:
--------------------------------------------------------------------------------
1 |
15 |
16 |
17 |
41 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/android/vpx_config.h:
--------------------------------------------------------------------------------
1 | /* This file automatically generated by configure. Do not edit! */
2 | #define RESTRICT
3 | #define ARCH_ARM 0
4 | #define ARCH_MIPS 0
5 | #define ARCH_X86 0
6 | #define ARCH_X86_64 0
7 | #define ARCH_PPC32 0
8 | #define ARCH_PPC64 0
9 | #define HAVE_ARMV5TE 0
10 | #define HAVE_ARMV6 0
11 | #define HAVE_ARMV7 0
12 | #define HAVE_IWMMXT 0
13 | #define HAVE_IWMMXT2 0
14 | #define HAVE_MIPS32 0
15 | #define HAVE_MMX 0
16 | #define HAVE_SSE 0
17 | #define HAVE_SSE2 0
18 | #define HAVE_SSE3 0
19 | #define HAVE_SSSE3 0
20 | #define HAVE_SSE4_1 0
21 | #define HAVE_ALTIVEC 0
22 | #define HAVE_VPX_PORTS 1
23 | #define HAVE_STDINT_H 1
24 | #define HAVE_ALT_TREE_LAYOUT 0
25 | #define HAVE_PTHREAD_H 1
26 | #define HAVE_SYS_MMAN_H 1
27 | #define CONFIG_EXTERNAL_BUILD 0
28 | #define CONFIG_INSTALL_DOCS 0
29 | #define CONFIG_INSTALL_BINS 1
30 | #define CONFIG_INSTALL_LIBS 1
31 | #define CONFIG_INSTALL_SRCS 0
32 | #define CONFIG_DEBUG 0
33 | #define CONFIG_GPROF 0
34 | #define CONFIG_GCOV 0
35 | #define CONFIG_RVCT 0
36 | #define CONFIG_GCC 1
37 | #define CONFIG_MSVS 0
38 | #define CONFIG_PIC 0
39 | #define CONFIG_BIG_ENDIAN 0
40 | #define CONFIG_CODEC_SRCS 0
41 | #define CONFIG_DEBUG_LIBS 0
42 | #define CONFIG_FAST_UNALIGNED 1
43 | #define CONFIG_MEM_MANAGER 0
44 | #define CONFIG_MEM_TRACKER 0
45 | #define CONFIG_MEM_CHECKS 0
46 | #define CONFIG_MD5 1
47 | #define CONFIG_DEQUANT_TOKENS 0
48 | #define CONFIG_DC_RECON 0
49 | #define CONFIG_RUNTIME_CPU_DETECT 0
50 | #define CONFIG_POSTPROC 0
51 | #define CONFIG_MULTITHREAD 1
52 | #define CONFIG_PSNR 0
53 | #define CONFIG_VP8_ENCODER 1
54 | #define CONFIG_VP8_DECODER 1
55 | #define CONFIG_VP8 1
56 | #define CONFIG_ENCODERS 1
57 | #define CONFIG_DECODERS 1
58 | #define CONFIG_STATIC_MSVCRT 0
59 | #define CONFIG_SPATIAL_RESAMPLING 1
60 | #define CONFIG_REALTIME_ONLY 0
61 | #define CONFIG_SHARED 0
62 | #define CONFIG_SMALL 0
63 | #define CONFIG_POSTPROC_VISUALIZER 0
64 | #define CONFIG_OS_SUPPORT 1
65 |
--------------------------------------------------------------------------------
/client/receivemessagetask.cc:
--------------------------------------------------------------------------------
1 | #include "assert.h"
2 | #include "client/receivemessagetask.h"
3 | #include "talk/base/scoped_ptr.h"
4 | #include "talk/xmpp/constants.h"
5 | #include "talk/xmpp/jid.h"
6 | #include "talk/xmllite/qname.h"
7 |
8 | namespace tuenti {
9 |
10 | ReceiveMessageTask::ReceiveMessageTask(buzz::XmppTaskParentInterface* parent, buzz::XmppEngine::HandlerLevel level)
11 | : buzz::XmppTask(parent, level) {
12 | //
13 | }
14 |
15 | // Runs forever.
16 | bool ReceiveMessageTask::HandleStanza(const buzz::XmlElement* stanza) {
17 | if (stanza->Name() != buzz::QN_MESSAGE && !stanza->HasAttr(buzz::QN_FROM)){
18 | return false;
19 | }
20 |
21 | if (stanza->Attr(buzz::QN_TYPE) != "chat"
22 | // TODO: We may want to handle group chat messages here.
23 | // Have to see if it's worth it.
24 | /*&& stanza->Attr(buzz::QN_TYPE) != "groupchat"*/){
25 | return false;
26 | }
27 |
28 | std::string body = "";
29 | if (stanza->FirstNamed(buzz::QN_BODY) != NULL) {
30 | body = stanza->FirstNamed(buzz::QN_BODY)->BodyText();
31 | }
32 |
33 | tuenti::XmppMessageState state = XMPP_CHAT_NONE;
34 | if (stanza->FirstWithNamespace(buzz::NS_CHATSTATE) != NULL){
35 | const buzz::QName& qname = stanza->FirstWithNamespace(buzz::NS_CHATSTATE)->Name();
36 | if (qname == buzz::QN_CS_ACTIVE){
37 | state = XMPP_CHAT_ACTIVE;
38 | } else if (qname == buzz::QN_CS_COMPOSING){
39 | state = XMPP_CHAT_COMPOSING;
40 | } else if (qname == buzz::QN_CS_PAUSED){
41 | state = XMPP_CHAT_PAUSED;
42 | } else if (qname == buzz::QN_CS_INACTIVE){
43 | state = XMPP_CHAT_INACTIVE;
44 | } else if (qname == buzz::QN_CS_GONE){
45 | state = XMPP_CHAT_GONE;
46 | }
47 | }
48 |
49 | const XmppMessage msg = XmppMessage(stanza->Attr(buzz::QN_FROM), state, body);
50 | SignalIncomingXmppMessage(msg);
51 | return true;
52 | }
53 |
54 | int ReceiveMessageTask::ProcessStart() {
55 | return STATE_BLOCKED;
56 | }
57 |
58 | } // namespace tuenti
59 |
--------------------------------------------------------------------------------
/android/voice-client-native/jni/android_makefiles/libsrtp.mk:
--------------------------------------------------------------------------------
1 | LOCAL_PATH:= $(MY_THIRD_PARTY_PATH)/libsrtp
2 | include $(CLEAR_VARS)
3 |
4 | LOCAL_SRC_FILES := \
5 | source/srtp/srtp/ekt.c \
6 | source/srtp/srtp/srtp.c \
7 | source/srtp/crypto/cipher/aes.c \
8 | source/srtp/crypto/cipher/aes_cbc.c \
9 | source/srtp/crypto/cipher/aes_icm.c \
10 | source/srtp/crypto/cipher/cipher.c \
11 | source/srtp/crypto/cipher/null_cipher.c \
12 | source/srtp/crypto/hash/auth.c \
13 | source/srtp/crypto/hash/hmac.c \
14 | source/srtp/crypto/hash/null_auth.c \
15 | source/srtp/crypto/hash/sha1.c \
16 | source/srtp/crypto/kernel/alloc.c \
17 | source/srtp/crypto/kernel/crypto_kernel.c \
18 | source/srtp/crypto/kernel/err.c \
19 | source/srtp/crypto/kernel/key.c \
20 | source/srtp/crypto/math/datatypes.c \
21 | source/srtp/crypto/math/gf2_8.c \
22 | source/srtp/crypto/math/stat.c \
23 | source/srtp/crypto/replay/rdb.c \
24 | source/srtp/crypto/replay/rdbx.c \
25 | source/srtp/crypto/replay/ut_sim.c \
26 | source/srtp/crypto/rng/ctr_prng.c \
27 | source/srtp/crypto/rng/prng.c \
28 | source/srtp/crypto/rng/rand_source.c
29 |
30 | LOCAL_CFLAGS := \
31 | -DHAVE_STDLIB_H \
32 | -DHAVE_STRING_H \
33 | -DSIZEOF_UNSIGNED_LONG=4 \
34 | -DSIZEOF_UNSIGNED_LONG_LONG=8 \
35 | -DHAVE_STDINT_H \
36 | -DHAVE_INTTYPES_H \
37 | -DHAVE_NETINET_IN_H \
38 | -DHAVE_UINT64_T \
39 | -DHAVE_UINT32_T \
40 | -DHAVE_UINT16_T \
41 | -DHAVE_UINT8_T \
42 | -DHAVE_UINT_T
43 |
44 |
45 | # CPU_RISC doesn't work properly on android/arm
46 | # self test for aes failed. CPU_RISC is used for optimization only,
47 | # and CPU_CISC should just work just fine, it has been tested on android/arm with srtp
48 | # test applications and libjingle.
49 | # More info here http://src.chromium.org/svn/trunk/deps/third_party/libsrtp/libsrtp.gyp
50 | LOCAL_CFLAGS += -DCPU_CISC
51 |
52 | LOCAL_C_INCLUDES += \
53 | $(LOCAL_PATH)/source/config \
54 | $(LOCAL_PATH)/source/srtp/include \
55 | $(LOCAL_PATH)/source/srtp/crypto/include \
56 |
57 | LOCAL_MODULE:= libsrtp_static
58 | include $(BUILD_STATIC_LIBRARY)
59 |
--------------------------------------------------------------------------------
/android/voice-client-core/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 4.0.0
6 |
7 |
8 | com.tuenti.voice
9 | voice-parent
10 | 1.0-SNAPSHOT
11 | ../pom.xml
12 |
13 | voice-core
14 | 1.0-SNAPSHOT
15 | jar
16 | Tuenti Voice Client Core
17 |
18 |
19 |
20 | com.google.android
21 | android
22 | provided
23 |
24 |
25 |
26 |
27 |
28 |
29 | org.apache.maven.plugins
30 | maven-enforcer-plugin
31 |
32 |
33 | enforce-maven-version
34 |
35 | enforce
36 |
37 |
38 |
39 |
40 | [3.0.3,)
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 | maven-compiler-plugin
49 |
50 |
51 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/ios/VoiceClientExample/VoiceClientExample-Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleDisplayName
8 | ${PRODUCT_NAME}
9 | CFBundleExecutable
10 | ${EXECUTABLE_NAME}
11 | CFBundleIdentifier
12 | com.tuenti.${PRODUCT_NAME:rfc1034identifier}
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundleName
16 | ${PRODUCT_NAME}
17 | CFBundlePackageType
18 | APPL
19 | CFBundleShortVersionString
20 | 1.0
21 | CFBundleSignature
22 | ????
23 | CFBundleVersion
24 | 1.0
25 | LSRequiresIPhoneOS
26 |
27 | UIMainStoryboardFile
28 | MainStoryboard_iPhone
29 | UIMainStoryboardFile~ipad
30 | MainStoryboard_iPad
31 | UIRequiredDeviceCapabilities
32 |
33 | armv7
34 |
35 | UIStatusBarTintParameters
36 |
37 | UINavigationBar
38 |
39 | Style
40 | UIBarStyleDefault
41 | Translucent
42 |
43 |
44 |
45 | UISupportedInterfaceOrientations
46 |
47 | UIInterfaceOrientationPortrait
48 | UIInterfaceOrientationLandscapeLeft
49 | UIInterfaceOrientationLandscapeRight
50 |
51 | UISupportedInterfaceOrientations~ipad
52 |
53 | UIInterfaceOrientationPortrait
54 | UIInterfaceOrientationPortraitUpsideDown
55 | UIInterfaceOrientationLandscapeLeft
56 | UIInterfaceOrientationLandscapeRight
57 |
58 |
59 |
60 |
--------------------------------------------------------------------------------
/client/threadpriorityhandler.h:
--------------------------------------------------------------------------------
1 | /*
2 | * webrtc-jingle
3 | * Copyright 2012 Tuenti Technologies
4 | *
5 | * Redistribution and use in source and binary forms, with or without
6 | * modification, are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
19 | * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
21 | * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
22 | * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
23 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
24 | * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
25 | * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 | */
27 | #ifndef CLIENT_THREAD_PRIORITY_HANDLER_H_
28 | #define CLIENT_THREAD_PRIORITY_HANDLER_H_
29 |
30 | #include
31 | #include
32 |
33 | #ifdef ANDROID
34 | #include
35 | #endif
36 |
37 | namespace tuenti {
38 |
39 | class ThreadPriorityHandler {
40 | public:
41 | #ifdef ANDROID
42 | static void Init(JavaVM* jvm);
43 | #endif
44 | static void SetPriority(int tid, int priority);
45 | #ifdef ANDROID
46 | static JavaVM* jvm_;
47 | #endif
48 | };
49 | };
50 | #endif // CLIENT_THREAD_PRIORITY_HANDLER_H_
51 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/layout/account_item.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
16 |
17 |
24 |
25 |
26 |
27 |
33 |
34 |
42 |
43 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/android/voice-client-example/res/layout/buddy_item.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
16 |
17 |
24 |
25 |
26 |
27 |
33 |
34 |
42 |
43 |
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/client/client_defines.h:
--------------------------------------------------------------------------------
1 | #ifndef _CLIENT_CLIENT_DEFINES_H_
2 | #define _CLIENT_CLIENT_DEFINES_H_
3 |
4 | #ifdef __APPLE__
5 | //TODO: Why doesn't srtp(openssl incorrectly compiled issue) work on iOS(arm).
6 | #include "TargetConditionals.h"
7 | #define ENABLE_SRTP TARGET_IPHONE_SIMULATOR
8 | #else
9 | #define ENABLE_SRTP 1
10 | #endif
11 |
12 | #if LOGGING
13 | #define XMPP_LOG_STANZAS 1
14 | #endif
15 |
16 | #ifdef IOS_XMPP_FRAMEWORK
17 | #define XMPP_COMPATIBILITY 1
18 | #define XMPP_WHITESPACE_KEEPALIVE_ENABLED 0
19 | #define XMPP_CHAT_ENABLED 0
20 | #define XMPP_PING_ENABLED 0
21 | #define XMPP_ENABLE_ROSTER 0
22 | #define XMPP_DISABLE_INCOMING_PRESENCE 0
23 | #define ADD_RANDOM_RESOURCE_TO_JID 0
24 |
25 | #elif TUENTI_CUSTOM_BUILD
26 | #define XMPP_COMPATIBILITY 1
27 | #define XMPP_CHAT_ENABLED 0
28 | #define XMPP_WHITESPACE_KEEPALIVE_ENABLED 0
29 | #define XMPP_PING_ENABLED 1
30 | #define XMPP_ENABLE_ROSTER 0
31 | #define XMPP_DISABLE_INCOMING_PRESENCE 1
32 | #define ADD_RANDOM_RESOURCE_TO_JID 1
33 |
34 | #else
35 | #define XMPP_CHAT_ENABLED 1
36 | #define XMPP_WHITESPACE_KEEPALIVE_ENABLED 1
37 | #define XMPP_PING_ENABLED 1
38 | #define XMPP_ENABLE_ROSTER 1
39 | #define XMPP_DISABLE_INCOMING_PRESENCE 0
40 | #define ADD_RANDOM_RESOURCE_TO_JID 0
41 | #endif
42 |
43 | #include
44 | #include
45 |
46 | namespace tuenti{
47 |
48 | #ifdef IOS_XMPP_FRAMEWORK
49 | struct StunConfig {
50 | std::string stun;
51 | std::string turn;
52 | std::string turn_username;
53 | std::string turn_password;
54 | std::string ToString() {
55 | std::stringstream stream;
56 | stream << "[stun=(" << stun << "),";
57 | stream << "turn=(" << turn << ")]";
58 | return stream.str();
59 | }
60 | };
61 | #endif
62 |
63 | enum XmppTimings {
64 | LoginTimeout = 10000, // 10 Seconds
65 | PingTimeout = 10000, // 10 Seconds
66 | PingInterval = 360000, // 6 minutes
67 | XmppKeepAliveInterval = 360000, // 6 minutes
68 | };
69 |
70 | const std::string STR_DENY = "deny";
71 | const std::string STR_ALLOW = "allow";
72 |
73 | } // namespace tuenti
74 | #endif //_CLIENT_CLIENT_DEFINES_H_
75 |
--------------------------------------------------------------------------------
/client/logging.h:
--------------------------------------------------------------------------------
1 | /*
2 | * webrtc-jingle
3 | * Copyright 2012 Tuenti Technologies
4 | *
5 | * Redistribution and use in source and binary forms, with or without
6 | * modification, are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
19 | * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
21 | * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
22 | * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
23 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
24 | * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
25 | * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 | */
27 | #ifndef _CLIENT_LOGGING_H_
28 | #define _CLIENT_LOGGING_H_
29 |
30 | #if LOGGING && ANDROID
31 | #include
32 | #define LOG_TAG "c-libjingle-webrtc" // As in WEBRTC Native...
33 | #define LOGI(...) __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__)
34 | #define LOGE(...) __android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__)
35 | #elif LOGGING && IOS
36 | #define LOGI(...) printf(__VA_ARGS__);printf("\n")
37 | #define LOGE(...) printf(__VA_ARGS__);printf("\n")
38 | #else
39 | #define LOGI(...) (void)0
40 | #define LOGE(...) (void)0
41 | #endif
42 |
43 | #endif // _CLIENT_LOGGING_H_
44 |
--------------------------------------------------------------------------------
/tools/test/native_test_apk.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Building native test runner ChromeNativeTests_replaceme.apk
7 |
8 |
9 |
10 |
11 |
12 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
29 |
30 |
48 |
49 |
50 |
51 |
52 |
--------------------------------------------------------------------------------
/client/sendmessagetask.h:
--------------------------------------------------------------------------------
1 | /*
2 | * libjingle
3 | * Copyright 2011, Google Inc.
4 | *
5 | * Redistribution and use in source and binary forms, with or without
6 | * modification, are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
19 | * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
21 | * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
22 | * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
23 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
24 | * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
25 | * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 | */
27 |
28 | #ifndef CLIENT_SENDMESSAGETASK_H_
29 | #define CLIENT_SENDMESSAGETASK_H_
30 |
31 | #include "talk/xmpp/xmpptask.h"
32 | #include "client/xmppmessage.h"
33 |
34 | namespace tuenti {
35 |
36 | class SendMessageTask : public buzz::XmppTask {
37 | public:
38 | SendMessageTask(buzz::XmppTaskParentInterface* parent);
39 | void Send(const tuenti::XmppMessage &msg);
40 |
41 | virtual bool HandleStanza(const buzz::XmlElement* stanza);
42 | virtual int ProcessStart();
43 |
44 | sigslot::signal0<> SignalError;
45 |
46 | private:
47 | XmppMessage pending_xmpp_msg_;
48 | };
49 |
50 | } // namespace tuenti
51 |
52 | #endif // CLIENT_SENDMESSAGETASK_H_
53 |
54 |
--------------------------------------------------------------------------------
/client/Android.mk:
--------------------------------------------------------------------------------
1 | LOCAL_PATH := $(call my-dir)
2 | include $(CLEAR_VARS)
3 |
4 | LOCAL_ARM_MODE := arm
5 | LOCAL_CPP_EXTENSION := .cc
6 | LOCAL_MODULE := webrtcjingle
7 | LOCAL_MODULE_TAGS := optional
8 | LOCAL_CPP_EXTENSION := .cc
9 | LOCAL_SRC_FILES := \
10 | receivemessagetask.cc \
11 | sendmessagetask.cc \
12 | keepalivetask.cc \
13 | presenceouttask.cc \
14 | rosterhandler.cc \
15 | clientsignalingthread.cc \
16 | voiceclient.cc \
17 | txmppauth.cc \
18 | txmpppump.cc \
19 | txmppsocket.cc \
20 | xmpplog.cc
21 |
22 | LOCAL_CFLAGS := \
23 | $(LIBJINGLE_CPPFLAGS) \
24 | -DJSONCPP_RELATIVE_PATH \
25 | -DWEBRTC_TARGET_PC \
26 | -DWEBRTC_ANDROID \
27 | -DWEBRTC_LINUX
28 |
29 | LOCAL_C_INCLUDES := \
30 | $(MY_ROOT_PATH) \
31 | $(MY_CLIENT_PATH)/../ \
32 | $(MY_WEBRTC_PATH) \
33 | $(MY_THIRD_PARTY_PATH) \
34 | $(MY_THIRD_PARTY_PATH)/libjingle \
35 | $(MY_THIRD_PARTY_PATH)/webrtc/system_wrappers/interface \
36 | $(MY_THIRD_PARTY_PATH)/webrtc/voice_engine/include \
37 | $(MY_THIRD_PARTY_PATH)/webrtc/modules/interface \
38 | $(MY_THIRD_PARTY_PATH)/webrtc/modules/utility/interface \
39 | $(MY_THIRD_PARTY_PATH)/webrtc/modules/audio_device/main/interface \
40 | $(MY_THIRD_PARTY_PATH)/webrtc/modules/audio_processing/include \
41 | $(MY_THIRD_PARTY_PATH)/webrtc/voice_engine
42 |
43 | LOCAL_LDLIBS := -lgcc -llog
44 | LOCAL_PRELINK_MODULE := false
45 | include $(BUILD_STATIC_LIBRARY)
46 |
47 | ifeq ($(ENABLE_UNITTEST), 1)
48 | include $(CLEAR_VARS)
49 | LOCAL_ARM_MODE := arm
50 | LOCAL_MODULE := webrtcjingle_unittest
51 |
52 | LOCAL_CPP_EXTENSION:= .cc
53 |
54 | LOCAL_SRC_FILES := \
55 | unit/webrtcjingletest.cc \
56 | unit/sendmessagetask_unittest.cc \
57 | unit/receivemessagetask_unittest.cc \
58 | unit/clientsignalingthread_unittest.cc
59 |
60 | LOCAL_C_INCLUDES := \
61 | $(MY_LIBJINGLE_C_INCLUDES) \
62 | $(GTEST_C_INCLUDES) \
63 | $(MY_CLIENT_PATH)/../ \
64 |
65 | LOCAL_WHOLE_STATIC_LIBRARIES := \
66 | libjingle_unittest_main \
67 | libwebrtcjingle \
68 | libjingle \
69 | libwebrtc_voice \
70 | libexpat_static \
71 | libsrtp_static \
72 | libssl_static
73 |
74 | LOCAL_CFLAGS += $(MY_UNITTEST_CFLAGS)
75 | LOCAL_LDLIBS := -llog -lOpenSLES
76 | include $(BUILD_SHARED_LIBRARY)
77 | endif #ENABLE_UNITTEST 1
78 |
--------------------------------------------------------------------------------
/third_party/google-gflags/google-gflags.gyp:
--------------------------------------------------------------------------------
1 | # Copyright 2011 Google Inc.
2 | #
3 | # Licensed under the Apache License, Version 2.0 (the "License");
4 | # you may not use this file except in compliance with the License.
5 | # You may obtain a copy of the License at
6 | #
7 | # http://www.apache.org/licenses/LICENSE-2.0
8 | #
9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 |
15 | {
16 | 'variables': {
17 | 'gflags_root': '<(DEPTH)/third_party/google-gflags',
18 | 'gflags_gen_arch_root': '<(gflags_root)/gen/arch/<(OS)/<(target_arch)',
19 | },
20 | 'targets': [
21 | {
22 | 'target_name': 'google-gflags',
23 | 'type': '<(library)',
24 | 'include_dirs': [
25 | '<(gflags_gen_arch_root)/include/private', # For config.h
26 | '<(gflags_gen_arch_root)/include', # For configured files.
27 | '<(gflags_root)/src', # For everything else.
28 | ],
29 | 'defines': [
30 | # These macros exist so flags and symbols are properly
31 | # exported when building DLLs. Since we don't build DLLs, we
32 | # need to disable them.
33 | 'GFLAGS_DLL_DECL=',
34 | 'GFLAGS_DLL_DECLARE_FLAG=',
35 | 'GFLAGS_DLL_DEFINE_FLAG=',
36 | ],
37 | 'direct_dependent_settings': {
38 | 'include_dirs': [
39 | '<(gflags_gen_arch_root)/include', # For configured files.
40 | '<(gflags_root)/src', # For everything else.
41 | ],
42 | 'defines': [
43 | 'GFLAGS_DLL_DECL=',
44 | 'GFLAGS_DLL_DECLARE_FLAG=',
45 | 'GFLAGS_DLL_DEFINE_FLAG=',
46 | ],
47 | },
48 | 'sources': [
49 | 'src/gflags.cc',
50 | 'src/gflags_completions.cc',
51 | 'src/gflags_reporting.cc',
52 | ],
53 | 'conditions': [
54 | ['OS == "win"', {
55 | 'sources': [
56 | 'src/windows/port.cc',
57 | ],
58 | }],
59 | ],
60 | },
61 | ],
62 | }
63 |
--------------------------------------------------------------------------------
/client/receivemessagetask.h:
--------------------------------------------------------------------------------
1 | /*
2 | * libjingle
3 | * Copyright 2011, Google Inc.
4 | *
5 | * Redistribution and use in source and binary forms, with or without
6 | * modification, are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
19 | * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
21 | * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
22 | * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
23 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
24 | * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
25 | * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 | */
27 |
28 | #ifndef CLIENT_RECEIVEMESSAGETASK_H_
29 | #define CLIENT_RECEIVEMESSAGETASK_H_
30 |
31 | #include "talk/xmpp/xmpptask.h"
32 | #include "client/xmppmessage.h"
33 |
34 | namespace tuenti {
35 |
36 | class ReceiveMessageTask : public buzz::XmppTask {
37 | public:
38 | ReceiveMessageTask(buzz::XmppTaskParentInterface* parent, buzz::XmppEngine::HandlerLevel level);
39 |
40 | virtual bool HandleStanza(const buzz::XmlElement* stanza);
41 | virtual int ProcessStart();
42 |
43 | sigslot::signal0<> SignalError;
44 | sigslot::signal1 SignalIncomingXmppMessage;
45 | };
46 |
47 | } // namespace tuenti
48 |
49 | #endif // CLIENT_RECEIVEMESSAGETASK_H_
50 |
51 |
--------------------------------------------------------------------------------
/client/presenceouttask.h:
--------------------------------------------------------------------------------
1 | /*
2 | * libjingle
3 | * Copyright 2004--2005, Google Inc.
4 | *
5 | * Redistribution and use in source and binary forms, with or without
6 | * modification, are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
19 | * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
21 | * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
22 | * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
23 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
24 | * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
25 | * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 | */
27 |
28 | #ifndef _PRESENCEOUTTASK_H_
29 | #define _PRESENCEOUTTASK_H_
30 |
31 | #include "talk/xmpp/xmppengine.h"
32 | #include "talk/xmpp/xmpptask.h"
33 |
34 | #include "client/status.h"
35 |
36 | namespace buzz {
37 |
38 | class PresenceOutTask: public XmppTask {
39 | public:
40 | explicit PresenceOutTask(XmppTaskParentInterface* parent) :
41 | XmppTask(parent) {
42 | }
43 | virtual ~PresenceOutTask() {
44 | }
45 |
46 | XmppReturnStatus Send(const Status & s);
47 | XmppReturnStatus SendDirected(const Jid & j, const Status & s);
48 | XmppReturnStatus SendProbe(const Jid& jid);
49 |
50 | virtual int ProcessStart();
51 | private:
52 | XmlElement * TranslateStatus(const Status & s);
53 | };
54 | }
55 |
56 | #endif
57 |
--------------------------------------------------------------------------------
/client/sendmessagetask.cc:
--------------------------------------------------------------------------------
1 |
2 | #include "assert.h"
3 | #include "client/sendmessagetask.h"
4 | #include "talk/base/scoped_ptr.h"
5 | #include "talk/xmpp/constants.h"
6 | #include "talk/xmpp/jid.h"
7 |
8 | namespace tuenti {
9 |
10 | SendMessageTask::SendMessageTask(buzz::XmppTaskParentInterface* parent)
11 | : buzz::XmppTask(parent, buzz::XmppEngine::HL_SINGLE){
12 | //
13 | }
14 |
15 | void SendMessageTask::Send(const tuenti::XmppMessage &msg) {
16 | pending_xmpp_msg_ = msg;
17 | }
18 |
19 | bool SendMessageTask::HandleStanza(const buzz::XmlElement* stanza) {
20 | //Should never hit this function, because sending is fire and forget.
21 | assert(false);
22 | return false;
23 | }
24 |
25 | //Sends the pending message and exits
26 | int SendMessageTask::ProcessStart() {
27 | buzz::XmlElement* stanza = new buzz::XmlElement(buzz::QN_MESSAGE);
28 | stanza->AddAttr(buzz::QN_TO, pending_xmpp_msg_.jid.BareJid().Str());
29 |
30 | buzz::XmlElement* state = NULL;
31 | switch (pending_xmpp_msg_.state) {
32 | case XMPP_CHAT_NONE:
33 | //NO OP
34 | break;
35 | case XMPP_CHAT_ACTIVE:
36 | state = new buzz::XmlElement(buzz::QN_CS_ACTIVE);
37 | break;
38 | case XMPP_CHAT_COMPOSING:
39 | state = new buzz::XmlElement(buzz::QN_CS_COMPOSING);
40 | break;
41 | case XMPP_CHAT_PAUSED:
42 | state = new buzz::XmlElement(buzz::QN_CS_PAUSED);
43 | break;
44 | case XMPP_CHAT_INACTIVE:
45 | state = new buzz::XmlElement(buzz::QN_CS_INACTIVE);
46 | break;
47 | case XMPP_CHAT_GONE:
48 | state = new buzz::XmlElement(buzz::QN_CS_GONE);
49 | break;
50 | }
51 | stanza->AddAttr(buzz::QN_ID, task_id());
52 | stanza->AddAttr(buzz::QN_TYPE, "chat");
53 |
54 | if (pending_xmpp_msg_.body != ""){
55 | buzz::XmlElement* body = new buzz::XmlElement(buzz::QN_BODY);
56 | body->SetBodyText(pending_xmpp_msg_.body);
57 | stanza->AddElement(body);
58 | }
59 | if(state){
60 | stanza->AddElement(state);
61 | }
62 |
63 | SendStanza(stanza);
64 |
65 | //TODO: If message receipts worked.
66 | //buzz::XmlElement* requestAck = new buzz::XmlElement(buzz::QN_REQUEST, true);
67 | //stanza->AddElement(requestAck);
68 | //set_timeout_seconds(5);
69 |
70 | return STATE_DONE;
71 | }
72 |
73 | } // namespace tuenti
74 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/arm/vpx_config.asm:
--------------------------------------------------------------------------------
1 | @ This file was created from a .asm file
2 | @ using the ads2gas.pl script.
3 | .equ DO1STROUNDING, 0
4 | .equ ARCH_ARM , 1
5 | .equ ARCH_MIPS , 0
6 | .equ ARCH_X86 , 0
7 | .equ ARCH_X86_64 , 0
8 | .equ ARCH_PPC32 , 0
9 | .equ ARCH_PPC64 , 0
10 | .equ HAVE_EDSP , 1
11 | .equ HAVE_MEDIA , 0
12 | .equ HAVE_NEON , 0
13 | .equ HAVE_MIPS32 , 0
14 | .equ HAVE_MMX , 0
15 | .equ HAVE_SSE , 0
16 | .equ HAVE_SSE2 , 0
17 | .equ HAVE_SSE3 , 0
18 | .equ HAVE_SSSE3 , 0
19 | .equ HAVE_SSE4_1 , 0
20 | .equ HAVE_ALTIVEC , 0
21 | .equ HAVE_VPX_PORTS , 1
22 | .equ HAVE_STDINT_H , 1
23 | .equ HAVE_ALT_TREE_LAYOUT , 0
24 | .equ HAVE_PTHREAD_H , 1
25 | .equ HAVE_SYS_MMAN_H , 1
26 | .equ HAVE_UNISTD_H , 1
27 | .equ CONFIG_EXTERNAL_BUILD , 0
28 | .equ CONFIG_INSTALL_DOCS , 0
29 | .equ CONFIG_INSTALL_BINS , 0
30 | .equ CONFIG_INSTALL_LIBS , 0
31 | .equ CONFIG_INSTALL_SRCS , 0
32 | .equ CONFIG_DEBUG , 0
33 | .equ CONFIG_GPROF , 0
34 | .equ CONFIG_GCOV , 0
35 | .equ CONFIG_RVCT , 0
36 | .equ CONFIG_GCC , 1
37 | .equ CONFIG_MSVS , 0
38 | .equ CONFIG_PIC , 1
39 | .equ CONFIG_BIG_ENDIAN , 0
40 | .equ CONFIG_CODEC_SRCS , 0
41 | .equ CONFIG_DEBUG_LIBS , 0
42 | .equ CONFIG_FAST_UN.balignED , 1
43 | .equ CONFIG_MEM_MANAGER , 0
44 | .equ CONFIG_MEM_TRACKER , 0
45 | .equ CONFIG_MEM_CHECKS , 0
46 | .equ CONFIG_MD5 , 1
47 | .equ CONFIG_DEQUANT_TOKENS , 0
48 | .equ CONFIG_DC_RECON , 0
49 | .equ CONFIG_RUNTIME_CPU_DETECT , 0
50 | .equ CONFIG_POSTPROC , 1
51 | .equ CONFIG_MULTITHREAD , 1
52 | .equ CONFIG_INTERNAL_STATS , 0
53 | .equ CONFIG_VP8_ENCODER , 1
54 | .equ CONFIG_VP8_DECODER , 1
55 | .equ CONFIG_VP8 , 1
56 | .equ CONFIG_ENCODERS , 1
57 | .equ CONFIG_DECODERS , 1
58 | .equ CONFIG_STATIC_MSVCRT , 0
59 | .equ CONFIG_SPATIAL_RESAMPLING , 1
60 | .equ CONFIG_REALTIME_ONLY , 1
61 | .equ CONFIG_ONTHEFLY_BITPACKING , 0
62 | .equ CONFIG_ERROR_CONCEALMENT , 1
63 | .equ CONFIG_SHARED , 0
64 | .equ CONFIG_STATIC , 1
65 | .equ CONFIG_SMALL , 0
66 | .equ CONFIG_POSTPROC_VISUALIZER , 0
67 | .equ CONFIG_OS_SUPPORT , 1
68 | .equ CONFIG_UNIT_TESTS , 0
69 | .equ CONFIG_MULTI_RES_ENCODING , 0
70 | .equ CONFIG_TEMPORAL_DENOISING , 1
71 | .section .note.GNU-stack,"",%progbits
72 | @ This file was created from a .asm file
73 | @ using the ads2gas.pl script.
74 | .equ DO1STROUNDING, 0
75 | .section .note.GNU-stack,"",%progbits
76 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/arm-neon/vpx_config.asm:
--------------------------------------------------------------------------------
1 | @ This file was created from a .asm file
2 | @ using the ads2gas.pl script.
3 | .equ DO1STROUNDING, 0
4 | .equ ARCH_ARM , 1
5 | .equ ARCH_MIPS , 0
6 | .equ ARCH_X86 , 0
7 | .equ ARCH_X86_64 , 0
8 | .equ ARCH_PPC32 , 0
9 | .equ ARCH_PPC64 , 0
10 | .equ HAVE_EDSP , 1
11 | .equ HAVE_MEDIA , 1
12 | .equ HAVE_NEON , 1
13 | .equ HAVE_MIPS32 , 0
14 | .equ HAVE_MMX , 0
15 | .equ HAVE_SSE , 0
16 | .equ HAVE_SSE2 , 0
17 | .equ HAVE_SSE3 , 0
18 | .equ HAVE_SSSE3 , 0
19 | .equ HAVE_SSE4_1 , 0
20 | .equ HAVE_ALTIVEC , 0
21 | .equ HAVE_VPX_PORTS , 1
22 | .equ HAVE_STDINT_H , 1
23 | .equ HAVE_ALT_TREE_LAYOUT , 0
24 | .equ HAVE_PTHREAD_H , 1
25 | .equ HAVE_SYS_MMAN_H , 1
26 | .equ HAVE_UNISTD_H , 1
27 | .equ CONFIG_EXTERNAL_BUILD , 0
28 | .equ CONFIG_INSTALL_DOCS , 0
29 | .equ CONFIG_INSTALL_BINS , 0
30 | .equ CONFIG_INSTALL_LIBS , 0
31 | .equ CONFIG_INSTALL_SRCS , 0
32 | .equ CONFIG_DEBUG , 0
33 | .equ CONFIG_GPROF , 0
34 | .equ CONFIG_GCOV , 0
35 | .equ CONFIG_RVCT , 0
36 | .equ CONFIG_GCC , 1
37 | .equ CONFIG_MSVS , 0
38 | .equ CONFIG_PIC , 1
39 | .equ CONFIG_BIG_ENDIAN , 0
40 | .equ CONFIG_CODEC_SRCS , 0
41 | .equ CONFIG_DEBUG_LIBS , 0
42 | .equ CONFIG_FAST_UN.balignED , 1
43 | .equ CONFIG_MEM_MANAGER , 0
44 | .equ CONFIG_MEM_TRACKER , 0
45 | .equ CONFIG_MEM_CHECKS , 0
46 | .equ CONFIG_MD5 , 1
47 | .equ CONFIG_DEQUANT_TOKENS , 0
48 | .equ CONFIG_DC_RECON , 0
49 | .equ CONFIG_RUNTIME_CPU_DETECT , 1
50 | .equ CONFIG_POSTPROC , 1
51 | .equ CONFIG_MULTITHREAD , 1
52 | .equ CONFIG_INTERNAL_STATS , 0
53 | .equ CONFIG_VP8_ENCODER , 1
54 | .equ CONFIG_VP8_DECODER , 1
55 | .equ CONFIG_VP8 , 1
56 | .equ CONFIG_ENCODERS , 1
57 | .equ CONFIG_DECODERS , 1
58 | .equ CONFIG_STATIC_MSVCRT , 0
59 | .equ CONFIG_SPATIAL_RESAMPLING , 1
60 | .equ CONFIG_REALTIME_ONLY , 1
61 | .equ CONFIG_ONTHEFLY_BITPACKING , 0
62 | .equ CONFIG_ERROR_CONCEALMENT , 1
63 | .equ CONFIG_SHARED , 0
64 | .equ CONFIG_STATIC , 1
65 | .equ CONFIG_SMALL , 0
66 | .equ CONFIG_POSTPROC_VISUALIZER , 0
67 | .equ CONFIG_OS_SUPPORT , 1
68 | .equ CONFIG_UNIT_TESTS , 0
69 | .equ CONFIG_MULTI_RES_ENCODING , 0
70 | .equ CONFIG_TEMPORAL_DENOISING , 1
71 | .section .note.GNU-stack,"",%progbits
72 | @ This file was created from a .asm file
73 | @ using the ads2gas.pl script.
74 | .equ DO1STROUNDING, 0
75 | .section .note.GNU-stack,"",%progbits
76 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/ia32/asm_enc_offsets.asm:
--------------------------------------------------------------------------------
1 | vp8_block_coeff EQU 4
2 | vp8_block_zbin EQU 20
3 | vp8_block_round EQU 28
4 | vp8_block_quant EQU 8
5 | vp8_block_quant_fast EQU 12
6 | vp8_block_zbin_extra EQU 32
7 | vp8_block_zrun_zbin_boost EQU 24
8 | vp8_block_quant_shift EQU 16
9 | vp8_blockd_qcoeff EQU 0
10 | vp8_blockd_dequant EQU 12
11 | vp8_blockd_dqcoeff EQU 4
12 | vp8_blockd_eob EQU 20
13 | vp8_block_base_src EQU 36
14 | vp8_block_src EQU 40
15 | vp8_block_src_diff EQU 0
16 | vp8_block_src_stride EQU 44
17 | vp8_blockd_predictor EQU 8
18 | vp8_writer_lowvalue EQU 0
19 | vp8_writer_range EQU 4
20 | vp8_writer_count EQU 8
21 | vp8_writer_pos EQU 12
22 | vp8_writer_buffer EQU 16
23 | vp8_writer_buffer_end EQU 20
24 | vp8_writer_error EQU 24
25 | tokenextra_token EQU 6
26 | tokenextra_extra EQU 4
27 | tokenextra_context_tree EQU 0
28 | tokenextra_skip_eob_node EQU 7
29 | TOKENEXTRA_SZ EQU 8
30 | vp8_extra_bit_struct_sz EQU 16
31 | vp8_token_value EQU 0
32 | vp8_token_len EQU 4
33 | vp8_extra_bit_struct_tree EQU 0
34 | vp8_extra_bit_struct_prob EQU 4
35 | vp8_extra_bit_struct_len EQU 8
36 | vp8_extra_bit_struct_base_val EQU 12
37 | vp8_comp_tplist EQU 170616
38 | vp8_comp_common EQU 104032
39 | vp8_comp_bc EQU 116144
40 | vp8_writer_sz EQU 36
41 | tokenlist_start EQU 0
42 | tokenlist_stop EQU 4
43 | TOKENLIST_SZ EQU 8
44 | vp8_common_mb_rows EQU 2200
45 | END
46 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/x64/asm_enc_offsets.asm:
--------------------------------------------------------------------------------
1 | vp8_block_coeff EQU 8
2 | vp8_block_zbin EQU 40
3 | vp8_block_round EQU 56
4 | vp8_block_quant EQU 16
5 | vp8_block_quant_fast EQU 24
6 | vp8_block_zbin_extra EQU 64
7 | vp8_block_zrun_zbin_boost EQU 48
8 | vp8_block_quant_shift EQU 32
9 | vp8_blockd_qcoeff EQU 0
10 | vp8_blockd_dequant EQU 24
11 | vp8_blockd_dqcoeff EQU 8
12 | vp8_blockd_eob EQU 40
13 | vp8_block_base_src EQU 72
14 | vp8_block_src EQU 80
15 | vp8_block_src_diff EQU 0
16 | vp8_block_src_stride EQU 84
17 | vp8_blockd_predictor EQU 16
18 | vp8_writer_lowvalue EQU 0
19 | vp8_writer_range EQU 4
20 | vp8_writer_count EQU 8
21 | vp8_writer_pos EQU 12
22 | vp8_writer_buffer EQU 16
23 | vp8_writer_buffer_end EQU 24
24 | vp8_writer_error EQU 32
25 | tokenextra_token EQU 10
26 | tokenextra_extra EQU 8
27 | tokenextra_context_tree EQU 0
28 | tokenextra_skip_eob_node EQU 11
29 | TOKENEXTRA_SZ EQU 16
30 | vp8_extra_bit_struct_sz EQU 24
31 | vp8_token_value EQU 0
32 | vp8_token_len EQU 4
33 | vp8_extra_bit_struct_tree EQU 0
34 | vp8_extra_bit_struct_prob EQU 8
35 | vp8_extra_bit_struct_len EQU 16
36 | vp8_extra_bit_struct_base_val EQU 20
37 | vp8_comp_tplist EQU 173160
38 | vp8_comp_common EQU 105952
39 | vp8_comp_bc EQU 118432
40 | vp8_writer_sz EQU 48
41 | tokenlist_start EQU 0
42 | tokenlist_stop EQU 8
43 | TOKENLIST_SZ EQU 16
44 | vp8_common_mb_rows EQU 2536
45 | END
46 |
--------------------------------------------------------------------------------
/client/keepalivetask.h:
--------------------------------------------------------------------------------
1 | /*
2 | * libjingle
3 | * Copyright 2011, Google Inc.
4 | *
5 | * Redistribution and use in source and binary forms, with or without
6 | * modification, are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
19 | * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
21 | * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
22 | * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
23 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
24 | * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
25 | * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 | */
27 |
28 | #ifndef CLIENT_KEEPALIVE_H_
29 | #define CLIENT_KEEPALIVE_H_
30 |
31 | #include "talk/base/messagehandler.h"
32 | #include "talk/base/messagequeue.h"
33 | #include "talk/xmpp/xmppclient.h"
34 | #include "talk/xmpp/xmpptask.h"
35 |
36 | namespace tuenti {
37 |
38 | class KeepAliveTask : public buzz::XmppTask, private talk_base::MessageHandler {
39 | public:
40 | KeepAliveTask(buzz::XmppClient* parent,
41 | talk_base::MessageQueue* message_queue, uint32 keepalive_period_millis);
42 |
43 | virtual bool HandleStanza(const buzz::XmlElement* stanza);
44 | virtual int ProcessStart();
45 |
46 | private:
47 | // Implementation of MessageHandler.
48 | virtual void OnMessage(talk_base::Message* msg);
49 |
50 | talk_base::MessageQueue* message_queue_;
51 | uint32 keepalive_period_millis_;
52 | uint32 next_keepalive_time_;
53 | buzz::XmppClient* client_;
54 | };
55 |
56 | } // namespace tuenti
57 |
58 | #endif // CLIENT_KEEPALIVETASK_H_
59 |
--------------------------------------------------------------------------------
/android/voice-client-example/src/main/java/com/tuenti/voice/example/ui/buddy/BuddyListAdapter.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.example.ui.buddy;
2 |
3 | import android.view.LayoutInflater;
4 | import com.github.kevinsawicki.wishlist.SingleTypeAdapter;
5 | import com.tuenti.voice.core.XmppPresenceAvailable;
6 | import com.tuenti.voice.core.XmppPresenceShow;
7 | import com.tuenti.voice.core.data.Buddy;
8 | import com.tuenti.voice.example.R;
9 |
10 | public class BuddyListAdapter
11 | extends SingleTypeAdapter
12 | {
13 | // --------------------------- CONSTRUCTORS ---------------------------
14 |
15 | public BuddyListAdapter( final LayoutInflater inflater, final Buddy[] buddies )
16 | {
17 | super( inflater, R.layout.buddy_item );
18 | setItems( buddies );
19 | }
20 |
21 | @Override
22 | protected int[] getChildViewIds()
23 | {
24 | return new int[]{R.id.buddy_name, R.id.buddy_presence, R.id.buddy_status};
25 | }
26 |
27 | @Override
28 | protected void update( final int position, final Buddy buddy )
29 | {
30 | setText( 0, buddy.getName() );
31 | imageView( 1 ).setImageResource( getImageResource( buddy ) );
32 | setText( 2, getAvailable( buddy ) );
33 | }
34 |
35 | private int getAvailable( final Buddy buddy )
36 | {
37 | if ( XmppPresenceAvailable.XMPP_PRESENCE_AVAILABLE.equals( buddy.getAvailable() ) )
38 | {
39 | if ( XmppPresenceShow.XMPP_PRESENCE_DND.equals( buddy.getShow() ) )
40 | {
41 | return R.string.presence_busy;
42 | }
43 | if ( XmppPresenceShow.XMPP_PRESENCE_AWAY.equals( buddy.getShow() ) )
44 | {
45 | return R.string.presence_away;
46 | }
47 | return R.string.presence_available;
48 | }
49 | return R.string.presence_offline;
50 | }
51 |
52 | private int getImageResource( final Buddy buddy )
53 | {
54 | if ( XmppPresenceAvailable.XMPP_PRESENCE_AVAILABLE.equals( buddy.getAvailable() ) )
55 | {
56 | if ( XmppPresenceShow.XMPP_PRESENCE_DND.equals( buddy.getShow() ) )
57 | {
58 | return R.drawable.presence_busy;
59 | }
60 | if ( XmppPresenceShow.XMPP_PRESENCE_AWAY.equals( buddy.getShow() ) )
61 | {
62 | return R.drawable.presence_away;
63 | }
64 | return R.drawable.presence_online;
65 | }
66 | return R.drawable.presence_offline;
67 | }
68 | }
69 |
--------------------------------------------------------------------------------
/ios/VoiceClientExample/ViewController.mm:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // VoiceClientExample
4 | //
5 | // Created by Luke Weber on 12/17/12.
6 | // Copyright (c) 2012 Luke Weber. All rights reserved.
7 | //
8 |
9 | #import "ViewController.h"
10 | #import "VoiceClientDelegate.h"
11 | #import "AppDelegate.h"
12 |
13 | @interface ViewController()
14 | {
15 | AppDelegate* appDelegate;
16 | }
17 | @end
18 |
19 | @implementation ViewController
20 |
21 | //@synthesize loginButton = loginButton_;
22 |
23 | - (void)viewDidLoad
24 | {
25 | [super viewDidLoad];
26 | appDelegate = (AppDelegate*) [UIApplication sharedApplication].delegate;
27 | // Do any additional setup after loading the view, typically from a nib.
28 | [self statsUpdate:@"Sender:\nunknown stats\nReceiver:\nunknown stats\n"];
29 | }
30 |
31 | - (void)didReceiveMemoryWarning
32 | {
33 | [super didReceiveMemoryWarning];
34 | // Dispose of any resources that can be recreated.
35 | }
36 |
37 | - (IBAction)init:(id)sender{
38 | printf("init");
39 | [appDelegate setupStream];
40 | #ifndef IOS_XMPP_FRAMEWORK
41 | VoiceClientDelegate* vc = VoiceClientDelegate::getInstance();
42 | (void)vc;
43 | #endif
44 | }
45 |
46 | - (IBAction)login:(id)sender{
47 | printf("logging in");
48 | [appDelegate connect];
49 | #ifndef IOS_XMPP_FRAMEWORK
50 | VoiceClientDelegate* vc = VoiceClientDelegate::getInstance();
51 | vc->Login();
52 | #endif
53 | }
54 |
55 | - (IBAction)call:(id)sender{
56 | printf("calling");
57 | #ifdef IOS_XMPP_FRAMEWORK
58 | [appDelegate call:@"user@gmail.com"];
59 | #else
60 | VoiceClientDelegate* vc = VoiceClientDelegate::getInstance();
61 | vc->Call();
62 | #endif
63 |
64 | }
65 |
66 | - (IBAction)logout:(id)sender{
67 | printf("logout");
68 | #ifdef IOS_XMPP_FRAMEWORK
69 | [appDelegate disconnect];
70 | #else
71 | VoiceClientDelegate* vc = VoiceClientDelegate::getInstance();
72 | vc->Logout();
73 | #endif
74 | }
75 |
76 | - (void)statsUpdate:(NSString *)stats {
77 | dispatch_async(dispatch_get_main_queue(), ^{
78 | unsigned numberOfLines, index, stringLength = [stats length];
79 | for (index = 0, numberOfLines = 0; index < stringLength; numberOfLines++)
80 | index = NSMaxRange([stats lineRangeForRange:NSMakeRange(index, 0)]);
81 | [self->statsLabel_ setNumberOfLines:numberOfLines];
82 | [self->statsLabel_ setText:stats];
83 | });
84 | }
85 |
86 | - (void)dealloc {
87 |
88 | }
89 |
90 | - (void)viewDidUnload {
91 | statsLabel_ = nil;
92 | [super viewDidUnload];
93 | }
94 | @end
95 |
96 |
--------------------------------------------------------------------------------
/ios/VoiceClientExample/VoiceClientDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // VoiceClientDelegate.h
3 | // webrtcjingle
4 | //
5 | // Created by Luke Weber on 12/17/12.
6 | //
7 | //
8 |
9 | #ifndef webrtcjingle_VoiceClientDelegate_h
10 | #define webrtcjingle_VoiceClientDelegate_h
11 |
12 | #include "client/client_defines.h"
13 |
14 | #ifdef IOS_XMPP_FRAMEWORK
15 | #ifdef __OBJC__
16 | @class XmppClientDelegate;
17 | typedef XmppClientDelegate * XmppClientDelegatePtr;
18 | #endif
19 | namespace tuenti {
20 | class TXmppPump;
21 | class VoiceClient;
22 | };
23 | namespace tictok {
24 | class IOSXmppClient;
25 | };
26 | namespace talk_base
27 | {
28 | class Thread;
29 | };
30 | #endif
31 |
32 | class VoiceClientDelegate {
33 |
34 | public:
35 | static VoiceClientDelegate *getInstance();
36 | #ifdef IOS_XMPP_FRAMEWORK
37 | #ifdef __OBJC__
38 | static VoiceClientDelegate *Create(XmppClientDelegatePtr xmppClientDelegate);
39 | #endif
40 | #endif
41 | ~VoiceClientDelegate();
42 | void Init();
43 | void Login();
44 | void Logout();
45 | void Call(const char *remote_jid);
46 | void OnSignalCallStateChange(int state, const char *remote_jid, int call_id);
47 | void OnSignalCallTrackingId(int call_id, const char *call_tracker_id);
48 | void OnSignalAudioPlayout();
49 | void OnSignalCallError(int error, int call_id);
50 | void OnSignalXmppError(int error);
51 | void OnSignalXmppSocketClose(int state);
52 | void OnSignalXmppStateChange(int state);
53 | void OnPresenceChanged(const std::string& jid, int available, int show);
54 | void OnSignalBuddyListRemove(const std::string& jid);
55 | void OnSignalBuddyListAdd(const std::string& jid, const std::string& nick,
56 | int available, int show);
57 | void OnSignalStatsUpdate(const char *stats);
58 | #ifdef IOS_XMPP_FRAMEWORK
59 | talk_base::Thread* GetSignalThread();
60 |
61 | tictok::IOSXmppClient* GetClient()
62 | {
63 | return client_;
64 | }
65 | void SetClient(tictok::IOSXmppClient* client)
66 | {
67 | client_ = client;
68 | }
69 | void WriteOutput(const char* bytes, size_t len);
70 | void StartTls(const std::string& domain);
71 | void CloseConnection();
72 | #endif
73 | private:
74 | static VoiceClientDelegate * voiceClientDelegateInstance_;
75 | tuenti::VoiceClient *voiceClient_;
76 | tuenti::StunConfig stun_config_;
77 | #ifdef IOS_XMPP_FRAMEWORK
78 | tictok::IOSXmppClient* client_;
79 | #ifdef __OBJC__
80 | XmppClientDelegatePtr xmppClientDelegate_;
81 | #endif
82 | #endif
83 | };
84 |
85 | #endif // webrtcjingle_VoiceClientDelegate_h
86 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/arm/vpx_config.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | /* This file automatically generated by configure. Do not edit! */
9 | #ifndef VPX_CONFIG_H
10 | #define VPX_CONFIG_H
11 | #define RESTRICT
12 | #define ARCH_ARM 1
13 | #define ARCH_MIPS 0
14 | #define ARCH_X86 0
15 | #define ARCH_X86_64 0
16 | #define ARCH_PPC32 0
17 | #define ARCH_PPC64 0
18 | #define HAVE_EDSP 1
19 | #define HAVE_MEDIA 0
20 | #define HAVE_NEON 0
21 | #define HAVE_MIPS32 0
22 | #define HAVE_MMX 0
23 | #define HAVE_SSE 0
24 | #define HAVE_SSE2 0
25 | #define HAVE_SSE3 0
26 | #define HAVE_SSSE3 0
27 | #define HAVE_SSE4_1 0
28 | #define HAVE_ALTIVEC 0
29 | #define HAVE_VPX_PORTS 1
30 | #define HAVE_STDINT_H 1
31 | #define HAVE_ALT_TREE_LAYOUT 0
32 | #define HAVE_PTHREAD_H 1
33 | #define HAVE_SYS_MMAN_H 1
34 | #define HAVE_UNISTD_H 1
35 | #define CONFIG_EXTERNAL_BUILD 0
36 | #define CONFIG_INSTALL_DOCS 0
37 | #define CONFIG_INSTALL_BINS 0
38 | #define CONFIG_INSTALL_LIBS 0
39 | #define CONFIG_INSTALL_SRCS 0
40 | #define CONFIG_DEBUG 0
41 | #define CONFIG_GPROF 0
42 | #define CONFIG_GCOV 0
43 | #define CONFIG_RVCT 0
44 | #define CONFIG_GCC 1
45 | #define CONFIG_MSVS 0
46 | #define CONFIG_PIC 1
47 | #define CONFIG_BIG_ENDIAN 0
48 | #define CONFIG_CODEC_SRCS 0
49 | #define CONFIG_DEBUG_LIBS 0
50 | #define CONFIG_FAST_UNALIGNED 1
51 | #define CONFIG_MEM_MANAGER 0
52 | #define CONFIG_MEM_TRACKER 0
53 | #define CONFIG_MEM_CHECKS 0
54 | #define CONFIG_MD5 1
55 | #define CONFIG_DEQUANT_TOKENS 0
56 | #define CONFIG_DC_RECON 0
57 | #define CONFIG_RUNTIME_CPU_DETECT 0
58 | #define CONFIG_POSTPROC 1
59 | #define CONFIG_MULTITHREAD 1
60 | #define CONFIG_INTERNAL_STATS 0
61 | #define CONFIG_VP8_ENCODER 1
62 | #define CONFIG_VP8_DECODER 1
63 | #define CONFIG_VP8 1
64 | #define CONFIG_ENCODERS 1
65 | #define CONFIG_DECODERS 1
66 | #define CONFIG_STATIC_MSVCRT 0
67 | #define CONFIG_SPATIAL_RESAMPLING 1
68 | #define CONFIG_REALTIME_ONLY 1
69 | #define CONFIG_ONTHEFLY_BITPACKING 0
70 | #define CONFIG_ERROR_CONCEALMENT 1
71 | #define CONFIG_SHARED 0
72 | #define CONFIG_STATIC 1
73 | #define CONFIG_SMALL 0
74 | #define CONFIG_POSTPROC_VISUALIZER 0
75 | #define CONFIG_OS_SUPPORT 1
76 | #define CONFIG_UNIT_TESTS 0
77 | #define CONFIG_MULTI_RES_ENCODING 0
78 | #define CONFIG_TEMPORAL_DENOISING 1
79 | #endif /* VPX_CONFIG_H */
80 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/x64/vpx_config.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | /* This file automatically generated by configure. Do not edit! */
9 | #ifndef VPX_CONFIG_H
10 | #define VPX_CONFIG_H
11 | #define RESTRICT
12 | #define ARCH_ARM 0
13 | #define ARCH_MIPS 0
14 | #define ARCH_X86 0
15 | #define ARCH_X86_64 1
16 | #define ARCH_PPC32 0
17 | #define ARCH_PPC64 0
18 | #define HAVE_EDSP 0
19 | #define HAVE_MEDIA 0
20 | #define HAVE_NEON 0
21 | #define HAVE_MIPS32 0
22 | #define HAVE_MMX 1
23 | #define HAVE_SSE 1
24 | #define HAVE_SSE2 1
25 | #define HAVE_SSE3 1
26 | #define HAVE_SSSE3 1
27 | #define HAVE_SSE4_1 1
28 | #define HAVE_ALTIVEC 0
29 | #define HAVE_VPX_PORTS 1
30 | #define HAVE_STDINT_H 1
31 | #define HAVE_ALT_TREE_LAYOUT 0
32 | #define HAVE_PTHREAD_H 1
33 | #define HAVE_SYS_MMAN_H 1
34 | #define HAVE_UNISTD_H 1
35 | #define CONFIG_EXTERNAL_BUILD 0
36 | #define CONFIG_INSTALL_DOCS 0
37 | #define CONFIG_INSTALL_BINS 0
38 | #define CONFIG_INSTALL_LIBS 0
39 | #define CONFIG_INSTALL_SRCS 0
40 | #define CONFIG_DEBUG 0
41 | #define CONFIG_GPROF 0
42 | #define CONFIG_GCOV 0
43 | #define CONFIG_RVCT 0
44 | #define CONFIG_GCC 1
45 | #define CONFIG_MSVS 0
46 | #define CONFIG_PIC 1
47 | #define CONFIG_BIG_ENDIAN 0
48 | #define CONFIG_CODEC_SRCS 0
49 | #define CONFIG_DEBUG_LIBS 0
50 | #define CONFIG_FAST_UNALIGNED 1
51 | #define CONFIG_MEM_MANAGER 0
52 | #define CONFIG_MEM_TRACKER 0
53 | #define CONFIG_MEM_CHECKS 0
54 | #define CONFIG_MD5 1
55 | #define CONFIG_DEQUANT_TOKENS 0
56 | #define CONFIG_DC_RECON 0
57 | #define CONFIG_RUNTIME_CPU_DETECT 1
58 | #define CONFIG_POSTPROC 1
59 | #define CONFIG_MULTITHREAD 1
60 | #define CONFIG_INTERNAL_STATS 0
61 | #define CONFIG_VP8_ENCODER 1
62 | #define CONFIG_VP8_DECODER 1
63 | #define CONFIG_VP8 1
64 | #define CONFIG_ENCODERS 1
65 | #define CONFIG_DECODERS 1
66 | #define CONFIG_STATIC_MSVCRT 0
67 | #define CONFIG_SPATIAL_RESAMPLING 1
68 | #define CONFIG_REALTIME_ONLY 1
69 | #define CONFIG_ONTHEFLY_BITPACKING 0
70 | #define CONFIG_ERROR_CONCEALMENT 1
71 | #define CONFIG_SHARED 0
72 | #define CONFIG_STATIC 1
73 | #define CONFIG_SMALL 0
74 | #define CONFIG_POSTPROC_VISUALIZER 0
75 | #define CONFIG_OS_SUPPORT 1
76 | #define CONFIG_UNIT_TESTS 0
77 | #define CONFIG_MULTI_RES_ENCODING 0
78 | #define CONFIG_TEMPORAL_DENOISING 1
79 | #endif /* VPX_CONFIG_H */
80 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/mac/ia32/vpx_config.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | /* This file automatically generated by configure. Do not edit! */
9 | #ifndef VPX_CONFIG_H
10 | #define VPX_CONFIG_H
11 | #define RESTRICT
12 | #define ARCH_ARM 0
13 | #define ARCH_MIPS 0
14 | #define ARCH_X86 1
15 | #define ARCH_X86_64 0
16 | #define ARCH_PPC32 0
17 | #define ARCH_PPC64 0
18 | #define HAVE_EDSP 0
19 | #define HAVE_MEDIA 0
20 | #define HAVE_NEON 0
21 | #define HAVE_MIPS32 0
22 | #define HAVE_MMX 1
23 | #define HAVE_SSE 1
24 | #define HAVE_SSE2 1
25 | #define HAVE_SSE3 1
26 | #define HAVE_SSSE3 1
27 | #define HAVE_SSE4_1 1
28 | #define HAVE_ALTIVEC 0
29 | #define HAVE_VPX_PORTS 1
30 | #define HAVE_STDINT_H 1
31 | #define HAVE_ALT_TREE_LAYOUT 0
32 | #define HAVE_PTHREAD_H 1
33 | #define HAVE_SYS_MMAN_H 1
34 | #define HAVE_UNISTD_H 1
35 | #define CONFIG_EXTERNAL_BUILD 0
36 | #define CONFIG_INSTALL_DOCS 0
37 | #define CONFIG_INSTALL_BINS 0
38 | #define CONFIG_INSTALL_LIBS 0
39 | #define CONFIG_INSTALL_SRCS 0
40 | #define CONFIG_DEBUG 0
41 | #define CONFIG_GPROF 0
42 | #define CONFIG_GCOV 0
43 | #define CONFIG_RVCT 0
44 | #define CONFIG_GCC 1
45 | #define CONFIG_MSVS 0
46 | #define CONFIG_PIC 1
47 | #define CONFIG_BIG_ENDIAN 0
48 | #define CONFIG_CODEC_SRCS 0
49 | #define CONFIG_DEBUG_LIBS 0
50 | #define CONFIG_FAST_UNALIGNED 1
51 | #define CONFIG_MEM_MANAGER 0
52 | #define CONFIG_MEM_TRACKER 0
53 | #define CONFIG_MEM_CHECKS 0
54 | #define CONFIG_MD5 1
55 | #define CONFIG_DEQUANT_TOKENS 0
56 | #define CONFIG_DC_RECON 0
57 | #define CONFIG_RUNTIME_CPU_DETECT 1
58 | #define CONFIG_POSTPROC 1
59 | #define CONFIG_MULTITHREAD 1
60 | #define CONFIG_INTERNAL_STATS 0
61 | #define CONFIG_VP8_ENCODER 1
62 | #define CONFIG_VP8_DECODER 1
63 | #define CONFIG_VP8 1
64 | #define CONFIG_ENCODERS 1
65 | #define CONFIG_DECODERS 1
66 | #define CONFIG_STATIC_MSVCRT 0
67 | #define CONFIG_SPATIAL_RESAMPLING 1
68 | #define CONFIG_REALTIME_ONLY 1
69 | #define CONFIG_ONTHEFLY_BITPACKING 0
70 | #define CONFIG_ERROR_CONCEALMENT 1
71 | #define CONFIG_SHARED 0
72 | #define CONFIG_STATIC 1
73 | #define CONFIG_SMALL 0
74 | #define CONFIG_POSTPROC_VISUALIZER 0
75 | #define CONFIG_OS_SUPPORT 1
76 | #define CONFIG_UNIT_TESTS 0
77 | #define CONFIG_MULTI_RES_ENCODING 0
78 | #define CONFIG_TEMPORAL_DENOISING 1
79 | #endif /* VPX_CONFIG_H */
80 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/mac/x64/vpx_config.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | /* This file automatically generated by configure. Do not edit! */
9 | #ifndef VPX_CONFIG_H
10 | #define VPX_CONFIG_H
11 | #define RESTRICT
12 | #define ARCH_ARM 0
13 | #define ARCH_MIPS 0
14 | #define ARCH_X86 0
15 | #define ARCH_X86_64 1
16 | #define ARCH_PPC32 0
17 | #define ARCH_PPC64 0
18 | #define HAVE_EDSP 0
19 | #define HAVE_MEDIA 0
20 | #define HAVE_NEON 0
21 | #define HAVE_MIPS32 0
22 | #define HAVE_MMX 1
23 | #define HAVE_SSE 1
24 | #define HAVE_SSE2 1
25 | #define HAVE_SSE3 1
26 | #define HAVE_SSSE3 1
27 | #define HAVE_SSE4_1 1
28 | #define HAVE_ALTIVEC 0
29 | #define HAVE_VPX_PORTS 1
30 | #define HAVE_STDINT_H 1
31 | #define HAVE_ALT_TREE_LAYOUT 0
32 | #define HAVE_PTHREAD_H 1
33 | #define HAVE_SYS_MMAN_H 1
34 | #define HAVE_UNISTD_H 1
35 | #define CONFIG_EXTERNAL_BUILD 0
36 | #define CONFIG_INSTALL_DOCS 0
37 | #define CONFIG_INSTALL_BINS 0
38 | #define CONFIG_INSTALL_LIBS 0
39 | #define CONFIG_INSTALL_SRCS 0
40 | #define CONFIG_DEBUG 0
41 | #define CONFIG_GPROF 0
42 | #define CONFIG_GCOV 0
43 | #define CONFIG_RVCT 0
44 | #define CONFIG_GCC 1
45 | #define CONFIG_MSVS 0
46 | #define CONFIG_PIC 1
47 | #define CONFIG_BIG_ENDIAN 0
48 | #define CONFIG_CODEC_SRCS 0
49 | #define CONFIG_DEBUG_LIBS 0
50 | #define CONFIG_FAST_UNALIGNED 1
51 | #define CONFIG_MEM_MANAGER 0
52 | #define CONFIG_MEM_TRACKER 0
53 | #define CONFIG_MEM_CHECKS 0
54 | #define CONFIG_MD5 1
55 | #define CONFIG_DEQUANT_TOKENS 0
56 | #define CONFIG_DC_RECON 0
57 | #define CONFIG_RUNTIME_CPU_DETECT 1
58 | #define CONFIG_POSTPROC 1
59 | #define CONFIG_MULTITHREAD 1
60 | #define CONFIG_INTERNAL_STATS 0
61 | #define CONFIG_VP8_ENCODER 1
62 | #define CONFIG_VP8_DECODER 1
63 | #define CONFIG_VP8 1
64 | #define CONFIG_ENCODERS 1
65 | #define CONFIG_DECODERS 1
66 | #define CONFIG_STATIC_MSVCRT 0
67 | #define CONFIG_SPATIAL_RESAMPLING 1
68 | #define CONFIG_REALTIME_ONLY 1
69 | #define CONFIG_ONTHEFLY_BITPACKING 0
70 | #define CONFIG_ERROR_CONCEALMENT 1
71 | #define CONFIG_SHARED 0
72 | #define CONFIG_STATIC 1
73 | #define CONFIG_SMALL 0
74 | #define CONFIG_POSTPROC_VISUALIZER 0
75 | #define CONFIG_OS_SUPPORT 1
76 | #define CONFIG_UNIT_TESTS 0
77 | #define CONFIG_MULTI_RES_ENCODING 0
78 | #define CONFIG_TEMPORAL_DENOISING 1
79 | #endif /* VPX_CONFIG_H */
80 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/ia32/vpx_config.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | /* This file automatically generated by configure. Do not edit! */
9 | #ifndef VPX_CONFIG_H
10 | #define VPX_CONFIG_H
11 | #define RESTRICT
12 | #define ARCH_ARM 0
13 | #define ARCH_MIPS 0
14 | #define ARCH_X86 1
15 | #define ARCH_X86_64 0
16 | #define ARCH_PPC32 0
17 | #define ARCH_PPC64 0
18 | #define HAVE_EDSP 0
19 | #define HAVE_MEDIA 0
20 | #define HAVE_NEON 0
21 | #define HAVE_MIPS32 0
22 | #define HAVE_MMX 1
23 | #define HAVE_SSE 1
24 | #define HAVE_SSE2 1
25 | #define HAVE_SSE3 1
26 | #define HAVE_SSSE3 1
27 | #define HAVE_SSE4_1 1
28 | #define HAVE_ALTIVEC 0
29 | #define HAVE_VPX_PORTS 1
30 | #define HAVE_STDINT_H 0
31 | #define HAVE_ALT_TREE_LAYOUT 0
32 | #define HAVE_PTHREAD_H 0
33 | #define HAVE_SYS_MMAN_H 0
34 | #define HAVE_UNISTD_H 0
35 | #define CONFIG_EXTERNAL_BUILD 1
36 | #define CONFIG_INSTALL_DOCS 0
37 | #define CONFIG_INSTALL_BINS 0
38 | #define CONFIG_INSTALL_LIBS 0
39 | #define CONFIG_INSTALL_SRCS 0
40 | #define CONFIG_DEBUG 0
41 | #define CONFIG_GPROF 0
42 | #define CONFIG_GCOV 0
43 | #define CONFIG_RVCT 0
44 | #define CONFIG_GCC 0
45 | #define CONFIG_MSVS 1
46 | #define CONFIG_PIC 1
47 | #define CONFIG_BIG_ENDIAN 0
48 | #define CONFIG_CODEC_SRCS 0
49 | #define CONFIG_DEBUG_LIBS 0
50 | #define CONFIG_FAST_UNALIGNED 1
51 | #define CONFIG_MEM_MANAGER 0
52 | #define CONFIG_MEM_TRACKER 0
53 | #define CONFIG_MEM_CHECKS 0
54 | #define CONFIG_MD5 1
55 | #define CONFIG_DEQUANT_TOKENS 0
56 | #define CONFIG_DC_RECON 0
57 | #define CONFIG_RUNTIME_CPU_DETECT 1
58 | #define CONFIG_POSTPROC 1
59 | #define CONFIG_MULTITHREAD 1
60 | #define CONFIG_INTERNAL_STATS 0
61 | #define CONFIG_VP8_ENCODER 1
62 | #define CONFIG_VP8_DECODER 1
63 | #define CONFIG_VP8 1
64 | #define CONFIG_ENCODERS 1
65 | #define CONFIG_DECODERS 1
66 | #define CONFIG_STATIC_MSVCRT 1
67 | #define CONFIG_SPATIAL_RESAMPLING 1
68 | #define CONFIG_REALTIME_ONLY 1
69 | #define CONFIG_ONTHEFLY_BITPACKING 0
70 | #define CONFIG_ERROR_CONCEALMENT 1
71 | #define CONFIG_SHARED 0
72 | #define CONFIG_STATIC 1
73 | #define CONFIG_SMALL 0
74 | #define CONFIG_POSTPROC_VISUALIZER 0
75 | #define CONFIG_OS_SUPPORT 1
76 | #define CONFIG_UNIT_TESTS 0
77 | #define CONFIG_MULTI_RES_ENCODING 0
78 | #define CONFIG_TEMPORAL_DENOISING 1
79 | #endif /* VPX_CONFIG_H */
80 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/win/x64/vpx_config.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | /* This file automatically generated by configure. Do not edit! */
9 | #ifndef VPX_CONFIG_H
10 | #define VPX_CONFIG_H
11 | #define RESTRICT
12 | #define ARCH_ARM 0
13 | #define ARCH_MIPS 0
14 | #define ARCH_X86 0
15 | #define ARCH_X86_64 1
16 | #define ARCH_PPC32 0
17 | #define ARCH_PPC64 0
18 | #define HAVE_EDSP 0
19 | #define HAVE_MEDIA 0
20 | #define HAVE_NEON 0
21 | #define HAVE_MIPS32 0
22 | #define HAVE_MMX 1
23 | #define HAVE_SSE 1
24 | #define HAVE_SSE2 1
25 | #define HAVE_SSE3 1
26 | #define HAVE_SSSE3 1
27 | #define HAVE_SSE4_1 1
28 | #define HAVE_ALTIVEC 0
29 | #define HAVE_VPX_PORTS 1
30 | #define HAVE_STDINT_H 0
31 | #define HAVE_ALT_TREE_LAYOUT 0
32 | #define HAVE_PTHREAD_H 0
33 | #define HAVE_SYS_MMAN_H 0
34 | #define HAVE_UNISTD_H 0
35 | #define CONFIG_EXTERNAL_BUILD 1
36 | #define CONFIG_INSTALL_DOCS 0
37 | #define CONFIG_INSTALL_BINS 0
38 | #define CONFIG_INSTALL_LIBS 0
39 | #define CONFIG_INSTALL_SRCS 0
40 | #define CONFIG_DEBUG 0
41 | #define CONFIG_GPROF 0
42 | #define CONFIG_GCOV 0
43 | #define CONFIG_RVCT 0
44 | #define CONFIG_GCC 0
45 | #define CONFIG_MSVS 1
46 | #define CONFIG_PIC 1
47 | #define CONFIG_BIG_ENDIAN 0
48 | #define CONFIG_CODEC_SRCS 0
49 | #define CONFIG_DEBUG_LIBS 0
50 | #define CONFIG_FAST_UNALIGNED 1
51 | #define CONFIG_MEM_MANAGER 0
52 | #define CONFIG_MEM_TRACKER 0
53 | #define CONFIG_MEM_CHECKS 0
54 | #define CONFIG_MD5 1
55 | #define CONFIG_DEQUANT_TOKENS 0
56 | #define CONFIG_DC_RECON 0
57 | #define CONFIG_RUNTIME_CPU_DETECT 1
58 | #define CONFIG_POSTPROC 1
59 | #define CONFIG_MULTITHREAD 1
60 | #define CONFIG_INTERNAL_STATS 0
61 | #define CONFIG_VP8_ENCODER 1
62 | #define CONFIG_VP8_DECODER 1
63 | #define CONFIG_VP8 1
64 | #define CONFIG_ENCODERS 1
65 | #define CONFIG_DECODERS 1
66 | #define CONFIG_STATIC_MSVCRT 1
67 | #define CONFIG_SPATIAL_RESAMPLING 1
68 | #define CONFIG_REALTIME_ONLY 1
69 | #define CONFIG_ONTHEFLY_BITPACKING 0
70 | #define CONFIG_ERROR_CONCEALMENT 1
71 | #define CONFIG_SHARED 0
72 | #define CONFIG_STATIC 1
73 | #define CONFIG_SMALL 0
74 | #define CONFIG_POSTPROC_VISUALIZER 0
75 | #define CONFIG_OS_SUPPORT 1
76 | #define CONFIG_UNIT_TESTS 0
77 | #define CONFIG_MULTI_RES_ENCODING 0
78 | #define CONFIG_TEMPORAL_DENOISING 1
79 | #endif /* VPX_CONFIG_H */
80 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/arm-neon/vpx_config.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | /* This file automatically generated by configure. Do not edit! */
9 | #ifndef VPX_CONFIG_H
10 | #define VPX_CONFIG_H
11 | #define RESTRICT
12 | #define ARCH_ARM 1
13 | #define ARCH_MIPS 0
14 | #define ARCH_X86 0
15 | #define ARCH_X86_64 0
16 | #define ARCH_PPC32 0
17 | #define ARCH_PPC64 0
18 | #define HAVE_EDSP 1
19 | #define HAVE_MEDIA 1
20 | #define HAVE_NEON 1
21 | #define HAVE_MIPS32 0
22 | #define HAVE_MMX 0
23 | #define HAVE_SSE 0
24 | #define HAVE_SSE2 0
25 | #define HAVE_SSE3 0
26 | #define HAVE_SSSE3 0
27 | #define HAVE_SSE4_1 0
28 | #define HAVE_ALTIVEC 0
29 | #define HAVE_VPX_PORTS 1
30 | #define HAVE_STDINT_H 1
31 | #define HAVE_ALT_TREE_LAYOUT 0
32 | #define HAVE_PTHREAD_H 1
33 | #define HAVE_SYS_MMAN_H 1
34 | #define HAVE_UNISTD_H 1
35 | #define CONFIG_EXTERNAL_BUILD 0
36 | #define CONFIG_INSTALL_DOCS 0
37 | #define CONFIG_INSTALL_BINS 0
38 | #define CONFIG_INSTALL_LIBS 0
39 | #define CONFIG_INSTALL_SRCS 0
40 | #define CONFIG_DEBUG 0
41 | #define CONFIG_GPROF 0
42 | #define CONFIG_GCOV 0
43 | #define CONFIG_RVCT 0
44 | #define CONFIG_GCC 1
45 | #define CONFIG_MSVS 0
46 | #define CONFIG_PIC 1
47 | #define CONFIG_BIG_ENDIAN 0
48 | #define CONFIG_CODEC_SRCS 0
49 | #define CONFIG_DEBUG_LIBS 0
50 | #define CONFIG_FAST_UNALIGNED 1
51 | #define CONFIG_MEM_MANAGER 0
52 | #define CONFIG_MEM_TRACKER 0
53 | #define CONFIG_MEM_CHECKS 0
54 | #define CONFIG_MD5 1
55 | #define CONFIG_DEQUANT_TOKENS 0
56 | #define CONFIG_DC_RECON 0
57 | #define CONFIG_RUNTIME_CPU_DETECT 0
58 | #define CONFIG_POSTPROC 1
59 | #define CONFIG_MULTITHREAD 1
60 | #define CONFIG_INTERNAL_STATS 0
61 | #define CONFIG_VP8_ENCODER 1
62 | #define CONFIG_VP8_DECODER 1
63 | #define CONFIG_VP8 1
64 | #define CONFIG_ENCODERS 1
65 | #define CONFIG_DECODERS 1
66 | #define CONFIG_STATIC_MSVCRT 0
67 | #define CONFIG_SPATIAL_RESAMPLING 1
68 | #define CONFIG_REALTIME_ONLY 1
69 | #define CONFIG_ONTHEFLY_BITPACKING 0
70 | #define CONFIG_ERROR_CONCEALMENT 1
71 | #define CONFIG_SHARED 0
72 | #define CONFIG_STATIC 1
73 | #define CONFIG_SMALL 0
74 | #define CONFIG_POSTPROC_VISUALIZER 0
75 | #define CONFIG_OS_SUPPORT 1
76 | #define CONFIG_UNIT_TESTS 0
77 | #define CONFIG_MULTI_RES_ENCODING 0
78 | #define CONFIG_TEMPORAL_DENOISING 1
79 | #endif /* VPX_CONFIG_H */
80 |
--------------------------------------------------------------------------------
/third_party/libvpx/source/config/linux/ia32/vpx_config.h:
--------------------------------------------------------------------------------
1 | /* Copyright (c) 2011 The WebM project authors. All Rights Reserved. */
2 | /* */
3 | /* Use of this source code is governed by a BSD-style license */
4 | /* that can be found in the LICENSE file in the root of the source */
5 | /* tree. An additional intellectual property rights grant can be found */
6 | /* in the file PATENTS. All contributing project authors may */
7 | /* be found in the AUTHORS file in the root of the source tree. */
8 | /* This file automatically generated by configure. Do not edit! */
9 | #ifndef VPX_CONFIG_H
10 | #define VPX_CONFIG_H
11 | #define RESTRICT
12 | #define ARCH_ARM 0
13 | #define ARCH_MIPS 0
14 | #define ARCH_X86 1
15 | #define ARCH_X86_64 0
16 | #define ARCH_PPC32 0
17 | #define ARCH_PPC64 0
18 | #define HAVE_EDSP 0
19 | #define HAVE_MEDIA 0
20 | #define HAVE_NEON 0
21 | #define HAVE_MIPS32 0
22 | #define HAVE_MMX 1
23 | #define HAVE_SSE 1
24 | #define HAVE_SSE2 1
25 | #define HAVE_SSE3 1
26 | #define HAVE_SSSE3 1
27 | #define HAVE_SSE4_1 1
28 | #define HAVE_ALTIVEC 0
29 | #define HAVE_VPX_PORTS 1
30 | #define HAVE_STDINT_H 1
31 | #define HAVE_ALT_TREE_LAYOUT 0
32 | #define HAVE_PTHREAD_H 1
33 | #define HAVE_SYS_MMAN_H 1
34 | #define HAVE_UNISTD_H 1
35 | #define CONFIG_EXTERNAL_BUILD 0
36 | #define CONFIG_INSTALL_DOCS 0
37 | #define CONFIG_INSTALL_BINS 0
38 | #define CONFIG_INSTALL_LIBS 0
39 | #define CONFIG_INSTALL_SRCS 0
40 | #define CONFIG_DEBUG 0
41 | #define CONFIG_GPROF 0
42 | #define CONFIG_GCOV 0
43 | #define CONFIG_RVCT 0
44 | #define CONFIG_GCC 1
45 | #define CONFIG_MSVS 0
46 | #define CONFIG_PIC 1
47 | #define CONFIG_BIG_ENDIAN 0
48 | #define CONFIG_CODEC_SRCS 0
49 | #define CONFIG_DEBUG_LIBS 0
50 | #define CONFIG_FAST_UNALIGNED 1
51 | #define CONFIG_MEM_MANAGER 0
52 | #define CONFIG_MEM_TRACKER 0
53 | #define CONFIG_MEM_CHECKS 0
54 | #define CONFIG_MD5 1
55 | #define CONFIG_DEQUANT_TOKENS 0
56 | #define CONFIG_DC_RECON 0
57 | #define CONFIG_RUNTIME_CPU_DETECT 1
58 | #define CONFIG_POSTPROC 1
59 | #define CONFIG_MULTITHREAD 1
60 | #define CONFIG_INTERNAL_STATS 0
61 | #define CONFIG_VP8_ENCODER 1
62 | #define CONFIG_VP8_DECODER 1
63 | #define CONFIG_VP8 1
64 | #define CONFIG_ENCODERS 1
65 | #define CONFIG_DECODERS 1
66 | #define CONFIG_STATIC_MSVCRT 0
67 | #define CONFIG_SPATIAL_RESAMPLING 1
68 | #define CONFIG_REALTIME_ONLY 1
69 | #define CONFIG_ONTHEFLY_BITPACKING 0
70 | #define CONFIG_ERROR_CONCEALMENT 1
71 | #define CONFIG_SHARED 0
72 | #define CONFIG_STATIC 1
73 | #define CONFIG_SMALL 0
74 | #define CONFIG_POSTPROC_VISUALIZER 0
75 | #define CONFIG_OS_SUPPORT 1
76 | #define CONFIG_UNIT_TESTS 0
77 | #define CONFIG_MULTI_RES_ENCODING 0
78 | #define CONFIG_TEMPORAL_DENOISING 1
79 | #endif /* VPX_CONFIG_H */
80 |
--------------------------------------------------------------------------------
/android/voice-client-aidl/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 4.0.0
6 |
7 |
8 | com.tuenti.voice
9 | voice-parent
10 | 1.0-SNAPSHOT
11 | ../pom.xml
12 |
13 | voice-aidl
14 | 1.0-SNAPSHOT
15 | apklib
16 | Tuenti Voice Client AIDL
17 |
18 |
19 |
20 | com.google.android
21 | android
22 | provided
23 |
24 |
25 | ${project.groupId}
26 | voice-core
27 | ${project.version}
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 | maven-compiler-plugin
37 |
38 |
39 | com.jayway.maven.plugins.android.generation2
40 | android-maven-plugin
41 | true
42 |
43 |
44 | org.codehaus.mojo
45 | build-helper-maven-plugin
46 | ${build-helper-maven-plugin.version}
47 |
48 |
49 | package
50 |
51 | attach-artifact
52 |
53 |
54 |
55 |
56 | jar
57 | ${project.build.directory}/${project.build.finalName}.jar
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
--------------------------------------------------------------------------------
/android/voice-client-aidl/src/main/java/com/tuenti/voice/core/service/VoiceClientService.java:
--------------------------------------------------------------------------------
1 | package com.tuenti.voice.core.service;
2 |
3 | import android.app.Service;
4 | import android.content.Intent;
5 | import android.os.IBinder;
6 | import com.tuenti.voice.core.VoiceClient;
7 | import com.tuenti.voice.core.manager.BuddyManagerImpl;
8 | import com.tuenti.voice.core.manager.CallManagerImpl;
9 | import com.tuenti.voice.core.manager.ConnectionManagerImpl;
10 | import com.tuenti.voice.core.manager.StatManagerImpl;
11 |
12 | public class VoiceClientService
13 | extends Service
14 | {
15 | // ------------------------------ FIELDS ------------------------------
16 |
17 | private BuddyManagerImpl mBuddyManager;
18 |
19 | private CallManagerImpl mCallManager;
20 |
21 | private VoiceClient mClient;
22 |
23 | private ConnectionManagerImpl mConnectionManager;
24 |
25 | private StatManagerImpl mStatManager;
26 |
27 | // -------------------------- OTHER METHODS --------------------------
28 |
29 | @Override
30 | public IBinder onBind( Intent intent )
31 | {
32 | if ( IConnectionService.class.getName().equals( intent.getAction() ) )
33 | {
34 | return mConnectionManager.onBind();
35 | }
36 | if ( IBuddyService.class.getName().equals( intent.getAction() ) )
37 | {
38 | return mBuddyManager.onBind();
39 | }
40 | if ( ICallService.class.getName().equals( intent.getAction() ) )
41 | {
42 | return mCallManager.onBind();
43 | }
44 | if ( IStatService.class.getName().equals( intent.getAction() ) )
45 | {
46 | return mStatManager.onBind();
47 | }
48 | return null;
49 | }
50 |
51 | @Override
52 | public void onCreate()
53 | {
54 | super.onCreate();
55 |
56 | // VoiceClient should only be created here
57 | // probably init here too.
58 | mClient = new VoiceClient();
59 |
60 | // init managers
61 | mConnectionManager = new ConnectionManagerImpl( mClient );
62 | mBuddyManager = new BuddyManagerImpl( mClient );
63 | mCallManager = new CallManagerImpl( mClient, getBaseContext() );
64 | mStatManager = new StatManagerImpl( mClient );
65 |
66 | mClient.init(getApplicationContext());
67 | }
68 |
69 | @Override
70 | public void onDestroy()
71 | {
72 | // destroy the client
73 | mClient.release();
74 | mClient = null;
75 |
76 | super.onDestroy();
77 | }
78 |
79 | @Override
80 | public int onStartCommand( Intent intent, int flags, int startId )
81 | {
82 | return START_STICKY;
83 | }
84 | }
85 |
--------------------------------------------------------------------------------
/client/threadpriorityhandler.cc:
--------------------------------------------------------------------------------
1 | /*
2 | * webrtc-jingle
3 | * Copyright 2012 Tuenti Technologies
4 | *
5 | * Redistribution and use in source and binary forms, with or without
6 | * modification, are permitted provided that the following conditions are met:
7 | *
8 | * 1. Redistributions of source code must retain the above copyright notice,
9 | * this list of conditions and the following disclaimer.
10 | * 2. Redistributions in binary form must reproduce the above copyright notice,
11 | * this list of conditions and the following disclaimer in the documentation
12 | * and/or other materials provided with the distribution.
13 | * 3. The name of the author may not be used to endorse or promote products
14 | * derived from this software without specific prior written permission.
15 | *
16 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
17 | * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
18 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
19 | * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
20 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
21 | * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
22 | * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
23 | * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
24 | * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
25 | * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 | */
27 | #include
28 | #include
29 | #include "client/threadpriorityhandler.h"
30 | #include "client/logging.h"
31 |
32 | #ifdef ANDROID
33 | #include
34 | #endif
35 |
36 | namespace tuenti {
37 |
38 | #ifdef ANDROID
39 | JavaVM *ThreadPriorityHandler::jvm_ = NULL;
40 |
41 | void ThreadPriorityHandler::Init(JavaVM* jvm) {
42 | jvm_ = jvm;
43 | }
44 | #endif
45 |
46 | void ThreadPriorityHandler::SetPriority(int tid, int priority) {
47 | #ifdef ANDROID
48 | JNIEnv *env;
49 | int status = jvm_->AttachCurrentThread(&env, NULL);
50 | if (status < 0) {
51 | LOGE("failed to attach native thread");
52 | return;
53 | }
54 | jclass clazz = (jclass) env->NewGlobalRef(
55 | env->FindClass("android/os/Process"));
56 | if (!clazz) {
57 | LOGE("Failed to get class reference");
58 | jvm_->DetachCurrentThread();
59 | return;
60 | }
61 |
62 | jmethodID method = env->GetStaticMethodID(clazz, "setThreadPriority",
63 | "(II)V");
64 | if (!method) {
65 | LOGE("Failed to get method ID");
66 | jvm_->DetachCurrentThread();
67 | return;
68 | }
69 | env->CallStaticVoidMethod(clazz, method, (jint) tid, (jint) priority);
70 | jvm_->DetachCurrentThread();
71 | #endif
72 | return;
73 | }
74 | }
75 |
--------------------------------------------------------------------------------