Journal Einträge per XMPP holen und gruppieren

Hallo zusammen,

wir haben vor ein paar Wochen eine erste Integration von mobyDick in unsere ERP Software via XMPP realisiert. Bisher läuft auch alles ohne Probleme.

So holen wir unter anderem das MobyDick Journal direkt in unsere Datenbank, so dass man direkt dort nachschauen kann wer wann angerufen hat.

Nun zu meinem Problem:
Das “nackte” Telefon-Journal erscheint für das unbewaffnete Auge auf den ersten Blick nicht ganz Endkundenfreundlich.

Beispiel:

  • Ein eingehender Anruf klingelt über eine Warteschlange an 4 Telefonen
  • Eines der Telefone nimmt den Anruf entgegen und spricht mit dem Gegenüber für 5 Minuten
  • Danach leitet er das Telefonat ohne vorherige Rücksprache an ein anderes Gerät weiter
  • Dort wird das Gespräch für weitere 5 Minuten fortgeführt und im Anschluss aufgelegt

In dem oben beschriebenen Fall wird es im Log 5 Einträge geben, welche in etwa so aussehen:
[table=“width: 500”]

[th]Result[/th]
[th]Result-Details[/th]
[th]Via[/th]
[th]Via-Details[/th]


noanswer
elsewhere
queue
agent


noanswer
elsewhere
queue
agent


noanswer
elsewhere
queue
agent


transfer
dst
queue
agent


hangup

transfer
dst

[/table]

Mein Wunsch wäre es nun alle 5 Einträge zu bündeln, so dass man direkt sieht welche Rufe alle zusammengehören. Hierzu fehlt mir im Journal jedoch eine eindeutige Kennung des Rufes. Sicherlich kann ich versuchen anhand von Rufnummer und Zeiten mich durch die Einträge zu hangeln, wobei ich dieses Vorgehen nicht wirklich als “sauber” bezeichnen würde.

In einem anderen Post sagte einer Ihrer Mitarbeiter, dass die Jorunal API ggf. überarbeitet werden soll. Gibt es hier schon etwas neues, oder evtl. eine andere Möglichkeit das oben genannte Problem zu lösen?

Vielen Dank bereits im Voraus.

Gruß,
Lars

Hallo Lars,

über XMPP ist bisher leider nur die “vereinfachte” Darstellung des Journals zugänglich. Es gibt noch eine detaillierte Version, die du momentan über die REST-API mit den Parametern “rawdata=1” bzw. “chaindata=1” abrufen kannst - hier erhälst du dann (verknüpfte) Einträge für jeden Schritt den der Anruf durch die Telefonanlage genommen hat (Warteschlangen, IVRs, Transfers usw.)

Via XMPP werden diese Informationen wohl frühestens zur 7.14 zur Verfügung stehen - aber wie genau die API aussieht kann ich dir noch nicht sagen.

Grüße,
Jan

Hallo,

ich habe die vorgeschlagene Methode per REST in der Zwischenzeit einmal ausprobiert und bekomme auch tatsächlich ein Feld “chain” womit ich die Einträge zusammenfassen könnte. Mich würde nun interessieren ob dieses Feld ggf. mittlerweile auch per XMPP abrufbar ist (ab einer bestimmten Version) oder zukünftig sein wird. Falls nein, müssten wir unsere Schnittstelle an der Stelle auf REST umstellen, was jedoch ein doppeltes Pflegen von Anmeldeinformationen bedeuten würde, weswegen ich dies nach Möglichkeit umgehen möchte.

Vielen Dank bereits im Voraus für die Antwort!

Gruß,
Lars

Hi Lars,

Since version 7.14 journal entry contains chain element.

Also there is a new xmpp command which fetches the full chain of phone call records. User who requires data need to be part of the phone call or the user with supervisor permission

Example:
<cmd xmlns=“http://www.pascom.net/mobydick” module=“phonecall”>
<FindChain chain="…"/>
</cmd>

Server will return response like:
<cmd xmlns=“http://www.pascom.net/mobydick” module=“phonecall”>
<PhonecallRecordList >
<PhonecallRecord />
<PhonecallRecord />
</PhonecallRecordList>
</cmd>

<cmd xmlns=“http://www.pascom.net/mobydick” module=“phonecall”>
<PhonecallRecord id="">
<timestamp></timestamp>
<parentId></parentId>
<chain></chain>
<result></result>
<resultDetails></resultDetails>
<via></via>
<viaDetails></viaDetails>
<recordId></recordId>
<duration></duration>
<connected></connected>
<holdDuration></holdDuration>
<holdCount></holdCount>
<srcInternal></srcInternal>
<srcUserId></srcUserId>
<srcUserName></srcUserName>
<srcName></srcName>
<srcPhonebookEntryId></srcPhonebookEntryId>
<srcDeviceId></srcDeviceId>
<srcDeviceName></srcDeviceName>
<srcLocationId></srcLocationId>
<srcLocationName></srcLocationName>
<srcPrefix></srcPrefix>
<srcNumber></srcNumber>
<srcExtension></srcExtension>
<dstInternal></dstInternal>
<dstUserId></dstUserId>
<dstUserName></dstUserName>
<dstName></dstName>
<dstPhonebookEntryId></dstPhonebookEntryId>
<dstDeviceId></dstDeviceId>
<dstDeviceName></dstDeviceName>
<dstLocationId></dstLocationId>
<dstLocationName></dstLocationName>
<dstPrefix></dstPrefix>
<dstNumber></dstNumber>
<dstExtension></dstExtension>
<data></data>
</PhonecallRecord>
</cmd>

I hope this XMPP API will satisfy your needs.

Kind regards,
Stefan

Hi Stefan,

thanks for the quick response.

Since we’re on Update-Channel: Stable I can’t test it right away, because I have to wait until 7.14 becomes available on that channel, we’re still on 7.13.05.

As soon as we’re on 7.14 I will take a closer look at it.

Thanks,
Lars

Hi Lars,

ATM stable channel points to the mobydick 7.13 version and current channel points to pascom 15 so 7.14 will never become stable :(. You can think about migrating to pascom 15 or to wait until it becomes stable.

Regards,
Stefan

Hi Stefan,

can you tell me when pascom 15 will be available on the stable channel?

Thanks,
Lars