Jump to: navigation, search

Changes


UBIK Push Web Service

2,401 bytes added, 08:41, 27 May 2014
The Endpoint of the Push Service must be configured in the Service section of the Web.Config file:
<code>
<configuration>
<system.serviceModel> <services> ... <service name="UBIK.Service.UBIKPush" behaviorConfiguration="httpBehavior"> <endpoint address="" behaviorConfiguration="httpBehavior" binding="webHttpBinding" contract="UBIK.Service.IUBIKPush" /> <endpoint address="/SOAP" binding="wsHttpBinding" contract="UBIK.Service.IUBIKPush" /> </service> </services> </system.serviceModel>
</configuration>
</code>
 
== Web Service Interface ==
 
The WebService provides a method to add content to be pushed to the clients:
 
<code>
/// <summary>
/// AddUpdateInformation provides the possibility to register data to be forwarded (pushed) to the clients
/// </summary>
/// <param name="data">Data which should be pushed to the clients, and criteria which must be fullfilled for pushing</param>
/// <returns>true as adding the information was successfull</returns>
[OperationContract]
[WebInvoke(UriTemplate = "AddUpdateInformation", Method = "POST",
RequestFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Bare,
ResponseFormat = WebMessageFormat.Json)]
bool AddUpdateInformation(PushUpdateDefinition data);
</code>
 
 
The Push Web Service provides access to its current status via a debug - info method. You can use this to get info about the current status of the Web Service.
This method can be executed via a Webbrowswer as well:
 
<code>
/// <summary>
/// Delivers info about the current status of the Push Service.
/// </summary>
/// <param name="token">authentication token</param>
[OperationContract]
[WebInvoke(UriTemplate = "DebugInfo/{token}", Method = "GET",
RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json)]
string DebugInfo(string token);
</code>
There is a possibility to trigger a reinitialization (reset) of the Push Web Service from outside. This method can be executed via a Webbrowswer as well.
<code>
/// <summary>
/// Resets the Cache of the Push Service
/// </summary>
/// <param name="token">authentication token</param>
[OperationContract]
[WebInvoke(UriTemplate = "Reset/{token}", Method = "GET",
RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json)]
void Reset(string token);
</code>
== Future Prospective ==
Up to now (Version 2.3.1) there is no UI implementation for the Push Web Service. To guarantee an optimal integration of the Push Service to the UBIK Kernel a socket implementation of the Push Service is provided via the Environment. This socket class uses the web service methods to add data to the PushService. The Configura-tion of the WebService must be done as it is done for the LAS/GAS.
An instance of this Socket class is provided via the Ubik Environment.
1,546
edits