Hi, I’m a beginner with Genesys and I have to build a a strategy that call a http web service passing some parameters (collected digits). My problem is that the WS expects the MD5 of the collected digits and I don’t know how to calculate MD5 of a string from an IRD strategy. I suppose I should use script in IRD and call it from strategy but I have no idea how to write the script to calculate md5.
Assuming more or less up to date URS/IRD you can try md5 console command to URS: md5 some text.
Like RequestRouter[‘##SELF’,‘urs/console?md5 abc’,‘’,‘’,‘’] (RouterServer=##SELF, Method=urs/console, Params=md5 some text, all other parameters empty)
Back will be returned string in format md5(“sometext”)=… so result had to be parsed to cut md5(…)= prefix.
13:56:04.353_I_I_033902a3485fa00c [07:4e] HERE IS RDATA
_R_I_ [07:4e] request 3 to server ##SELF sent: urs/console?md5 abc
13:56:04.367_I_I_033902a3485fa00c [09:04] <<<<<<<<<<<<suspend interp(RDATA), func:RequestRouter timers:00000
...
13:56:04.538_I_I_033902a3485fa00c [09:05] >>>>>>>>>>>>resume interp(0), func:RequestRouter
_I_I_033902a3485fa00c [09:04] ASSIGN: out(LOCAL) <- STRING[1,44]: "md5("abc")=900150983cd24fb0d6963f7d28e17f72"
Function RequestRouter send “web request” (= invoke URS WEB API) to some other router or to itself.
More or less WEB API description can be taken from running URS instance itself (if enable http port and ask with web browser urs/help).