@PrashantD the model i gave you still works. You just need to make your escalation process a “configurable” process using expressions: so each variable: the timer, assignee, task name, etc, is a expression. When you call the Call Activity, you use the Input Mappings of the Call Activity to inject your data.
You can track the creations of the instances of the processes using the ProcessProcess connections, or use something like a BusinessKey or common variable (like a case id)
In the fluent api, you ~might be able to create a instance of the call activity manually, and then inject that into the BPMN instance after you generate the basic structure using the fluent api. Take a look at this code: Adding Extensions Properties to Model with Fluent API (Helper Example) as a possible example to start from. THis was for adding extension properties to a existing element, but might be similar scenario.
@Ingo_Richtsmeier’s way also works well: again use expressions for the Timer and the assignee, and you can make your single task configurable using scripts and expressions. Each time the timer executes, it just getting the data to re-eval the user task for its next iteration