diff options
-rw-r--r-- | slixmpp/features/feature_session/session.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/slixmpp/features/feature_session/session.py b/slixmpp/features/feature_session/session.py index b525d50c..e0e69e87 100644 --- a/slixmpp/features/feature_session/session.py +++ b/slixmpp/features/feature_session/session.py @@ -43,11 +43,15 @@ class FeatureSession(BasePlugin): Arguments: feature -- The stream features element. """ - if not features['session']['optional']: - iq = self.xmpp.Iq() - iq['type'] = 'set' - iq.enable('session') - yield from iq.send(callback=self._on_start_session_response) + if features['session']['optional']: + self.xmpp.sessionstarted = True + self.xmpp.event('session_start') + return + + iq = self.xmpp.Iq() + iq['type'] = 'set' + iq.enable('session') + yield from iq.send(callback=self._on_start_session_response) def _on_start_session_response(self, response): self.xmpp.features.add('session') |