Frankly, I've been disappointed in Xively since it changed from the old Cosm. Remember, before that it was Pachube. Once upon a time it was a group of ambitious programmers that were working on a dream, now it's something else; I'm not sure what. However, I haven't given up on them. They still haven't completed things like their graphing API that everyone wants to use, but they have expanded their default graphs so I can select the period I want to see. So, maybe there's still some interest among their developers. However, I did ask them to come up with a way to port the legacy feeds to their new development system, and they put me in contact with a developer that was supposed to work on it. This was over a month ago and I haven't heard from him again in weeks. The single most annoying thing was their removal of the forum they had. Now, if you have a question you're supposed to go to StackOverflow, and those folks can be rude and condescending. Sure, I'm not the sharpest tool in the shed, but there are people on there that are just plain jerks. I absolutely hate asking questions there.
Anyway, I started playing with Python and their site. Since I might as well try their new interface and various capabilities at the same time, I followed their example and used their library. The first thing I ran into is that their python library is considered preview so I had to use the '--pre' option to load the darn thing. Next, they want me to use a virtual environment to develop, since I don't want to learn anything unnecessary at this point, I just ignored that part. Using the example shown at http://gnublade.github.io/xively-python/tutorials/raspberrypi.html, I put together a module and tried it. It worked.
However, do not under any circumstances name your source module the same as the library you're trying out. I named my source module 'xively.py' and it took me a couple of hours to figure out what the heck the problem was. When I changed it to 'testxively.py', I could take out the hundred or so debug statements that I had scattered all over the place and get on with trying it out.
Right now, I'm trying to combine gathering some data from my XBee network and incorporate it with the Xively example to create a module that can update Xively with real data. In my pursuit, I had to learn about logging with Python; seems the scheduler module uses system logging if it encounters an error. The Xively example only updates one data item, so that means I have to learn how to update a whole series of them (ain't no example for that).
So, maybe you understand why I labeled this entry as 'Part 1', I'm not sure how many parts there will be, but this is getting really confusing.
Anyway, I started playing with Python and their site. Since I might as well try their new interface and various capabilities at the same time, I followed their example and used their library. The first thing I ran into is that their python library is considered preview so I had to use the '--pre' option to load the darn thing. Next, they want me to use a virtual environment to develop, since I don't want to learn anything unnecessary at this point, I just ignored that part. Using the example shown at http://gnublade.github.io/xively-python/tutorials/raspberrypi.html, I put together a module and tried it. It worked.
However, do not under any circumstances name your source module the same as the library you're trying out. I named my source module 'xively.py' and it took me a couple of hours to figure out what the heck the problem was. When I changed it to 'testxively.py', I could take out the hundred or so debug statements that I had scattered all over the place and get on with trying it out.
Right now, I'm trying to combine gathering some data from my XBee network and incorporate it with the Xively example to create a module that can update Xively with real data. In my pursuit, I had to learn about logging with Python; seems the scheduler module uses system logging if it encounters an error. The Xively example only updates one data item, so that means I have to learn how to update a whole series of them (ain't no example for that).
So, maybe you understand why I labeled this entry as 'Part 1', I'm not sure how many parts there will be, but this is getting really confusing.