What third party systems should Klok integrate with?

Discussion on integrating with Quick Books, Harvest, Freshbooks and others.
Rob
Posts: 59
Joined: Wed Nov 26, 2008 1:26 pm

What third party systems should Klok integrate with?

Postby Rob » Wed Nov 26, 2008 10:29 pm

I am currently putting the finishing touches on the API required to synchronize with 3rd party or homegrown time tracking systems. An example of such is FreshBooks. If you track clients and projects with FreshBooks, everyone in your organization can use Klok to keep track of their time whether they have an internet connection or not at the time.

What other systems would you like to see integrated like this?

Toeknee581
Posts: 3
Joined: Sun Nov 30, 2008 9:54 am

Re: What third party systems should Klok integrate with?

Postby Toeknee581 » Sun Nov 30, 2008 10:07 am

It would be great if we could query the database directly. I"m a programmer myself and I'd love to make a utility to post my time to Microsoft Great Plains. If you did release a data access API or posted information about the format of the database, I'd be happy to submit my Great Plains tool (once I get it working)

Rob
Posts: 59
Joined: Wed Nov 26, 2008 1:26 pm

Re: What third party systems should Klok integrate with?

Postby Rob » Mon Dec 01, 2008 5:07 pm

One of the changes that is currently being made (as part of v2.0) is to store the data in a local SQLite database instead of the current binary format. I don't know what language you will be using, but if there is a way to read from SQLite then you should be able to pull the data out of the database and do what you want with it. If you want to share what you have done at that point, I would happily publicize that on the Klok site.

ghismo
Posts: 13
Joined: Sun Dec 21, 2008 7:46 pm

Re: What third party systems should Klok integrate with?

Postby ghismo » Sun Dec 21, 2008 8:03 pm

You should provide a "generic" integration, that would let us integrate with our own systems.

A simple REST API for example. In klok, let us parameterize a base url (for example : http://localhost/klok/) and Klok should call predefined url under this base url (for example : ~/start-tracking?user=ghismo&project=My+Project&start-time=2008-12-22T21:07Z&comment=)

Note that :
- using a folder in this url would permit to use every server side technology (.aspx, .php, ...) using url rewriting or default page in this folder (~/start-tracking/default.aspx, ~/start-tracking/index.php, ...)
- using ISO8601 date-time format would fix a lot of ambiguity
- this would allow us as well to "query the database directly" as said before, using a simple web app

nemecec
Posts: 4
Joined: Tue Dec 30, 2008 11:53 am

Re: What third party systems should Klok integrate with?

Postby nemecec » Tue Dec 30, 2008 12:40 pm

Postiing here, as rob at mcgraphix dot com doesn't give any answer.

SQLite option is not very interesting for us as it would require us to develop additional code to run on the client machine (as opposed to developing some code that runs on the server) and that would mean:
  • additional code we need to maintain on client machines
  • an extra step for users, to find that custom application and use that for synchronizing

Instead we would like to "synchronize" straight to server directly from Klok:
  • load project list from server (synchronize)
  • save time entries to server (synchronize)

By "synchronize" I mean the ability to work offline and when coming online, push some button to load all hours to server. Or, even more convenient, have two modes:
  • offline mode - all data is saved in local (SQLite) database and synchronization is manual (push of a button)
  • online mode - all data is save to local and remote database. No manual synchronization is necessary. If connection fails, should switch to offline mode automatically.

When loading hours to server, I agree with previous poster - a Klok-specific REST-like API would be nice and I guess the easiest to implement for you.
Some more comments on that:
  • the previous poster seemed to suggest that the REST API should be very "real-time", reporting every event to server (start tracking, stop tracking, etc). IMO, this is overkill - much better would be to synchronize only complete time intervals to server ("synchronize"). This would allow to use Klok also in offline mode and would reduce coupling between Klock implementation details and server-side code. All server communication should be in UTF-8 (or UTF-16, but not some ASCII or Latin1 encoding).
  • In order to keep synchronization status consistent, Klock client should keep track of some sort of time interval primary key (generated by server) - so the server understands which time interval should be added or updated (or deleted).
  • There should be possibility to "refresh" particular time interval from server (e.g. current day) - so it is clear what has been synchronized to server and what has not been synchronized to server.
    As to the data that should be synchronized, we would like:
    • read projects from server (only server-loaded projects can be synchronized back to server). No create/update/delete is needed for projects - this will be managed with server-side tools.
    • non-server-side projects can be allowed also, but then it should be easy to move/copy all recorded time intervals from "local" project to server-side project inside Klok UI. Use case: I'm offline and want to start recording hours for some new client project. Then I come online, create that client project on server-side and want to easily load (offline) recorded hours to that new server-side project.
    • create/read/update/delete time intervals, assigned to (server-side) projects.

If this kind of functionality is developed, our company would potentally be interested in quite many licenses (~80 employees * 20 USD = ~1600 USD).
If we would get a discount on the license, we could even help you to develop this ekstra functionality, if you are short on developers.

emjayess
Posts: 1
Joined: Mon Jan 05, 2009 11:21 am

Re: What third party systems should Klok integrate with?

Postby emjayess » Mon Jan 05, 2009 12:21 pm

I don't need a klok api, but I would like to see a connector for VersionOne's api[1]...

something that pulls down (GET) my tasks, so all I need to do is sit down and click "working on" for whatever I'm working on, and then forget about it. Then, periodically POST that time data back into the appropriate places in V1.

Further, it would be nifty if connectors were architected to be pluggable/modular... allow contributions from users so the community of users can take action & scratch their own itch, if so desired. Maybe I will build the V1 connector, for example, or maybe somebody from VersionOne will ;)


