Is it possible to change the number from within CID superfecta source module?

My spa3102 sometimes does not send a CID, however the number shows up on the web interface. All attempts to debug this have failed.
As a workaround I would like to add a CID superfecta source module that would fetch the phone number from the web page, and then the recovered number would be used by subsequent superfecta sources.
So far it seems like the data is passed by value to the source modules. What would be the least invasive way to fix that?

CID Superfecta 2.11.3

I am a dev on this project. Superfecta will only run if the CID number is known, before you write a module to collect the number you will have to hack superfecta to run without it. I think a better approach would be to call an AGI script that gets and sets the callerid number and then goes to the from-trunk context.

OK, I’ll look into this.

Can I add AGI script to an inbound route via web interface? Otherwise, the only way I see would be to override the extension altogether using extension_additional.conf. But then I will lose the ability to modify the route via web interface.