Skip to main content
Sign In
San Diego Computer & Network Consulting Experts 
Go Search
 
Home
Our Microsoft Expertise
Our Services
Microsoft Solutions Blog
About Gilham Consulting
Contact Us
Support Portal
  

 

z
Home > Gilham Consulting Microsoft Notepad > Posts > FreshMobile - A Simple Freshbooks Billable Time Entry Application For Microsoft Windows Mobile
FreshMobile - A Simple Freshbooks Billable Time Entry Application For Microsoft Windows Mobile

 

Update - Now Available Open Source - I have stopped further development of this product.  I hope that a talented .Net developer can take it to the next level.

http://www.codeplex.com/FreshMobile 

image

I'm releasing a beta build of a time entry application for Freshbooks.  I created it to help make sure make entering my billable time easy when I'm on the go...and I wanted to learn a little more about mobile device development since I typically focus on Microsoft infrastructure products such as Hyper-V or Exchange 2007. 

 

Features 

  • (0.5) Retrieves all the projects and tasks from your Freshbooks account
  • (0.5) Submits time entry on the go including Project, Task, Date, Hours, and Notes
  • (0.6) Provides Start/Stop timer with auto round up to the configurable billing increment (default half hour).
  • (0.7) You can now view raw invoice, client, payment, and time entries details from the options menu.
  • (0.8) Add can add new clients from the options menu

 

Installation ( Windows Mobile Smartphone or Pocket PC)
Tested Devices: WM6 Std Moto Q 9h, WM5 PPC Treo 700w

  1. Install the .Net Compact Framework 3.5 while your device is connected to your desktop.
  2. Install FreshMobile by copying the Cab File to your Windows Mobile device and installing it from file explorer. Download latest Build 0.82
  3. Run FreshMobile from the Start, Programs Menu.
  4. You will also need a Freshbooks account:

    Freshbooks Web Based Billing - FreshMobile

Configuration

  1. Open the Options, Accounts Screen
    image
  2. Your Freshbooks URL that you normally connect to on the web.
    image
  3. Enter your API Token found on “settings” at the upper-right corner of any page, Under “step 3,” choose “enable FreshBooks API.”
  4. Enter your billing increment for the hours selection. i.e. A setting of .5 would have the following time pattern in the based on the billing increment to a maximum of 12 hours.
    .5, 1, 1.5, 2, 2.5, 3, 3.5, 4.0, 4.5, 5.0, 5.5, 6.0, 6.5, 7, 7.5, 8, 8.5, 9, 9.5, 10, 10.5, 11, 11.5, 12.

