As you all know I really want to get the A8 talking to a competent database via FujiNet. The inherent JSON functions of the FujiNet don't meet my needs. I want to connect to CubeSQL which is a server-sized version of SQLite. I want SQLite because it needs no running server, and yes I see the irony here.. No overhead of a huge overkill database and no admin headaches of said full scale database with this route.
I spent a while unfocused working in the background to get connected to CuebSQL. Initially I had a Perl script (A8SQLProxy) that would work as a mediator of sorts. It required its own authentication mechanism in addition to setting up users in CubeSQL, but I did get it working and was moving towards the SELECT implementation. During this it occurred to me I was going to have to write all kinds of handlers for different SQL functions inside my Perl script, so it kind of fell out of favor.
I waited and waited for FujiNet team to complete JSON. Its mostly there now, but doesn't work exactly as I need and is mainly geared toward queries. I also need SHA1 to generate the CubeSQL credentials that are presented within the JSON login. FujiNet has SHA1 but not where you can submit a string and get a result back. I asked for this and was told feel free to implement it. Not being familiar with embedded systems programming and the FujiNet source, I stepped back.
I decided to write my own "server" that will accept the user and password strings and respond back with the correctly formatted JSON which includes the appropriately hashed contents, some of which are not just straight up SHA1. I got this working recently, and needed a program to test connectivity.
I have a simple terminal-ish program on the A8 from my SQL proxy days that I will probably modify for command testing. In the mean time I started on a POC to demonstrate how it will all work.
Linux/Mac/Windows computer:
-Has SQLite database in a directory
-Has CubeSQL installed (free version allows for enough personal connections) with configured users and db permissions defined. This is the only listener (or server type service).
A8 with FujiNet:
-Program that makes use of FujiNet.
-Program gets JSON auth from HashServer.
-Program connects to CubeSQL with JSON auth, and does all its DB stuff until disconnected.
To that extent I started writing a ToDo List manager which will have a simple database on the backend. Here are the initial TUI elements. I am at the point where I need to incorporate the FujiNet Network IO routines, and write the routines to interact with them as needed.
I've got to work on the podcast over the next couple of weeks so I've got to put this aside for now. Close to proving this will work effectively!
Looks very interesting... wish I knew something about it. But my limited 80's programming skills are just that... 'old and in the way'. 😎