src/com/beem/project/beem/BeemService.java
author dasilvj
Fri, 06 Nov 2009 17:51:22 +0100
changeset 493 56af5554a081
parent 472 4acc4947d6bc
child 494 dd9ad5fec728
permissions -rw-r--r--
Save of the work on activity Chat.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
17
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
     1
package com.beem.project.beem;
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
     2
80
29f0d6a23321 Le proxy devrait marcher a peu pres.
Da Risk <darisk972@gmail.com>
parents: 72
diff changeset
     3
import org.jivesoftware.smack.ConnectionConfiguration;
94
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
     4
import org.jivesoftware.smack.Roster;
381
166db9c93335 Bundle pour debug avec nikita.
Vincent Veronis <veroni_v@epitech.net>
parents: 377
diff changeset
     5
import org.jivesoftware.smack.XMPPConnection;
315
151b1b64f407 ajout de la fonctionnalite require ssl/tls dans le service
nikita@localhost
parents: 313
diff changeset
     6
import org.jivesoftware.smack.ConnectionConfiguration.SecurityMode;
94
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
     7
import org.jivesoftware.smack.Roster.SubscriptionMode;
80
29f0d6a23321 Le proxy devrait marcher a peu pres.
Da Risk <darisk972@gmail.com>
parents: 72
diff changeset
     8
import org.jivesoftware.smack.proxy.ProxyInfo;
29f0d6a23321 Le proxy devrait marcher a peu pres.
Da Risk <darisk972@gmail.com>
parents: 72
diff changeset
     9
import org.jivesoftware.smack.proxy.ProxyInfo.ProxyType;
326
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    10
import org.jivesoftware.smack.util.StringUtils;
239
65369afd96d3 Rajout de Log dans le beem service pour les reconnections etc.
marseille@marseille-desktop
parents: 236
diff changeset
    11
17
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
    12
import android.app.Notification;
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
    13
import android.app.NotificationManager;
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
    14
import android.app.Service;
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
    15
import android.content.Intent;
19
213b84d2e743 Improve the service. It connect with a xmpp server running on the
Da Risk <darisk972@gmail.com>
parents: 18
diff changeset
    16
import android.content.SharedPreferences;
377
5f60caa9f85c deplacement de l'eventListener cote service
Nikita Kozlov <nikita@beem-project.com>
parents: 375
diff changeset
    17
import android.content.SharedPreferences.Editor;
17
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
    18
import android.os.IBinder;
18
1063d4bde1aa commit pour test avec barbu
Da Risk <darisk972@gmail.com>
parents: 17
diff changeset
    19
import android.os.RemoteException;
404
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
    20
import android.preference.PreferenceManager;
94
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
    21
import android.util.Log;
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
    22
357
6ebfc44182ab des petis oublies au niveau du rtp lors du portage.
nikita@localhost.localdomain
parents: 351
diff changeset
    23
import com.beem.project.beem.jingle.JingleService;
67
8c3870db8e31 Rename some XMPP* classes in Xmpp*
Da Risk <darisk972@gmail.com>
parents: 55
diff changeset
    24
import com.beem.project.beem.service.XmppConnectionAdapter;
8c3870db8e31 Rename some XMPP* classes in Xmpp*
Da Risk <darisk972@gmail.com>
parents: 55
diff changeset
    25
import com.beem.project.beem.service.XmppFacade;
8c3870db8e31 Rename some XMPP* classes in Xmpp*
Da Risk <darisk972@gmail.com>
parents: 55
diff changeset
    26
import com.beem.project.beem.service.aidl.IXmppFacade;
72
cdedc3a25d39 Show a progress dialog during connection with the server
Da Risk <darisk972@gmail.com>
parents: 67
diff changeset
    27
17
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
    28
/**
326
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    29
 * This class is for the Beem service. The connection to the xmpp server will be made asynchronously when the service
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    30
 * will start.
17
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
    31
 * @author darisk
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
    32
 */
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
    33
