Drupal Integration With Amazon S3 File System

BACKGROUND

PepsiCo is a global food and beverage company with a product portfolio that includes 22 international brands generating over a $1 billion each in annual retail sales.

They were looking to store media images in Amazon S3 (Simple Storage Service). In order to achieve the above requirements, Mpire Solutions suggested to create an internal portal that provides a functionality to upload media files to the S3 file system while providing limited and restricted Amazon S3 accesses to their employees.

CHALLENGE

Since the client was looking for a digital asset management functionality, our team decided to conduct a deep audit to identify the main objectives and basic requirements before we proposed anything to the client. After a thorough examination of the scenario, we proposed Drupal CMS to the client as it was the best fit as per the requirements.           

The first challenge we faced was to make the connectivity between Drupal and the Amazon S3 file system. The second major challenge was the access control mechanism between Amazon S3 file system and users. After implementing the access control functionality, every user should have only accessed their own media in the portal.

The third challenge was to create the tag-based functionality associated with each media entity. Our ACQUIA certified Drupal team of developers decided to use the Drupal taxonomies to achieve the tag-based functionality.

REQUIREMENTS

  • Amazon S3 back-end file system integration – To make connectivity between Amazon s3 file system and Drupal.
  • Access control mechanism – To make easy access for the users who have already accessed the platform before.
  • Media assets uploading to Amazon S3 & Tag-based functionality  – To control and manage file uploading mechanism.

SOLUTION

First, our Drupal developers used the contributed modules to build the connectivity between Amazon S3 and Drupal and then we created the taxonomy terms specifically for tag-based functionality.

After achieving the above, we created two user roles in Drupal. One role has the functionality to create a tag, associate file assets with tags, and manage the functionality to make a brief association between files assets and tags. The second role has only access to upload file assets to the Amazon S3 file system.

We also created the custom module which contains the functionality to upload file assets to a specific folder in the Amazon S3 file system. This module also contains the permissions functionality for both of the user roles which restricts the users to its own permissions.

RESULTS

  • We managed to make a significant integration between the Amazon S3 file system and Drupal.
  • We successfully created two different user roles in Drupal with specific accesses assigned to each.
  • A custom module was created to upload the required files in the Amazon S3 file system.
  • Taxonomy terms were created for tag-based functionalities.

BENEFITS

  • The portal now provides the functionality to make some effective integrations between Drupal and Amazon S3 file systems.
  • The portal has a flexible, robust, and user-friendly interface.
  • The client is only providing access to the portal to their employees without providing them Amazon credentials.
Read More

Implementation of a Workflow Mechanism with UI and UX Upgrade of Internal Web Application

Background

 

The said internal application was being used by the client for Procurement purpose for more than five years. Due to a massive growth in their business, they had to split the department in three. With this split, Purchase Orders were to be approved by their respective departmental heads because each department now had its own projects and budgets.     

They reached out to Mpire Solutions with an inquiry about upgrading their internal application with the objective to add new features as well as fixing some existing issues to continue using the application.

mpire solutions
A group of people collaborating while seated at the desk
Laptop showing customer service, retention, and profitability locations on a world map

Challenge

The first and main challenge was the structural modification of the internal application as per new departmental structures. The entire workflow had to be completely overhauled in terms of departmental hierarchies.

The application was built a few years ago without any consideration of user experience (UX). Hence, the secondary challenge was to improve and maximize the user experience throughout the application, which could also ease the training process so that employees could conveniently adapt to the change in technicalities.

Requirements

  • Structural Modification – To accommodate multi-department PO processing and approving authorities by respective department heads in an existing internal application.
  • Stability – To ensure that the upgraded system is stable enough to process several orders at a time.
  • Monitoring – To provide the users the ability to track each order with respect to its processing department, approving authority and its placement or alert the operation personnel about any errors.
  • Improve the UI and UX: To improve the user experience and user interface, making the system user friendly and efficient.

Solution

Our team had to conduct a deep audit of the internal application. Our initial task was to take the code into our custody and understand the database structure, code, and front-end issues.

