Can Salesforce IoT Cloud Fill the Customer Experience Gap?

With the onset of the pandemic, organizations worldwide fast-tracked their digital transformation endeavors overhauling their internal tech stack and data capabilities. An immediate need to move physical operations online largely propelled the process. From closing sales deals over business dinners, we had quickly moved to engaging with clients in digital spaces. Among the many challenges the pandemic ushered in, the one that daunted every organization was ensuring a stellar customer experience against all odds.

Salesforce known for its cutting-edge solutions has been consistently deploying emerging innovative technologies like the Internet of Things (IoT) to empower them. IoT is driving business growth by enabling real-time management of critical systems across industries. It comes as no surprise that the global IoT cloud platform market is all set to cross USD 5262.7 million by 2025.

The high demand for automation across sectors has contributed to the growth of the IoT-connected machines market. By 2027, the global IoT connected machines market is predicted to touch USD 1.3 trillion with North America holding a dominant position with its 2019 revenues standing at USD 91 billion.

Salesforce is helping enterprises combat modern challenges in a digital-first selling world with solutions that can help them soar and serve their customers better.

Explains Warren Wick, EVP AMER Commercial Sales and Chief Revenue Officer, Sales Cloud, “Over the past year, we held more than six million calls with customers to understand what they needed to be successful as they worked to transform their business with more urgency than ever before. We’ve reimagined Sales Cloud to guide every company as they rethink the digital sales experience, from leads to coaching to processing revenue.”

Enterprises are now generating 21% more sales leads every day in 2021 as compared to the previous year thanks to Salesforce. There are several success stories to tell when it comes to Salesforce and the many organizations it has been helping worldwide to drive growth and offer a better customer experience. With IoT Cloud, Salesforce is also helping them bridge the customer experience gap. We will tell you how.

The IoT edge from Salesforce

IoT is an ecosystem; one where physical objects are connected across geographies through an IP address that connects them via the Internet. The devices connect, communicate, and help users come up with real-time insights and analytics to improve business outcomes. Salesforce has been offering IoT services through Salesforce IoT Cloud, Salesforce IoT explorer, and Salesforce Einstein services, to facilitate data collection and analysis.

As per a survey conducted by Forbes Insights in collaboration with Intel involving 700 executives from diverse industries, it was observed that practically all the industries had witnessed significant improvements in several areas including customer experience.

Salesforce IoT Cloud connects devices, apps, sensors, software, etc. to collect contextual data and give a better understanding of the customer journey. This enables enterprises to engage with customers and help them better with proactive customer support. While many have been investing in IoT adoption, their success rate varies greatly. But those who have leveraged the Salesforce platform have been able to integrate the data obtained from IoT into their CRM systems to reimagine the way they serve, sell, and promote. Most importantly, it has helped them take a step further towards their customers closing the experience gap in the most meaningful manner.

Customer experience has always been looked upon as a critical factor for enhancing customer satisfaction, brand loyalty, and revenues. Salesforce understands this well and offers a world of benefits to its users. The top ones include:

Seamless connectivity between devices and users

The profiles of customers are linked to the devices they use and this creates seamless connectivity to streamline operations and respond to events in real time. Tesla’s self-driving cars are a classic case in point and set an example as to how much you can achieve with IoT.

General Motors with its crisis assistance services came as a savior during hurricane Dorian wherein it could help those trying to escape the hurricane with real-time direction, free calls, routing to shelter and basic amenities, an in-vehicle WiFi hotspot, and much more.

Real-time analysis based on context

Without customer context, it would be impossible to analyze past behaviors and take remedial action in real time. Machine learning plays a big role in providing it. Data collected from diverse locations and devices give a realistic picture of what’s happening and where taking into account customer history, service history, and location.

Opportunities to serve better

With so much information at hand, you get to know exactly how the products are performing, whether they are due for maintenance, are there any new updates, is the warranty about to expire, etc. Salesforce IoT Cloud helps you manage all of this with the help of predefined rules that are orchestrated based on performance metrics.

The Sales and Support teams are instantly notified if the product fails to perform as per the expected standard. This kind of data helps in predicting behaviors while providing opportunities to enhance customer retention.

Offers a low-code, user-friendly platform

The fact that Salesforce employs low-code ensures that enterprises don’t have to recruit dedicated staff or a data scientist to manage IoT-related processes. A few clicks and you get all the information you need.

With the right triggers and responses in place, IoT takes away the stress and sends data to relevant platforms. A simple act like generating a lead form for a customer whose product is about to fail can have a positive impact on the customer experience while ensuring a substantial reduction in costs.

A win-win for all

