Research

We conducted a literature that reviewed the existing solutions in the market and where they were potentially lacklusture and how our solution would be able to fix such shortcomings

About Hero

Overview

Microsoft Power Platform is a low-code development platform that allows users to create custom business applications. It includes Power Apps, Power BI, and Power Automate. One of the main advantages of Microsoft Power Platform is its convenience. It enables users to quickly and easily create custom solutions without the need for extensive coding knowledge. With Power Apps, users can build custom applications for mobile and web devices. Power BI allows users to create interactive visualizations and business intelligence reports. Power Automate enables users to automate repetitive tasks and workflows. Power Automate is also crucial for some connectors and they give them their true purpose. Alone, a custom connector doesn’t do much but with Power Automate, it becomes useful.

A major advantage of Microsoft Power Platform is its seamless integration with the NHS’ N365 ecosystem [6]

Custom connectors for Power Platform allow users to connect their applications and services to other systems and platforms. This enables users to integrate their custom solutions with other tools and services, such as social media platforms, messaging apps, and more. With custom connectors, users can create their own connectors or use pre-built connectors to quickly and easily integrate with other systems.

In our case, we will be building those pre-built connectors, allowing the user to easily consume them in a user-friendly drag and drop platform.



Existing Solutions

WhatsApp

Currently the market standard for sending messages to people, be it WhatsApp or normal SMS’s, is the use of Twilio. Twilio acts as a connector between the user and the WhatsApp recipient. It is an additional layer between the sender and receiver. The advantage of this service is that it is already in place and people don’t have to spend the time and resources to design another solution. However, this solution is also costly.

The cost of the Twilio solution for WhatsApp is as much as $0.0647 per conversation* and an additional $0.005 per message sent by the business (in our use case, the NHS) [18]. per WhatsApp message and large organisations like the NHS send thousands of these messages per day. WhatsApp is free to use, but such organisations still have to pay for Twilio. In the case of SMS’s, there is an additional cost which is the service-provider fee, which doesn’t come in cheap. Such costs are to cover the infrastructure and services that Twilio themselves use.

Another possible solution which is very similar to Twilio is Tyntec. Tyntec is a competitor solution but has a different payment strategy which is fixed per month at as much as €300 per month. We are currently focusing our solution on the employees of NHS who will be on the sender side, while the patient will be the recipient. However, this can be expanded to any corporation that should contact people using WhatsApp.

Our Solution on the other hand will be free of relevant cost for it will make use of the NHS N365 Ecosystem but beyond our E2E scenario our solution would still be more economical with any organisation using Microsoft 365.


WebEx

NHS has been trying to implement newer technology like Online Consultation into the system to help improve healthcare. However, there are a lot of challenges to the current solutions for Online Consultation. For instance, sending the appointment link to the patient is a difficulty as the current solution is contacting patients by phone for scheduled appointments.[9]The NHS has a comprehensive guide for both users and patients regarding using video consultation. Online consultations are typically done through their own proprietary NHS App introduced in the COVID pandemic.[15] It required heavy verification of ID such as a passport or driving license which is difficult for older patients who are not used to technology. There are also private healthcare solutions, however they are all heavily monetised and thus are not real alternatives for our stakeholders, that being normal NHS patients who cannot attend in person.[16][17]

Our solution will provide an additional avenue for online video consultation. This will also make use of the NHS N365 license and thus making it better value for money. Additionally, some NHS trusts’ online video consultation system doesn’t link with the Patient Administration System (PAS). [10] With our connector, it would also save time on administration and ease the process by automatically adding the appointment (which is known as Telemedicine in NHS terms) and would help save staff time. The additional avenue will allow the sending and receiving of online meeting links which will be active at the time specified in the email. An email and internet connection is the minimum requirement for the NHS user to use our solution and is thus more accessible than the existing. nd if the connector is used in conjunction with our WhatsApp connector, it is also possible to send the link directly to the patient’s WhatsApp as well as email which would increase the number of communication channels when in contacting patients for scheduled appointments.



Technology Review

WhatsApp API

Unlike WhatsApp API or WhatsApp Business API, WhatsApp Cloud API does not require businesses to approach a WhatsApp Business Solutions Provider (BSP) to register their application to use WhatsApp API service. This removes the time and hassle of having to apply for API access through a WhatsApp BSP as well as any costs associated with them.


WebEx API

Webex API which is provided by Cisco and below is a summary of characteristics and functions of webex API :

  1. Webex API Functions [11]:
    • Integration with OAuth - Allow users to authenticate via Webex Account
    • Meetings - including meeting itself, meeting chats, invitees, transcripts, polls, Q&A, summary report, meeting qualities, recordings, recording report, session types, video mesh
    • Messaging - including messages, attachments, events, memberships, people, etc, (There’s a current connector created by Cisco on messaging)
    • Devices - including workspace configurations and device configurations
    • Admin - including authorisations, events, groups, historical analysis, licenses
  2. Personal Access Tokens
  3. Make sure you're signed in to the Developer Portal. Click the copy icon. Click OK in the dialog to copy the token to your clipboard.

  4. Methods & Content Types
  5. The Webex APIs are RESTful. In REST, each resource is represented by a base URL like and the HTTP methods , and are used to request data and perform actions on those resources. For methods that accept request parameters the platform accepts either or content types and currently only supports returning data in format

Custom Connector Development Environment

The development environment had multiple sequential sub-environents which distinct parts of the connector were to be developed. The sections were:

General
This is where the metadata (e.g. the icon and description for the connector) is developed. We also specified the host for the API endpoints, being "graph.facebook.com". This allows us to connect to the WhatsApp API. For WebEx, it was the WebEx API host.