After a thorough examination and several brainstorming sessions, we came to a conclusion that the database structure and backend coding were excellent and should be left untouched, but the frontend code should be rebuilt.

We were able to successfully implement a new workflow mechanism in the form of an upgraded PO process for the client. This was achieved by extending their existing architecture so it can support multi-department PO approval process.

In the second phase, a new UI was designed and adopted using AngularJS. We also provided back-end API services, which were accomplished using Node.js and Database best practices.

Some additional customized functionality modifications were also made as per the client’s requirements.

Results

  • A proper Purchase Workflow Mechanism was implemented.
  • The client’s main issue was resolved because they were able to track each Purchase Order that was despatched from their system.
  • Departments were able to process their own Purchase Orders now and departmental heads were now able to approve them.
  • The client was 100% satisfied because we met the project’s deadlines and delivered above and beyond expectations.

Benefits

  • Over a period of the next five years, this upgraded Purchase Workflow Mechanism became the reason of a massive multi-fold expansion in their procurement process.
  • This expansion led to an enormous growth in PO approvals from USD 2.8 million to USD 3.7 million.
  • The backend APIs further improved the overall connectivity and collaboration throughout their business.
Read More

Development of Integrated Leaderboard, Event Calendar, Email Management System, and Reward Redemption Process

Background

Blue Studios is providing online learning opportunities to students starting from preschool to 12th grade with the help of online learning classes and many other skill based courses of various categories through webinars, videos, and live classes.

Before reaching out to Mpire Solutions, they were not aware of the concept of a leaderboard. Morever, no mechanism existed to rank the users based on projects, assignments, and quizzes for a specific subject and / or other categories. Instead, they were using a grading system based on marks without any conceptualization of leaderboard rankings.

To begin with, they required a complete mechanism of an event calendar where the users can easily book online projects based on availabilities and offers. We had to select the most appropriate technology to develop an efficient, user-friendly, and integrated event calendar.

Furthermore, with live classes and other online learning activities that can help the users earn rewards, they wanted us to create a mechanism of reward redemption using the right technologies and integration with third parties and within the platform, so that registered users can easily redeem their gifts without any delays.

The last thing they required was a customized and integrated email management system to deal with the auto-generated email throughout the registration process.

mpire solutions
A group of people collaborating while seated at the desk
Laptop showing customer service, retention, and profitability locations on a world map

Challenge

The main task was to create a leaderboard from scratch while integrating all other functions that are related to assignments and the grading system. Since Blue Studios were already using different third-party integrated platforms (Klayvio, Userpilot, & Typeform), our team had to face a lot of limitation throughout the process of development.

Another main challenge was to initiate the custom codes due to no direct access. Our team of experienced and certified developers spent extensive time on the project to find and implement the best possible solution in order to meet the requirements. The client provided us with a specific design and we had to suggest the most efficient technologies for different platforms of the website to get the desired results.

The reward redemption process was yet another challenge for our team. We had to use the right third-party integration platform to develop a well-structured and smooth reward redemption process for the registered users that were ranking in the leaderboard. Other than that, the client required a proper email management system for the new users so that when they register on the platform, they can get the confirmation email right away. 

Requirements

  • Integrated Leaderboard Development – To create, implement, and integrate a leaderboard for a proper ranking system based on different online activities.
  • Event Calendar Development – To manage the live activities and to book for available projects.
  • Features Enhancement – To enhance existing features in order to effectively integrate with the leaderboard.
  • Integrated Gift/Reward Redemption Process – To redeem the gifts based on grades & ranking, on the leaderboard.
  • Email Management System –  To generate and send auto-generated emails through third-party integration throughout the registration process.

Solution

Since the basic design was provided by the client, our experienced and certified team of developers came up with the right mix of technologies (ASP.NET, HTML, CSS, JavaScript, and Uscreen) to perform both tasks.

We started the leaderboard development using ASP.NET for backend & HTML/CSS/JavaScript for frontend development. Since we used customized technology throughout the development process, there were no limitations or barriers throughout the coding process.