Use

  • Press Get Freshbooks Data to fetch tasks and projects and tasks (also invoices, clients, payments, and . 
  • Select the Project and the task you are working on.
    Note - You must manually remember what projects are associated with each task.  There may be errors if the task is not associated with the project.
  • Enter the select the hours to be logged up to a maximum of 12 per entry.
  • Press Submit Time. You will get a success message, press OK to clear.  If you receive an error or timeout.

FAQ

  • Error 401 - Your API token or URL is set incorrectly...most likely your API token
  • Connection Timeout.  Make sure you have good reception or have internet access.  If your not connected to the internet, it may timeout the first time, just retry.

Known Issues:

  • Only works with one user, the administrator.  Other users/employees cannot submit time. This is a limitation of the Freshbooks API.
  • Only supports time entries for Projects/Tasks, no invoice support in the short term.
  • Random errors when getting project info or submitting time.  You should be able to just retry by clicking the button again.
  • Tasks cannot be filtered based on project selected due to the current API of Freshbooks...or a heavy performance loss.

Changlog

  • 0.5 - Initial Beta Release
  • 0.6 - Added Timer Start/Stop with rounding up to the nearest billing increment
  • 0.7 - Added view of invoice summaries and clients.  Provided reliability improvements. Text issues with timer notes fixed.
  • 0.8 - Added the ability to add new clients from the options menu
  • 0.81 - Increased timeouts on submit for reliability, added elapsed time to timer, fixed issue on WM Standard where date field would cause a unnecessary scroll bar.
  • 0.82 - Added (or stole more specifically) the icon from the Freshbooks MacOS widget. You must reboot phone to see new icon if you reinstalling due to icon caching of the home screen...again, only if you had a previous version to 0.82 installed.

Comments

Feedback..

The time idea for mobile is VERY cool - you mentioned looking for feedback - I use Freshbooks for a mobile service Business - I was wondering if it's possible to add the capability of adding a client from the field on a windows mobile device..

I don't know jack about APIs - I have some assumptions, and I guess what I'm asking about depends solely on whether the API available from freshbooks would be capable of this or not.

Thanks!!
at 3/31/2008 8:42 PM

Wow!

Thanks! Works great.
at 4/2/2008 6:12 PM

Feedback...

Please let me know if your still experiencing any errors with your build 0.81 or higher.

Any features that are required that are missing (must be simple please)?

Thanks,
John
John Gilham at 4/8/2008 1:40 PM

Argument Exception Error

OK - I got .NET 3.5 installed and the latest rev of Freshbooks Mobile but when I attempt to get the FB data I get an error and the program crashes.
I get an argument exception error.

Any ideas?
at 4/8/2008 5:22 PM

Re: Argument Exception Error

1. Do you have at least one entry in freshbooks (can be the default sample)?:
Invoice
Time Entry
Invoice Payment
Client
Project
Task

2. What model phone are you using?

3. Have you changed the freshbooks API token and url in the account options...if you add any letter to the password does it fail with a "401 unuthorized"?  This will help us check if your settings are right.

The goal for getting out beta is to not have it crash...so please let me know how I can help you fix this.

John
John Gilham at 4/8/2008 5:34 PM

Data request error - could not establish a connection to network

Sprint PC6700 WM5

I downloaded and installed the latest .net framework and FreshMobile and the install went perfect. Everything looks great but when I try to "Get FreshBooks Data" I get: Data request error - could not establish a connection to network

I tested my internet connection with my browser and it is working fine... I did enable the API feature in FBs and configured FreshMobile with the URL and API key. I tried http://myFBid.freshbooks.com and https://myFBid.freshbooks.com/api/2.1/xml-in (the URL in my settings page) and neither worked.

Any thoughts?

Thanks a bunch for this app... hope I get it going!!!
at 4/9/2008 6:16 PM

Hello


I also commented about this issue just a few minutes ago at:

http://forum.freshbooks.com/viewtopic.php?pid=8989#p8989 

:)

The url should be set to "mycompany.freshbooks.com" , don't include the https:// or any punctuation other then a period.

Please me know how it goes...and thanks for testing it.
John Gilham at 4/9/2008 9:15 PM

feedback

Windows Mobile 6.1

installed, configured account(url, api key), tried to get data but nothing happened, so I closed the app and tried to launch it again, returns the following error:


I think it can be related to my regional settings: Portuguese(Portugal).

http://img155.imageshack.us/img155/3383/pccapture1ic2.png

lmjabreu.com
at 4/11/2008 12:49 PM

Have you installed the .Net framework?

It needs to be version 3.5 of the compact framework.

Let me know...however, being a new programmer and all, I don't know why different languages are failing.

I'll see if I can debug it in portuguese..but you'll have to give me a few weeks.
John Gilham at 4/11/2008 1:39 PM

Excellent Product!

I just wanted to take a moment to give some due credit here.  John has delivered an extremely useful extension to the Freshbooks offering bringing the efficienciy of the tool to our mobile phones.

As a small IT MSP we are constantly in the field and don't always have time to crack open the laptop to log time.  Having this tool readily accessible on our handhelds makes us that much mroe effective when onsite with a client.

Many companies charge for this type of Mobile app and if John were to being doing so when the bugs are fleshed out we'd gladly pay!

Now, to get the Freshbooks team to expand the API so our staffers can use the tool as well!  And once the support tab gets functional - we can envision managing our tickets through our phones as well - that would be simply amazing! :D
at 4/17/2008 12:01 PM

Please Get Freshbooks Data

I push Get Freshbooks data and it seems to go thru the motions but does not retrieve anything. Does this work over Wi-Fi? Or does it only work over GPRS?

Thanks

Mark
at 4/27/2008 12:42 PM

Re: Please Get Freshbooks Data

I've tested it with the Treo (WM5 PPC) and Moto Q9h (WM6 SP) on Wifi, ActiveSync, and GPRS.  Have you set your URL for only "yourcompany.freshbooks.com".