Security
This is wehere our authentication type was selected and implemented. For WhatsApp we selected bearer token (API Key) from authentication dropdown List and for WebEx, we selected OAuth 2.0. For the API key, we needed to specify the parameter label and name for it in the swagger file. When running the WhatsApp connector, we would need to provide the generated bearer token.

Definition
This is where the majority of the development occurs as we are creating the metadata. We define a series of actions such as "send message" for whatsapp or "send meeting link" for WebEx. An action is simply the actions that the connector performs using the API it is connected to. We create a summary, description and Operation ID. We then define the request which includes the endpoint URL, request path and headers. The request URL is the endpoint URL where the request is sent to. The action is a secretly triggering a flow behind the scenes The Operations is in essence a set of requests that can be performed to execute an action. In terms of WebEx, there was creating a meeting link, reading a meeting link and creating an invitee. These utilise the properties of the operations which is to perform a pull, post, get or delete operation. This can use the endpoint URL and the generated response will be a generated JSON object

Code Preview
The code preview is to view and edit the swagger file generated by the connector when the flow is created. This provides more control over the development of the code.

Test
This is where the connector is tested for correctness without neeeding to make a flow. We are able to test each of the actions defined in the definition. We will recieve a response from the platform if the test was successful or not, in which case it will give (generic) information regarding the error code


Flows

This is where the connector is used. This consists of triggers, actions and conditions. The Trigger begins the flow. For our testing, we used a manual trigger, however, when under commercial deployment, the trigger can be set to anything such as an addition to a sharepoint list etc. Actions are where the flow executes what is desired such as sending the message or meeting link. Connectors are used in flows to call their actions. When using the connector in a flow, you can select the actions to be executed by the flow such as sending the meeting link or message via WhatsApp. and Templates are prebuilt flows which can be used in our own custom workflows. We will have developed our own templates to test the function of the connector.


The technologies researched above were necessary to the project and so there was little choice in choosing alternatives for each technology. To test the API, we had two choices of software, as the custom connector development environment allows us to select from a variety of imports.

Postman

Postman is a client that allows us to test API's allowing the test of HTTP requests such as POST, PUT, GET, DELETE as well as supporting of authentication, in particular, API keys (necessary for the WhatsApp API authentication) and OAuth (necessary for the WebEx API authentication). It also allows us to save requests to a collection which makes it easy to transfer a bulk of requests with other softwares . It provides us with a status code of our calls and allows comprehensive analysis of responses, in particular syntax highlighting and storage of responses to history, allowing us to analyse the progress of our API tests. Additionally, it provides a very user friendly UI allowing for fast and efficient navigation of the application. This is particularly important to us as we are not familiar with the concept of API testing, so having such a user friendly environment will help us learn and test our API's effectively. Additionally, it has collaboration tools that will allow all of us to test multiple aspects of the API faster, speeding up development.

cURL

cURL is similar to Postman in the sense that it allows us to test API's and can test additional protocols such as IMAP, FTP and SMTP. This however is not particularly necessary as we will only be using HTTP. Furthermore all the te sting is done primarily via command-line and therefore is not as user friendly, which is of vital importance to us.

Our final decision was to go with Postman primarily due to the user friendliness and ease collaboration.



Summary of our technical decisions

Our technologies we have pursued are: WhatsApp Business API, WebEx API, the Custom Connector and Flows Development Environment and Postman for testing our APIs. The main reasons for our technical decisions to use the WhatsApp and WebEx API are as follows:

Economics

Here is a side-by-side cost comparison for sending about 800,000 messages a day using Twilio and the WhatsApp Business Cloud API:

As seen in the table above, the additional cost of using Twilio for 800,000 messages per day would be $120,000 per month, compared our proposed WhatsApp solution. Therefore, for this specific use case, the WhatsApp Business Cloud API would be more cost-effective in the long run.


Benefits of online consultation

The benefit of online interaction between patients and their general practices continues to grow as over a quarter of the patient population are now registered to use GP online services.[12]

1. Improved communication between patients and practices
2. Reduced travel for patients
3. Expanded health knowledge for patients
4. Increased information sharing
5. Increased ability of patients to make more informed decisions
6. Increased operational efficiencies for practices
7. Increased patient satisfaction
8. Reduction of DNAs for practices
9. Improved access to care services

The online system offers the potential to reduce face-to-face contacts, free up GP time and improve access for patients. E-consultations work best for simple and routine enquiries, for complex and new symptoms, face-to-face consultation is better. Move hospital appointments online can save money to NHS and UK economy.

1. Around one in three routine outpatient consultations could be done online, 25.8 million NHS outpatient consultations in England annually could be delivered using digital technology, allowing patients to get help and advice from their consultant without the need for a hospital visit. [13]
2. Brits forced to take one million days off work annually for hospital checks and 54% of hospital outpatient consultations in 2019 were made by people aged 16-64 [14]
3. Assume that the distribution of age for total outpatient attendances was the same for the outpatient attendances that could have been done digitally. Otherwise assume that 20% of full-time employees and 10% of part-time employees would need to take half a day off work to attend an outpatient appointment. Value a day of work at £245 based on the gross value added of £35 an hour in 2018 for a standard 7 hour working day. As a result, 944,006 full-time equivalent working days lose which equate to £231.3m in lost economic output. [13][14]
4. Assume that 30% of outpatient appointments could be performed digitally, the ‘did not attend’ rate would decrease from 8% to 2%. This phenomenon could reduce 2.21m ‘did not attend’ events across England and save a total of £265.7m based on the cost of an outpatient ‘did not attend’ of £120.



References