d-man.org   News | Photos | Fun Stuff | Forums

TCAPI Pre-Alpha Release (formerly FreeSWITCH GUI Project)

September 3rd, 2008

I’m pleased to announce the pre-alpha (yes, pre-alpha, meaning “doesn’t do very much”) release of the FreeSWITCH GUI project (now named “TCAPI” - the Telephony Configuration API).

Before you get all excited, I want to make sure I’m clear that my main focus has been concentrating on structure and flexibility of the back-end and whatever modularity I could build thus far. I will publish a stack-type diagram shortly to show what I’m looking to achieve. In the meantime, I’m releasing what code has been written (it’s not much) to help people get familiar with the underlying structure of the code. The UI doesn’t *do* anything except configure extensions with various variables that aren’t recognized by default by FreeSWITCH so if you are thinking this GUI will, today, actually do anything for you, keep holding.

Here’s what HAS been accomplished:

  • Implementation of a reasonable AJAX-based JavaScript framework that also implements cross-browser compatible CSS “frames”
  • Helpers have been created to aid in reading/writing XML files with complex element/attribute structures
  • Ability to write your data to MySQL/SQL/Firebird/DB2/Oracle/ODBC/Postgres/etc.
  • Ability to write to raw/native FreeSWITCH XML files via a FreeSWITCH model (+ the start of a DBO layer for FreeSWITCH)
  • Basic controllers with limited logic
  • A lot of work has gone into making the JavaScript work in an abstract-able way, so that a different AJAX framework can be introduced later
  • Menus are configurable without touching any JavaScript. You can write stuff that utilizes the JavaScript framework without knowing or touching any JavaScript directly
  • DHTML/CSS frames-based layout allows for “plugging in” just about anything as a menu item (including scripts in other languages, if necessary)
  • XML save/load models are easy to duplicate, and mapping helper functions are just a few steps away
  • Extensions page is functional and easy to modify/setup/etc.
  • Basic sample pages have been put together for other areas (domains/users/devices)
  • Browser-based AJAX streaming classes have been written/included to allow for streaming channel status information
  • Everything has been written with layers in mind (as much as time allowed for anyway)
  • Oh, and of course, an IRC channel on freenode
  • irc.freenode.net #tcapi

    Here’s what’s very much missing:

  • A web page describing the software & it’s mission (I have this written, but would like to post it on a nice looking website)
  • A bug tracking system
  • A proper email list
  • A PHPDocumenter-generated (or similar) list of functions & what limited classes/APIs have been written
  • A simple install procedure/instructions/etc. file
  • SIP Profile configuration tools
  • Domain configuration tools
  • A dialplan that allows advanced features being saved to the XML work (stock dialplan)
  • A ’settings’ page to configure base settings via the UI
  • JavaScript is not properly abstracted on most pages
  • this needs to be completed

  • Pages should be designed to work within the JavaScript frames as well as when they are NOT in the frames
  • The fsxml component needs to be abstracted as a custom behavior

    Other ideas I’m tossing around:

  • Making all HTML and back-end pieces WSDL/SOAP accessibile
  • True APIs - everything has been written as if it was a program for now, but I’m at the point where many things should have get/set/etc. commands added and the related variables that are being modified should become protected, so that things can be moved into libraries.

    A few things have been kept out of the initial check-in until I clean them up, but the channel & conference status pages will be checked in by Friday I hope so that you can monitor calls in progress/etc.

    So what’s next! I am limiting who gains access to the initial files and who commits to the project. I am doing this to gauge interest and because so much still needs to be done, I frankly only want serious, interested developers at this time (even if you can’t commit gobs of time, you need to show your interest in at least learning how the things work). This is mostly to avoid questions and also avoid disappointment from “end-users” who are just out there to try things out, since most of this code doesn’t do very much yet and a lot of hand-holding to install it is still required.

    So here’s what I’ve decided to do. I am going to hold two training WebEx meetings in the next week. The first one will be on Sunday at 11am PST. I will go through the code and how to set it up. I will provide an SVN link at that time to the code and you can follow along with the setup process. All you need is an install of FreeSWITCH on a Linux box + Apache + PHP5 stock libraries. Past that, I’ll get you going, show you how the code is setup, where things are, how to add menu items, how to add a table to the custom model, and so on. And you should be off to the races to try out any of the above items you wish, or some of your own!

    So again, WebEx, Sunday, 11am PST. If you’re interested, please email me and I’ll send you a formal invite with an attendee link.

    If you’re not interested in contributing at this time, just sit tight. I expect a true functional alpha release to be ready within 30 days (or less) that can configure SIP profiles, domains and directory entries completely from the UI.

    You are also welcome to invite others - pass along this URL if you wish.

  • Outside Lands - Good things come to those who wait

    August 25th, 2008

    Friday got off to a bit of a rocky start in my eyes at San Francisco’s inaugural Outside Lands music festival. The polo field simply could not handle the 60,000+ crowd that streamed in to watch Radiohead, and the sound system couldn’t handle it, either. Two complete cut-outs for at least 30 seconds? Unacceptable! I was mad.

    But the festival redeemed itself on Saturday when better weather, more relaxation during the day and the start of a great and more local lineup began. The festival was actually quite well organized for the sized crowd that was present Saturday & Sunday. No lines for beer, IDs, or other stuff. An awesome wine tasting tent. The Visa Signature room was killer, too - a secret spot to hang and enjoy clean portajohns, a nice bar and streaming live music from the stages - if you had a Visa card. Slick promotion if you ask me. And even the weather got better every day - from thick fog Friday night to blue skies on Sunday. This was clearly a festival that just got better over time.

    Mike Gordon’s set was most anticipated by yours truly, and it was OK, but not spectacular. I miss the old Phish. What can I say. Steve Winwood, on the other hand, was unexpectedly “jammy” and there were great improv songs during his set which got the crowd really moving.

    All in all the festival was fantastic. People were respectful, though the park was far from clean when it was over. I hope the festival is welcomed back next year, and I hope a not-quite-so-big headliner is chosen for Friday night so we don’t anger the rest of the city by completely ruining mass transit. (Not that it functions anyway, but, you know…)

    United - What are you doing to loyal business travelers?

    August 24th, 2008

    I am a loyal frequent flyer on United Airlines, mostly due to their p.s. service from San Francisco to New York. For roughly $450 round-trip plus the equivalent of $250 in frequent flyer miles, I can usually upgrade to the largest domestic business class seat in the US and get a hot meal on the way. I find this a pretty reasonable fare to pay for a seat and service that is akin to business class on an international flight (and better then first class on most domestic flights), and since I hate flying, I’ll do just about anything to make my experience more comfortable.

    Now the reality is I fly about 20 times a year so I probably generate roughly $10,000/year in airline revenue. Half those flights are NOT on p.s. because I’m not going to New York. But I still keep my business with United so that I can maintain my flying status within the UAL Mileage Plus program. In doing so, I must endure many “normal” configurations of United planes, especially annoying on Ted where business class cabins are not available. This is still a reasonable trade-off to me. Again, the tickets are usually more but the long-term benefit is the EQMs and the increased upgrade availability due to frequent flyer status.

    And the upgraded seats really do help me conduct business. I use the extra space to spread out papers, go through old contracts I have yet to review (though sometimes I’ve already signed), and on a really crazy week I occasionally go through old personal mail. If I’m with a coworker, we can talk business without having an occupied seat in the middle. The value is high to me, because I ultimately save time and energy while I travel, and I also get some good focus time for thinking about difficult problems.

    This latest trend of nickel & diming, however, has now begun to irritate me. It seems that United Airlines has finally gone from catering to business travelers to treating everyone like they are on a Greyhound. As one SF Chronicle article puts it, “The savings they will get doing away with lunch in business class - they will lose more than that when corporations yank business.”

    So what am I so annoyed about? Well yes, it looks like I must finally admit it. I like my airline food. It’s not unusual that I’m catching a 6am flight and haven’t had a chance to grab breakfast, or a noon flight that was directly after a long-running meeting. Does the money actually bother me? No, not really - what bothers me is having to have cash on board. Or having to settle for a shrink-wrapped selection of garbage. Or having to ask a flight attendant for a receipt if I plan to file an expense report for said meal. Or maybe I’ll just absorb the cost out of pocket (as small as it may be), which annoys me further.

    For the first time ever, I am now looking at other airlines mileage programs. This is the worst thing for you, United.

    I really wish you’d just raise the business class fares by $10-20 to cover my meal. Isn’t that reasonable? We business travelers don’t mind. We want to fly without thinking or reaching for our wallets. We’re busy people.

    So please stop with the nickel & diming - it’s fine in coach, but we don’t want “a la carte” in business class.

    The FreeSwitch GUI Project

    July 26th, 2008

    Welp, it’s official.

    The FreeSwitch UI / GUI Project is underway. This week I hope to put the finishing touches on a functioning graphical, web-based user interface front-end that, at the least, adds/edits/removes extensions, adds/edits/removes service providers, lets you setup some basic global features, and maybe even allows you to have a “light” version of a functioning PBX.

    The system utilizes FreeSwitch, CakePHP and some JavaScript/DHTML add-ons. Some may bicker about this, as I am aware it bloats the software a bit, but considering the audience for this is administrators, a bit of bloat in exchange for rapid development and ease of use seems reasonable. CakePHP may also be a source of complaint (compared to Symfony and others, or maybe you just hate PHP), but hey, the reality is CakePHP is under active development and seems relatively lightweight. Best of all (in my opinion) it doesn’t use a templating engine for views. Those things make me cringe when trying to teach people in an open source project how to ramp-up on the coding pieces, and don’t add enough value to warranty this additional hurdle.

    The overall design is easy enough to understand that anyone should be able to dig into the Ajax friendly front-end views without knowing much coding, or add functionality on the back-end where the same assumption applies.

    Here’s a screen shot to wet your appetite…

    Configuration screen in FS demo

    If you’re interested in helping with development, please contact me.

    Rothbury vs. Bonnaroo - A look back

    July 19th, 2008

    I’m finally unwinding from my July 4th weekend (yes, two weeks later) and got some free time to write up a bit about Rothbury.

    For those of you who don’t know much about me, I have attended music festivals (the kind that draw hippies from around the country to camp out for 3 or 4 nights and listen to 20+ bands in a weekend) since I was in college. I was a bit obsessed with them, so after college I went and worked for a short time with a promoter on the east coast. It was a blast, and quite revealing on the back-end of the scene.

    When that company eventually ceased to operate, I found myself back as an attendee at music festivals, rather then behind the scenes. That was the first year that Bonnaroo happened - a music festival in Manchester, TN that, with no formal advertising campaign, sold out 50,000+ tickets in just a few weeks at $100+ a pop. Three stages of music over four days (and a few beers later), I was hooked. Music festivals were clearly the next big “music industry thing.” For me, anyway.

    From 2002 to 2007 I have been to every Bonnaroo and have watched the festival evolve. Each year I have gone with the hope that the festival would grow and learn more - new art, new logistics for the festival itself, better services, different music. Bonnaroo met that challenge for the first few years. To add to it, I always challenged myself to try something new - car camping, RVing, VIP, no car (tent-only) camping, no tent camping (yikes - thanks United Airlines for losing my bags!), etc. This just added to the fun and experience. I learned a ton about how to be a great festival go-er.

    Skip to 2007, and a host of music festivals now dot the country of this magnitude. 10,000 Lakes Music Festival, Langerado, All Good Music Festival, Vegoose, and so on - just to name a few. Each one of these has taken a page from the other, and it seems like they each try and “one up” each other from year to year.

    Then came 2008. While I had noticed a distinct shift in direction (and type of attendees) at Bonnaroo since 2002, the lineup was always interesting. I bought my flight and reserved transportation in November - before the lineup was even announced. But this year, when I heard Metallica was the headliner, with Kayne West. This was a big letdown for me - Bonnaroo’s first ever - to the point where I actually decided to cancel my ticket and plans to go.

    Then Rothbury was announced.

    The line-up was just like Bonnaroo 2002, and the location looked better. My hopes were high, so high, that I worried they wouldn’t be met. After all my experience I certainly had some standards to meet.

    Well, I’m pleased to announce that ROTHBURY BLEW ME AWAY. The festival was fantastic. It felt like someone had gone around and looked at every annoying detail about every festival and fixed it. Everything was better - from no lines to get in, to lots of room to park and camp, to lots of space on the concert fields, to the amazing sherwood forest and the related psychedellic light show there, to the calm and relaxing get-away at the beach, to the cabins that dotted the property - even the wristbands they issued were comfortable! It seemed like everything was so smoothly setup and run, I just couldn’t believe it.

    Rothbury has won me over, but it’s also showed me that you can clearly keep raising the bar - it just takes some new creativity. It is my sincere hope that Rothbury does not get so excited about this year’s success that they try to “blow up” the place with too many people and not enough new creativity. That is where, looking back, I felt like Bonnaroo fell short. It wasn’t so much the line-up that disappointed me, but the fact that nothing on the festival grounds has really changed in the last three years, so a crummy lineup + no new festival grounds “stuff” wasn’t a compelling enough reason to drop ~$2,000 for the trip there (I’m coming from California, so it ends up costing!).

    Anyway, check out the photos I’ll be posting tomorrow for some awesome Rothbury pics.

    and here’s to a Phish reunion :-)


    Rothbury at Night #1


    Rothbury at Night #2

    Delta charges for frequent flyer bookings

    June 28th, 2008

    Well who didn’t see this coming.

    Delta Airlines is now charging for frequent flyer bookings.

    So this is when everyone gets mad, then the airlines compromise by making it super easy to get around the fees for like 3 months, and then slowly it becomes more standard to pay the fee and people find something new to grumble about.

    Someday we all figure out the term TCO.

    FreeSwitch + the future

    June 13th, 2008

    So I’ve been an Asterisk fan for a long time, but mostly because of the functionality it spearhead providing. As a first-of-its-kind to a community of telephony enthusiasts in flexibility, features and simplicity, it really took the cake for being a wonderful open-source product.

    However, I’ve felt for some time that the Asterisk endeavor has sort of stalled. While support for the product is mounting, people’s attempts to capitalize on it (www.trixbox.com, www.digium.com, etc.) may have actually stalled it’s growth in terms of features and flexibility.

    Then I found FreeSwitch.

    FreeSwitch’s goal was to take the things Asterisk couldn’t or wouldn’t do and expand on them. I truly believe this is the next Asterisk 2.0. From stability to a better core threading model, this is a great start to a new phenomenon.

    One of my core concerns with FreeSwitch is that it is so flexible that I think some people get scared away from it because, out of the box, it actually doesn’t do very much. You’re left to program a bunch of dialplan and SIP provider information on your own. No GUI, little documentation, etc.

    I can’t blame the developers for this - they clearly packed quite a punch in the feature list, and development is quite active - but I believe it’s stalling adoption.

    So while I know PHP isn’t anyone’s favorite language these days, I decided to throw something new into the mix.

    Welcome to the FreeSwitch GUI project. :-) Today I began building a UI for FreeSwitch that allows it to work like a full-featured PBX. Been done before, I know, but it’s really just a start. I’m hoping to get feature requests to expand it to work as more then just a PBX. Maybe an advanced Call Center, or maybe an advanced IVR system? Who knows - but I’m open to requests.

    I’ll be starting with the basics - look & feel, basic programming, and generating dialplans automatically. After that, we’ll try to make it flexible when configuring SIP providers. Then we’ll start adding more heavy duty features.

    If you’re a PHP coder and interested in joining in this endeavor, feel free to hit me up.

    Screenshots coming soon…

    Phish Re-Union at Rothbury?

    June 6th, 2008

    Probably not… but what the heck:

    This is starting to look exactly like Bonnaroo 2002…

    In 2002, Bonnaroo added almost all the members of Phish (doing individual acts) to their bill, during a time when Phish was on hiatus. Then a bunch of rumors started about Phish getting back together. Tickets sold out practically immediately.

    With Rothbury, again almost all members of Phish are doing individual acts. There are now also quotes in the press from well-known Phish comrades (Tom Marshall?) hinting at interest in a re-union. Trey also throws out leading comments…

    “When Phish broke up,” he recently told Rolling Stone, “I made some comment about how I’m not gonna go around playing ‘You Enjoy Myself’ for the rest of my life. And it’s so funny because Fish and Mike and Page have been talking to each other a lot lately and now — it’s not that I can’t believe that I said that, but its symbolic of how much I lost my mind or how much I lost my bearings or something. Because at this point in time I would give my left nut to play that song five times in a row every day until I die. I certainly thought about that while I was in jail.”

    This will get interesting. The big logistical difference for a reunion at Rothbury is, in my opinion, that Page isn’t booked somewhere else (in Bonnaroo 2002, not all members were free)… So even if he’s not on the bill today, he could be.


    Phish could reunite at Rothbury music fest

    (This article was likely a P.R. tactic by Rothbury fest organizers. Smart move on their part)

    Trey Anastasio Hints at Phish Reunion


    Trey Anastasio hoping to reunite Phish

    (Interview with Tom Marshall)
    Other noise:
    JamBase Article - Trey Talks Phish
    All About Jazz commentary article
    TicketNews - Is Phish contemplating a reunion tour?
    Live Music Blog - Phish Reunion Rumors
    A Phish Reunion - Trey, so soon?
    Philly Daily News - A Phish Reunion Could Be In The Works

    Whether or not Phish plays, ticket sales will likely be up. And Bonnaroo 2002 was an awesome first year fest.

    Tru2Way Open Cable Applications? Yes, really…

    January 21st, 2008

    Check out this article from the Consumer Electronics Show posted by ComCast about their Tru2Way technology. If you’re like me, you’ll have to read it twice to believe it.

    Cable companies have been notorious about “protecting their investment” by locking consumers out of just about everything on those cute little set-top boxes most people have at home. Yes, your cable box is actually capable of much, much more then it currently does today. A quick peak around the average set-top cable box will reveal USB, serial and other computer-related ports, but most come disabled by default from the cable company. This has always struck me as a bit funny, as the boxes themselves could be a real selling point for the cable companies.

    This latest announcement from Comcast seems to imply that they’ve finally figured out the value of both the boxes themselves and the fact that one exists in most of the homes they service. They also seem to want to leverage the open-source community (wahoo). Let’s see if this is just a bunch of hype or if this actually lives up to it’s promise.

    Read more at:

    Tru2Way CES Announcement

    CNET’s Article

    BART / Sprint Mobile Wallet ?

    December 22nd, 2007

    So it looks like Sprint and BART think using your phone as your wallet could be a pretty cool idea. So much so that they’re paying people to try out their new technology.

    I’m game.

    Check out http://labs.sprint.com/intro/mobiletransit/

    The trial benefits, if you qualify, include:
    1. You will be paid for participation.

    • $75 - after you pick up your new phone
    • $75 - when completing the mid trial survey, post trial survey, and returning the phone
    • $15 - for tapping on 5 of the 10 service discovery posters (more information will be provided when you pick up your new phone)
    • Free Power Vision (data service) during the trial
    • $20 - prepaid Jack-In-the Box card in Mobile Wallet

    2. You will have the convenience of your leather wallet in your Sprint mobile phone in a secure fashion. You won’t have to fumble for cash, a ticket or card when riding BART or paying at Jack in the Box. Simply hold your phone up to the reader and you’re done!
    3. You will pass through the lines at a faster pace.
    4. You will use cutting edge technology for everyday purchases.

    Note the item stating that if you tap 5 of the 10 service discovery posters you will win money. Interesting concept, huh? How’s that for getting people to check out your marketing materials and report back on them?

    I’m fascinated with this idea. Your phone as your wallet. I also wonder if it’s hackable. The phones are most likely programmable. Mystery awaits!

    And what about my friends who lose their phone constantly? Now they lose their wallet, too? Scary…