8000 CRITICAL:root:Critical exception: __init__() takes exactly 3 arguments (2 given) · Issue #12 · toddmedema/echo · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
CRITICAL:root:Critical exception: __init__() takes exactly 3 arguments (2 given) #12
Open
@barMperez

Description

@barMperez
DEBUG:root:Listening for UPnP broadcasts
DEBUG:root:got local address of 192.168.1.8
DEBUG:root:UPnP broadcast listener: new device registered
DEBUG:root:FauxMo device 'Room Light' ready on 192.168.1.8:52000
DEBUG:root:Entering fauxmo polling loop
DEBUG:root:POST /upnp/control/basicevent1 HTTP/1.1
Host: 192.168.1.8:52000
Accept: */*
Content-type: text/xml; charset="utf-8"
SOAPACTION: "urn:Belkin:service:basicevent:1#GetBinaryState"
Content-Length: 299

<?xml version="1.0" encoding="utf-8"?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body><u:GetBinaryState xmlns:u="urn:Belkin:service:basicevent:1"><BinaryState>1</BinaryState></u:GetBinaryState></s:Body></s:Envelope>
DEBUG:root:Responding to ON for Room Light
CRITICAL:root:Critical exception: __init__() takes exactly 3 arguments (2 given)

I integrated with broadlink-python, at first all worked fine and now something went wrong.
the code:

import fauxmo
import logging
import time
import broadlink
import time
import sys

from debounce_handler import debounce_handler

logging.basicConfig(level=logging.DEBUG)

class device_handler(debounce_handler):
    """Publishes the on/off state requested,
       and the IP address of the Echo making the request.
    """
    TRIGGERS = {"device": 52000}

    def act(self, client_address, state, name):
		if state is True:
			device = broadlink.rm(host=("192.168.1.10",80), mac=bytearray.fromhex("b4430dc3de82"))
			device.auth()
			device.host
			codeData = "e90a4200df0916091609160916090916091616090916091616090916091609160916091609161609160916091609091616090916160909160916091609160916091609160916e90a4200df0916091609160916090916091616090916091616090916091609160916091609161609160916091609091616090916160909160916091609160916091609160916"
			device.send_data(codeData.decode('hex'))
			return True
		else:
			device = broadlink.rm(host=("192.168.1.10",80), mac=bytearray.fromhex("b4430dc3de82"))
			device.auth()
			device.host
			codeData = "e90a4200df0909160916091609161609091609161609160909160916091609160916091616091609160909161609091616090916160909160916160916091609160909161609e90a4200df0909160916091609161609091609161609160909160916091609160916091616091609160909161609091616090916160909160916160916091609160909161609"
			device.send_data(codeData.decode('hex'))
			return True

if __name__ == "__main__":
    # Startup the fauxmo server
    fauxmo.DEBUG = True
    p = fauxmo.poller()
    u = fauxmo.upnp_broadcast_responder()
    u.init_socket()
    p.add(u)

    # Register the device callback as a fauxmo handler
    d = device_handler()
    for trig, port in d.TRIGGERS.items():
        fauxmo.fauxmo(trig, u, p, None, port, d)

    # Loop and poll for incoming Echo requests
    logging.debug("Entering fauxmo polling loop")
    while True:
        try:
            # Allow time for a ctrl-c to stop the process
            p.poll(100)
            time.sleep(0.1)
        except Exception, e:
            logging.critical("Critical exception: " + str(e))
            break

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      0