A proactive approach strengthened by the extraordinary capabilities of Salesforce IoT Cloud enables you to understand your customers and engage with them in more meaningful ways. Salesforce allows you to export your IoT data in whichever format you want. It is easy to integrate into diverse business environments and there are multiple use cases that are currently being powered by IoT.

Salesforce Einstein with the help of AI technologies helps teams across departments like sales, marketing, and IT become more predictive and proactive when it comes to offering a stellar customer experience. Salesforce IoT Cloud empowers enterprises with IoT-driven tools and data-driven solutions to build trust and fill the customer service gap efficiently.

As Victor Abelairas, GM of Tridium Innovation at Honeywell Connected Enterprise explains, “Our sellers were able to continue their sales process virtually without skipping a beat. But more importantly, we were able to empower the rest of the company to stay engaged with the sales team and know what was happening with customers at all times, without having the day-to-day interaction in the office that they were used to. At the end of the day, we want to provide a better customer experience by understanding our customers more holistically than we would have otherwise.”

Deliver a better customer experience with Trigent

Our team of Salesforce consultants can help you integrate Salesforce IoT Cloud within your business environment to help you respond faster and serve better.

They understand exactly what it takes to enhance productivity and improve revenues. They can help you understand the many nuances of Salesforce IoT Cloud right from IoT implementation to customization to create engaging customer experiences.

Call us today to book a consultation and discover infinite possibilities with Salesforce IoT Cloud adoption.

Salesforce Data Migration Best Practices

Salesforce, a leading cloud application provider, boasts of a $2-billion annualized run rate with its steadily growing industry-cloud revenue. If you are on the verge of building your digital future with Salesforce data migration, you must know that you need to prepare for it. Yes, it may be one of the best decisions you ever made, and the whole migration thing may seem like a cakewalk, but not without unless you are ready for a bit of groundwork and planning.

Data migration as part of a Salesforce project is critical as you can’t afford to lose any data. Besides, it is a one-time activity that could cascade into a nightmare if things go wrong. Not to forget the perennial risk of jeopardizing sensitive customer data, which you simply cannot afford at any cost.

The right way to Salesforce data migration is therefore getting it right the very first time. Having said that, data migration is a huge market, and the global market size is expected to touch $10.98 billion by 2025 at a CAGR of 18.37% from 2020-2025.

According to the Lemongrass 2021 Legacy-to-Cloud Survey, 40 percent of companies are moving legacy systems to the cloud for the sake of securing their data despite the challenges that cloud migration and adoption may bring along. Twenty-seven percent have cited savings as their primary motivation for migration, while 11 percent wanted to migrate for the sake of maintaining data access.

No matter what your reason is, Salesforce data migration is a big decision, and you must put some serious effort into planning for it. We have a few pointers in place, though, to help you through it. Read on.

The initial prep work

We urge you to go through the steps mentioned below to get acquainted with the process and address the critical areas for successful Salesforce data migration.

  • Divide your work – There will be multiple service areas, and it’s a good idea to dedicate a fair amount of time to each one. So if you decide to allocate about two weeks to each one and you have six areas to consider, you can expect it to be a 3-month long project. While this is just an example, and the actual timelines may hugely vary, having a timeline always helps stay within your budgets and manage expectations from different areas well.
  • Know what’s in store in AppExchange – The AppExchange is replete with tools, add-ins, and apps that can help you with different tasks such as data cleaning, data imports, data validation, etc. There is a solution for literally every need; all you need to do is explore and choose the ones that best match your requirements.
  • Streamline your data model – An organization evolves continuously, and your new data model should reflect its journey leaving no room for unnecessary custom objects, entities, and other things that now serve no purpose. It makes no sense in migrating data that is redundant or of little value.
  • Review the process at different junctures – Now that you have a timeline in place, would it not be better if you keep checking how far you have come and if there is a better way to do things? The very principle of the agile framework is reviews that can lead to adaptations or improvisations for better results. For this reason, too, you must know the many tools available to you to reduce manual work and speed up the process.
  • Just name it – ‘What’s in a name’ you would say, and we say ‘everything’! Although old fields will get migrated, the naming convention may have changed, and the field names could now be stored in lower case instead of upper case, and so on. Make sure you have a clear API naming convention since data analysts will need them all the time, and having a straightforward naming convention makes their work so much easier. You need to do this early on since these names cannot be changed once they are assigned to workflows and process automation.
  • Get a feel of the new system – You need to be familiar with different fields. You need to understand the relationships between domains, formula fields, workflows, etc. Understand the core of the new model and see how other fields relate to one another.
  • Small things matter – The format you choose to upsert date fields, the monitoring of email addresses during migration, merging duplicates are all essential tasks. An email is an important form of communication, and you certainly would not want to mess it up by having two login credentials for one contact. These can create unnecessary clutter and lead to a humongous waste of time.
  • Remember the lessons – Knowing where you go wrong in the migration process is important, and you might as well document it for future course correction. You need to set milestones to measure your success frequently.

