Exemple #1
0
 def disconnect(self, close_code):
     LOGGER.warn("JanusWebConsumer: Closed with code: {}".format(close_code))
     if self.printer:
         async_to_sync(self.channel_layer.group_discard)(
             channels.janus_web_group_name(self.printer.id),
             self.channel_name
         )
Exemple #2
0
    def connect(self):
        self.printer = None
        self.printer = self.get_printer()

        async_to_sync(self.channel_layer.group_add)(
            channels.janus_web_group_name(self.printer.id), self.channel_name)

        self.accept('janus-protocol')
Exemple #3
0
 def connect(self):
     self.printer_id = self.scope['url_route']['kwargs']['printer_id']
     try:
         async_to_sync(self.channel_layer.group_add)(
             channels.janus_web_group_name(self.printer_id),
             self.channel_name)
         self.accept('janus-protocol')
     except:
         self.close()
Exemple #4
0
    def connect(self):
        try:
            if self.scope['path'].startswith('/ws/share_token/') or self.scope['path'].startswith('/ws/token/'):
                self.printer = self.scope['user']
            else:
                # Exception for un-authenticated or un-authorized access
                self.printer = Printer.objects.get(user=self.scope['user'], id=self.scope['url_route']['kwargs']['printer_id'])

            async_to_sync(self.channel_layer.group_add)(
                channels.janus_web_group_name(self.printer.id),
                self.channel_name
            )
            self.accept('janus-protocol')
        except:
            LOGGER.exception("Websocket failed to connect")
            self.close()
 def receive(self, text_data=None, bytes_data=None):
     channels.touch_channel(channels.janus_web_group_name(self.printer.id),
                            self.channel_name)
     channels.send_msg_to_printer(self.printer.id, {'janus': text_data})