Remedyforce Integrations

Size: px
Start display at page:

Download "Remedyforce Integrations"

Transcription

1 White Paper Remedyforce Integrations

2 Salesforce Platform Integrations BMC Remedyforce is built on the Salesforce Force.com platform the worlds most widely used cloud platform. One of the key advantages of sharing this platform with so many other applications both off the shelf and custom is that Remedyforce can leverage Salesforce platform capabilities to integrate with an unlimited array of applications at a deeper level than non-platform applications in the marketplace. The purpose of this whitepaper is to outline the basics for the integration methods that are available from the Salesforce platform that can be used to integrate to Remedyforce. These integration points can range from native connectors, to using web-services, data exchange via and syndication feeds - and include Salesforce API s which provide the means to integrate with other third-party applications with differing programming languages. Integration Types There are a few key types of integrations that we typically see customers request: Business Process: Remedyforce can be leveraged as part of your business processes. For example, if you have a new hire process, Remedyforce can help facilitate the creation of the initial ticket request, assignment of tasks, tracking the completion of the initial request, and then sending out a survey. Data Integration: Remedyforce allows for the sharing of data between internal and external sources (e.g., network discovery tools, 3 rd Party Configuration Management Databases, and HR databases). For example, data integration can be configured to populate user data from Active Directory or LDAP. An Extract, Transform, Load (ETL) tool is typically used to assist. Remedyforce already has a number of pre-configured data sets that can streamline the process of setting up the integration. Web Services can also be used for direct interaction of data. Login/Authentication: Remedyforce can be configured to use your existing single sign-on (SSO) processes whether it be direct integration with LDAP, Active Directory or another 3 rd party application. Methods to integrate with Remedyforce The integration methods that will be discussed are: Inbound and Outbound Integration Outbound messages for calling external services ETL Connectors Web Services Salesforce APIs Inbound and Outbound Integration One of the most common integration points is the inbound and outbound integration that leverages the Salesforce integration service. This service enables customers to open tickets in their BMC Remedy ITSM environment via and to receive notification s for events such as ticket creation and updates. Outbound is fairly self-explanatory. So what is actually involved in creating inbound integration using ? In order to create an inbound service for Salesforce you first need to create an Apex class that implements the messaging Inbound Handler interface. This interface allows you to process the content of the such as headers, content and attachments. When the handler processes the request it can use the information contained within the to create records within Salesforce. For instance, requests via that relate to a problem can create a problem record. You then have to create an service (setup develop services) and link your apex messaging Inbound Handler to the service. PAGE 1 OF 8 Copyright BMC Software, Inc. 2018

3 Figure 1 - (Auto-generated Salesforce address) Within the Service, it allows you to create an address, this unique address (see Figure 1) is produced by Salesforce and uses part of the Apex Inbound Handler name as the first part of the address. You would then create a rule on the mail exchange server to forward inbound mail to this long unique Salesforce address. Once you receive an to your exchange inbox, the rule forwards this to the unique Salesforce address. Salesforce then identifies the unique and associated apex class (Inbound Handler) you have created. The class would run automatically by first parsing the mail body and then invoke the actions you have included in the apex class, for example taking the content of the mail subject or body and creating problem record. For more information regarding this integration point the detailed link below explains more in detail about the apex Inbound Handler class and procedure: Outbound Messaging and Workflows The outbound messaging option is available within Workflows. Workflows looks for field changes and trigger user specific Salesforce actions. Based on the workflow conditions, the action can then be invoked and the sending of an outbound message can be that invoked action. These outbound messages can then contain database field values which can be sent to external third-party applications in the form of a SOAP message to a respective endpoint. PAGE 2 OF 8 Copyright BMC Software, Inc. 2018