[1] http://community.versionone.com/sdk/Doc ... taAPI.aspx

thx
--
matt j. sorenson (emjayess)

Rob
Posts: 59
Joined: Wed Nov 26, 2008 1:26 pm

Re: What third party systems should Klok integrate with?

Postby Rob » Tue Jan 06, 2009 9:52 pm

Sorry for the delay in responding. I have been enjoying a (well-deserved IMHO) vacation for the last half of Dec.

Thanks for all the input. This is exactly the kind of discussion I want to have. Here is the plan as of right now. Suggestions are welcome.

Klok will store all project/task (name, description, hours estimate, contact info, etc.) and time entries (date, start time, end time, comments, task, etc.) in a local SQLite database so that you can work offline as is currently possible. By downloading and "installing" (the details need to be worked out, but this will most likely be a RSL-like SWF library) a connector for a particular third party system. Each connector will be responsible for querying the 3rd party API to get projects, tasks, time entries, etc. using whatever API the system provides. The connector will also be responsible for pushing changes to the third party system that were made in Klok while offline. Because every 3rd party system is slightly different, the connectors may vary significantly. They will also have varying levels of compatibility. For example, Freshbooks does not store timestamps with time entries, they only store the date and the duration. What this means is that when pushing entries made in Klok, the connector will need to convert the timestamps into a duration. When going from Klok to Freshbooks all is fine, but if you enter time directly in Freshbooks, when you pull that entry down, the connector will have no way of determining the time at which the entry should be placed. As of now, I am resorting to placing those entries at 12:00 am.

Another point of complexity is that some systems, such as Freshbooks, have no way of returning only entries changes since a particular date. So, when you synchronize, you have to get everything which can result in a lot of data going back and forth that hasn't actually changed. My though is for the connector API to support a Quick Sync mode which just pushes local changes up and a Full Sync mode that synchronizes in both directions.

One last hurdle is that some systems limit the number of API calls that are allowed in a certain timeframe. I believe Harvest has a limit. In the event that you have to do a Full Sync, you may exceed that number do to the way the APIs work.

So, while I plan on integrating with the most common systems online, I also expect to support integration with homegrown systems. Whether this means some generic connector that expects a specific REST API, a Flex Library (SWC) that you can use to build your own connector or something else is still up in the air.

