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

it good for meFree Office Communicator Integration Add-On for Outlook 2007 Allows Users to Interact with their OCS 2007 IM Contact List from the Outlook Pane.
Manager CleanupImporting and Deleting User Profiles in Sharepoint;Filtering Disabled Users from Import; Managing MySite of Deleted Users
I've updated the post titleSystem Center Configuration Manager (SCCM) 2007 R3 Announced
SCCM?System Center Configuration Manager (SCCM) 2007 R3 Announced
More info?Microsoft Dynamics CRM Online Update Coming November 2009
 Deleting Features from SharePoint.Removing Invalid SharePoint 2007 Features due to a Failed, Missing, or Unsuccessful Activation SharePoint WSP
server recovery toolsChanging the System Center DPM 2007 Server Recovery Tool (SRT) File Store location
jeu de sportUtility to Install Windows Source Files from USB Flash Drive (Windows 7, Vista, WinPE and Windows Server 2008)
Killing processes attached to SQL Server folderManual Uninstall of SQL 2005 (32bit / 64bit) SQL Server or Express (including Reporting Services)
PBX Cluster group is installed to make netbackup cluster awareThe mysterious cluster group called PBX-ClusterGroup-Servername revealed

 Subscribe and Bookmark

 Join us in San Diego

SharePoint 2010 Consulting

 Last 20 Articles

Category
Windows Firewall with Advanced Security: Step-by-Step Guide to Deploying Windows Firewall and IPsec Policies
Security
 
Automatically Test Application Compatibility for New Apps on Terminal Server/RDS Farm using the RDS Application Compatibility Analyzer
Terminal Services
 
Hyper-V Live Migration Network Configuration Best Practices
Virtualization
 
Forrester Research Posts on Legal Implications of Cloud Computing
IT Management
 
Planning for an Automated Windows 7 Upgrade from Windows XP
Windows Deployment
 
A CIO Check List for eDiscovery and Litigation
IT Management
 
Microsoft Announces New SharePoint 2010 Certifications
Sharepoint 2010
 
Transitioning Client Access Servers (CAS, OWA and ActiveSync) to Exchange Server 2010
Exchange 2010
 
Exchange 2010 Transport Architecture Diagrams Available for Download
Exchange 2010
 
Microsoft Forefront TMG Categories for Web URL Filtering/Blocking
Security
 
Microsoft OCS 2010 New Features
OCS 2010
 
Operation and Failover of Resource Hosting Subsystem (RHS) In Windows Server 2008 Failover Clusters
Windows Deployment
 
Migrating Exchange 2003 or 2007 ActiveSync to Exchange 2010
Exchange 2010
 
Problem Application Candidates for Virtualization with Microsoft App-V
Virtualization
 
BlackBerry Enterprise Server (BES) fully supported on Exchange 2010 RU1
Exchange 2010
 
How to setup an Exchange 2010 CAS Array to Load Balance MAPI
Exchange 2010
 
Getting started with BI in SharePoint Server 2010
Sharepoint 2010
 
Microsoft Infrastructure Planning and Design Guide Series
IT Management
 
Simple Windows Server 2008 Core Configuration Tool
Windows Deployment
 
SCVMM 2008 R2 VM Processor Hardware Profile CPU Type
Systems Center
 


Contact Us  |   San Diego, California

Copyright 2007-2009 Gilham Consulting - All rights reserved

San Diego Computer Consulting - San Diego IT Consulting - San Diego IT Support - San Diego Managed IT Services
San Diego Network Security Consulting - San Diego VOIP Phone System for Business