The inbox service is an aggregation service which aggregates data of municipal services and workflow based on given complex search criteria and returns applications and workflow data in paginated manner. The service also returns the total count matching the search criteria.
This service allows to search both the module objects as well as processInstance(Workflow record) based on the provided criteria for any of the municipal services. For this, it uses a module specific configuration which is stored in application.properties as a key value map, where the key is the businessService name while the value is the configuration map. An sample configuration is attached below -
Here, the key of the config map are the business services of PT module for which inbox has to be configured. Now, inside the search definition -
searchPath - Points to the search URL of the municipal module
dataRoot - This is the search response key that we get from module search, e.g. in Property module, the search response returns response objects inside “Properties” key.
applNosParam - This is the parameter with which workflow search is called once the module objects are retrieved from module search. This parameter is the filed on which module table is joined with the workflow process instance table, e.g. in case of Property module it is “acknowldgementNumber”.
businessIdProperty - This is the parameter with which we search module objects in case of empty moduleSearchCriteria by performing the workflow search first. Again, this parameter is the field on which we join module table and workflow process instance table, e.g. in case of Property module it is “acknowldgementNumber”.
applsStatusParam - This is the application status field name for the module upon which search is being performed, e.g. in case of Property module, it is “status”.
Searcher Integration:
To provide pagination and total count across multiple modules, the inbox service is integrated with searcher. The searcher provides the list of ids and the total count of applications, based on those further enrichment is done by inbox service and results are returned to the API. Sample configuration link for PT and TL module is attached below:
DIGIT offers key municipal services such as Public Grievance & Redressal, Trade License, Water & Sewerage, Property Tax, Fire NOC, and Building Plan Approval.
Reap benefit system is one of the vendors that provide the chatbot services using the turn as backend services to communicate with citizen through chatbot. As part of the requirement, we need to create a complaint in digit platform when ever citizen has raised the complaint through reap benefit chatbot.
Overview
turn-io-adapter service is a wrapper to transform reap benfit request format to digit pgr request format. this service will have _transform api and it will construct requried pgr request from the request message sent by reap benfit system. Reap benfit system will consume _tranform api to communicate with digit pgr mdoule.
In this process, once a complaint is created it sends a Whatsapp message to the citizen with a track link. Whenever some action taken by ULB employes on complaint, we will send whatsapp message to citizen.
Pre-requisites
Before you proceed with the configuration, make sure the following pre-requisites are met -
Java 8
Rainmaker-PGR service is running
Key Functionalities
Complaint can create in digit platform from reapbenfit system chatbot
message will sent to citizen through whatsapp when employee perform some action on complaint
Deployment Details
Please deploy the following builds
rainmaker-pgr-db:v1.1.3-bb2961cf-13
turn-io-adapter:v1.1.3-bb2961cf-19
egov-searcher:v1.1.3-d43c421c-5
nlp-engine:v1.0.0-c3889d14-10
Note: Please refer to the following url for nlp-engine techical documentation.
Turn-io-adapter will be integrated with Rainmaker-pgr Application. Turn-io-adapter Application internally invokes the rainmaker-pgr service to generate the complaint.
Steps to Integration
Turn-Io-adapter application to call turn-io-adapter/_transform to generate the complaint and takes the data from the pgr.