The switch to using SQLite is likely to be pushed down into the final 1.5 version mainly because it would make my life much easier. The connectors will be the main focus for version two along with some bug fixes and the abilty to change the UI to be light vs. the existing dark color scheme.

mwillbanks
Posts: 1
Joined: Fri Jan 30, 2009 2:31 am

Re: What third party systems should Klok integrate with?

Postby mwillbanks » Fri Jan 30, 2009 2:35 am

Integration with Clicktime would be great. This can be achieved by the product codes being the id of the value in click time, comments are considered notes and then automatically do 15m blocks. Currently I am using Klok and taking the report and manually adding it in but I used just about everything directly from Klok.

Clicktime has web services and all you need to do is request their WSDL and documentation from the support area of the web site.

Regards,

Mike

funkepunkemonke
Posts: 1
Joined: Fri Jan 30, 2009 1:15 pm

Re: What third party systems should Klok integrate with?

Postby funkepunkemonke » Fri Jan 30, 2009 1:19 pm

Rob - Please email me. I'm interested in paying you to integrate with a workroom system I currently have running. It has a time tracking tool on the web, so the database is set up, but it's not as great as this system. I'd also like to talk about making invoices generated from the time tracker.

erik.teichmann
Posts: 1
Joined: Tue Feb 17, 2009 12:35 pm

Re: What third party systems should Klok integrate with?

Postby erik.teichmann » Tue Feb 17, 2009 12:58 pm

For me, the killer feature would be the ability to specify a SQL database to connect with.
I (like many others who use this software) have a MySQL server up and running for my various blogs and project software, accessible through the internet (ie mysql.erikswebsite.com). It would be great to be able to set up a database on the server for Klok, and then simply point my instance of Klok to the server, along with login details and database name. This would then allow me to access my data from any of the many computers I work on, and provide for easy automated backups along with the rest of my databases. Also, it would enable the user to hack together integration with their own website or other services. It would be really easy to throw together a PHP file that could handle the above suggestion of allowing interactions such as: www.erikswebsite.com/klok.php?add="My new task"&start=20090217-12:34&finish=..... etc

Rob
Posts: 59
Joined: Wed Nov 26, 2008 1:26 pm

Re: What third party systems should Klok integrate with?

Postby Rob » Wed Feb 18, 2009 9:34 pm

Erik,

Using Adobe AIR really only allows me to directly connect to the built in SQLite database. I can't connect to an other DB with the built in AIR apis. There are some open source projects in the works that may help solve this limitation but for right now the only option for integration with other databases is to have an app server in between that Klok talks to. Then the app running on the app server could connect to whatever DB you want. This is basically how the 3rd part integration is working right now (in my unreleased version 2). I think this is what you are suggesting with the PHP based integration. The real trick with the integration is when the system is offline (without any internet connection). In this situation, I need to a way to remember all the things that need to be synchronized and then when the connection is available sync it up.

The real delay in V2 is the complexity involved with handling changes made in Klok and changes that might have been made directly through a 3rd party system. If all you intend to manage the projects only through the online system and are only going to add, update and delete time entries with Klok, it would be fairly "simple" to make that work.

Perhaps if there is enough interest in that, I will get that released sooner than the full fledged integration.

ghismo
Posts: 13
Joined: Sun Dec 21, 2008 7:46 pm

Re: What third party systems should Klok integrate with?

Postby ghismo » Tue Mar 31, 2009 1:19 am

Any news for that version of Klok ?

I'm dying to try it ! :)

kirbysayshi
Posts: 1
Joined: Sat May 23, 2009 3:06 am
antispam: NO
Please Enter the Middle Number (5): 5

Re: What third party systems should Klok integrate with?

Postby kirbysayshi » Sat May 23, 2009 3:15 am

I've just started using klok, and it seems pretty cool!