A few things to remember

In case of data migration from one Salesforce instance to another, you might as well want to retain a couple of licenses of the old instances just in case you encounter a problem with the new one. The old instance can help investigate issues and ensure that the record ownership is assigned correctly in the new system.

Also, monitor the amount of space you are consuming during migration so that you have enough time at hand to purchase additional space.

It is crucial to keep users and team members in the loop. They should be informed about the cut-off date, and there should be a team of pilot users ready to test over during the weekend when major data migration is underway. Developers would also prefer to know things in advance so that they are prepared to test before you decide to roll out the instance.

There are times when the data loader executes without any errors, but that doesn’t mean it is entirely devoid of hiccups in the long run. You may want to consider getting sanity testing from Salesforce so that you know all types of users will get the same flawless experience after the migration.

Last but not least, don’t forget to disable active workflows and triggers. Imagine how embarrassing it would be if incorrect emails got sent to thousands of customers simply because you forgot to disable the active workflows that sent them?

And a few bumps in the road…

Data is the driving factor for any business, and it must remain untarnished during migration. There can be situations wherein the data quality post-migration is not satisfactory, or there is a mismatch between migrated data and data on legacy applications. These situations can be avoided with proper planning, paying attention to changes in data types, and using correct formats for data storage.

In rare situations, there can be a possibility of data loss too during migration in the case of mandatory or non-mandatory fields. Data for non-mandatory fields can still be recovered and updated, but data recovery for mandatory fields may be impossible unless retrieved from backup database or audit logs.

You need to factor in the downtime window, too, in case of high data volumes. All in all, there can be a few unpleasant bumps that you need to tide over with the right preparation and migration strategies. Standardizing data used in a legacy system, cleaning the data before migration, and rechecking constraints, procedures, and complex queries can help you transition to the new system smoothly in no time.

Accelerate your business value with Trigent

We at Trigent enable you to adopt digital solutions and build the right customer engagement models to help you achieve better business outcomes and enhance user experience. We have the expertise and experience to partner with you to successfully implement and integrate Salesforce offerings at your enterprise successfully. What we promise is high returns on your Salesforce investments.


Call us today for a business consultation.

Improve Patient Experience with Salesforce Health Cloud

The modern healthcare systems are undergoing a period of transition migrating from reactive to proactive models. Just like other sectors, the healthcare sector has also become equally demanding and patients are no longer hesitating to switch to better healthcare systems if their expectations are not met.

As the leading CRM solution in the world, Salesforce offers cloud solutions for several industries including healthcare to manage diverse needs. It’s patient management system Salesforce Health Cloud has seen a huge demand and healthcare adoption has grown by about 35% since 2018. Salesforce helps organizations drive cost efficiencies, develop intelligent enterprises, manage customer relationships, and build resilient business models.

It helps healthcare organizations address challenges pertaining to patient experience too. In fact, 69% of respondents who participated in a survey conducted by the Baltimore-based firm Sage Growth Partners (SGP) have cited improving healthcare consumer experience as their first or second top strategic priority.

A recent research report confirms two-thirds of patients are likely to switch to a better health system if their expectations are not met while organizations that are willing to improve the patient experience have the potential to increase their revenues by 5% to 10% pre-COVID levels in just 12 months. The good part is that they are now more eager than ever to embrace technology with 74% of patients now likely to use online chat or texting for providing check-in information before an appointment.

Especially since patients experience disjointed services as stakeholders continue to use data from multiple sources, Salesforce provides a common platform to integrate the experience at various junctures of their healthcare journey. The focus is now on providing value-based holistic care to ensure a satisfactory patient experience.

While empowering with technologies and solutions, Salesforce is now helping the healthcare industry evolve to improve patient satisfaction and deliver high-quality patient care.

Salesforce health cloud, patient experience and the evolving healthcare landscape

McKinsey & Company iterates, “Companies that can learn to understand, guide, and engage healthcare consumers, while inspiring their loyalty, have a significant opportunity to change the healthcare landscape.

Consumers of healthcare know what they want and now actively participate in the decision-making process. It’s time you moved beyond patient engagement and focus on giving them better experiences to ensure strong clinical outcomes. Just like banking, the modern healthcare system too needs to have table stake capabilities that can positively transform patient experiences.

Patients today want personalization and convenience and the agility that comes with Salesforce Health Cloud. Gartner predicts 70% of customer interactions will involve emerging technologies such as machine learning applications, chatbots, and mobile messaging by 2022.

It all boils down to how attentive you are to the elderly? How easily are they able to access their health records?

