DeviceInterface
This is the interface used by PC-based VoiceClocks, and third-party APIs for pushing punch data into TimeWorks/TimeWorksPlus, as well as enumerating the list of clients for which data may be submitted. This API was originally created for the VoiceClock product currently sold by SwipeClock, which uses this API exclusively to communicate two-ways with the SwipeClock service. When you interact with this API, you are considered a Device. Before this web service can be used, you must have a Device ID and Device Secret (which roughly mean the same thing as a Login and a Password, but they identify your API-compatible Device rather than an individual client or user). You can get one assigned by contacting SwipeClock. There is a monthly fee for each active Device. A single Device is allowed to push data for one client, or more than one client, depending on how the Accountant has set it up. The Accountant-level login can associate individual clients with the Device. The GetDeviceConfig method allows you to download a list of all of the clients that have been associated with your Device, along with any settings specific to that client (e.g. their time zone, the list of valid employee IDs, etc.). The SendMessages method allows you to push punch records into our system. Each "punch" is a Message, which includes a time, employee ID, and other optional information (such as the answers to any prompts that were configured for the client.)
The following operations are supported. For a formal definition, please review the Service Description.
-
GetDeviceConfig
Used by VoiceClock product and by API clients. Gets configuration information for a timekeeping device or service in XML format. This method gives list of client codes that are configured to use the device plus any device-specific configuration that has been entered into our website, for example, any custom prompts or restrictions that should be applied to clients. This call is only for acquiring information from our site to your device or service. Use the SendMessages call to submit employee punch data back to us. DeviceID and DeviceSecret are credentials that identify your device to our system (like a login and password). Many of the items you get back in the response are specific to the VoiceClock and you can ignore them if you don't recognize them, but you will want to be aware of SiteNumber (you'll need to include this in all punches you send back to us so we know which client they belong to). TimeZone for North American clients will typically be a string such as "-0700,D" which means UTC minus 7 hours, the ",D" meaning add 1 hour during North American daylight (summertime) hours. So "-0700,D" stands for Mountain Time, but "-0700" stands for Arizona Mountain Time which uses standard time year round and doesn't observe DST. -
SendClockImages
Send Images -
SendMessages
Used to send punch data into our services. Each punch is a "message". DeviceID and DeviceSecret are credentials that identify your device to our system (like a login and password). MessageNumber should be a monotonically increasing serial number for each message you send us, we'll ignore any message if we've received one with an equal or higher number. SiteNumber identifies the client and can be obtained via the GetDeviceConfig call. Employee identifies the employee. PunchType is a number: 1 for in, 2 for out. Times are formatted as strings to avoid issues with automatic conversions between different local time zones - please send dates and times in YYYY-MM-DD HH:MM:SS format. Variables is how you send us additional information, such as the responses to prompts (we accept I,J,K,X,Y,Z for variable names for the TimeWorks system, and any valid alphanumeric symbol name (underscores allowed, no spaces please, no leading digits please) as variables in the TimeWorksPlus system.