A cool third-party integration that I would like to see: Oracle Calendar (we use it at school) and/or Google Calendar (since more people probably use this). Already, after using this program for a short amount of time, I find that I'm duplicating entries, especially meetings. I plan on definitely using Klok for keeping track of how long I'm working, but it would be nice to have everything together... Even if it was just one way, like a "send to Oracle" button. This could be a niche use, but I usually put my often fluctuating work schedule into oracle so that my manager can look and know that I'm working on something, as well as me having a backup record of my work times.

However, for freelance stuff, Klok is damn near perfect! I'm using dropbox to store my preferences file, and it seems to be working well to sync between the few computers I have.

Thanks for making this great program!

kiddynomite
Posts: 4
Joined: Mon Feb 08, 2010 2:44 pm
antispam: NO
Please Enter the Middle Number (5): 5

Re: What third party systems should Klok integrate with?

Postby kiddynomite » Tue Feb 09, 2010 12:14 pm

We use trac at my j.o.b. - http://trac.edgewall.org/ - and I would love nothing more than a way to integrate Klok with it. So I'm voting trac :)

milleogco.dk
Posts: 1
Joined: Tue Apr 20, 2010 3:23 pm
antispam: NO
Please Enter the Middle Number (5): 5

Re: What third party systems should Klok integrate with?

Postby milleogco.dk » Tue Apr 20, 2010 3:37 pm

It would be SO neat if i could import the to do list from ICal! I use Things for my to do list and its synced with my Ical to do's. Im still looking for a timetracking software that integrates with those...

designiom
Posts: 3
Joined: Tue Jan 17, 2012 10:33 am
antispam: NO
Please Enter the Middle Number (5): 5
Location: Isle of Man
Contact:

Klok and Codebase integration = Awesome

Postby designiom » Tue Jan 17, 2012 11:15 am

Definately connect with Codebase http://www.codebasehq.com - Very good bugtracking and general workflow system but would be awesome with Klok connector.

Cheers

corbingravely
Posts: 8
Joined: Mon Dec 23, 2013 12:09 am
antispam: NO
Please Enter the Middle Number (5): 5

Re: What third party systems should Klok integrate with?

Postby corbingravely » Tue Mar 25, 2014 6:34 am

I was not aware about the option Freshbooks which can be used to manage the time among employees. I am working in a corporate firm and we have many agents in a single team itself, so the Freshbooks with the Klok would be very advantageous for the employees to keep the break information in track.






CORBIN
powered files

terredean111
Posts: 33
Joined: Thu Dec 05, 2013 2:41 am
antispam: NO
Please Enter the Middle Number (5): 5

Re: What third party systems should Klok integrate with?

Postby terredean111 » Thu Jun 12, 2014 7:30 am

We are using labor time tracker to track the employee's time. We integrate it directly with the database.

najatuw4646
Posts: 6
Joined: Thu Sep 17, 2015 2:43 am
antispam: NO
Please Enter the Middle Number (5): 5

Re: What third party systems should Klok integrate with?

Postby najatuw4646 » Tue Sep 22, 2015 6:07 am

We integrate it directly with the database.
ทางเข้า holiday

vaiybora
Posts: 25
Joined: Tue Jun 13, 2017 10:41 pm
antispam: NO
Please Enter the Middle Number (5): 5

Re: What third party systems should Klok integrate with?

Postby vaiybora » Tue Jun 13, 2017 10:54 pm

Your blog is very useful for me.I really like you post.Thanks for sharing.
Please click this post,if you wanna join casino online. Thank you.
goldenslot

corbingravely
Posts: 8
Joined: Mon Dec 23, 2013 12:09 am
antispam: NO
Please Enter the Middle Number (5): 5

Re: What third party systems should Klok integrate with?

Postby corbingravely » Thu Sep 07, 2017 12:08 pm

I just wanted to know if this can be integrated with JIRA. That would be pretty interesting as we would be able to track the effective working hours the employee spends inside the office.





--------------------------------
CORBIN GRAVELY
EHR systems
--------------------------------


Return to “3rd Party Integration”

Who is online

Users browsing this forum: No registered users and 1 guest

cron