While some consumers may undermine the importance of maintaining electronic health records, others may not even have access to a computer or fast Internet speed.

And that’s not all; there are issues that plague healthcare workers too. They go through frequent burnouts and find themselves struggling on several fronts to be able to deliver the kind of patient experience patients rightfully deserve.

What we need to understand is that customer service is not just a department but an approach that needs to be followed by the entire organization at all times. Salesforce Health Cloud is equipped to handle all these challenges and more. It offers opportunities to healthcare organizations to embark on an exciting future of care delivery providing new avenues for improving patient experience.

So let’s look at the top benefits.

Centralized data on health cloud

With a centralized data storage space, Salesforce Health Cloud enables the monitoring of medical services using data analytics tools.

Says Don Scheibenreif, Distinguished Vice President Analyst, Gartner, “Monitoring event streams helps organizations stay aware of the current context and thereby make more intelligent decisions. More intelligent decisions translate into better customer service and greater success for the business.”

Healthcare organizations that rely on research and clinical practices can hugely benefit from data centralization be it for accessing patient records or for compiling statistical data. Whatever they need they can access from their mobile phones or other devices in real-time. As the focus shifts from merely maintaining records to building meaningful relationships, Health Cloud helps you put patients at the core of the ecosystem.

Better outcomes with health literacy

Patients can now be treated speedily since services can be delivered almost immediately without wasting too much time on observing protocols. Patients can even avoid hospitalization by educating themselves about their condition, diagnosis, symptoms, patterns, and treatments. They can contact healthcare professionals as needed and access the right care plans to get on the track to recovery.

Salesforce Health Cloud offers a detailed view of the patient journey through individual patient profiles that combine data from electronic health records (EHR) as well as third-party data from medical devices. This helps in assessing patient condition, reviewing medications, and managing appointments with ease.

Personalization and remote care

Care providers can find complete data in one place to make quick decisions. Salesforce has been extensively using Artificial Intelligence tools to facilitate fast decision-making and empower them to take a proactive approach towards healthcare. It enables patient segmentation to manage patient populations and gives you the ability to personalize care and schedule regular check-ins via messages.

Salesforce not only helps curtail costs but also reduces patient risks. As Tuan Phan, founder of cybersecurity company Zero Friction and a member of the ISACA Emerging Trends Working Group explains, “Metadata may indicate that the patient’s condition is deteriorating, allowing medical professionals to take action earlier, in turn driving lower risk to the patient and lower costs to the hospital.”

Empowerment through collaboration

Care teams can connect and collaborate through Salesforce Health Cloud. Everything from case management and tracking to care plan management and follow-ups is taken care of. The best part is you can integrate Health Cloud with legacy tools, operating procedures, and the existing software infrastructure.

With teamwork solutions, workforce administration tools, advanced technologies, and much more, it aids seamless collaboration between care teams and patients. In a day and age where 84% of consumers under 40 wish to engage with technologically advanced and electronically communicative medical organizations, Salesforce is uniquely positioned to close the gap between interactions and outcomes.

Salesforce Health Cloud offers countless applications to address the growing needs of consumers as well as health organizations. These applications can help you boost revenue, lower costs, enhance care coordination and access, drive engagement, and improve outcomes and experience.

Transform patient experience with Trigent

Trust Trigent to enable care coordination of patients in a digital world where connected healthcare continues to transform patient care. At Trigent, we help you get your Salesforce implementations right the very first time thanks to our decades of experience. Our team of Salesforce specialists will help you leverage Health Cloud perfectly to overcome barriers and improve the overall patient experience.

Count on us for everything from Salesforce implementation to seamless integration. Call us today for a business consultation.

Top 7 Trends That Will Drive Healthcare in 2021

2020 brought along challenges as well as opportunities for diverse sectors including healthcare. We’re now stepping into an era of digital transformation that will push the boundaries for healthcare in incredible ways with a profound impact.

As per the Council for Affordable Quality Healthcare’s 2020 Index, the US healthcare industry is missing out on billions of dollars in potential annual savings due to lack of adequate workflow automation to carry out common business transactions. Apart from the $122 billion that it has already saved through automation, it can save an additional $16.3 billion by fully adopting nine common transactions.

The CAQH said in a statement, “For example, each fully automated claims status inquiry costs $11.71 less than the same transaction conducted manually for the medical industry and $10.92 less for the dental industry. Similarly, every eligibility and benefit verification converted from manual to electronic saves the medical industry $8.64 and the dental industry $8.75. Considering the millions of times these transactions occur every day, the savings potential across the healthcare economy is significant.”

The healthcare sector is now more focused than ever on simplifying workflows and reducing the burden associated with administrative tasks while keeping automation at the helm of all its initiatives. We bring to the fore the top 7 trends in healthcare that iterate the role of automation in making patient-centered, outcome-based systems a priority.

  1. API-enabled EHRs to improve interoperability

