def event(self, event_data, priority="normal", event_method="EVENT"):
        logger.debug("event: " + str(event_data))
        euuid = uuid.uuid1()
        logger.debug("<%s> <euuid:%s> Sending event data to server: "
               "%s" % (str(self.cuuid), str(euuid), str(self.server)))
        if not self.listener.listening:
            logger.warning("Neteria client is not listening.")
        if not self.registered:
            logger.warning("<%s> <euuid:%s> Client is currently not registered. "
                            "Event not sent." % (str(self.cuuid), str(euuid)))
            return False
        packet = {"method": event_method,
                  "cuuid": str(self.cuuid),
                  "euuid": str(euuid),
                  "event_data": event_data,
                  "timestamp": str(datetime.now()),
                  "retry": 0,
                  "priority": priority}
        self.listener.send_datagram(
            serialize_data(packet, self.compression,
                           self.encryption, self.server_key),
            self.server)
        logger.debug("<%s> Sending EVENT Packet: %s" % (str(self.cuuid),
                                                         pformat(packet)))
        self.event_uuids[str(euuid)] = packet
        logger.debug("<%s> Scheduling retry in %s seconds" % (str(self.cuuid),
                                                               str(self.timeout)))
        self.listener.call_later(self.timeout, self.retransmit, packet)
        return euuid