email address
customer id
   log in
Simplifying group collaboration...

 
 

Archive for the ‘data synchronization’ Category

Serving Server Data – a nice mess

Tuesday, July 3rd, 2007

We recently had a prospect from a “large Fortune 1000” firm contact us looking for a way to allow their executives in separate offices, each with their own instance of Microsoft Exchange, to have access to each others calendars. Obviously it’s much more subtle than that: their respective admin assistants are doing all the work, but apparently it requires each of the various admin assistants calling the other to check availability and location of their respective executive(s). Then of course they individually update their executives’ calendar and viola, they are up-to-date until the next event occurs. And apparently this happens all day long…

The awkward part occurs when they are scattered across the globe and in different time zones and they want to have this data available to them via their wireless pda asap, preferably immediately.

This is actually a very simple, but common, example of standard usage of our wireless pda’s. We use them to make phone calls, check emails, and manage our calendar. And of course with the release of the iPhone, everything is supposed to be possible, right? But it is the challenge of allowing data to go across different collaboration servers that is exactly the challenge that XC Bridge (Xchange Network’s solution) is resolving.

The trick of course is to get access to the various collaboration servers, access the data in the context that it is presented, and then allow that data to be made available to another user in the context of their own collaboration server – which is exactly what XC Bridge does.

But wait, it got better – This prospect also bemoaned the fact that the “calendar thing” was really just a minor problem. The bigger issue was how much it was costing his company to build unique data pipes to allow different servers to push their data to and fro. Remember the concept of “stove-pipe data” and “data silos” back in the 1990’s? Well, it still exists with not much resolution – at least (we hope) until now with the advent of XC Bridge.

XC Bridge allows that connectivity between different servers and their various different user interfaces. Its purpose is to eliminate the data silos and the custom data pipes that allow the transfer of data. More importantly, it’s purpose is to enable it quickly.

We’ll keep posting interesting stuff as it happens. These are exciting times at Xchange Network! If you are interested in more information, pop us a note to info@xcnetwork.com and mention this article. We promise to reply.

Synchronizing Remotely and not-Remotely

Tuesday, May 15th, 2007

Almost all of our customers and users have a need to synchronize data while they are out of the office. Not surprisingly, this is when the ability to have current data is usually the most valuable.

If you are network savy and already know how to configure your router and firewall for remote access, then read no more… but for those of you that are curious, read on…

The first thing that you are going to need is a “Static” IP address, that is to say, an IP address that will not be changing, otherwise known as a “Dynamic” IP address. Your Internet service provider will be able to tell you what class of service it is that you have.

The reason you want a “Static” IP address is so that when you are off site you will be able to reliably access the XCN Server without having to call the office and ask what the “IP address of the day” is.

Secondly, you will need to configure your router to “port forward” ports 80 and 10001 to the “internal” (LAN) IP address of the computer on which you have installed the XCN Server. Think of it this way: the router is acting sort of like your telephone switchboard. When you are remote and want to synchronize, XC Connect will be doing so using ports 80 and 10001, very similar to that of a phone extension. The router will recognize the incoming authentication request from your remote computer and will look to transfer that incoming request to ports 80 and/or 10001. And since you probably have more than one computer attached to this router, you will need to tell it where to send the request so that it gets responded to appropriately. In this particular case it will be the IP address of the computer on which the XCN Server is installed.

Thirdly, if you have any additional firewalls, you will need to allow access through those two ports (80 and 10001). The additional firewalls may exists as a separate “Firewall” box that is on your network, or more typically as a software firewall that might exist on the server itself.

Security: Data that is transmitted on port 10001 is 128 bit encrypted, as is the data on the XCN Server. Data on port 80, which is the port used for standard web-browser access, can be encrypted should you choose to have it so. If you do, just use “https” for full SSL encryption. In most cases you can do so without having to have a signed “certificate”. In addition, access to the XCN Server requires authentication by username and password. If the XCN server does not receive the proper authentication and if the data is not formatted along the anticipated encryption rules, the connection is dropped.

So the bottom line is that Yes, you can securely create, modify, and synchronize data between all of your users, remote or not so remote. You just need to 1) have a Static IP address, 2) port forward your router, 3) modify your firewall to allow the data. And that’s it!

If you have any questions, please let us know – contact us at info@xcnetwork.com. Thanks!

Alternative to Microsoft Exchange

Monday, April 2nd, 2007