Application Programming Interface (API) enabled EHRs means patients get better access to data and manage healthcare outside the healthcare facility using their smartphones or computers. API adoption enhances interoperability and patient data sharing between providers thereby reducing clinical burden, and facilitates better care coordination. When deployed correctly, next-gen APIs create secure and compliant integrations to provide actionable data and advanced care through multiple avenues and channels.

Ben Moscovitch, project director of Health Information Technology at Pew Charitable Trusts opines, “If standard APIs were broadly adopted in health care, patients could access and compile their data from multiple providers while clinicians could process complicated information and make care recommendations. APIs would also offer other benefits, such as facilitating the exchange of clinical data among health care providers.”

  1. Robotic process automation or RPA for scaling operational efficiency

The data collected from various internal and external sources such as insurance portals, third-party portals, ERPs, clinical applications, scheduling applications, etc. can be overwhelming, and streamlining the flow of information across all these channels can be a labor-intensive task. Robotic Process Automation provides the much-needed respite by extracting relevant information from multiple sources and automating routine tasks to reduce costs, minimize errors, and improve operational efficiency.

According to Gartner, 50% of healthcare providers in the U.S. will invest in RPA in the next 3 years as a means to optimize costs and healthcare resources giving further impetus to RPA adoption. Explains Dr. Anurag Gupta, research vice president at Gartner, “Cost optimization is a consistently recurring theme among healthcare providers. The money that RPA saves by not having to spend as much on an unreformed process translates into cash that is available for front-end clinical functions, which is especially important while healthcare organizations combat the COVID-19 crisis.”

  1. Telehealth for remote care

Telehealth has been instrumental in providing care virtually during the pandemic that made social distancing mandatory. In no time, everyone was convinced about its immense potential and is fast becoming a preferred form of medical care. As President of VirtualMed Staff, Jack Williams explains, “When patients feel their care is as good or better than a routine visit in person, all from the comfort of home, those same patients will no longer endure long wait times when it is avoidable.”

Using technologies such as streaming media and video conferencing, telehealth will allow patients to choose healthcare providers and services irrespective of their geographic location through digital telehealth platforms. It will eliminate patient no-shows, travel time, wait time, etc. ensuring better efficiency and revenue for medical practitioners. Telehealth is also playing a pivotal role in improving disaster emergency response services through advanced volunteer registration, biological surveillance, hospital bed availability tracking, patient record management, etc.

Telehealth will continue to play a big role in addressing the healthcare needs of patients as part of their long-term healthcare plan even after the pandemic is behind us. A hybrid healthcare model has emerged ever since the pandemic accelerated advances in remote managed care for those with chronic conditions and those who had COVID-19 symptoms but did not require hospitalization. What we can now expect is a combination of telehealth and in-person visits to manage everything from routine follow-ups to critical care.

  1. Cloud-based LIMS for continuous access to data

The global Laboratory Information Management Systems (LIMS) market is expected to grow at a CAGR of 14.1% from 2019 to touch $2.21 billion by 2026. What was earlier conceptualized as a system to record test samples and particulars about donor and patient samples has now evolved to join the league of next-gen healthcare solutions using cloud technology.

LIMS on the cloud can connect multiple stakeholders and give users complete control over sample tracking, processing, and delivering while attaining scalability in their business. Patients too can track their records and maintain personal health data easily. LIMS software can schedule appointments and follow-ups for healthcare specialists and time slots of lab equipment in a highly efficient manner.

The modern LIMS software can be leveraged effectively as an interface between lab equipment and other devices in real time to enable the import and export of data for better coordination.

  1. Salesforce health cloud for improved patient experience

Salesforce health cloud provides a complete view of patients through easy-to-decipher dashboards that collate data from different sources to unite healthcare provider siloes. Using this data, healthcare providers can map the entire patient journey understanding their relationships to specialists at different junctures of healthcare.

Data is collected from different sources such as EHRs, medical devices, wearable activity trackers, etc. to build a patient history that includes details such as medical history, current medical conditions, lab results, etc. Salesforce admins can incorporate the necessary security features to ensure security compliance and also provide an omnichannel experience to patients so as to allow them to reach out for care from an app or channel they are most comfortable with.

  1. Artificial intelligence and integrated wearable technology for better health management

Although AI has been around for years, it has now become ubiquitous and a game-changer from a clinical, operational, and financial point of view. With machine learning, AI can segregate data, so that healthcare providers understand patients and their condition better to make more informed decisions. Shared insights across a large patient population can help chart the treatment course for patients to ensure better outcomes in the future.

