I won't be able to help much as we're traveling right now, but here's my quick take on it.
From reading your request, this is the kind of approach that I think would probably work best (I'd use C# as it provides low-level tools, and I don't know if AHK could do that):
1. Sniff all network traffic. There are quite a few articles on doing that. Here are some:
http://www.codeproje...Network-Sniffer-in-Chttp://stackoverflow...t-without-using-pcapThis is really the hardest part of what you're asking. Everything else is pretty simple. Doing this in C# or some similar language provides the benefit of having a HUGE amount of control. If forced to use a browser plug-in, then things change a bit and you lose a lot of power/control, but that may not be necessary. (I'm not sure how/if a plug-in can run another piece of software. AV software does it, but I'm not familiar with "under the hood" there, and don't know the APIs or amount of effort required -- sometimes these things are trivial, and other times they are made deliberately difficult to prevent people from easily writing malware, i.e. they make malware writing only available to professional malware authors.

)
Oh, 1 other thing about this... It could trigger AV software as this is the kind of behaviour that malware typically depends upon. (Similar for "SendKeys" below.)
2. When a TCP/IP HTTP connection comes across, read the headers (presumably to look for a specific URL or domain that you're looking for) or read the entire document if text in the body triggers what you want, and then trigger the recorder. The problem here is that this won't work if you're using HTTPS. In that case, nix #1 above and write a custom browser plug-in to monitor what you want and then trigger the recorder from there.
The conditions here would be the most important thing. Above you've not really given enough information to comment on how to do this. e.g. Are you looking for a URL? Domain name? Text inside of a URL, such as "watch=videoGUID"? Some text inside of the web page itself? Multiple identifying items? Perhaps the event is an object inside of the browser, like a Flash program that can be reliably detected?
You mention "call" and a few other things in there. I'd ask if what you're trying to record is coming across RTSP, which could help in detection or recording in some cases.
3. Triggering the Recorder: Lots of ways to do this. Either a built-in recorder, or like you mention, Camtasia. This is as simple as sending the F9 or F10 key events. i.e.
SendKeys.Send("{F9}").
Now, the problem with using Camtasia is that you'd already have to have it running, or the program would need to detect that Camtasia is running, and then trigger it. However, if it isn't running, by the time the program could run Camtasia, your event would be over. So, you'd need a built-in recorder to deal with that case. That's not too bad though as there are a few code bases out there that are pretty much ready to go to do that.
The silly thing then is that it would make Camtasia redundant. However, that's not a bad thing. With Camtasia, would you really want to have it constantly recording and stopping? What happens if something goes wrong and it hasn't saved the events? Ouch... By recording in the program itself, it's easier to simply save the recordings with a timestamp so that you can review all of them later. That way, if there's a power outage or something, at least you have previous recordings already saved.
The other option is to do some kind of software automation with Camtasia, which can be messy. You're likely to run into problems at some point there.
etc.
If you only wanted to record audio (I'm not really a video guy, but I know that there are relatively simple ways to record a screen), BASS would be a good choice to manage that. The Windows audio stuff is ok for some things, but BASS simply rocks.
Anyways, those are just a few of my initial thoughts on the topic. I'm not sure if they help you or anyone else who could manage to get that done for you.