Пример #1
0
    def createStream(self, qi_stream):
        if qi_stream is None:
            return

        if not isinstance(qi_stream, QiStream):
            return

        conn = http.HTTPConnection(self.url)
        conn.request("POST", self.__streamsBase, qi_stream.toString(),
                     self.__qi_headers())

        response = conn.getresponse()

        if response.status == 302:
            url = urlparse(response.getheader("Location"))
            response.close()

            conn.request("GET", url.path, headers=self.__qi_headers())
            response = conn.getresponse()

        if response.status == 200 or response.status == 201:
            stream = QiStream.fromString(response.read().decode())
            conn.close()
            return stream
        else:
            conn.close()
            raise QiError(
                "Failed to create QiStream, {stream_id}. {status}:{reason}".
                format(stream_id=qi_stream.Id,
                       status=response.status,
                       reason=response.reason))
Пример #2
0
    def createStream(self, qi_stream):
        if qi_stream is None:
            return

        if not isinstance(qi_stream, QiStream):
            return
   
        conn = http.HTTPConnection(self.url)
        conn.request("POST", "/qi/streams", qi_stream.toString(), self.__qi_headers())

        response = conn.getresponse()
     
        if response.status == 302:
            url =  urlparse(response.getheader("Location"))
            response.close()

            conn.request("GET", url.path, headers = self.__qi_headers())
            response = conn.getresponse()

        if response.status == 200 or response.status == 201:
            stream = QiStream.fromString(response.read().decode())
            conn.close()
            return stream
        else:
            conn.close()
            raise QiError("Failed to create QiStream, {stream_id}. {status}:{reason}".
                          format(stream_id = qi_stream.Id, status = response.status, reason = response.reason))