AI is now helping develop predictive models during the pandemic to track the virus and estimate the risk based on the spread of the disease. It is also playing a big role in genomics – the study of an individual’s genes – attaching findings to electronic medical records of patients to optimize clinical decision-making.

Also trending are wearables that allow individuals to record steps, heart rates, blood pressure, and overall exercise regime. The global wearable market is expected to increase in size at a CAGR of 15.9% from 2020 to 2027 from USD 32.63 billion in 2019.
With AI and machine learning in the picture, wearables will help transform clinical research and treatment protocols while ensuring better more positive outcomes in healthcare.

  1. A digital front door to offer personalized care

Social distancing brought along a new challenge for healthcare providers – ramping up their digital capabilities to stay connected with patients during their hour of need. The idea of having a digital front door thus became necessary which was expected to be simple to use but purpose-built.

Writes Bruce Orcutt is Vice President of Marketing at ABBYY – Patients need healthcare services that can meet them where they are: in their own homes. Utilizing video platforms, native apps, and personalized web portals, digital healthcare offerings support a healthcare system that is convenient, timely, and best meets the needs of a wide array of patients.

No matter where a provider is on their digital journey, it is important to have granular, accurate, and comprehensive data to widen the digital front door. Discovering and analyzing operational processes and identifying bottlenecks will be important steps to enhancing operational workflows, reducing patient wait times, and creating a seamless patient experience. Considering that a digital front door creates first impressions in the minds of patients when they approach a healthcare facility, many are now investing in mobile apps for their organizations to host patient portals, telehealth visits, and other chores.

Wrapping up

The healthcare industry is all set to attain new frontiers with transformative technologies at its helm. At Trigent, we help healthcare organizations deploy future-ready technologies to get a 360-degree view of their people, processes, and data. We believe connected healthcare is the key to improving patient engagement and delivering quality care.

Allow us to help you with integrated healthcare solutions that will drive the future. Book a consultation today to know more.

Getting to Know the Salesforce Agile Accelerator

Agile, in simple terms, is a principle of being open-minded and dynamically evolving with the changing needs of the world. Now, how to accelerate the agile process using Salesforce? Agile Accelerator is the answer.

***Before I go ahead, let us see how the whole world is now following Agile. For example, each country’s response to Covid-19 required emergency responses and almost overnight changes with the way things were done, setting up containment zones, medical containment, and treatment zones, and mass evacuation of the students and citizens stuck abroad. All these are dynamic inclusions of protecting humanity!! Interesting topic but will cover it in detail in another blog separately***

Customers worldwide are developing and managing their software products and applications on Agile, which has led to a tremendous demand for project management tools, like JIRA. It has become increasingly efficient, improving accessibility, and economically viable for most companies to build and maintain their software on the cloud. It gives them an edge of 24/7 accessibility, transferring maintenance-related challenges to a highly competent service provider.

Salesforce has won over a large share of clients in this space, ensuring efficiency, accessibility, dynamic licensing, platform availability for complex products/projects, and a maintenance perspective.

Salesforce Agile Accelerator

In its nascent stages, it was a platform called ‘Grand Unification System (GUS)’  built by the Salesforce team to help manage their product backlogs, sprints, user stories, defects, etc. It is tailored for agile development and scrum and typically reserved for social networking. This product helped Salesforce as a company to be what it is: A major market reckoner in Cloud Services.

The Agile Accelerator is a managed application available via AppExchange, an evolved version of the GUS with the expertise of providing a single source of truth! With Agile Accelerator, we have a single application for the entire project management. It also provides easy collaboration with the help of Chatter – a real-time app that helps users to connect, engage, and share information within the organization.

Advantages:

  • Ability to integrate backlogs with standard Salesforce objects like Accounts/Cases etc. is super-efficient and easy.
  • Provide tracking options for backlog or sprints in Kanban view on both mobile and desktop. 
  • Ensures a single sign-on to track backlog as well for the application, obsoleting SSO applications.
  • Collaborate with cross-functional teams, share updates, and work to get done anywhere, any device, without leaving Salesforce.

A snapshot view of the application

With various tabs for various project needs like creating and maintaining profiles, collaboration with Chatter, Reporting, Requirements view with Unified wall, and product tags, creating and managing teams, planning sprints, builds and releases and themes:

Feature Comparison: When compared with the present market leader, JIRA, on key features, Salesforce has a definite edge on parameters like Reliability, Availability, Performance, Trainings (both online and offline), ease of implementation, scalability, ROI, and Pricing.


And, with most customers giving a 10/10 rating to renew services with Salesforce Agile Accelerator, will it be safe to assume this might be the end of other major project management tools?

We have to wait and watch.

SharePoint Online and Salesforce Integration

SharePoint Online and Salesforce are two different cloud platforms, provided as “Software as a Service” from two different vendors.

