I have more details here, I hope you will respond to an email sent to support.I have a terrible time figuring out which portal/email/order gets me connected.I do not wish to post the details in public.

I replied to the forum notification but oops that's just from a "donotreply" address.I have sent requests to support and contact.

Turns out support was no help. I guess I should have asked before extending my subscription!

I hacked a solution. Maybe someone else can take it further.

<?php
/*
* steward
* 24 jan 2017
*
* avChat produces an XML document per instance (eg users__definst_.xml) each time a user enters or leaves a room
* Parsing the xml turns out to be a real PITA. I got dazed and confused by the php xml functions.
*
* avChat support is not going to help:
* "at the moment there is little help I can provide since we're not supporting this plugin anymore."
*
* So for anyone else that got stuck with a no-longer-supported plugin which suddenly fails to parse the xml...
* This is a simplified solution to extract data from the XML into an array so your CMS can display "who is chatting now".
*
* All I need is the username and siteId. So that is all I extract below.
* But if you set $debug=true, you should see what field names you need to get.
*
* I am pretty sure this is incorrect, bad and ugly. But chat has sucked enough time for now.
* If anyone finds a better solution please share. Thanks.
*/
function getChatters($fn)
{
$debug=false; // set true to spit out the xml as an array
$aChatters = []; // populate theis array and return it
// fn is filename or url for the xml
if (is_readable($fn)) {
if ($aXml = file_get_contents($fn)) {
$xml = simplexml_load_string($aXml, "SimpleXMLElement", LIBXML_NOCDATA);
$json = json_encode($xml);
$array = json_decode($json, TRUE);
// Now have xml as simple php array. Dump the who;e thing.
if ($debug) {echo "XML AS ARRAY:" . PHP_EOL . print_r($array,true) . PHP_EOL . str_repeat('-',80) . PHP_EOL;}
foreach ($array AS $root => $node) {
foreach ($node AS $rootRoom => $room) {
// Access values via '@attributes' keys
if ($debug){echo $room['@attributes']['users']. " in room " . $room['@attributes']['name']. PHP_EOL;}
if (isset($room['user']) AND count($room['user'])) {
foreach ($room['user'] AS $rootUser => $user) {
/*
* Don't understand why this is necessary.
* Seems to occur when there is just one user in a room.
* Something is still fubar
*/
if(isset($user['@attributes']))
{
// Now have room and user values
if ($debug) {echo $user['@attributes']['name']. PHP_EOL;}
// May want to eliminate duplicates (same user in multiple rooms)
$aChatters[] = [
'user_name' => $user['@attributes']['name'],
'user_id' => $user['@attributes']['siteId'],
//'room'=>$room['@attributes']['name']
];
}
}
}
}
}
}
}
return $aChatters;
}
$aChatters = getChatters($fn);
echo "===================================RESULT:\n";
print_r($aChatters);
// compare with http:yoursite/chat/users__definst_.xml