4 Figure 2 - (Image Source: Salesforce - Once the workflow and outbound message is created and saved, the user obtains the WSDL (web service definition language) message that is generated as part of the save. The WSDL message is in XML format and will contain instructions on how to reach the endpoints along with what data is to be sent to the endpoint URL. The endpoint URL receives the message and takes the information from the message (i.e. the WSDL) and processes this for the end point URL as it is programmed to work. The outbound message is received by an endpoint URL listener and using the WSDL file it will process the data. The listener is effectively a service that needs to be created and runs on the client s virtual directory and listens for inbound messages as result of outbound messages sent from Salesforce. These messages once intercepted, are processed and actioned as a result of the data being sent. More information on defining outbound messages can be viewed here: ETL Jobs ETL jobs are applications that Extract data, Translate data and Load data. These data transfer jobs run on a scheduled timeframe to move data from one location to another. Pentaho is just one example of an ETL application commonly used with Salesforce. Salesforce has multiple Pentaho packages PAGE 3 OF 8 Copyright BMC Software, Inc. 2018

5 already built to move data from one application to another. A couple examples of Salesforce Pentaho jobs are Active Directory Synchronization to the Salesforce User object, and Remedy Atrium CMDB to the Remedyforce CMDB Synchronization. Extract is the process of pulling data from the original data source. This data is temporally stored in a location the ETL job can access for the Translate and Load phase. Translate is the process of data cleanup and transformation of the original data to be in the destination application s expected format. Some examples of translation are Status translations, a Menu Translations, Upper Case of values or a Client ID look up. Load is the process of mapping and loading the cleaned data into the destination application. An example is the cleaned Active Directory users would be loaded into the User form in Salesforce. Pentaho comes with multiple connectors to data located in other applications. The Salesforce connector can receive data from all the below applications: Input and Output Amazon S3 Cassandra HBase Java Property JDBC databases Json LDAP Microsoft Access Microsoft Excel OpenERP Palo Cell Palo Dimension RSS Salesforce Text file XML Input Only CSV Text file Zip file (GZIP) LDIF Mondian MongoDB OLAP SAP SAS XBase (DBF) Yaml Bulk Load (input) ElasticSearch Greenplum Infobright Ingres VectorWise LucidDB MonetDB MySQL Oracle PostgreSQL Teradata Pentaho Official download link Web Services PAGE 4 OF 8 Copyright BMC Software, Inc. 2018

6 Web services describe how applications talk with each other over the internet using a common dialogue. When these applications need to communicate, the challenge is bridging the gap between disparate enterprise systems, particularly when you think of the number of systems an organization uses on day-to-day basis. The advent of Cloud technology and Software-as-a-service has allowed different applications to exchange data with each other more readily via Web Services using a common dialogue. This dialogue and the level of interaction is governed by the level of integration that both (or more) applications require to meet any communication or passage of data requirements. The exchange of data can be defined as requests. These requests can be explained simply as a system requesting data or simply as a service requester whereas the system that processes these inbound requests and provide the data for access are known as a service provider. Like any means of communications between one or many parties certain rules need to be taken into consideration as part of their dialogue with each other. In particular how one system requests data from the other and the nature or specific parameters needed as part of the request for data being sent or received. These software-to-software interfaces are not user interfaces but instead are tools that allow users to programmatically talk to other applications. Web Services is a good coding option in Salesforce/Remedyforce when an application needs real time information or real time updates and there is a need for exchanging data back and forth (Bi-directional communication). Salesforce API s A Basic Overview Typpically web services are classified as either Soap or Rest API s, these application programming interfaces are provided as a means of programmatically accessing/requesting data. SOAP API and REST API are two commonly used API's. The API s themselves are not user interfaces but instead programmatic tools to expose Salesforce data from the force.com platform to other platforms (JAVA,.NET, etc.) or to allow external application to invoke Apex methods. The benefits of using APIs include allowing developers to use these APIs as part of building applications that want to integrate with other SaaS based applications. The advantage is to extend functionality within their own proprietary systems. In addition this methodology allows developers to focus on core functionality but also allows greater flexibility for integration purposes. Given the flexibility APIs can offer Salesforce has a number of APIs for developers to programmatically access organizations information. Developers can use these APIs when typically exposing Apex Class methods as Web services as these external feature applications can execute Apex and allow the customer to extend business logic integrations inside Force.com. The below table represents a list of the Salesforce APIs provided by Salesforce along with brief explanation of how these are used: REST API SOAP API Chatter REST API Bulk API Metadata API Streaming API Analytics REST API Accessing objects in your organization using REST. Integrating your organization s data with other applications using SOAP. Displaying Salesforce data, especially in mobile apps. Work with Chatter feeds, users, groups, and followers; work with Salesforce Files and Files Connect; work with recommendations, topics, notifications, Data.com, and other Salesforce features. Loading or deleting large numbers of records. Managing customizations in your organization and building tools that can manage the metadata model, not the data itself. Providing a stream of data reflecting data changes in your organization. Access Analytics assets such as datasets, lenses, and dashboards programmatically using the Analytics REST API. PAGE 5 OF 8 Copyright BMC Software, Inc. 2018

7 Apex REST API Apex SOAP API Tooling API Building your own REST API in Apex. Exposes Apex classes as RESTful Web services. Creating custom SOAP Web services in Apex. Exposes Apex classes as SOAP Web services. Building custom development tools for Force.com applications. Table 1 - (Source: REST API The Force.com platform provides many connection paths to applications not hosted on the Force.com platform via Web services interfaces. REST API is a powerful and simple Web services interface for applications to interact with Force.com. REST API is not language specific and is easily accessible from any programming language such as:.net, PHP, and Ruby. Once a developer has gained an understanding of the API concepts, they would be able to utilize a language of their choice to program two way communications between their applications and Force.com. Figure 3 - REST API The Force.com REST API integrates to applications utilizing simple HTTP methods with either XML or JSON formatting, which makes this API a good choice when developing mobile applications. Providing synchronous communications, this API should be used when you are looking at connecting to applications that are browser based, mobile based, or highly social interactive. Setup for using the Force.com REST API is very simple and does not require a lot of configuration. As REST API utilizes the same underlying data model and standard objects as does the SOAP API, developers familiar with one will be just as familiar with the other. Existing Integrations Some of the work has already been done for you, with existing integrations that have been configured for BMC Remedyforce customers. Integration Method Availability Active Directory/LDAP ETL Tool BMC Offered BMC Discovery Application Connector Native BMC Atrium CMCB ETL Tool BMC Offered BMC Server Automation Services BMC offered BMC Client Management Application Connector Native BMC Remedyforce with BMC Real End User Experience Monitoring and Analytics Services Native BMC TrueSight Operations Management Services Native PAGE 6 OF 8 Copyright BMC Software, Inc. 2018

8 Bomgar Application Connector BMC Offered Bunchball Application Connector BMC Offered Cloudcoach Application Connector BMC Offered CloudByz Application Connector BMC Offered Computer Telephony Integration Application Connector BMC Offered Dell Kace ETL Tool BMC Offered Jira Web Services Custom Built Nagios Services, Web Services Custom Built ProcurementNOW Application connector Custom Built SCOM Services Custom Built Service Cloud Force.com programmatic tools BMC Offered Single Sign On Application Connector BMC Offered Windows SCCM ETL Tool BMC Offered Table 2 - Existing Integrations Note: In the table above, availability can be defined as: BMC Offered: The necessary scripts, built-in connectors and configuration files for the integration are offered through BMC or partner. Custom Built: The integration is configured based on unique requirements. The solution may require web services and/or a programmatic tool. Native: The integration can be configured within Remedyforce Administration Interface. PAGE 7 OF 8 Copyright BMC Software, Inc. 2018

9 In Summary Salesforce can support the unique needs of your modern business by integrating with other functional areas of your IT organization to increase visibility, coordinate communication and accelerate service delivery. Your Customer Success Manager can provide you with more details on implementing integrations within Remedyforce. We also encourage you to check out our very active user community to get involved with additional discussions on this topic or engage with our product teams to recommend feature enhancements to the solution. Please visit us at: bmc.com/communities. PAGE 8 OF 8 Copyright BMC Software, Inc. 2018

10 BMC delivers software solutions that help IT transform digital enterprises for the ultimate competitive business advantage. W e have worked with thousands of leading companies to create and deliver powerful IT management services. From mainframe to cloud to mobile, we pair high-speed digital innovation with robust IT industrialization allowing our customers to provide amazing user experiences with optimized IT performance, cost, compliance, and productivity. We believe that technology is the heart of every business, and that IT drives business to the digital age. BMC Bring IT to Life.