SharePoint is a cloud-based “Software as a Service” using which organizations can share content with colleagues, partners, and customers. SharePoint online also provides flexibility to access it from anywhere, i.e. home or office or wherever Internet connectivity is available, and from any device, i.e. mobile/compact.

At the other end of the spectrum,  Salesforce is a cloud-based customer relationship management software solution for sales, service, marketing, collaboration, analytics, and building reports.

Both the above can be considered as “Software as a Service” platforms.

In most business situations, there may be a use case, where business users would like to seamlessly obtain data from Salesforce on to SharePoint online, so that, the information can be collaborated from one single platform, instead of two different places.

In this blog, I will explain the concept and steps required to integrate Salesforce with the SharePoint Online site, so that, information updated or created in Salesforce will, in real-time, be updated and created in SharePoint online site.

When the question arises as to how to write data in SharePoint online, the first hurdle is to remotely authenticate the user against it, and in order to remotely authenticate the user, the best way available is REST api.

You need to make few rest calls to get the authentication piece as given below:

  • Get the security token
  • Get the access token
  • Get the request digest

The above rest call should be translated into an apex class which is supported by force.com

The first task is to get the SharePoint online security token, which can be obtained by posting XML as the request body to https://login.microsoftonline.com/extSTS.srf. In the XML you need to pass on account credentials which has at least contribute access.

The above request would fetch a response security token which is needed to get the access token.

In order to get the access token, again a rest call is required to be posted to the following URL with the security token as the request body:

https://yourdomain.sharepointonline.com/_forms/default.aspx?wa=wsignin1.0

The rest call with the request body including security token to the above URL would fetch a response, which would contain cookies and these cookies must be included in all the subsequent rest calls.

After the above operation, you need to have the request digest. The request digest is obtained by posting the rest call along with the access token and the obtained cookies to the following URL:

https://yourdoamin.sharepointonline.com/_api/contextinfo.

The rest call that is posted to the above URL will fetch the response along with the request digest. Please note that the entire contents of the “FormDigestValue” tag would be required which includes the date-time portion as well as time zone offset.

All the above steps have to be carried out in terms of a global apex class, and call the apex class with the trigger in salesforce.

Apex class source code is as given below: 

