# Copyright (C) 2013 INRIA
#
# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation;
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
"""
.. class:: Class Args :
- :param slice: Xmpp Slice
- :type slice: str
:param server: Xmpp Server
:type server: str
+ :param user: Xmpp User
+ :type user: str
:param port: Xmpp Port
:type port: str
:param password: Xmpp password
def __init__(self, server, user = "nepi", port="5222", password="1234",
exp_id = None):
"""
-
- :param slice: Xmpp Slice
- :type slice: str
:param server: Xmpp Server
:type server: str
+ :param user: Xmpp User
+ :type user: str
:param port: Xmpp Port
:type port: str
:param password: Xmpp password
def check_ready(self, xmpp):
delay = 1.0
- for i in xrange(4):
+ for i in xrange(15):
if xmpp.ready:
break
else:
delay = delay * 1.5
else:
msg = "XMPP Client is not ready after long time"
- self.error(msg, out, err)
- raise RuntimeError, msg
+ self.error(msg)
+ raise RuntimeError(msg)
@property
def _nepi_topic(self):
+ """ Return the name of the session topic
+
+ """
msg = "nepi-" + self._exp_id
self.debug(msg)
return msg
def _enroll_nepi(self):
- """ Create and Subscribe to the Session Topic
+ """ Create and Subscribe to the session Topic
"""
nepi_topic = self._nepi_topic
def frcp_inform(self, topic, cid, itype):
- """ Configure attribute on the node
+ """ Publish an inform message
"""
msg_id = os.urandom(16).encode('hex')
self._client.publish(payload, xmpp_node)
def frcp_configure(self, topic, props = None, guards = None ):
- """ Configure attribute on the node
+ """ Publish a configure message
"""
msg_id = os.urandom(16).encode('hex')
def frcp_create(self, msg_id, topic, rtype, props = None, guards = None ):
- """ Send to the stdin of the application the value
+ """ Publish a create message
"""
timestamp = tsformat()
self._client.publish(payload, xmpp_node)
def frcp_release(self, msg_id, parent, child, res_id = None, props = None, guards = None ):
- """ Delete the session and logger topics. Then disconnect
+ """ Publish a release message
"""
timestamp = tsformat()
#self._client.delete(child)
def check_mailbox(self, itype, attr):
+ """ Check the mail box
+
+ :param itype: type of mail
+ :type itype: str
+ :param attr: value wanted
+ :type attr: str
+
+ """
return self._client.check_mailbox(itype, attr)
def unenroll_topic(self, topic):
""" Delete the session and logger topics. Then disconnect
"""
+ # To receive the last messages
+ time.sleep(2)
+
self._client.delete(self._nepi_topic)
# Wait the send queue to be empty before disconnect