From e328eaaa279a136cdb491afcc33fb56d079d740d Mon Sep 17 00:00:00 2001 From: Andrew Walbran Date: Tue, 26 Aug 2008 20:32:55 +1200 Subject: [PATCH] Starting to handle handles, and fixing bug where we were logging in with nil username and password (and getting jeremiah, oddly) --- twitterpathy.rb | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/twitterpathy.rb b/twitterpathy.rb index 3c093d8..1741a93 100755 --- a/twitterpathy.rb +++ b/twitterpathy.rb @@ -10,6 +10,12 @@ CONN_MGR_PARAM_FLAG_REGISTER = 2 CONN_MGR_PARAM_FLAG_HAS_DEFAULT = 4 CONN_MGR_PARAM_FLAG_SECRET = 8 +HANDLE_TYPE_NONE = 0 +HANDLE_TYPE_CONTACT = 1 +HANDLE_TYPE_ROOM = 2 +HANDLE_TYPE_LIST = 3 +HANDLE_TYPE_GROUP = 4 + CONNECTION_STATUS_CONNECTED = 0 CONNECTION_STATUS_CONNECTING = 1 CONNECTION_STATUS_DISCONNECTED = 2 @@ -75,6 +81,7 @@ class TwitterConnection < DBus::Object @account = account @password = password @status = CONNECTION_STATUS_CONNECTING + @handles = {HANDLE_TYPE_NONE => {}, HANDLE_TYPE_CONTACT => {}, HANDLE_TYPE_ROOM => {}, HANDLE_TYPE_LIST => {}, HANDLE_TYPE_GROUP => {}} super(path) end @@ -82,7 +89,12 @@ class TwitterConnection < DBus::Object dbus_method :Connect, '' do || puts "Connect, account=#{@account}" - @twitter_client = Twitter::Client.new(:login => $account, :password => $password) + @twitter_client = Twitter::Client.new(:login => @account, :password => @password) + + @me = @twitter_client.my(:info) + @handles[HANDLE_TYPE_CONTACT][@me.id] = @me + + puts "Connected as #{@me.inspect}" @status = CONNECTION_STATUS_CONNECTED @@ -108,8 +120,7 @@ class TwitterConnection < DBus::Object end dbus_method :GetSelfHandle, 'out self_handle:u' do || - # TODO: implement this - self_handle = 0 + self_handle = @me.id [self_handle] end @@ -122,8 +133,7 @@ class TwitterConnection < DBus::Object end dbus_method :InspectHandles, 'in handle_type:u, in handles:au, out strings:as' do |handle_type, handles| - # TODO - strings = [] + strings = handles.map{|handle| @handles[handle_type][handle].inspect } [strings] end -- 2.11.4.GIT