The work of mechanics, who are in charge of all buzzers, serviceable and broken, never was easy – lockings, unreliable contacts, active teenagers and ubiquitous vandals. In these cases, defective mechanisms should be fixed as soon as possible. Residents don’t need to catch a flu standing in front of the locked door.
Specialists of the buzzer company aren’t able to visit each address during their shifts. Too many requests, routine activities, road traffic, etc. They do their best for sure. It can’t be doubted. Operators put urgent orders the first. Besides, the communication inside the company is really scrappy. There is no unified system.
The offer to create a «Domophone-service» app for Android came from the company management of the multisectoral firm named the same as the requested product. This business has been effectively running since April 1996. The result – 14 branches in 20 towns.
Company’s professional field is a production of metal doors, metal constructions, electronics. Moreover, they provide the full range of related services:
- Installation and maintenance of audio- and video buzzers, video monitoring systems, energy-saving equipment.
- Apartment building and organization territory protection – installation of barriers, automatic gates, lifting gates.
The customers are apartments’ owners; social services; building companies, which are responsible for the infrastructure of the new city areas.
Nowadays «Domophone-service» successfully operates in six Siberian regions.
Enterra developers had to create an app to evaluate the level of buzzers repair service quality and to optimize business processes. We wanted to give our client a tool for a quick and easy monitoring. So that they would be able to learn more about their team and what stops them from keeping all buzzers in order.
Each engineer should have an Android tablet. This way they will be able to get the information on their tasks just in time. All requests will be automatically placed on the map.
- Tools to manage active orders – allocating requests to workers, order status monitoring.
- Tools to control and monitor engineers’ journey.
Our developers had to write a code, integrate it with 1С and configure notifications.
Almost each member of the Enterra team was a part of this project to create an app that will be considered as modern for a couple of years at least.
Instruments and frameworks: .NET, ASP.NET MVC, EF, WSDL, web API,
Libraries: NLog, Autofac, Automapper, GraphDiff.
The system has two parts: the Android app and the service to monitor masters’ journeys.
Integration with 1С
«Domophone-service» document management runs in 1С. So, we had to combine document circulation and information about orders from the app.
What for the integration must be done:
- Getting detailed information about orders and workers
- New order registration
- Modification of the current order
- Sending a notification of shutting down the order remotely
To integrate properly, our specialists decided to benefit from experiences of their predecessors from Habrahabr.
- Installation of 1С with web-expansions
- Describing all data types for the exchange
- Creating service methods
- Deploying to the IIS server
- Adding a link, which generates the data exchange interface using WSDL (Web Services Description Language), standard element of 1C
Integration with SMS service
Also, Enterra specialists used the PushSharp library which is useful for sending notifications to clients’ devices; self-written client that could be changed and Aramba service for sending SMS-notifications.
We have used Google Maps API and GeocodeSharp, open source geocoder, to provide actual data of the client location and to place orders on the map. They convert API request to JSON, and the answer from Google is displayed correctly.
Earlier the user couldn’t filter the search by city. Our team upgraded GeocodeSharp and added API results filtration.
App interface includes the user account, the map and the necessary functionality to receive and manage requests.
Only authorized users are able to use the app, so before starting to work each engineer has to complete the registration. After that, each user will have access to the list of the current requests.
User account login
Built-in module helps to control all current orders. Monitoring operators and engineers put new points on the map marking the addresses of new orders.
- Green – created today.
- Yellow – created yesterday.
- Red – created the day before yesterday or earlier.
If there are several orders made from the same address, street and house number, the spot will be colored according to the status of the oldest request. Besides, there will be the precise number of the active orders.
Order status is marked with color
Users can zoom the map.
Also, in a popup window you can read a summary of the order or go and check each detail.
If there are more than one order, a popup will show a full list of them. All orders on the map might be filtered (there’s a special indication of the filter applied).
Map with location tracking
The map shows all spots of the engineer’s journey. The data are updated in real time. Placing a cursor on the spot, you can see the time of the tracked location. Moreover, on the map there are requests, labeled «Registered» and «In work», which have been allocated to the specialist, whose route is tracked. You can check the address, type of the defect, registration date.
All data are stored for one month.
Users can create, filter, sort their orders and set notifications for them. The order contains the following information:
- Malfunction type
- Date of the order registration (current date)
- Phone (optional)
- Note (optional)
The order can be modified only before it was registered in 1С.
After accepting a request, the engineer gets access to the location of the order on the map and the client’s phone. If it is needed, he can contact the client and initiate the modification of the date and the time when the defect should be fixed.
Users can filter their orders by their status, type of the defect, street, registration date in the order from the oldest to the newest, fixed status date from the oldest to the newest ones.
Users receive notifications when the time of engineer’s visit is getting closer, as it was chosen in the settings. There are three options, the notification can be sent 30 minutes, 1 hour or two hours to the time of the engineer’s arrival.
Our app has different types of notifications according to the case to be sure that each request will be tracked and completed.
Push notifications on the new order contain the client’s address, so the user can directly go to the request details screen.
If the user doesn’t want to receive push notifications, he can easily turn them off.
SMS is sent to two first contact numbers, which were mentioned in the order when:
- new request has been received,
- the status of the request has been switched to «Done».
There are many schemes and charts with all essential data. Design is simple and understandable.
Nothing should distract engineers. Work and clients are always prioritized.
Today buzzer engineers as always are ready to jump in a car and go to their client, if they know that he needs them. And they are also provided with the ultimate tool to have all the orders details and to solve the problems without wasting time.