#!/usr/bin/env python # -*- coding:utf8 -*- # xapek.org, 2010 import asyncore from pymongo import Connection from ebus import EbusReader from time import time connection = Connection("10.2.2.13", 27017) db = connection["ebus"] db.authenticate("ebus", "ebus") collection = db["data"] def insert(ebus_packet): try: if ebus_packet.values() != dict(): data={'name':ebus_packet.name(), 'values':ebus_packet.values(), 'time':time()} collection.insert(data) print "Inserted: %s" % data except Exception,e: try: print "Failed to insert %s -- %s" % (ebus_packet.name(), e) except Exception,e: print e reader = EbusReader() reader.handle_ebus = insert reader.debug = False asyncore.loop()