Blog update

  

I've upgraded to a new version of Wordpress and started using a new theme. I'm starting to really like it. I first wanted to start using Hemingway again, but it's unmaintained and the useful text area is so small I started to look around the most popular themes on the Wordpress site. Carradine was the immediate favourite.

Comments

Installing SIP SIMPLE Client on Debian 5.0 (Lenny)

  

AG Projects is providing a pretty nice CLI based Open Source SIP phone to the world. The installation instructions can be a confusing mess.

Here's a short summary on how to install it on a clean, brand new Debian Lenny installation. Details are correct at time of writing ;-)

First import the AG-Projects key into apt so we know the packages can be trusted.

wget http://download.ag-projects.com/agp-debian-gpg.key
apt-key add agp-debian-gpg.key

Then open the file /etc/apt/sources.list and change al mention of "lenny" into "sid". Also add the following to the end of the file:

# AG Projects software
deb     http://ag-projects.com/debian unstable main
deb-src http://ag-projects.com/debian unstable main

Then it's time to upgrade to sid

apt-get update
apt-get dist-upgrade

And finally it's time to install SIP Simple ```bash apt-get update apt-get install python-sipsimple sipsimple-cli

Comments

Mountain bike stuk

  

Zo, voor het eerst is er echt iets stuk aan mijn "nieuwe" mountain bike (ik heb hem al sinds de laatste week van januari, dus echt nieuw istie niet meer): ik ben door het zadel gegaan :-o

Ik hou het er maar op dat mijn techniek niet goed is ;-) Nu moet ik op zoek naar een zelfde soort zadel, want het beviel voor de rest prima. En natuurlijk pronto, want zondag moet er weer gefietst worden. Zo langzamerhand begint het klimmen ook weer een klein beetje beter te gaan.

Comments

Rumor mills

  

The Macalope and John Gruber always make for a reasonable read on the state of Apple and the rumors about it.

Hmm, on the tablet side, may I suggest iPod Pro?

Comments

Shenanigans, diplomacy and copyright

  

Cory Doctorow writes an interesting article about the diplomatic process around the latest copyright "reform" the big entertainment companies are demanding from the UN.

Can we please make sure that all the big entertainment companies get deported to a gulag somewhere? I'd love to pay an artist for his work, maybe even a middleman, but not to a huge conglomerate paying pennies to the artists and pocketing millions themselves.

Comments

Voice quality reporting for Cisco VoIP using FreeRadius

  

This is an, I hope, comprehensive writeup on how to configure a Cisco gateway to send RADIUS Accounting details to a RADIUS server running FreeRadius. Among other things, these RADIUS packets contain useful information about the quality of the audio as perceived by the calling and called parties of the call.

First we have to configure the Cisco hardware to send the RADIUS packets. I'm using a Cisco AS5350XM configured to send only RADIUS accounting details at the end of the call. Note that although the configuration suggests as much, you're not required to use H.323, SIP will also work just as well.

aaa new-model
aaa group server radius voip-accounting 
 server [ip address] auth-port 1812 acct-port 1813 
 ip radius source-interface GigabitEthernet0/0 
aaa accounting connection h323 stop-only group voip-accounting 
radius-server host [ip address] auth-port 1812 acct-port 1813 key 7 [secret]
radius-server vsa send accounting

Note how I'm telling it basically the same thing twice. Apparently this is really necessary, haven't had the time to properly test. This was the easy part.

Setting "aaa new-model" is, as far as I know, required but it will also mess up the way logging in to your Cisco equipment works. Setting this will mean that you will need a username + password combination to log in and the enable password, instead of just a password and the enable password.

Now make sure FreeRADIUS is up and running on a server reachable by the Cisco hardware. Edit /etc/freeradius/radiusd and make sure that the "with_cisco_vsa_hack" is set to yes:

with_cisco_vsa_hack = yes</code>

Edit /etc/freeradius/dictionary so that the Cisco dictionary is NOT specifically loaded

$INCLUDE        /usr/share/freeradius/dictionary 