global class SharePointOnlineWebserviceCallout{
 @future (callout=true)
 Public static Void GetAuthentication(string AccountTitle)
 {
 string body = '';
 string formattedCookie = '';
 string output = '';
 string cookie = '';
 string token = '';
 string username = 'account@sharepoint.com';
 string password = 'Password';
 string host = 'https://yourdoamin.sharepointonline.com';
 string tokenRequestXml ='<s:Envelope ' +
 'xmlns:s='http://www.w3.org/2003/05/soap-envelope' ' +
 'xmlns:a='http://www.w3.org/2005/08/addressing' ' +
 'xmlns:u='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd'> ' +
 '<s:Header>' +
 '<a:Action s_mustUnderstand='1'>http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Issue</a:Action>' +
 '<a:ReplyTo> ' +
 '<a:Address>http://www.w3.org/2005/08/addressing/anonymous</a:Address> ' +
 '</a:ReplyTo>' +
 '<a:To s_mustUnderstand='1'>https://login.microsoftonline.com/extSTS.srf</a:To> ' +
 '<o:Security ' +
 's:mustUnderstand='1' ' +
 'xmlns:o='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd'> ' +
 '<o:UsernameToken> ' +
 '<o:Username>' + username + '</o:Username>' +
 '<o:Password>' + password + '</o:Password>' +
 '</o:UsernameToken>' +
 '</o:Security>' +
 '</s:Header>' +
 '<s:Body>' +
 '<t:RequestSecurityToken xmlns_t='http://schemas.xmlsoap.org/ws/2005/02/trust'> ' +
 '<wsp:AppliesTo xmlns_wsp='http://schemas.xmlsoap.org/ws/2004/09/policy'> ' +
 '<a:EndpointReference> ' +
 ' <a:Address>' + host + '</a:Address> ' +
 '</a:EndpointReference> ' +
 '</wsp:AppliesTo> ' +
 ' <t:KeyType>http://schemas.xmlsoap.org/ws/2005/05/identity/NoProofKey</t:KeyType> ' +
 '<t:RequestType>http://schemas.xmlsoap.org/ws/2005/02/trust/Issue</t:RequestType> ' +
 ' <t:TokenType>urn:oasis:names:tc:SAML:1.0:assertion</t:TokenType> ' +
 '</t:RequestSecurityToken> ' +
 ' </s:Body> ' +
 '</s:Envelope>';

HttpRequest reqBinaryToken = new HttpRequest();
reqBinaryToken.setEndpoint(‘https://login.microsoftonline.com/extSTS.srf’);
reqBinaryToken.setMethod(‘POST’);
reqBinaryToken.setbody(tokenRequestXml);
reqBinaryToken.setHeader(‘Content-Length’,String.valueof(tokenRequestXml.length()));
reqBinaryToken.setTimeout(60000);

HttpResponse responseBinaryToken = new HttpResponse();
Http httpBinaryToken = new Http();
responseBinaryToken = httpBinaryToken.send(reqBinaryToken);
string xmlContent = responseBinaryToken.getBody();
Dom.Document doc = responseBinaryToken.getBodyDocument();
Dom.XMLNode address = doc.getRootElement();
//XmlStreamReader reader = new XmlStreamReader(responseBinaryToken.getBody());
string outxmlstring = String.valueof(doc.getRootElement().getName());//gives you root element Name

XmlStreamReader reader = new XmlStreamReader(responseBinaryToken.getBody());
while(reader.hasNext()) {
if (reader.getEventType() == XmlTag.START_ELEMENT && reader.getLocalName()== ‘BinarySecurityToken’) {
reader.next();
if(reader.hasNext()){
if(reader.getEventType() == XmlTag.CHARACTERS){
token = reader.getText();
token += ‘&p=’;
}
}
}
reader.next();
}

HttpRequest requestCookie = new HttpRequest();
requestCookie.setEndpoint(‘https://yourdoamin.sharepointonline.com/_forms/default.aspx?wa=wsignin1.0’);
requestCookie.setHeader(‘Content-Type’, ‘application/x-www-form-urlencoded’);
requestCookie.setHeader(‘User-Agent’,’Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)’);
requestCookie.setMethod(‘POST’);
requestCookie.setBody(token);
requestCookie.setHeader(‘Content-Length’,String.valueof(token.length()));

HttpResponse responseCookie = new HttpResponse();
Http httpCookie = new Http();
responseCookie = httpCookie.send(requestCookie);
string location = responseCookie.getHeader(‘Location’);

if(responseCookie.getStatus() == ‘MovedPermanently’){
HttpRequest reqMovedPermanently = new HttpRequest();
reqMovedPermanently.setHeader(‘Content-Type’, ‘application/x-www-form-urlencoded’);
reqMovedPermanently.setMethod(‘POST’);
reqMovedPermanently.setEndpoint(‘https://yourdoamin.sharepointonline.com/_forms/default.aspx?wa=wsignin1.0’);
reqMovedPermanently.setBody(token);
reqMovedPermanently.setHeader(‘Content-Length’,String.valueof(token.length()));
reqMovedPermanently.setHeader(‘Location’, location);
reqMovedPermanently.setHeader(‘User-Agent’,’Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)’);
HttpResponse responseMovedPermanently = new HttpResponse();
Http httpMovedPermanently = new Http();
responseMovedPermanently = httpMovedPermanently.send(reqMovedPermanently);
cookie = responseMovedPermanently.getHeader(‘Set-Cookie’);
}
else
{
cookie = responseCookie.getHeader(‘Set-Cookie’);
}

HttpRequest requestDigest = new HttpRequest();
requestDigest.setEndpoint(‘https://yourdoamin.sharepointonline.com/_api/contextinfo’);
requestDigest.setMethod(‘POST’);
requestDigest.setBody(body);
requestDigest.setHeader(‘Content-Length’,String.valueof(body.length()));
requestDigest.setHeader(‘Accept’,’application/json;odata=verbose’);
requestDigest.setHeader(‘Content-Type’,’application/json;odata=verbose’);
requestDigest.setHeader(‘Cookie’,cookie);

Http httpRequestDigest = new Http();
HttpResponse responseRequestDigest = new HttpResponse();
responseRequestDigest = httpRequestDigest.send(requestDigest);
string requestDigestValue = responseRequestDigest.toString();
string xmlContentRequestDigest = responseRequestDigest.getBody();

Integer index1 = xmlContentRequestDigest.indexOf(‘”FormDigestValue”:”‘);

Integer index2 = ‘”FormDigestValue”:”‘.length();

string contentRequestDigest = xmlContentRequestDigest.Substring(index1 + index2);

string requestDigestXml = contentRequestDigest.split(‘”‘)[0];

HttpRequest reqWrite = new HttpRequest();
HttpResponse resWrite = new HttpResponse();
Http httpWrite = new Http();
reqWrite.setEndpoint(‘https://yourdoamin.sharepointonline.com/_api/web/lists/GetByTitle(‘AccountTest’)/items’);
reqWrite.setMethod(‘POST’);
reqWrite.setCompressed(false);
reqWrite.setHeader(‘Accept’

Partner with us to ensure seamless collaboration and communication across the enterprise with SharePoint.