| 28 | raise NotImplementedError('Missing "work" method') |
| 29 | |
| 30 | def emit_event(self, event, sender=None, level='info', formatted='', data={}): |
| 31 | if not sender: |
| 32 | sender=self |
| 33 | |
| 34 | # Print log only if X seconds are passed from last log |
| 35 | try: |
| 36 | if (time.time() - self.last_log_time) >= self.config.get('log_interval', 0): |
| 37 | self.last_log_time = time.time() |
| 38 | self.bot.event_manager.emit( |
| 39 | event, |
| 40 | sender=sender, |
| 41 | level=level, |
| 42 | formatted=formatted, |
| 43 | data=data |
| 44 | ) |
| 45 | except AttributeError: |
| 46 | if (time.time() - self.last_log_time) > 0: |
| 47 | self.last_log_time = time.time() |
| 48 | self.bot.event_manager.emit( |
| 49 | event, |
| 50 | sender=sender, |
| 51 | level=level, |
| 52 | formatted=formatted, |
| 53 | data=data |
| 54 | ) |
| 55 | |
| 56 | |
| 57 | def initialize(self): |