Friday, January 24, 2020

Siebel CRM REST API

About Siebel CRM REST API

REST (Representational State Transfer) is a software architecture style that provides a convenient and consistent approach to requesting and modifying data. In the Siebel CRM RESTful system, resources are stored on the Siebel Server; a client sends a request using an HTTP verb (such as GET, POST, PUT, or DELETE) that the Siebel Server perform a particular action (such as querying, inserting, upserting, or deleting a Siebel CRM resource), and the Siebel Server performs the action and sends a response. The Siebel REST API is provided with the Siebel Application Interface installation. For more information about installing Siebel Application Interface, see Siebel Installation Guide for Microsoft Windows. The Siebel REST API is enabled by configuring and deploying a Siebel Application Interface profile. The Siebel Application Interface profile can be deployed to multiple Siebel Application Interface nodes.

The Siebel REST API exposes Siebel Business Objects, Siebel Business Services, and Siebel Repository Objects. For more information about Siebel Business Objects, Siebel Business Services, and Siebel Repository Objects, see Configuring Siebel Business Applications.
The following are the salient aspects of the Siebel REST API that are aligned with general best practices of REST APIs:
■ A base URI to access Siebel Server resources, for example: http://Server Name:port/Siebel/v1.0/
■ Support for JSON resource representations.
■ Support for XML resource representations.
■ Operations on Siebel CRM resources are mapped to semantically similar HTTP methods, such as GET, PUT, POST, and DELETE.
■ Hypertext links to Siebel CRM Child Business Components in the case of the Data API resources in the REST API response.
■ Support for Outbound to interact with other Cloud applications that communicate through REST.

About Siebel CRM REST API Architecture The Siebel CRM REST API services are deployed as a WAR file  on the Siebel Application Interface. The Siebel Application Interface is a java-based Web component that runs on the Tomcat server. The Siebel Application Interface provides the Web entry point to Siebel Business Application services. The Siebel Application Interface interacts with the Siebel Server and Gateway Server to manage and fulfill Siebel REST requests.

Each Siebel Enterprise can have multiple Siebel Application Interface nodes and can have multiple Siebel Servers but can have only one Gateway Server. Installations of Siebel Enterprise Server and Siebel Application Interface modules include deployment of WAR files into the application container and configuration of application container ports. The Siebel application configurations are managed by the Siebel Management Console and stored in the Siebel Gateway Server.

shows the high-level architecture of Siebel REST within the Siebel Application Interface.
■ Requests: Users send an application request to the Siebel Application Interface.
■Siebel Application Interface requests include: UI, EAI, or REST. The appropriate application channel accepts the request. Application channels include: UI Channel, EAI Channel, or REST Channel. n Siebel Application Interface: The Siebel Application Interface serves as the Web server for the Siebel Business Applications. The Siebel Application Interface identifies requests for Siebel application data coming from Web clients and flags these requests for routing to a Siebel Server. When information is sent from the Siebel Server back to the Web client, the Siebel Application Interface helps complete the composition of the Web page for forwarding to the client.
■ Siebel Management Console: The Siebel Management Console is a Web-based application that allows users to configure various Siebel Application components and save the configurations in the Siebel Gateway Server.
■ REST Channel: The REST channel is one of three application channels that provide an endpoint responsible for receiving and processing user requests. The REST Channel is responsible for serving the REST requests. Other application channels include the UI channel and EAI channel.
■ Siebel Server: Siebel Server functions as an application server and is composed of server components.
■ Gateway Server: Siebel Gateway provides the dynamic address registry for Siebel Servers and server components, and also for Siebel Application Interface. The Siebel Application Interface configurations are also stored and managed in the Gateway Server.
■ Outbound Channel: The outbound channel forwards requests to external Web services. For more information, see Siebel Installation Guide for the operating system you are using, Siebel Deployment Planning Guide, and Siebel System Administration Guide. 

If you want to know more about it you can follow the below link
https://docs.oracle.com/cd/E88140_01/books/PDF/RestAPI.pdf

Thanks
Happy Learning :)

Workspace Feature in Siebel IP19

In the siebel IP19 a Workspace feature provides users a new way to manage configurations of repository artifacts in Siebel Tools. This feature allows multiple developers to work on the same repository objects in the Siebel database.
A workspace provides a user with a sandbox for editing and publishing (delivering) configuration changes until these changes are ready to be delivered into the main workspace (parent, root, or master workspace). 
This feature ensures isolation from other users making changes to either the same objects or other objects in the application. It is also an alternative to using local databases to make changes to the repository data.
Users can preview and test repository updates made in a developer's environment (workspace) in Web Tools without affecting other developers. They can do this when they are added to the database and also have the Composer Administrator responsibility to access the Workspace Dashboard to perform developer or configuration operations. Until all updates are delivered, these updates will not impact other developers. Once the changes in developer workspace are delivered then Siebel runtime repository tables will be updated with the new values. 

