Hello Dev Network friends,
I just wanted to fill you in on something I'm working on and give you a little preview in case you want to get working right away.
"Is there an SDK for _______?"
I periodically get a question like "Is there an SDK for _____?" where the blank could be feature phones, desktop apps, embedded media players... essentially any platform other than the four we have currently have SDKs for (iOS, Blackberry, Android and Windows Phone 7).
The quick answer is, we have a whole Data Collection API for sending data from anything and we've made it really easy (REST url with name/value params... even allows for http overrides like sending custom domain names, usernames, even bytes sent if you wanted to).
But the reality is that there are some Webtrends parameters that are needed to make a really powerful data set.
"How do I create my own SDK?"
I'm currently writing up a document that demystifies some of these more advanced Data Collection topics like:
How do I get realtime data flowing?
How do I go about creating my own visitor ID?
What parameters are required for campaign tracking?
Certainly you can dive into our excellent documentation on the parameters but I see a place for a guide to be written to walk through some of these. This guide will be a work in progress and I'll add code snippets and such as time allows. But the first pass will at least break down the various components to creating a solid data collection backend of your own.
Where do I start?
Here is, at the very least, the most basic information to get you running with the DataCollection API and have events that are compatible with realtime and Visitor Data Mart.
General format example (with explanation):
Webtrends collects data via one of two methods, either via a gif request with parameters attached to it or via an HTTP POST with name/value pairs in the POST body.
I’m documenting using the POST method because it provides several advantages over the gif request method.
Instructions on using the Data Collection API and POST method can be found here.
*NOTE: brackets  below indicate a value that will be replaced by a customer specific value (like a DCS ID).
The POST URL
*The [dcsid] is the Webtrends customer’s data collection unique ID.
The POST BODY (ampersand delimited in between each parameter/value pair)
DCSURI=[normally a page uri but in this case we'll make a useful imaginary uri for reporting "/YourApp/ScreenName"]
WT.ti=[page title or event description]
DCSUA=[normally the web browser user agent but in this case we're inserting a custom one. I would create one that fits for the platform you are developing on (Safari/iPhone agent, Symbian, Meego, etc.). Try to use legit user agent formatting because it will then show up in our platform reports]
WT.co=yes (we always need this, it is a fixed parameter requirement to validate if the hit is legit)
WT.vtvs=[epoch time for first hit of session] *used by Webtrends Data Mart, value stays the same for the session
WT.vt_sid=[value of WT.co_f + period + value of WT.vtvs] *creates the VDM session ID
A few other Webtrends parameters
WT.vtid=[email address] *optional visitor attribute
WT.vt_f=1 (pass on first hit when new visitor is recognized, like when a cookie or persistent ID is set for the first time, as a “1” if this is a new visitor)
WT.vt_f_d=1 (pass on first hit of visit only as a “1” if this is a first visit by the visitor for the day) *required for realtime data
WT.vt_f_s=1 (pass on first hit of visit only as a “1” to indicate new session started) *required for realtime data