sclass WebChatBotMsg {
S fullHTML;
bool fromUser;
S msgHTML;
}
static L webBotTester_extractMsgs(S html) {
new L out;
LLS msgs = findContainerTagWithClass(htmlTok(html), "span", "chat_msg_item");
for (LS tokMsg : msgs) {
new WebChatBotMsg msg;
msg.fullHTML = trimJoin(tokMsg);
tokMsg = dropFirstTwoAndLastTwo(tokMsg);
for (LS srSpan : findContainerTagWithClass(tokMsg, "span", "sr-only"))
setAllToEmptyString(dropFirstAndLast2(srSpan));
msg.fromUser = false;
msg.msgHTML = trimJoin(tokMsg);
out.add(msg);
}
ret out;
}