We managed to get 3rd party integrations with various platforms to achieve the desired results with the leaderboard. We suggested and implemented a variety of technologies for the admin panel and registration process of the website to make them more optimized and user-friendly.

After successfully developing an integrated leaderboard, we moved towards creating an effective event calendar for the users to book the live events easily. We used Uscreen technology to create an event calendar that shows the availability of the live events.

Furthermore, the implementation of the integrated gift redemption process greatly helped the registered users on the leaderboard in redeeming their gifts based on total points, projects submitted, and quizzes.

To address the need of a proper email management system, we implemented third-party integration with Klayvio technology, so that newly registered users can get an instant auto-generated email for confirmation.

Results

  • We managed to successfully create a customized and integrated leaderboard for the client with the implementation of ASP.NET, HTML, CSS, and JavaScript technology.
  • Registered users can now see their rankings through the leaderboard.
  • An event calendar was developed with the best practices of Uscreen technology.
  • A proper reward redemption was developed using third-party integration.
  • An integrated and customized email management system was implemented to send instant emails to newly registered users.
  • All the features that were mandatory for successful customization and integration were enhanced.
  • The management of Blue Studios was fully satisfied as we managed to custom deliver the project as per their exact requirement.

Benefits

  • The integrated leaderboard encourages the registered users to perform above par and to get the motivation to see themselves ranking on top of the leaderboard.
  • The event calendar helps the users to register for various live classes throughout the week/month.
  • The reward redemption system allows the registered users to easily redeem their gifts based on ranking, grades, assignments submitted, and, quizzes.
  • The integrated email management system makes the entire registration process more flexible and significant.
Read More

Customized Extension Development for Chrome and Safari

Background

OneProximity is a well-known platform to generate and secure login information (ID & Password) for its registered customers. Previously, they only had a mobile app through which customers could manage & secure their login credentials for various platforms regardless of any nature.

The key reason why OneProximity reached out to us was to enhance the functionalities of this app by making it available to the customers via desktops, laptops and personal computers using customized extensions for Chrome and Safari.  

mpire solutions
A group of people collaborating while seated at the desk
Laptop showing customer service, retention, and profitability locations on a world map

Challenge

Before approaching Mpire Solutions, they only had a mob app as a password manager and were facing challenges in updating the registered credentials manually. The main challenge was to develop extensions for two platforms (Chrome and Safari) from scratch and with the same functionalities so that customers can also use the proximity app on their desktops and personal computers as well.

The primary challenge was not just to develop the extensions, but to ensure that the customization integrates with an existing app smoothly. Our team of developers conducted an extensive audit of the application before suggesting a way forward. A technical and security challenge was about encrypting the passwords within the existing app. The deep understanding of OneProximity application enabled us to move towards the solution while keeping all other important factors under consideration.

Requirements

  • Customized Extension Development for Chrome – To make the app solutions available to customers using Google Chrome.
  • Customized Extension Development for Safari – To make the app solutions available to the customers using Safari.
  • Implementation, Support, & Monitoring – To implement and monitor the overall performance of the extension.

Solution

After an extensive audit of the existing application, our team of expert developers developed customized extensions for Chrome and Safari by following the best practices of Coordinator & JavaScript throughout the process.

The core function of the extension was not to save the login information on Chrome and Safari but to retrieve the stored credentials from the existed app for registered users.

The existing application was based on Lambda functions which were not proving effective in getting the desired results. To come up with a significant solution, we developed a middleware to perform the task which helped us in developing reliable extensions for Chrome and Safari.

Results

  • The custom Chrome and Safari extensions were successfully developed and implemented.
  • Customers can now experience the features of the app across all devices.
  • The custom developed extensions were now able to retrieve login IDs and password details from the app.
  • To excess the extensions the registered users have to provide some basic information based on mobile numbers and ID numbers as allocated by the app.
  • The extensions can retrieve the credentials for all platforms regardless of their nature.
  • The extensions would only work along with the app. Customers have to register on the app to use the extensions.
  • The team of OneProximity was fully satisfied with the results along with our efficient and timely services as we managed to complete the project within the provided timeframe.

