cancel
Showing results for 
Search instead for 
Did you mean: 

How to exchange data between IVRs

Former Member
0 Kudos

Hi there. I have some expirience with the topic in BCM version 6 and frankly saying I'm bit confused while upgrading IVRs to version 7. I append session variables to SM.g_ExternalDataArray dictionary in custom method. How to retrieve them from another IVR application that was invoked by first application? What is a difference between {IVRINFO}, {EXTRADATA} and {EXTERNALDATAARRAY} and how should look Call Attached Data Expression field in transfer state? Should I edit Extra Data Settings section in Voice Channel properties as well?

Thanks in advance,

best regards,

Podolak.

Accepted Solutions (1)

Accepted Solutions (1)

former_member158363
Active Contributor
0 Kudos

Hello Krzysztof,

I think you can find good description of the variables here Data Items and Queries - System Configurator (SC) - SAP Library .

Also check the IVR development guide here: https://websmp103.sap-ag.de/~sapidb/011000358700000140612014E/IVR_Development_Guide.pdf.

Very useful are samples attached to this note - including python code snippets, XMLs, and flow descriptions: http://service.sap.com/sap/support/notes/1951158 (1951158  - SAP Contact Center 7.0 - IVR Samples).

To you last question, check this example - this is detail of transfer element, where I want to transfer Zmy_segment and ZZ_GUID as call attached data to CRM. In this example I assign value of another local variables of the IVR - my_segment and value returned from SOAP call:

And yes, you have to edit also extradata in voice channel settings in order to transfer them as CAD.

Now if you would transfer this IVR not to queue but to another IVR, the data will remain untouched. If I remember correctly, the data are collected in {IVRINFO} set.

The channel settings should look something like this:

Regards,

Dawood.


Former Member
0 Kudos

Thanks Dawood, indeed. These documents and IVR examples seems to be very valueabe for me at the moment.

One more question: how to access variables declared in a var state in customizer files?

former_member158363
Active Contributor
0 Kudos

Hi,

I think this is well illustrated in another example (actually a workaround) in OSS note 1867041  - BCM 7.0.4 - Callback through IVR script misrouting call when the request is canc... :

Here you assign parameters from call environment to your variable in customizer:

    <params> is a dictionary containing the parameters passed in from

    the application, plus a reference to the application's state

    machine, available with key "SM".

    """

    result = None

  

    try:

      sm = params["SM"]

then set data to extradata set either with sm.CALL.SetExtraData(...). I guess you can also use directly self.CALL.SetExtraData(..) in your Python customizer - check also this discussion and Ville's answer:BCM IVR and tray popup information?

Hope this help.

Regards,

Dawood.

Answers (0)