public class BeemService extends Service {
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
    34
72
cdedc3a25d39 Show a progress dialog during connection with the server
Da Risk <darisk972@gmail.com>
parents: 67
diff changeset
    35
    /**
cdedc3a25d39 Show a progress dialog during connection with the server
Da Risk <darisk972@gmail.com>
parents: 67
diff changeset
    36
     * The id to use for status notification.
cdedc3a25d39 Show a progress dialog during connection with the server
Da Risk <darisk972@gmail.com>
parents: 67
diff changeset
    37
     */
326
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    38
    public static final int NOTIFICATION_STATUS_ID = 100;
409
09cfee97f900 petit debug dans les options
Nikita Kozlov <nikita@beem-project.com>
parents: 406
diff changeset
    39
    private static final int DEFAULT_XMPP_PORT = 5222;
72
cdedc3a25d39 Show a progress dialog during connection with the server
Da Risk <darisk972@gmail.com>
parents: 67
diff changeset
    40
326
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    41
    private NotificationManager mNotificationManager;
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    42
    private XmppConnectionAdapter mConnection;
357
6ebfc44182ab des petis oublies au niveau du rtp lors du portage.
nikita@localhost.localdomain
parents: 351
diff changeset
    43
    private JingleService mJingle;
326
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    44
    private SharedPreferences mSettings;
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    45
    private String mLogin;
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    46
    private String mPassword;
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    47
    private String mHost;
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    48
    private String mService;
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    49
    private int mPort;
80
29f0d6a23321 Le proxy devrait marcher a peu pres.
Da Risk <darisk972@gmail.com>
parents: 72
diff changeset
    50
    private ConnectionConfiguration mConnectionConfiguration;
326
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    51
    private ProxyInfo mProxyInfo;
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    52
    private boolean mUseProxy;
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
    53
    private IXmppFacade.Stub mBind;
21
b9f4a0ef574a Contact List OK.
marseille@marseille-desktop
parents: 19
diff changeset
    54
55
66732dd2cb77 Add an interface for sending im message.
Da Risk <darisk972@gmail.com>
parents: 42
diff changeset
    55
    /**
72
cdedc3a25d39 Show a progress dialog during connection with the server
Da Risk <darisk972@gmail.com>
parents: 67
diff changeset
    56
     * Constructor.
cdedc3a25d39 Show a progress dialog during connection with the server
Da Risk <darisk972@gmail.com>
parents: 67
diff changeset
    57
     */
cdedc3a25d39 Show a progress dialog during connection with the server
Da Risk <darisk972@gmail.com>
parents: 67
diff changeset
    58
    public BeemService() {
cdedc3a25d39 Show a progress dialog during connection with the server
Da Risk <darisk972@gmail.com>
parents: 67
diff changeset
    59
    }
cdedc3a25d39 Show a progress dialog during connection with the server
Da Risk <darisk972@gmail.com>
parents: 67
diff changeset
    60
cdedc3a25d39 Show a progress dialog during connection with the server
Da Risk <darisk972@gmail.com>
parents: 67
diff changeset
    61
    /**
94
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
    62
     * Initialise la configuration de la connexion.
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
    63
     */
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
    64
    private void initConnectionConfig() {
313
3805671d14ff oublie du provider
nikita@localhost
parents: 297
diff changeset
    65
	java.security.Security.addProvider(new com.sun.security.sasl.Provider());
404
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
    66
	mUseProxy = mSettings.getBoolean("settings_key_proxy_use", false);
94
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
    67
	if (mUseProxy) {
404
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
    68
	    String stype = mSettings.getString("settings_key_proxy_type", "HTTP");
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
    69
	    String phost = mSettings.getString("settings_key_proxy_server", "");
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
    70
	    String puser = mSettings.getString("settings_key_proxy_username", "");
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
    71
	    String ppass = mSettings.getString("settings_key_proxy_password", "");
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
    72
	    int pport = Integer.parseInt(mSettings.getString("settings_key_proxy_port", "1080"));
94
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
    73
	    ProxyInfo.ProxyType type = ProxyType.valueOf(stype);
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
    74
	    mProxyInfo = new ProxyInfo(type, phost, pport, puser, ppass);
193
marseille@marseille-desktop
parents: 190
diff changeset
    75
	    if (mService != null)
marseille@marseille-desktop
parents: 190
diff changeset
    76
		mConnectionConfiguration = new ConnectionConfiguration(mHost, mPort, mService, mProxyInfo);
marseille@marseille-desktop
parents: 190
diff changeset
    77
	    else
marseille@marseille-desktop
parents: 190
diff changeset
    78
		mConnectionConfiguration = new ConnectionConfiguration(mHost, mPort, mProxyInfo);
94
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
    79
	} else {
193
marseille@marseille-desktop
parents: 190
diff changeset
    80
	    if (mService != null)
marseille@marseille-desktop
parents: 190
diff changeset
    81
		mConnectionConfiguration = new ConnectionConfiguration(mHost, mPort, mService);
marseille@marseille-desktop
parents: 190
diff changeset
    82
	    else
marseille@marseille-desktop
parents: 190
diff changeset
    83
		mConnectionConfiguration = new ConnectionConfiguration(mHost, mPort);
94
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
    84
	}
406
17b507817a12 petit debug des settings pour gtalk
Nikita Kozlov <nikita@beem-project.com>
parents: 404
diff changeset
    85
	if (mSettings.getBoolean("settings_key_xmpp_tls_use", false)
17b507817a12 petit debug des settings pour gtalk
Nikita Kozlov <nikita@beem-project.com>
parents: 404
diff changeset
    86
	    || mSettings.getBoolean("settings_key_gmail", false)) {
315
151b1b64f407 ajout de la fonctionnalite require ssl/tls dans le service
nikita@localhost
parents: 313
diff changeset
    87
	    mConnectionConfiguration.setSecurityMode(SecurityMode.required);
151b1b64f407 ajout de la fonctionnalite require ssl/tls dans le service
nikita@localhost
parents: 313
diff changeset
    88
	}
133
190a55f30e11 tite modif avant merge
Da Risk <darisk972@gmail.com>
parents: 122
diff changeset
    89
	mConnectionConfiguration.setDebuggerEnabled(false);
94
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
    90
	mConnectionConfiguration.setSendPresence(true);
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
    91
    }
99
8de21ac527ce revert pour refaire un push propre
nikita@nikita-rack
parents: 98
diff changeset
    92
351
718557c6c309 Checkstyle rules
darisk@kaaliyah
parents: 342
diff changeset
    93
    /**
212
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
    94
     * {@inheritDoc}
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
    95
     */
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
    96
    @Override
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
    97
    public IBinder onBind(Intent intent) {
493
56af5554a081 Save of the work on activity Chat.
dasilvj
parents: 472
diff changeset
    98
	Log.d("BEEMSERVICE", "ONBIND()");
212
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
    99
	return mBind;
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   100
    }
420
ecddfb6c0e2a Checkstyle
Da Risk <darisk972@gmail.com>
parents: 419
diff changeset
   101
411
f3f170821417 bon petit debug sur la unbind du service lors du login
Nikita Kozlov <nikita@beem-project.com>
parents: 410
diff changeset
   102
    @Override
f3f170821417 bon petit debug sur la unbind du service lors du login
Nikita Kozlov <nikita@beem-project.com>
parents: 410
diff changeset
   103
    public boolean onUnbind(Intent intent) {
493
56af5554a081 Save of the work on activity Chat.
dasilvj
parents: 472
diff changeset
   104
	Log.d("BEEMSERVICE", "ONUNBIND()");
411
f3f170821417 bon petit debug sur la unbind du service lors du login
Nikita Kozlov <nikita@beem-project.com>
parents: 410
diff changeset
   105
	if (!mConnection.getAdaptee().isConnected()) {
f3f170821417 bon petit debug sur la unbind du service lors du login
Nikita Kozlov <nikita@beem-project.com>
parents: 410
diff changeset
   106
	    this.stopSelf();
420
ecddfb6c0e2a Checkstyle
Da Risk <darisk972@gmail.com>
parents: 419
diff changeset
   107
	}
411
f3f170821417 bon petit debug sur la unbind du service lors du login
Nikita Kozlov <nikita@beem-project.com>
parents: 410
diff changeset
   108
	return true;
f3f170821417 bon petit debug sur la unbind du service lors du login
Nikita Kozlov <nikita@beem-project.com>
parents: 410
diff changeset
   109
    }
402
4684a42ae0ad pas mal de cleannance et aussi du debug sur les decos
Nikita Kozlov <nikita@beem-project.com>
parents: 396
diff changeset
   110
212
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   111
    /**
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   112
     * {@inheritDoc}
94
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
   113
     */
212
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   114
    @Override
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   115
    public void onCreate() {
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   116
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   117
	super.onCreate();
404
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
   118
	mSettings = PreferenceManager.getDefaultSharedPreferences(this);
420
ecddfb6c0e2a Checkstyle
Da Risk <darisk972@gmail.com>
parents: 419
diff changeset
   119
	String tmpJid = mSettings.getString("settings_key_account_username", "");
410
60e54a934da2 Correction bug a la connection dans beemservice.
Vincent Veronis <veroni_v@epitech.net>
parents: 409
diff changeset
   120
	mLogin = StringUtils.parseName(tmpJid);
404
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
   121
	mPassword = mSettings.getString("settings_key_account_password", "");
409
09cfee97f900 petit debug dans les options
Nikita Kozlov <nikita@beem-project.com>
parents: 406
diff changeset
   122
	mPort = DEFAULT_XMPP_PORT;
410
60e54a934da2 Correction bug a la connection dans beemservice.
Vincent Veronis <veroni_v@epitech.net>
parents: 409
diff changeset
   123
	mService = StringUtils.parseServer(tmpJid);
60e54a934da2 Correction bug a la connection dans beemservice.
Vincent Veronis <veroni_v@epitech.net>
parents: 409
diff changeset
   124
	mHost = StringUtils.parseServer(tmpJid);
409
09cfee97f900 petit debug dans les options
Nikita Kozlov <nikita@beem-project.com>
parents: 406
diff changeset
   125
09cfee97f900 petit debug dans les options
Nikita Kozlov <nikita@beem-project.com>
parents: 406
diff changeset
   126
	if (mSettings.getBoolean("settings_key_specific_server", false)) {
09cfee97f900 petit debug dans les options
Nikita Kozlov <nikita@beem-project.com>
parents: 406
diff changeset
   127
	    mHost = mSettings.getString("settings_key_xmpp_server", "");
09cfee97f900 petit debug dans les options
Nikita Kozlov <nikita@beem-project.com>
parents: 406
diff changeset
   128
	    mPort = Integer.parseInt(mSettings.getString("settings_key_xmpp_port", "5222"));
09cfee97f900 petit debug dans les options
Nikita Kozlov <nikita@beem-project.com>
parents: 406
diff changeset
   129
	}
404
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
   130
	if (mSettings.getBoolean("settings_key_gmail", false)) {
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
   131
	    mHost = "talk.google.com";
421
c566f7fd7df1 debug connection google
Nikita Kozlov <nikita@beem-project.com>
parents: 420
diff changeset
   132
	    mLogin = tmpJid;
404
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
   133
	}
3c8ca2a1a327 changement de la gestion des settings.
Nikita Kozlov <nikita@beem-project.com>
parents: 402
diff changeset
   134
212
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   135
	initConnectionConfig();
326
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
   136
	mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
212
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   137
	mConnection = new XmppConnectionAdapter(mConnectionConfiguration, mLogin, mPassword, this);
402
4684a42ae0ad pas mal de cleannance et aussi du debug sur les decos
Nikita Kozlov <nikita@beem-project.com>
parents: 396
diff changeset
   138
375
Nikita Kozlov <nikita@beem-project.com>
parents: 360
diff changeset
   139
	Roster.setDefaultSubscriptionMode(SubscriptionMode.manual);
436
13468f4c8f45 petit debug sur le call et maj group
Nikita Kozlov <nikita@beem-project.com>
parents: 421
diff changeset
   140
	mJingle = new JingleService(mConnection.getAdaptee());
357
6ebfc44182ab des petis oublies au niveau du rtp lors du portage.
nikita@localhost.localdomain
parents: 351
diff changeset
   141
	mBind = new XmppFacade(mConnection, this, mJingle);
472
4acc4947d6bc Fixes #207
Da Risk <darisk972@gmail.com>
parents: 436
diff changeset
   142
	Log.d("BEEEMSERVICE", "ONCREATE");
212
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   143
    }
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   144
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   145
    /**
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   146
     * {@inheritDoc}
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   147
     */
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   148
    @Override
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   149
    public void onDestroy() {
263
ff0b4790a5ed La gestion de la connection et des changement de settings a ete revu.
marseille@marseille-desktop
parents: 239
diff changeset
   150
	super.onDestroy();
212
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   151
	mNotificationManager.cancel(NOTIFICATION_STATUS_ID);
472
4acc4947d6bc Fixes #207
Da Risk <darisk972@gmail.com>
parents: 436
diff changeset
   152
	if (mConnection.isAuthentificated())
4acc4947d6bc Fixes #207
Da Risk <darisk972@gmail.com>
parents: 436
diff changeset
   153
	    mConnection.disconnect();
402
4684a42ae0ad pas mal de cleannance et aussi du debug sur les decos
Nikita Kozlov <nikita@beem-project.com>
parents: 396
diff changeset
   154
	Log.d("BEEEMSERVICE", "ONDESTROY");
212
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   155
    }
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   156
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   157
    /**
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   158
     * {@inheritDoc}
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   159
     */
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   160
    @Override
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   161
    public void onStart(Intent intent, int startId) {
263
ff0b4790a5ed La gestion de la connection et des changement de settings a ete revu.
marseille@marseille-desktop
parents: 239
diff changeset
   162
	super.onStart(intent, startId);
212
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   163
	try {
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   164
	    mConnection.connectAsync();
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   165
	} catch (RemoteException e) {
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   166
	    e.printStackTrace();
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   167
	}
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   168
    }
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   169
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   170
    /**
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   171
     * Show a notification.
326
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
   172
     * @param id the id of the notification.
c5f000965df8 Reconnection
Marseille
parents: 315
diff changeset
   173
     * @param notif the notification to show
212
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   174
     */
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   175
    public void sendNotification(int id, Notification notif) {
bbc0b169cdf0 Issues #124, #67, #88
dasilvj
parents: 193
diff changeset
   176
	mNotificationManager.notify(id, notif);
94
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
   177
    }
904759c1bd62 Draft de reception d'une demande d'ajout.
Da Risk <darisk972@gmail.com>
parents: 83
diff changeset
   178
377
5f60caa9f85c deplacement de l'eventListener cote service
Nikita Kozlov <nikita@beem-project.com>
parents: 375
diff changeset
   179
    /**
420
ecddfb6c0e2a Checkstyle
Da Risk <darisk972@gmail.com>
parents: 419
diff changeset
   180
     * Delete a notification.
419
88e1a96ee8da Retrait des notifications quand on ouvre le chat d'une personne qui vient
Da Risk <darisk972@gmail.com>
parents: 412
diff changeset
   181
     * @param id the id of the notification
88e1a96ee8da Retrait des notifications quand on ouvre le chat d'une personne qui vient
Da Risk <darisk972@gmail.com>
parents: 412
diff changeset
   182
     */
88e1a96ee8da Retrait des notifications quand on ouvre le chat d'une personne qui vient
Da Risk <darisk972@gmail.com>
parents: 412
diff changeset
   183
    public void deleteNotification(int id) {
88e1a96ee8da Retrait des notifications quand on ouvre le chat d'une personne qui vient
Da Risk <darisk972@gmail.com>
parents: 412
diff changeset
   184
	mNotificationManager.cancel(id);
88e1a96ee8da Retrait des notifications quand on ouvre le chat d'une personne qui vient
Da Risk <darisk972@gmail.com>
parents: 412
diff changeset
   185
    }
88e1a96ee8da Retrait des notifications quand on ouvre le chat d'une personne qui vient
Da Risk <darisk972@gmail.com>
parents: 412
diff changeset
   186
88e1a96ee8da Retrait des notifications quand on ouvre le chat d'une personne qui vient
Da Risk <darisk972@gmail.com>
parents: 412
diff changeset
   187
    /**
377
5f60caa9f85c deplacement de l'eventListener cote service
Nikita Kozlov <nikita@beem-project.com>
parents: 375
diff changeset
   188
     * Reset the status to online after a deconnection.
5f60caa9f85c deplacement de l'eventListener cote service
Nikita Kozlov <nikita@beem-project.com>
parents: 375
diff changeset
   189
     */
5f60caa9f85c deplacement de l'eventListener cote service
Nikita Kozlov <nikita@beem-project.com>
parents: 375
diff changeset
   190
    public void resetStatus() {
5f60caa9f85c deplacement de l'eventListener cote service
Nikita Kozlov <nikita@beem-project.com>
parents: 375
diff changeset
   191
	Editor edit = mSettings.edit();
5f60caa9f85c deplacement de l'eventListener cote service
Nikita Kozlov <nikita@beem-project.com>
parents: 375
diff changeset
   192
	edit.putInt(getString(R.string.PreferenceStatus), 1);
5f60caa9f85c deplacement de l'eventListener cote service
Nikita Kozlov <nikita@beem-project.com>
parents: 375
diff changeset
   193
	edit.commit();
5f60caa9f85c deplacement de l'eventListener cote service
Nikita Kozlov <nikita@beem-project.com>
parents: 375
diff changeset
   194
    }
5f60caa9f85c deplacement de l'eventListener cote service
Nikita Kozlov <nikita@beem-project.com>
parents: 375
diff changeset
   195
402
4684a42ae0ad pas mal de cleannance et aussi du debug sur les decos
Nikita Kozlov <nikita@beem-project.com>
parents: 396
diff changeset
   196
    /**
4684a42ae0ad pas mal de cleannance et aussi du debug sur les decos
Nikita Kozlov <nikita@beem-project.com>
parents: 396
diff changeset
   197
     * init jingle from XmppConnectionAdapter.
4684a42ae0ad pas mal de cleannance et aussi du debug sur les decos
Nikita Kozlov <nikita@beem-project.com>
parents: 396
diff changeset
   198
     * @param adaptee XmppConntection used for jingle.
4684a42ae0ad pas mal de cleannance et aussi du debug sur les decos
Nikita Kozlov <nikita@beem-project.com>
parents: 396
diff changeset
   199
     */
381
166db9c93335 Bundle pour debug avec nikita.
Vincent Veronis <veroni_v@epitech.net>
parents: 377
diff changeset
   200
    public void initJingle(XMPPConnection adaptee) {
402
4684a42ae0ad pas mal de cleannance et aussi du debug sur les decos
Nikita Kozlov <nikita@beem-project.com>
parents: 396
diff changeset
   201
	mJingle.initWhenConntected(adaptee);
381
166db9c93335 Bundle pour debug avec nikita.
Vincent Veronis <veroni_v@epitech.net>
parents: 377
diff changeset
   202
    }
17
afd3a080d318 On a un service qui se lance.
Da Risk <darisk972@gmail.com>
parents:
diff changeset
   203
}