SMS-based User Generated Channels (with TextMarks)

Some time ago I read about TextMarks at Russell Beattie’s blog. At that time Russ wrote of personalized SMS cards. While I thought it was an interesting idea, I didn’t give it a whole lot of thought. Russ posted more about TextMarks, then I saw Bill Day creating his own TextMark. Hm…

So I decided to spend more time looking into it… And I’ve to say the concept is very neat and has a lot of potential: it is like SMS-based User Generated Content, or a personal text messaging-based channel that can be push and pull-push. Very powerful indeed. It is like your own personal “short-codes” (well keywords).

With TextMarks you register your own keyword or TextMark, if still available (funny, most all good TextMarks are already taken, it is like domain-names but this time with SMS keywords). Then when someone texts your keyword/TextMark to 41411, you can return static or dynamic content (they provide an API) and they also have a very crude screen-scraping method.

Very powerful. My head is full of ideas related to this… The sky is the limit, as long the sky is no longer than 125 characters :-) .

BTW, Russ’ idea of SMS-based business cards is very cool; text enrique to 41411 to get my contact information.

ceo

6 Responses to “SMS-based User Generated Channels (with TextMarks)”

  1. Kirk says:

    Hey buddy,

    I just took a look at the textmarks website and you can test getting your contact details from their web simulator on the front page.

    Just thought it worth mentioning, it seems that textmarks is currently only available on US carriers :(

    Cheers

    Kirk

  2. Stuart Axon says:

    Hi, I’m commenting here because I don’t know how else to contact you.

    In your article here:
    http://developers.sun.com/mobility/apis/pim/pim2

    You have a method
    isRepeatRuleFieldSupported(EventList el, int frequency, int field)

    This checks the value of the field passed in is supported for a given frequency by looking for it in the returned array.

    However this won’t work properly if the field is supported, but only as part of a combination of fields and not on it’s own.

    Instead of
    if (supportedFields[i] == field)

    it should really be doing
    if ((supportedFields[i] & field) != 0)

    The spec says:

    “All possible field combinations that are *valid* are returned in the array.”

    Currently if you pass in END, but the array just contains one value with (END | INTERVAL | DAY_IN_MONTH | COUNT) then you won’t know that end is supported. Even with the &ing it’s not as useful as knowing the combination.

    - I’ve just been bitten by this on the Sony w910 as some code I’m working on does the same thing as your example code and doesn’t detect the calendar support properly.

  3. Stuart Axon says:

    Sorry shouldn’t be
    if ((supportedFields[i] & field) != 0)
    but
    if ((supportedFields[i] & field) != field)

  4. Stuart Axon says:

    Sorry about the spam I obviously meant
    if ((supportedFields[i] & field) == field)

  5. ceo says:

    Stuart, hi. Email me to cenrique[at]ortiz[dot]name.

  6. ceo says:

    Yes, thanks Kirk…

Leave a Reply


"Great individuals invent their own values and create the very terms under which they excel." -Kierkegaard and Nietzsche