A recurring question that we are constantly being asked is “Is XC Connect an alternative to Microsoft Exchange?” The short answer is “yes, but no….”

To elaborate:

Yes, XC Connect is an alternative to Microsoft Exchange in that it enables group collaboration and allows users to create, modify, and share Calendar, Contacts, and/or Task information, from both “personal” and “public” folders.

But No, XC Connect is “not” an alternative to Microsoft Exchange in that it does not provide the email server capability that Microsoft Exchange does, and neither does it allow the sharing of other elements within Outlook, such as “Journal” and “Notes”.

Why didn’t Xchange Network go down that route and make XC Connect a true replacement for MS Exchange? The reasons are simple:

All of our users already have an email server/system in place… so there was no point in re-creating that wheel.
When polling users, we found that Journal and Notes sharing is a very low priority…. Calendars, Contacts, and finally Tasks data were at the very top.

However…. there are things that make XC Connect very unique, and things that that Microsoft Exchange does not even attempt to do. For example, XC Connect:

allows users to share data across virtually any desktop application (all you need is an XC ‘connector’ to that application).
allows users to install the software server component on almost any operating system (just has to support the Java Virtual Machine). We provide install packages for Windows, Linux, and OSX.
allows users to use whatever email server/system that they wish.
allows users on different email domains to still share data (for example users with an email domain “(name)@company.com” can still share data with other non-company users at for example, (name)@yahoo.com).
is simpler and way less expensive to install and manage….

There are more subtle differences, but those are the highlights….

Xchange Network Synchronization Platform

Friday, March 30th, 2007

We’ve gotten a lot of requests for information relative to how the Xchange Network Synchronization Platform works (the core of XC Connect), so we thought that we would post the following document… hope that it’s helpful to you!

Summary

Xchange Network provides a “best of breed” data synchronization platform that allows arbitrary data to be synchronized between any client application. The current implementation of this data synchronization platform is in the form a product called XC Connect.

Description:

The Xchange Network synchronization platform approach is simple:

1. treat all data objects as xml blobs which the software server will pass to client connectors that understand the context and usage of the data.
2. do not modify or reformat the data.

There are two basic components:

the software server, (also called (XC Bridge”) and
the “client connector”

The software server’s purpose is to act as a data repository and to handle the bilateral synchronization logic. The software server determines and controls what data needs to be provided to a given “client” each time each individual client synchronizes.

The client connectors process the xml data by interacting with the client application and the software server. Its purpose is simply to apply the data in the context of the client application when data is received from the software server, or if data is created, modified, or deleted by the client application, to wrap the data object into the xml blob and send it to the software server.

As a result, the software server has no need to “understand” the data as it is simply passed along to other client connectors as needed, thereby eliminating any possibility of data loss during synchronization. Data transfer is secure and access to the data is based upon a permissions model.

Since most client applications are closed source, but have external access API’s (COM, CORBA, AppleEvents, JDBC/ODBC, etc.), Xchange Network has designed the connector framework with those implementation details in mind. New client connectors for currently unsupported applications can be implemented within a very short period since the connector framework itself does the majority of the work.

Both the software server and the client connector framework are written in Java to allow as much flexibility as possible with regards to deployment requirements. This allows both to run on any operating system that supports Java Virtual Machine resulting in unparalleled flexibility.

Current Platform Usage:

The synchronization platform is currently being implemented within a product called XC Connect, which allows Calendar, Contact, and Task data to be shared (synchronized) across any combination of Outlook (COM), Entourage (AppleEvents), Apple iCal/Address Book (combination of AppleEvents and JNI) and Evolution (CORBA).

None of the applications require modification in any way, or are affected in any way, since the data interaction is treated in the same manner as user input.

In addition, the software server contains add-on modules to expose the Calendar, Contact, and Task XML data via a web-browser interface providing yet additional flexibility to data access.

XC Connect is currently a deployed solution with an active and growing customer base across virtually every vertical market segment. Customers range from financial institutions, legal offices, schools and universities, and many more.

No Client Data Loss:

One of the huge problems with supporting multiple client applications is that each application has its own list of supported data fields. As a point of reference, in the current implementation of the XC Connect collaboration server, one example is the calendar data that is synchronized between the Outlook Calendar and Apple iCal calendar.

Outlook has a very large list of fields that it supports, while iCal supports a limited number of fields.
In most implementations, this would mean that when an iCal user modifies an item, any unsupported fields would be lost.
However, the connector framework has seamless support for this scenario, and as a result, no data is lost. The changes are simply merged to the existing xml and sent to the server ensuring that everything is still present when synchronized to Outlook.

Other Possibilities:

Due to the flexibility afforded by the architecture, the specific items within a record can be easily extended since the software server does not have to individually manipulate or modify the data record that it is managing. One can easily see adding, CRM, or ERP, or any other specific application type to the mix of implementations and all that would be required are the client connectors to support it (them). This yields the ability to support data synchronization for example, between conflicting client or server applications within a matter of weeks with neither application requiring modification of any kind.

Conclusion:

The Xchange Network synchronization platform is both very powerful and very flexible. It enables data to be synchronized between multiple disparate client applications with little development time and without affecting the existing user application.

For further information, please contact us at info@xcnetwork.com !

Posted in data synchronization

What do users need to/want to synchronize?

Friday, March 30th, 2007

The predominant element that users tend to want to share are Calendars! Which is not unusual, since it is human nature to want to either know, or tell others, what is going on. This has the natural expansion of dealing with both a “personal” calendar or diary and a “group” calendar. But wait, there’s more: because as soon as we discover that we can put people on a calendar and schedule events for them, we want to be able to schedule (and manage) physical resources, everything from conference rooms to the corporate airplane.

XC Connect manages this very nicely, allowing users to share their personal calendar with selected users or to participate in selected “group” calendars. To take it a step further, XC Connect enables a permission structure that provides for read-only, read/write, as well as read/write/delete privileges. In other words, you might have visibility into someone else’s calendar, but you may not have the privilege to create or modify their schedule. On the other hand, you might have, as an “administrator” full access to a user’s calendar, allowing you to fully manage another user’s schedule.

The above holds true for managing resources, where selected users might have “read” access to the status of, for example, a conference room, but there is a selected user that actually has control over booking the room itself.

Address Book and Contact sharing is the next most popular, particularly since in many cases, the desktop application is utilized as a mini-CRM tool, or even as a “company address book”.

XC Connect allows the creation of multiple “shared” address books/contact folders providing a lot of flexibility. There is no limit to how many different ones you can create.

The third most popular element that is shared are Tasks… We’ve found that organizations that deal with project management or process related events utilize the shared tasks capability extensively. Customers in the construction industry in particular seem to leverage this feature the most. Legal offices also utilize the Task structure to delegate and track case events.

Again, XC Connect facilitates the ability to manage a complicated task management situation by providing for a flexible permissions model and the ability to create multiple shared task folders with access by desired users.

What is synchronization?

Friday, March 30th, 2007

As computer users we constantly talk about synchronizing data…. But what is it? The American Heritage Dictionary defines “synchronization” as: “To arrange (historical events) so as to indicate parallel occurrence.” In the simplest of terms, it means that we want data on one computer to appear on another computer. But it’s a lot more complicated than that…..

The complexity of the issue comes from the source of the data, who has permission to modify it, who has permission to see it, and how the “synchronization engine” manages the dynamic data.

XC Connect resolves the issue regarding the source of the data by providing “connectors” to various applications (such as Outlook, Entourage, Address Book/iCal, Evolution, Word Perfect Mail, etc) and presenting the data that is available from the application to the XC Connect “server” (the XCN Server).

When receiving data from the XCN Server, the connectors’ purpose is simply to apply the data in the context of the application when data is received from the software server. If the application has created, modified, or deleted data, the “connector”wraps the data object into an encrypted xml blob and sends it to the software server.

As a result, the software server has no need to “understand” the data as it is simply passed along to other client connectors as needed, thereby eliminating any possibility of data loss during synchronization. Data transfer is secure and access to the data is based upon a permissions model.

XC Connect manages the issues of who has permission to change it, view, or delete, with a very efficient permissions structure that manages the record object along with the permission structure of the user.

Since data can be very dynamic, changes are reconciled very simply: the user that made the most current modification wins. In a more complicated data reconciliation model, when a data conflict (change) is found, affected users could be given the opportunity to decide whose change should take precedence. However, use cases have shown that users are not at all interested in being constantly bothered with reconciliation – it’s almost as if they would rather gripe about the fact that an appointment was changed than having been advised about it by the software.


Xchange Network's blog is powered by WordPress
Articles (RSS)        Terms of Use
home    products    buy now    try now    technology    partners    support    contact    about us    knowledge base    careers    privacy
Copyright© 2002-2006 Xchange Network LLC. All rights reserved.