Any error message?
John Gilham at 4/27/2008 1:39 PM

Re: Please Get Freshbooks Data

I don't Know but I came back to it today and it worked of my Wi-Fi  and yesterday it would not. No error messages it just would not populate the projects list or other data. Very cool stuff thanks. Can't wait for staffers to be able to log their hours.

Mark
at 4/29/2008 1:17 AM

Just an FYI, you need to close the application if...

Just an FYI, you need to close the application if you make any changes to the options (API, URL, Billing increment).

If you do that, it works reliably.

John
John Gilham at 7/3/2008 11:33 PM

Can't get started

I'm new to Freshbooks AND FreshMobile.  Actually, I wouldn't of even considered using Freshbooks if it wasn't for Freshbooks mobile!  (how's that ;)

Anyway, I installed v3.5 of the compact framework, installed the freshmobile.cab, entered my freshbooks URL and entered my API token.  When I select get Freshbooks data, it errors out 100% of the time.  The error *I* get is something to the effect that "there is an availible error but the .Net errors are optional and if I want to see them I have to install an additional package."

I've tried my standad URL and the API url for my company, and I've checked the token accuracy so many times my eyes are blurry.  I've closed the app and re-opened it after each change.

I'm using an AT&T Tilt (WM 6.0) and I did install the Compact Framework to my storage card (although I really don't think that should matter).

I'd really appreciate any help because, as I said previously, if I can't get this to work, I can't use Freshbooks IMHO.
at 7/9/2008 5:02 PM

I would recomend installing the Error Messages CAB

Check out the link on the follwing Freshbooks Forum thread:
http://forum.freshbooks.com/viewtopic.php?pid=8976#p8976
John Gilham at 7/9/2008 8:30 PM

Installed error message cab...

OK, after installing the error messages, my error now says "A call to SSPI has failed, see inner exception."

I'd appreciate any thoughts.  Also, if you're willing to continue to help me with this, please tell me where to continue posting:  here?, that forum thread?, a different forum thread?

Thank you!!
at 7/10/2008 9:40 AM

Another User with an SSPI Error on an AT&T Tilt

I am able to Get Freshbooks Data successfully, but cannot submit time.
at 7/22/2008 12:47 PM

Update on Connection error messages

OK, I found that file and downloaded it and after installing the error messages, my error now says "A call to SSPI has failed, see inner exception." What does this mean and how to fix it?
Thanks
at 7/28/2008 8:56 AM

SSPI Error are normally signal issue with your cell tower

The app doesn't retry when packets are lost...so you can just keep sumitting time until it's succesful.
John Gilham at 7/29/2008 7:35 PM

Good Job

As a new FreshBooks user I was all ready to get cracking on writing something like this for myself. Imagine my excitement to see one being written already! Nice job John. Successfully tested on a Samsung i760 running Windows Mobile 6.1... I did have to reset after the install to get it to work (unhandled exception errors prior). If you ever decide to give up.. please...please... PLEASE make your source available :)
at 8/20/2008 8:01 AM

Errors errors errors...

Hi John, thank you for your awesome application! I say this without being able to make it work.. Great concept, though! I have a HTC Titan 6800 (Sprint Mogul) running Windows Mobile 6.1. I am attempting to make FreshMobile run on it with very little success. The first attempt to Get FreshBooks data results in nothing.. no error, no data, nothing. The second attempt usually results in the SSPI error, while all subsequent attempts result in "Unable to read data from the transport connection." Do I have something configured improperly, or is there a compatibility issue with this app and my phone? Please advise.

-Mark
at 10/24/2008 12:45 PM

SSPI error as well

I have the HTC Tilt with WM 6.0 and am experiencing the same SSPI issue mentioned above.  The first time I try to Get Freshbooks data does nothing (besides act like it is getting the data).  The second time gives me the error message. 

I have tried uninstalling and reinstalling with the same results.  Any help is appreciated.
at 11/5/2008 11:07 PM

Awesome!

Treo 700WX - WM 5.1.195

I had the url wrong, wasn't completely restarting FM, blah blah. Once I followed your suggested fixes all is working just the way its supposed to! This makes my life so much easier!

Thank you!

-Chris
 Datashield.biz
 'You can call us now...or you can call us later'
