Feature Request: Remote Controllable JBidwatcher

Subscribe to Feature Request: Remote Controllable JBidwatcher 1 post, 1 voice

 
Avatar Eike 10 post(s)

It should be possible to control JBidwatcher from an other application, and get machine readable responses from it.

Possible Usage

I’m developing a program that creates time vs. price graphs for auctions, JBidwatcher-Companion. If the user double-clicks on an auction in the graph, it would be quite useful if this auction would be automatically selected in JBidwatcher. The user could then work with this auction in JBidwatcher.

Something similar is possible with Firefox. If you give it an URL argument on the command line, Firefox will display this website. If an instance of Firefox is already running, Firefox only opens a new tab, which is very fast. (I’m currently planning to display double-clicked auctions in Firefox.)
https://bugs.launchpad.net/jbidwatcher-companion/+bug/725295

For this very advanced Ebay monitoring program, which I have sketched in the linked page, a remote controllable JBidwatcher would be a central component.
https://blueprints.launchpad.net/jbidwatcher-companion/+spec/monitor-ebay-automatically

Implementation

JBidwatcher should listen for commands on some inter process communication channel, through which it accepts commands and sends replies. The Firefox method could be treated as a special case of this, where a newly started instance of JBidwatcher communicates with a long running instance of JBidwatcher.

If this channel is an Internet socket, there is the problem that the socket can be reached at least from every user on that particular machine. To avoid passwords, JBidwatcher could write a file with a “secret”, that can only be accessed by the user who started this particular instance of JBidwatcher. The same technique is called “magic cookie” by X-Windows IMHO.

I think the commands and replies should be in a human readable text format. I’d prefer JSON over XML, because XML is so clunky (IMHO). All I want are key-value pairs anyway.

The “select auction” command, that would be useful for JBidwatcher-Companion right now, would roughly look like this:

{"secret":“asfkjerpo2jk”, “command”:“select_auction”, “auction_id”:"123456789012"}

Eike.