Benefits

  • The extensions created for Chrome and Safari allow customers to use the OneProximity platform on all mobile devices, desktops, laptops, and personal computers.
  • The main benefit of the extensions was that customers can now easily retrieve the pre-stored credentials regardless of any location or platform, no matter what device they are using.
  • The custom development of the extensions for Chrome and Safari helped OneProximity reach out to the maximum target audience.
Read More

Automation & Data Integration With Salesforce Website

Introduction

Utility Business Media, Inc. (UBM) is the utility industry’s leading publisher and producer of utility safety and leadership-focused content and education. They were looking for some experienced Salesforce development teams to help them set up, track the customer journey, and automate their routine client communication which was based on different criteria within their Salesforce website, such as automated generation of training certificates for registered candidates based on hours completed throughout the sessions. However, the training hours were dynamic and varied from applicant to applicant.

Challenge

When the client reached out to Mpire Solutions they already had a functional Salesforce website. The client used to manually enter the data of the registered applicants based on attendance and training hours in order to generate certificates for each individual.

The UBM management decided to get a customized and integrated Salesforce system that can generate certificates automatically based on hours completed by each registered applicant.

The main challenge was to work on the different conditions, limitations, and validations to automate the process of certificate generation. The client used to record the attendance of the training sessions by manually maintaining an excel sheet before uploading the same to their Salesforce system.

Another challenge was to deal with the exceptional cases throughout the data management system. For instance, an applicant is registered for a specific training session but never punched the attendance, or joined the session late leaving behind no records. We had to consider every basic possibility to create the best-fit Salesforce solution for the client.

Requirements

  • Automated Certificate Generation – To generate certificates for each individual based on attendance and hours.
  • Eligibility Criteria  –  To manage and keep track of the registered users before generating the certificate of any particular training.
  • Data Integration and Management – To streamline the entire end-to-end training process.
  • User Creation – To identify the status of whether the applicant is new or already registered with the platform.

Solution

To meet the requirements of the client, we created a customized and integrated Salesforce system. There were 4 basic conditions we worked for certificates automation;

  1. Information of the applicants.
  2. Beginning date of the event.
  3. Ending date of the event.
  4. Number of hours spent by each individual in training.

To monitor and track the presence of the registered users, we created a customized training management calendar for each applicant that tracks the total number of hours an individual has spent throughout the training sessions, before generating the certificate. We also worked on the eligibility criteria of the applicants whether they are eligible for the certificates or for a specific training session. In order to avoid human error in setting dates, we excluded backdating entries within the platform to keep things reconciled.

The Salesforce team at Mpire Solutions developed customized options for the client through which they can send the certificates to the trainees via email. However, to avoid exploitation, this customization access was only available for the admin.

There is a limitation of sending the number of emails in a single day through Salesforce. Salesforce allows you to send a maximum of 5000 emails in a single day. Sometimes UBM had to deal with more than the provided limit. This hype could be the result of discounted offers, packages, or limited offers to attract a potential audience. To deal with this challenge, we had to develop a customized batch class in Salesforce to meet the target without any limitations.

In addition to that, our Salesforce developers worked on the user’s information to check whether it’s a new applicant or already a registered applicant with the platform.

Results

  • We successfully managed to automate the certificate generation process.
  • A proper mechanism was developed to track and monitor the attendance of the registered applicants.
  • Entire data was significantly integrated with the Salesforce website to manage the training process.
  • A mechanism now can identify the status of the applicants whether they are new users or are already registered.
  • The platform now can check the eligibility criteria of the applicants.

Benefits

  • Certificate Generation Process was automated.
  • Attendance Verification Process was automated.
  • Instead of generating certificates for every individual, the client is now only a click away to send certificates to the trainees via email.
  • The client now simply has to upload the attendance to their Salesforce platform and get the desired results.
  • Trainings, Trainees, Attendance and Certificate Issue Data was significantly integrated throughout the platform.
Read More