TunnelPoint – A SharePoint Service
Client Business Area: IT Consultant Specialized in SharePoint
Case Details
TunnelPoint (http://tunnelpoint.com) is a product introduced by our client. This web based software provides a service that makes it possible for SharePoint site owners to plug in data from external web services by using a “no-touch” approach, this all to enrich the SharePoint experience. Technically the product operates as a broker service for the SharePoint web services and external web services/APIs.
User can subscribe to any services and then configure the service to get the data in his/her SharePoint site. Scheduling feature facilitate user to schedule any of the services so that broker engine populate data to the SharePoint site at specified interval.
Technology
- Microsoft ® Office SharePoint Server 2007
- Microsoft® Asp.net framework 3.5
- MS SQL Server 2005
- C#.Net
- AJAX
- JQuery
- Log4Net
- XML Parsing
- ELMAH
- Javascript
- JGrowl
- HTML/CSS
- Web Services
Challenges
- Job Scheduling
- Persistent job scheduling: This product heavily uses scheduling for different services. The biggest challenge was to persist these scheduling without using any kind of service.
- Manage scheduling: User is able to add/modify/delete scheduling scheme for different services. This was achieved by exploring the database used by component. Out of the box method of that component was created to achieve this task.
- Less coding to add a new third party service in the existing product Reusable templates/Interfaces was created so that a new service (e.g. twitter service, fax service) can be added easily by just using these templates.
- Dynamic user controls: Predefined user controls have been created that can be used for all the services.
- Generalization of request using Web Application Description Language (WADL): One of the challenges was to generalize the HTTP request needed to use the services. This has been achieved using xml representation of request called WADL.
Achievement
- Hide the complexity of SharePoint services and build methods that can easily be used by passing simple parameters rather than xml parameters.
- Module implementation to generalize handling of HTTP request.
- Dynamic content loading.
- Use of jQuery to enhance the look and feel of interface.
- Scheduling.
- No code solution: User can customize the look and feel without going to the SharePoint site.
- Detect authentication method for different SharePoint site.
- Integration of “Microsoft online services”.
Advantages
- New service can be added with less coding effort.
- Output of services can be store in SharePoint lists.
- No need to get into the SharePoint server to configure TunnelPoint services.
- Nice load balancing feature of scheduling which is fast and light weight.
- Development Cost Reduction
- No Server side code management headaches.
Salient Features
- Dynamic generation of controls according to the selected service.
- Call methods according to the service selection using reflection.
- Asynchronous operation to improve performance (web services and REST)
- Use of WADL (Web application description language) to generalize the handling of request/response for different service. This reduces the effort to write code for each service for sending request and getting response.
- Rijndael Encryption (AES) to enhance the security for user login, web services etc.
- PayPal recurring payment handling.
- Fastest Way to Transform the Data