Projects


June 18, 2006: 12:02 pm: LokkjuProjects

As the title says, this is just a quick update to let people know that the dnsEditor SVN repo now includes a docs directory that has a schema.sql file, with the DB schema I use, and a named.conf.local. Any improvements to wither are welcome of course, just as any improvements to the base code are welcome.

May 31, 2006: 10:51 am: LokkjuProjects

I’ve released the source for SQL_CLI under the GPL. SQL_CLI is a simple program that allows you to run a set of SQL commands against a given DSN (or DSN-less connection string) using either OLE or ODBC.

It is written in C#, and the code should be easy enough for someone to understand.

It takes three arguments:

  • [ole|odbc] - The type of connection to make
  • [DSN] - The name of a DSN, or else a DSN-less connection string
  • [filename] - A SQL command file - essentially, a file with one SQL command per line

Hopefully some of you should find this useful - I use it for mass imports of data into all sorts of databases.

Source is here:
https://svn.lokkju.com/svn/SQL_CLI/trunk/

May 30, 2006: 3:40 pm: LokkjuProjects, Javascript

The source code for the dnsEditor:Ajaxified is now available. you can get it anonymously at:

https://svn.lokkju.com/svn/dnsEditor/trunk

Yes, it is ugly, but it *does* work.
All of the code is released under GPL, and other licenses are open to negotiation.
I will be commenting more code and cleaning it up as time goes by, and patches are always welcome - if you really want to help, I can also give you subversion access.

And donations are always welcome as well (see that little button on the side? it is there for a purpose…) *grin*.

Have fun…

April 28, 2006: 2:34 pm: LokkjuProjects, Google Maps, Widgets, Javascript

Just a quick note, I have started back in on the gmaps widget, using the GMap2 structure, and basing it on the API code to prevent future breakage.

Hopefully it should be released in a couple weeks!

April 13, 2006: 9:28 pm: LokkjuProjects

I needed a lits of all the asterisk functions, in a html list format, so I whipped up this:

CODE:
  1.  
  2. sudo -u www-data asterisk -rx 'show functions'|grep \(|awk '{print $1}'|while read line; do sudo -u www-data asterisk -r -n -q -x 'show function '$line''|perl -0777 -ne "\$f = \$_;\$f = s/\033\[(?:\d+(?:;\d+)*)*m//go;if (/function\s'(.*?)'.*?\[Syntax\]\n(.*?)\n.*?\[Synopsis\]\n(.*?)\n.*?\[Description\]\n(.*?)\n/sg) {print '<li>' . \$1 . '<span class="informal"><span class="syntax">' . \$2 . '</span><span class="synopsis">' . \$3 . '</span><span class="description">' . \$4 . '</span></span></li>' . \"\\n\";}" ; done
  3.  

and for all applications, xml format:

CODE:
  1. sudo -u www-data asterisk -rx 'show applications'|grep :| awk -F : '{gsub( /^ +| +$/, "", $1 ) ; print $1}'|sort|while read line; do sudo -u www-data asterisk -r -n -q -x 'show application '$line''|perl -0777 -ne "\$f = \$_;\$f = s/\033\[(?:\d+(?:;\d+)*)*m//go;\$f = s/\</&lt;/go;\$f = s/\>/&gt;/go;if (/application\s'(.*?)'.*?\[Synopsis\]\n(.*?)\n.*?\[Description\]\n(.*?)\n(.*?)\n\n/sg) {print '<application><name>' . \$1 . '</name><synopsis>' . \$2 . '</synopsis><usage>' . \$3 . '</usage><description>' . \$4 . '</description></application>' . \"\\n\";}"  ; done

Obviously, replace the www-data username with your asterisk username. Also, if you want to change the output details, just change the last bit, where perl outputs the results of the regex.

Have fun.

March 27, 2006: 7:16 pm: LokkjuProjects

Check out the new project at GMPrice.com

Well, I'm still doing more work on the GMaps Widget (I wish they would stop changing their code), and on the dnsEditor, but in the meantime I have a some project I recently put into alpha phase.

Please, don't pass this new service around too much - still in very alpha, and I would prefer to keep it light on the bandwidth.

At any rate, GMPrice (Grey Market Price) is a simple little tool for finding the average sold price of an item on ebay - this is very specifically just a "search proxy" - you type the query, it does the search, calculates some results, and returns them to you.

Next steps:

  • Right now it only looks at sold items with at least one bid - soon it will count "buy it now" sold items as well.
  • It will also eventually display a sold/unsold ratio

Oh yeah, I do need a logo for the Grey Market Price project, so... ideas/submissions are welcome

February 8, 2006: 8:13 pm: LokkjuProjects, Javascript

UPDATE:Source is now available!

So I finally found some more time to work on the dnsEditor interface - and I think I've done most of what was needed for now.
Demo: http://www.lokkju.com/projects/dnsEditor2/dnsEditor.php

Screenshot:
dnsEditor2: Ajaxified

Fixes/Additions:

  • Replaced all the +/- links to add/delete items with image buttons
  • Implemented Add/Delete Zones
  • Added a Refresh Zone List button
  • Added a hover tip box
  • Implemented multi-server update (through mysql) of modified records. (disabled in demo)
  • Automatically update the SOA serial with epoch time on changes

Still to possibly do:

  • Add TXT (and perhaps CNAME) abilities, this is actually very quick to do.
  • Add SPF generator to TXT records editor.
  • Add as you edit help - for instance, describe what the rules are for the feild you are currently in.
  • Add a verification function, to verify either a specific zone, or all zones in your DB, and generate a report (similar to dnsreports.com).
  • Add authentication, on a per zone, and possibly fine grained control of which records in a zone are allowed to be updated. Would most likely require seperate permissions table.
  • Add a database abstration layer for both different RDBMS and different table layout - I would love some suggestions on this. (MAJOR)

More suggestions are always welcome.

Original Post Here

January 26, 2006: 9:16 am: LokkjuProjects, Google Maps, Widgets

This is the unofficial Google Maps viewer for the OSX Dashboard.
Current version is 0.9c

Download

Version 0.9c Screenshot:
Gmaps 0.9a Screenshot
     Upcoming Version 1.0a Screenshot:
Gmaps Widget 1.0 Alpha

    Future Features:

  • Pop-out sidebar for directions support.
  • Print Functionality - options include new safari window, handle it within the widget, etc?
  • Some sort of route following function be of use (in directions mode)?
  • Support for loading your own xml/xsl mapping files.
  • Support for google's satellite maps (this is already done, just not enabled).
  • Support for TerraServer satellite mapping data - allowing better resolution, though with older photographs, for the satellite view.
  • Much better GUI - with design by Daniel Burka of SilverOrange

Update:
Still working on the bug fiexes, as google has switched to a new API - see the newest post on the subject here

    Current Bugs

  • It will not show the content in the popup pin windows.

I am always open to suggestions and improvements, so feel free to post in the comments section, or email me directly at lokkju@lokkju.com

January 12, 2006: 2:55 pm: LokkjuProjects

Normally, when using DB9 Modular ends, you use them with a "standard reversing" Cat5(e) cable - which is really only standard to a very small subset of people. If, like me, you are one of those people who always have the real "standard" Cat5(e) cable around - the stuff used for normal computer networking - then this pin diagram will show you how to create modular ends to turn it into a null modem cable. It is, after all, easier to carry a couple ends then it is a whole seperate serial cable. The other advantage, and the reason I do this, is because this makes it east to have double ended female, or double ended male serial cables - which are hard to find.

Anyway, the table:

Null Modem Cable End "A"

DB9 Pin # DB9 Signal Cat5(e) Color DB9 Connector Wire Color
9 RI (1)Orange-white (1)Blue
5 SGND (2)Orange (2)Orange
7 RTS (3)Blue-white (3)Black
8 CTS (4)Green-white (4)Red
4 DTR (5)Green (5)Green
6,1 DSR,DCD (6)Brown-white (6)Yellow
2 RD (7)Brown (7)Brown
3 TD (8)Blue (8)White

Null Modem Cable End "B"

DB9 Pin # DB9 Signal Cat5(e) Color DB9 Connector Wire Color
9 RI (1)Orange-white (1)Blue
5 SGND (2)Orange (2)Orange
8 RTS (3)Blue-white (3)Black
7 CTS (4)Green-white (4)Red
1,6 DTR (5)Green (5)Green
4 DSR,DCD (6)Brown-white (6)Yellow
3 RD (7)Brown (7)Brown
2 TD (8)Blue (8)White
January 10, 2006: 2:21 pm: LokkjuProjects, Javascript

Bind-DLZ (Dynamically Loadable Zones) is a patch for BIND version 9 that simplifies BIND administration and reduces memory usage and startup time. DLZ allows you to store your zone data in a database. Unlike using scripts, the changes in your database are immediately reflected in BIND's response to DNS queries, so there is no need to reload or restart BIND. You see, BIND "dynamically loads" the "zone" data it needs to answer a query from the database.

Though DLZ is the best thing to happen to DNS (and Bind specifically), it has one major flaw - there is no suitable front end for managing the database that DLZ uses.

Over the past few weeks I have been working on a front end for DLZ, and I think I finally have a decent one. Please note, this is a beta, and demo, only, and the code is for you to look at, not to use, as I am not sure on my licensing yet for this.

At any rate, here is a link to the demo:
http://www.lokkju.com/projects/dnsEditor/SampleEditInterface.php

It currently edits against a mysql database of sample data, which has the exact same table structure as the version I use for production (live) editing of our DNS records.

The two things that currently do not work right are adding and deleting actual domain names (only because I have not figured out the method I want to use, in terms of the GUI), and the SOA record layout is a little funky.

« Previous PageNext Page »

Make payments with PayPal - it's fast, free and secure!