In other words, the Workspace feature in Siebel Tools provides the following capabilities:
  • A user can make configuration changes to the repository application without any impact on other users.
  • Configuration changes are persistent but in isolation from the metadata of the deployed application.
  • Only modifications to the configuration (delta) are tracked and stored, while other configurations are referenced from the base repository in order to render a consistent view of the modified application.
  • Persistence of configuration changes enables configuration to be a long-running operation or transaction.
  • Concurrency is achieved so that multiple users can each modify the same application in isolation from one another.
Workspace is also a feature of Web Tools, which is an alternative to the traditional Siebel Tools client. Workspace administrators can enable the Workspace feature for Siebel Tools at the database level by running the executable utility. After the Workspaces mode is enabled for Siebel Tools, it cannot be reverted back to the non-workspace mode. 



CTRL+S (Save record by using Keyword) functionality removed in Siebel IP2019

New Features\Functionality findings:

As we know after Siebel IP18 we have also a new upgraded version of Siebel IP19 where are many new features are presents and some of the features removed from it.


In before version while creating customer appointment from Agenda Screen we were able to save the record by heating the "CTRL+S" button by keyboard.

But now in Siebel IP19 this features has been removed from the Agenda screen, we have to explicitly heat the "Save" button on agenda screen to save the record.


Additional of the Previous article "Siebel Test Automation IP 2018"

As additional of my previous article for Siebel test automation added here some more information related to it.
I’ll take you through some of the key tips and tricks for setting up and utilising test automation. You’ll have everything you need to get stuck in to testing, in order to speed up your Siebel Open UI deployment.

What’s changed in Siebel CRM IP2018?

Historically, testing the Siebel CRM application involved either manual testing or use of third party automation tools requiring additional resources. With the IP2018 upgrade, an inbuilt test automation framework helps to capture, manage and execute test cases easily without the need of any additional resources. The direct benefit would be cost savings associated to the additional resources required for testing.

Test automation process flow:

The Siebel test automation framework allows us to:


  • Record user actions using Siebel Usage Pattern Tracking framework
  • Save the recorded user actions as keyword/test scripts using Siebel Keyword framework
  • In Siebel, users can playback and verify the test scripts captured
  • Import the captured test scripts to Siebel CRM database.

Usage Pattern Tracking (UPT)
The Siebel UPT feature allows us to capture and review application usage details. It is essential to have UPT setup for Siebel test automation because user actions are captured using the UPT framework while you are recording test scripts.

Keyword Definition (KWD)
You’ll need to verify KWD runtime events are present and, in IP2018, KWD runtime events are included as part of the standard installation. The KWD framework converts the user actions captured using UPT into KWD scripts, which are test scripts.

Desktop Integration Siebel Agent (DISA)
DISA is required for test automation and the SiebelAutomationPlugin shipped with DISA is used for playback. Chrome, Firefox and IE11 are the supported browsers and their respective drivers have to be downloaded and added to the following location:

<DISA Location>/DesktopIntSiebelAgent/plugins/SiebelTestAutomation/Drivers

Capture test scripts
You have to launch a Siebel thin client with SWECmd=AutoOn parameter in the URL. Once you login to the Siebel CRM application, the ‘Record’ control will be available in the toolbar to start recording test scripts.

Playback and import scripts demonstration
  • Click on the ‘Scripts’ control to open the script pane.
  • Select the scripts you would like to play back, click on ‘Play’ control or click ‘Import’ control to import the KWD scripts generated for the recorded session into the Siebel CRM database. The KWD scripts imported can be viewed in Sitemap > Release > Test Scripts.

The Siebel test automation playback feature in IP2018 is very useful. When you click ‘Play’, you can see Siebel CRM automatically launching a new Siebel client and carrying out all the test steps captured in the test script without any manual intervention. Ideally, the playback feature helps you to verify the recorded test scripts before you start using them in your test suite.

Automation attributes
Automation attributes in the Document Object Model (DOM) elements are essential in enabling the content interactions and, the test automation framework makes use of the automation attributes for defining test steps. Repository-configured content will have the automation attributes added to each element automatically.

SiebelApp.Constants derive the automation attributes and the framework exposes them as ‘consts’ in the custom PR:

SWE_PROP_AUTOM_OT
SWE_PROP_AUTOM_RN
SWE_PROP_AUTOM_UN

It is recommended to set these attributes only when automation is turned on, and this can be done by checking whether the application property ‘IsAutoOn’ is set to TRUE.

Test management and execution
Test processes usually used to be managed through a third party tool or a spreadsheet. However, the entire test process can now be managed in-house, within Siebel CRM using the model

Test execution
The test execution process is carried out on the Jenkins server, an open source automation server. To execute test suites in Siebel CRM, Jenkins uses a custom plugin developed for this purpose. An overview of test execution using Jenkins.

Test passes
You have to create test passes after the Jenkins batch execution is completed. The test results are captured as an attachment against the automation execution configuration record, click on the ‘Create Test Passess’ button. Once the test passes are generated you will be notified with a confirmation message and the test passes can be viewed in the Sitemap > Release > Test Pass view.