Add the following to the dictionary file to be able to use the values the Cisco equipment is sending you (there's lots more information in the RADIUS packets, this is just what I needed):

ATTRIBUTE       coder-type-rate         118     string  Cisco 
ATTRIBUTE       hiwater-playout-delay   119     string  Cisco 
ATTRIBUTE       lowater-playout-delay   120     string  Cisco 
ATTRIBUTE       round-trip-delay        121     string  Cisco 
ATTRIBUTE       late-packets            122     string  Cisco 
ATTRIBUTE       lost-packets            123     string  Cisco 
ATTRIBUTE       early-packets           124     string  Cisco

I had to make sure the numbers didn't overlap with the existing values already in the Cisco dictionary. This is kinda important, you don't want to end up with the wrong data in the wrong column. Swapping source and destination numbers is totally possible if you're not careful.

Now it's time to insert a record in the database. For some reason my colleague who setup the radius server inserted the query into /etc/freeradius/sql/mysql/dialup.conf (check the comments). There might be better places. If you only want to save the end of call records, make sure you have no other accounting queries active in the queries file:

accounting_stop_query = "INSERT INTO ${acct_table} 
(RadAcctId, 
 AcctSessionId, 
 AcctUniqueId, 
 UserName, 
 Realm, 
 NASIPAddress, 
 CiscoNASPort, 
 NASPortId, 
 NASPortType, 
 AcctStartTime, 
 AcctStopTime,
 AcctSessionTime, 
 AcctAuthentic, 
 ConnectInfo_start, 
 ConnectInfo_stop, 
 AcctInputOctets, 
 AcctOutputOctets, 
 CalledStationId, 
 CallingStationId, 
 AcctTerminateCause, 
 ServiceType, 
 FramedProtocol, 
 FramedIPAddress, 
 AcctStartDelay, 
 AcctStopDelay, 
 H323GWId, 
 H323CallOrigin, 
 H323CallType, 
 H323Setuptime, 
 H323ConnectTime, 
 H323DisconnectTime, 
 H323DisconnectCause, 
 H323RemoteAddress,
 H323VoiceQuality, 
 H323ConfId, 
 Timestamp, 
 codec, 
 hiwater,
 lowater, 
 roundtrip, 
 plate, 
 plost, 
 pearly,
 DestinationId ) 
VALUES (
 '', 
 '%{Acct-Session-Id}', 
 '%{Acct-Unique-Session-Id}', 
 '%{SQL-User-Name}', 
 '%{Realm}', 
 '%{NAS-IP-Address}', 
 '%{Cisco-NAS-Port}',
 '%{NAS-Port-Id}', 
 '%{NAS-Port-Type}', 
 from_unixtime(unix_timestamp('%S')-%{Acct-Session-Time}), 
 '%S', 
 '%{Acct-Session-Time}', 
 '%{Acct-Authentic}', 
 '', 
 '%{Connect-Info}', 
 '%{Acct-Input-Octets}', 
 '%{Acct-Output-Octets}', 
 '%{Called-Station-Id}', 
 '%{Calling-Station-Id}', 
 '%{Acct-Terminate-Cause}', 
 '%{Service-Type}',  
 '%{Framed-Protocol}', 
 '%{Framed-IP-Address}', 
 '0', 
 '%{Acct-Delay-Time}', 
 '%{h323-remote-address}', 
 '%{h323-call-origin}', 
 '%{h323-call-type}', 
 '%{h323-setup-time}', 
 '%{h323-connect-time}', 
 '%{h323-disconnect-time}', 
 '%{h323-disconnect-cause}', 
 '%{h323-remote-address}',
 '%{h323-voice-quality}', 
 '%{h323-conf-id}' , 
 '%{Timestamp}', 
 '%{coder-type-rate}', 
 '%{hiwater-playout-delay}', 
 '%{lowater-playout-delay}', 
 '%{round-trip-delay}', 
 '%{late-packets}', 
 '%{lost-packets}', 
 '%{early-packets}', 
 '%{remote-media-address}' 
)"

Note that we only added the last few SQL parameters and somehow FreeRADIUS is able to provide the rest. Make sure you have the correct table name and columns configured (double/triplecheck the query and your table).

The column H323VoiceQuality will contain the so called ICPIF impairment factor. A small writeup of what that means is here.

Comments

Get rich quick

  

You'd almost think that writing software for the iPhone is synonymous with a "Get rich quick" spam scheme.

Comments

2 Generaties

  

Afgelopen Kerst bij mijn ouders geweest en op de terugweg ook even bij mijn grootouders koffie gedronken en gegeten. Mijn Pake is nu 87 en heeft van de keuringsarts weer voor 5 jaar zijn rijbewijs mogen verlengen. Dat is toepasselijk gevierd met een neiuwe auto. Ik heb de Polo uitgeprobeerd en hij is goedgekeurd.

Als eerste Pake en Beppe

Pake en Beppe

En ook maar even een foto van mijn ouders

Heit en Mem

Comments

When did I start coding (and related questions)

  

At stack overflow someone asked three questions about programmers and age:

  1. How old are you? 33
  2. When did you start programming? 6 or 7
  3. When was that? 1982-1983

I'm not going to post here what my first own application was, it was way too nerdy; you'll have to make me drunk to hear it. Copying code from KIJK, which featured lots of Basic code in those days obviously doesn't count. They even transmitted code via a radio station at the time.

The reason I started programming quite young is because of my parents. Both my mom (who at the time knew absolutely nothing about computers, she had some basic administrative jobs) and my dad (who at the time had a construction company) started a programming course. At the time everything was done in Basic so I also started learning that. I'll someday write about what they had to write to graduate from their course and what they did afterwards with their knowledge.

BTW, yes, I know of several programmers past 53, I had several colleagues who started programming with papertape...

Comments

Al meer dan 5 jaar

  

Goh, ik ben al meer dan 5 jaar bezig jullie te vervelen op deze site.

Comments

Diksmuide, Ieper en Gent

  

Mijn zus loopt dit semester stage in Brugge. Afgelopen weekend ben ik samen met haar een weekendje door Vlaanderen getrokken.

Zaterdachochtend die kant opgereden, Machteld opgepikt en toen lekker binnendoor naar Diksmuide gereden. Vorige jaar ben ik daar op de eerste dag van de vakantie langsgereden en toen heb ik besloten bij de eerste gelegenheid de IJzertoren te bezoeken.

IMG_6631.jpg

De IJzertoren staat in een park met een soort crypte die de gevallen Vlaamse soldaten uit de Eerste Wereldoorlog herdenkt. De torewn zelf is een verdieping of 21 hoog met nog een terras er bovenop. De toren zelf is best een mooi stuk 20e eeuwse architectuur, wellciht een beetje boers en somber metslewerk, maar dat is het dan ook wel. Binnen in de toren daal je dan af naar beneden door een tentoonstelling over de gevallen soldaten tijdens de oorlog van '14-'18. Helaas is het hier en daar ook een behoorlijk fout Vlaams Nationalistische bedoening, mijn Friese genen begonnen hier en daar flink te sputteren.... Een paar "zalen" zijn wel echt de moeite waard, deze gaan dan vooral over het leven in de loopgraven. die zijn ook erg mooi en beklemmend ingericht.

_MG_6656.jpg

Daarna naar Ieper gereden langs de Ijzer en het Kanaal Ieper-IJzer. In ieper de het museum Flanders Fields bekeken, erg goed gedaan, echt een aanrader. Goed gebruik van audio, veel nuttige informatie, veel plaatjes en period artifacts. Daarna naar de Menen Poort (Menin Gate) gelopen, dit is een oude stadspoort die veel Gemenbest soldaten bij naam herdenkt die hier in de omgeving gestorven zijn tijdens WO1. Hier heb ik me een tijdje "misdragen" door met mijn flitser en pocketwizards wat foto's te maken.

Wreaths at Menin Gate

Machteld in one of the entrances of the Menin Gate

Menin gate bij nacht

Daarna naar Gent gereden en na wat moeilijkheden (ik blijk toch echt te kunnen verdwalen) eindelijk het hotel gevonden. De volgende ochtend is het nog steeds koud, maar is het helaas ook begonnen emt regenen. We gaan met de tram het centrum in en bekijken de Baafse Kathedraal en drinken warme chocolademelk.

_MG_6729.jpg

Daarna lopen we naar het Design Museum, waar we kunnen aanpikken bij een rondleiding met gids. De gids legt met humor en veel nuttige details het verhaal van het museum uit vanaf ongeveer Roccoco tot nu. We gaan terug naar de kathedraal en bekijken de crypte en het origineel van het Lam Gods van de gebroeders Van Eyk, dat zeker de moeite waard was om voor terug te lopen.

Daarna gaan we terug naar het hotel en breng ik Machteld naar het station en ga ik weer terug naar huis.

Meer foto's vind je op Flickr.

Comments

Eindelijk, de salontafel is bijna zover!

  

Nieuwe salontafel

Het heeft een jaar of 4 geduurd, maar eindelijk kan ik komend weekend mijn nieuwe salontafel bij mijn ouders ophalen. Het ontwerp is een co-productie tussen mijn ouders en mij, naar het model van mijn eettafel, alleen ongeveer 1:2 schaal en dan een beetje opgerekt voor de bruikbaarheid. Ik weet niet waar het aan heeft gelegen, maar twee weken geleden kreeg mijn pa het op zijn heupen om toch maar eens aan de tafel te beginnen.

Er is een tijdschriftenplank bij, maar die hebben we bedacht nadat de foto's gemaakt zijn. 100% massief eiken, dus steviger dan nodig is. Ik kan bijna niet wachten tot het weekend is.

Comments

Spelen in de sneeuw

  

Ik probeer zo'n beetje elke zondag met een paar collega's en nog wat andere kennissen en vrienden wat in de bossen rond te fietsen. Zo ook vanmorgen weer en deze keer baalde ik er echt van mijn camera niet bij me te hebben. Sneeuw! En voor Nederlandse begrippen viel er VEEL SNEEUW, helaas bleeft het niet allemaal liggen, maar de nseeuw die afgelopen nacht gevallen was was wel lekker bevroren.

Vandaag ook voor het eerst het lange rondje bij Leersum gedaan (richting Amerongen) en dat was best te doen, het korte rondje is veel heftiger, veel meer steile klimmen. Het lange rondje (dat aansluit op het korte rondje) is veel meer lange klimmen en lange afdalingen. Helaas met de regen van de afgelopen weken ook veel diepe kuilen vol water (of iets dat lijkt op net gesmolten chocolade ijs), dus de fiets ziet er niet uit.

Het was wel aan de frisse kant, helaas....

Comments

Will somebody please

  

Will somebody please put some real content in the Dutch Playstation store? Apart fom some small number of games there's hardly any real content over there. A few movie trailers, on average a single new trailer per month, with no updates since June; 1, I repeat 1 totally uninteresting video diary, no music, nothing!

Does Sony want the PS3 to fail? It's such a capable machine in lots of ways, but, sheesh.

Oh and we need proper Quicktime support, fast.

Comments