at 11/22/2008 4:57 PM

objectdisposedexception

I received a objectdisposedexception when I first installed it on a Samsung Saga with 6.1.  But after I reset the device and tried again it ran.
at 1/3/2009 11:02 PM

Downloading Projects Fails

If I use my wireless provider internet, it times out (I added CF 3.5 messages onto my Motorola Q) - if I use my cradle and home connection (cable modem) it works, but does not download anything.

RE: URL

Found that from looking at the code. :)

I'm downloading the Windows Mobile 6 Standard SDK now to look at the project. Since it is fairly straight forward, I may just rewrite it in C# for fun. :)
at 2/1/2009 4:23 PM

Add Comment

Items on this list require content approval. Your submission will not appear in public views until approved by someone with proper rights. More information on content approval.

Title


Body *


CommentUrl


Attachments

 Latest Reader Comments

OCS 2007 R2 support for SQL 2008 DB mirroringSQL Server 2008 Mirroring in Standard Edition
what about iPhone 4.0?Configuring Exchange Server 2007 ActiveSync for iPhone OS 3.1 (and prior)
CAS Array in Hyper-VHow to setup an Exchange 2010 CAS Array to Load Balance MAPI
Disallow all agents except SharePoint?Useful SharePoint 2007 (MOSS 2007 SEO) configuration with robots.txt file for public facing SharePoint 2007 sites.
Cloud PBXMicrosoft OCS 2010 Is Coming To Unified Communications, PBX Killer
smart cardHow To: Configure Microsoft Remote Desktop Client and Smart Card Authentication
Profiles missing from ImportImporting and Deleting User Profiles in Sharepoint;Filtering Disabled Users from Import; Managing MySite of Deleted Users
Thank youManual Uninstall of SQL 2005 (32bit / 64bit) SQL Server or Express (including Reporting Services)
Auto-deletes all mysites after Full Import ScheduleImporting and Deleting User Profiles in Sharepoint;Filtering Disabled Users from Import; Managing MySite of Deleted Users
PerfectManual Uninstall of SQL 2005 (32bit / 64bit) SQL Server or Express (including Reporting Services)

 Subscribe and Bookmark

 Last 20 Articles

Category
Remote Desktop Connection Manager (RDCMan)
Windows Deployment
 
SharePoint Server 2010 Product Licensing Details
Sharepoint 2010
 
Manage Windows 7 Power Options from the Command Line
Windows Deployment
 
Download details: Windows Phone 7 Training Kit for Developers - April 2010 CTP
Windows Mobile
 
Clustering Remote Desktop Connection (RDC) Broker for High Availability when Deploying Microsoft VDI
Virtualization
 
SharePoint 2010 Reference .Net Software Development Kit (SDK)
Sharepoint 2010
 
Microsoft Private Cloud “AppFabric” Prepares for Release
Cloud Computing
 
Malware and Virus Scanning Architecture in Forefront Threat Management Gateway (TMG) 2010
Security
 
Best Practices Analyzer (BPA) for HYPER-V (RTM and R2)
Virtualization
 
Microsoft Threat Management Gateway (TMG) 2010 - Key Features & Capabilities
Security
 
The forecast is sunny for [Microsoft] cloud services.
Cloud Computing
 
Microsoft announces "RemoteFX," the Calista-based Hyper-V-requiring PC-over-IP competitor
Virtualization
 
Dynamic Memory (aka Memory Overcommit) Coming To Hyper-V
Virtualization
 
SharePoint Overwhelms Business Intelligence - Gartner
Sharepoint 2010
 
Active Directory Power Tool: AD Explorer (and Editor)
Active Directory
 
Protect your Business Information for Free using Encrypting File System (EFS)
Security
 
How to: Integrate Office Communications Server (OCS) 2007 R2 with Exchange 2010 OWA/CAS
Exchange 2010
 
Microsoft Forefront Identity Manager (FIM) 2010 Released
Security
 
Microsoft Thinks VDI Might Not be the Answer to Every Desktop Scenario
Windows Deployment
 
Creating Hyper-V Virtual Machine Templates for VDI or SCVMM Library
Virtualization
 


Contact Us  |   San Diego, California

Copyright 2007-2009 Gilham Consulting - All rights reserved