Google Voice OMS Code on Github
I pushed the 子猫ちゃん Google Voice OMS service’s code to github, so you can now download it – albeit, to make it work it’ll take a lot of hacking and a lot more editing.
Either way, I’ve gotten no donations and no offers for free SSL hosting, so it looks like this project just will not be seeing the light of day. It’s a shame, I worked a long time to make it work, and it’s obviously something a lot of business professionals would be able to find a use for.
Oh well, you can find the project on github.
Remember to abide by the Usage License!
Why I now Prefer JSON to RSS/XML
This might mainly be a “call-out” to Dave Winer, since he is continually attempting to push RSS for all sorts of data that should be inherited around the web – although, he has stated before that he likes JSON – I think – My memory is not so good, even my girlfriend has been complaining about it.
Either way, I’m just going to take a small amount of time here to list why I no longer like XML and RSS for portable data.
It’s too low-level.
XML and RSS are a markup language, of course. It’s very low-level code, and is generally a pain to parse in any language. Which is why I prefer JSON.
It’s high-level code.
JSON is a very simple object – It’s basically an array of data. Here is some XML vs. JSON:
XML
<data>
<user id="876232">
<name>User Name</name>
<screenName>User</screenName>
</user>
</data>
JSON
"user":["id":876232,"name":"User Name","screenName":"User"]
Even though you can get similar results by making id its own tag in the XML, its still difficult to parse. Where as with JSON, the data is already formatted and easily accessible. Especially in my favorite language, PHP.
// For Json
$json = json_decode($data,TRUE); // Decodes JSON and makes it a true array
$id = $json["user"]["id"];
$name = $json["user"]["name"];
// For XML
$xml = new SimpleXML($data);
$id = $xml->user["id"];
$name = $xml->user->name;
The two are very close, but in the end JSON is more simplistic – because its such a high-level language.
Google Voice in Outlook
If you’re a regular reader to my blog, I’m sure you read yesterday’s post about how Google Voice could gain a head in the business world. At that time, my dream of connecting Google Voice and Outlook via OMS was far from completion, with the only work I’d managed to accomplish being a simple reading over of the related technologies.
Well, late last night a certain gear clicked in my brain, and I spent the entire night awake and coding PHP on a local XAMPP server. But my end result was fruitful – I finished successfully coding an Outlook Mobile Service that allows the delivery of SMS through the Google Voice system.
Here is a video showing it off:
I’m not yet prepared to release the source code for this, though. (Messy, Messy, Mess! as Double D would say). There’s a lot in my mind about it, it took a lot of work and I’m not ready to see forks and duplicate services pop up. (Sorry guys =S). Be on the look out for follow up posts that describe some of the technologies I had to learn to make this possible.
Oh, also – If you’d like; Help sponsor this project (I can’t afford to make it public ATM) with either Free (VERIFIED) SSL Hosting for a subdomain of a domain I own [contact me], or the money to make it public using my current host ($62.40/yr) [donate through my host]. I would be most appreciative if you could offer either of these to get this thing up and running!
How Google Voice Could Gain a Head in the Business World
Google Voice, albeit still in Beta, is a very popular Google application for creating a single phone number to manage all your phones, with texting, and times to ring and not ring them. It’s very powerful.
One of the nicest additions is the ability to read and reply to SMS on your computer. I, personally, find this one of Google Voice’s best features. Even if you don’t have a Cell Phone – you can sign up for Google Voice and now you have free texting. What could be better?
Well, I can think of one thing – Connecting it with Outlook
Outlook has, in the last few versions, supported adding a SMS Bridge using whatever protocol it is they use in addition to a MAPI store. It wouldn’t be very hard for Google Voice to tap into this, and provide free text messages for all Outlook Users – It would even gain a competitive edge over other service providers, in that your text messages from outlook would come from your actual phone number, and replies to them would be sent to your computer and your phones.
Now, I was going to be mean and keep this idea all to myself – but not only do I NOT have hosting with SSL (I can’t afford it~) but I don’t know anything about the various protocols I would need to know in order to make this work.
So Google, don’t you think it’s time to take the Business World by storm with your revolutionary phone service?
(PS: I would also like MMS. Even the iPhone got it before you did, and that’s sad.)
simpleTAPI v0.2.1 – Build 16 (Twitter API Library)
I’ve renamed the Twitter API Library to “simpleTAPI.” Yes, I’m not very good at names when it comes to this sort of thing. We’ve jumped forward two builds since my last post here.
Build 15
- The addition of a quick variable, bool Twitter::geo_enabled.
Returns TRUE if the user has turned on geo functionality, FALSE if not.
Version 0.2.1
- Re-Organized classes. Separated TwitterOAuth and OAuth into separate files, and moved them along with Twitter into a “twitter” folder. All classes can be loaded simply by including Twitter.lib.php.
Build 16
- Fixed a minor inconsistency in TWML where different functions returned different links to a twitter user’s profile.
- Fixed a bug where specifying screennameonly=TRUE for TWML::name resulted in an empty hyperlink.
Examples
- Started work on Example files to teach how to use simpleTAPI. Currently, the only one included is a basic Update script. This file includes logging in, updating a status, and returning the same status as well as some basic TWML examples.
So, enjoy! I will continue to improve this library. Please remember to post all issues and feature requests either on this blog or the github page.
Twitter API Library Build 13 (Breaking Change)
I pushed Build 13 today. This build adds the recent addition of descriptions to a user’s list.
This change breaks:
- TwitterAPI::lists_create and
- TwitterAPI::lists_update
The new profiles for these commands are as follows:
TwitterAPI::lists_create( str $name [, str $description = NULL [, bool $privacy = TWITTER_PRIVACY_PUBLIC ] ] )
TwitterAPI::lists_update( str $name [, str $new_name = NULL [, str $description = NULL [, bool $privacy = NULL ] ] ] )
Twitter API Library Build 12
If you’ve been watching this blog, you’ll notice I skipped Build 11 – It was small, and was trumped by its quick replacement – Build 12. Builds 11 and 12 fixed five previous known issues, while build 12 fixed a non-issue with build 11. Fixes listed below:
- The following now work with all users:
- Twitter::get_sn_from_id()
- Twitter::get_name_from_id()
- Twitter::get_id_from_sn()
- TWML::name()
- TWML::profile_pic()
- Addition of User Cache commands for use by TWML and the get_x_from_y() commands.
As always, the most recent build is available at github.
Twitter API Library Version 0.2 Build 10
I pushed Version 2 Build 10 of the Twitter API Library to github. This new version still does not fix any of the previous errors, so the changelog is quite minor.
- Updated to TwitterOAuth v0.2-beta
- "fixes several bugs"
- Support for OAuth 1.0a
- Added a boolean return to require_login().
Twitter API Library Build 9
I’ve pushed Build 9 of the Twitter API Library to github today. Interesting thing, it adds a few missing API features but does not yet fix any of the previous problems.
New features are all Authenticated API Calls:
- search
- trends
- trends_current
- trends_daily
- trends_weekly
- users_search
- trends_available
- trends_location
Yes, that means that we’ve added support for the following portions of the twitter api:
- Search
- Trends
- User Search
- Local Trends
Enjoy, and as always please report any and all errors you get.
Help Make Facebook Better For Him
I saw this pop up on my Facebook homepage and couldn’t help but laugh. This is definitely one of the funniest things I’ve ever seen.