blob: fc6b7322f7aa2a8608f342f98e50f5881f60631d [file] [log] [blame]
Alexandre Lision5f144b82014-02-11 09:59:36 -05001package org.sflphone.fragments;
2
3import android.content.BroadcastReceiver;
4import android.content.Context;
5import android.content.Intent;
6import android.content.IntentFilter;
7import android.os.Bundle;
8import android.support.v4.app.Fragment;
9import android.util.Log;
10import android.view.LayoutInflater;
11import android.view.View;
12import android.view.ViewGroup;
13import org.sflphone.interfaces.CallInterface;
14import org.sflphone.service.CallManagerCallBack;
15
16/**
17 * Created by lisional on 10/02/14.
18 */
19public abstract class CallableWrapperFragment extends Fragment implements CallInterface {
20
21
22 private CallReceiver mReceiver;
23
24
25 @Override
26 public void onCreate(Bundle savedInstanceState) {
27 super.onCreate(savedInstanceState);
28 mReceiver = new CallReceiver();
29 }
30
31 @Override
32 public void onResume() {
33 super.onResume();IntentFilter intentFilter = new IntentFilter();
34 intentFilter.addAction(CallManagerCallBack.INCOMING_CALL);
35 intentFilter.addAction(CallManagerCallBack.INCOMING_TEXT);
36 intentFilter.addAction(CallManagerCallBack.CALL_STATE_CHANGED);
37 intentFilter.addAction(CallManagerCallBack.CONF_CREATED);
38 intentFilter.addAction(CallManagerCallBack.CONF_REMOVED);
39 intentFilter.addAction(CallManagerCallBack.CONF_CHANGED);
40 intentFilter.addAction(CallManagerCallBack.RECORD_STATE_CHANGED);
41 intentFilter.addAction(CallManagerCallBack.ZRTP_OFF);
42 intentFilter.addAction(CallManagerCallBack.ZRTP_ON);
43 intentFilter.addAction(CallManagerCallBack.DISPLAY_SAS);
44 getActivity().registerReceiver(mReceiver, intentFilter);
45 }
46
47
48 @Override
49 public void onPause() {
50 super.onPause();
51 getActivity().unregisterReceiver(mReceiver);
52 }
53
54 @Override
55 public void callStateChanged(Intent callState) {
56
57 }
58
59 @Override
60 public void incomingText(Intent msg) {
61
62 }
63
64 @Override
65 public void confCreated(Intent intent) {
66
67 }
68
69 @Override
70 public void confRemoved(Intent intent) {
71
72 }
73
74 @Override
75 public void confChanged(Intent intent) {
76
77 }
78
79 @Override
80 public void recordingChanged(Intent intent) {
81
82 }
83
84 @Override
85 public void secureZrtpOn(Intent intent) {
86
87 }
88
89 @Override
90 public void secureZrtpOff(Intent intent) {
91
92 }
93
94 @Override
95 public void displaySAS(Intent intent) {
96
97 }
98
99 public class CallReceiver extends BroadcastReceiver {
100
101 private final String TAG = CallReceiver.class.getSimpleName();
102
103 @Override
104 public void onReceive(Context context, Intent intent) {
105 if (intent.getAction().contentEquals(CallManagerCallBack.INCOMING_TEXT)) {
106 incomingText(intent);
107 } else if (intent.getAction().contentEquals(CallManagerCallBack.CALL_STATE_CHANGED)) {
108 callStateChanged(intent);
109 } else if (intent.getAction().contentEquals(CallManagerCallBack.CONF_CREATED)) {
110 confCreated(intent);
111 } else if (intent.getAction().contentEquals(CallManagerCallBack.CONF_REMOVED)) {
112 confRemoved(intent);
113 } else if (intent.getAction().contentEquals(CallManagerCallBack.CONF_CHANGED)) {
114 confChanged(intent);
115 } else if (intent.getAction().contentEquals(CallManagerCallBack.RECORD_STATE_CHANGED)) {
116 recordingChanged(intent);
117 } else if (intent.getAction().contentEquals(CallManagerCallBack.ZRTP_OFF)) {
118 secureZrtpOff(intent);
119 } else if (intent.getAction().contentEquals(CallManagerCallBack.ZRTP_ON)) {
120 secureZrtpOn(intent);
121 } else if (intent.getAction().contentEquals(CallManagerCallBack.DISPLAY_SAS)) {
122 displaySAS(intent);
123 } else {
124 Log.e(TAG, "Unknown action: " + intent.getAction());
125 }
126
127 }
128
129 }
130
131
132}