Release Notes

July 30, 2021

  • New: [CoBrowser] Add support for web-socket connections to improve stability

July 23, 2021

  • New: Add *Inbenta Hyperchat* livechat functionality
  • New: [Inbenta Chatbot] Add support for actionFields with displayType ‘text’
  • New: [Inbenta Chatbot] Add support for federated results that have an ‘url’ field
  • Fix: [LivePerson] Ignore unknown messages of type leCollaboration
  • Fix: [Obi LiveEngage] Make the configured fallback avatar work
  • Fix: Return proper status codes when receiving invalid uploads

July 2, 2021

  • New: [LivePerson] Add support for LivePerson’s exit surveys
  • Fix: [LivePerson] Ignore incoming system message without content
  • Fix: bug with waking from hibernation and failing to reconnect to the previous service
  • Fix: [ObiBots] Correctly disable choose again button after the Obi session has restarted
  • Fix: [Parley] Correctly send disconnect message as a Parley system message
  • Change: [Kubion] Pass non-file-upload text entry to Kubion service even when they expect a file

June 25, 2021

  • Fix: Disconnected conversations that only disconnected the websocket would never return to a connected state. This mostly happened with app implementations
  • Fix: [CoBrowser] Fix random chat disconnects based on connection timeouts

June 18, 2021

  • New: [Parley] Add support for checking the inbox property of agents in the availability check
  • New: Add support for Holidays in Time conditions so schedules can now use holidays like easter_sunday , ascension_day and others
  • Fix: [DCX] Sanitize all possible space charaters so parsing of CTA and other rich messages keeps working
  • Fix: [Medallia] and [LiveAssist] Ensure hibernation works when hibernating in when these services are active
  • Fix: [Inbenta] Properly handle attach failures
  • Fix: [DCX] Limit ask parameter to 999 characters as otherwise the call wil fail
  • Fix: [SalesForce] Pre-chat details are now being set correctly for new conversations

May 28, 2021

  • Security fix: Add support for authenticated sessions. All @seamly/web-ui customers using version 17.0.0 and upwards will automatically use authenticated sessions.
  • New: Send first response event back to the client so it can be used in analytics and user responded data (requires @seamly/web-ui version 17.0.0 or higher)
  • New: [Zendesk] Add support for setting the notes field in Zendesk on connecting
  • Fix: [Inbenta] Convert all variables to string before sending them to Inbenta (fixes problem with availability passing, which relied on booleans)
  • Fix: [Inbenta] Clear FAQ’s when transferring to another service
  • Fix: [CoBrowser] Correctly set participant information on events
  • Fix: [ObiBots] Send all entities when creating a new session
  • Fix: Normalize file upload extension metric to always be lowercase

May 21, 2021

  • New: [SalesForce] Add support for queue update messages. If enabled users will see their queue position
  • New: [ObiBots] Add support for Topics
  • New: [Inbenta] Add support for Topics
  • New: [Azure Bot Direct Line] Added hibernation support
  • Fix: [ObiBots] Fix conversation crash when chatting after click on FAQ
  • Fix: [Zendesk] Fix issue where users could end up without an agent if the conversation was being transferred between agents/departments in Zendesk.

May 7, 2021

  • New: [CoBrowser] Add support for rich messages
  • New: [LiveAssist] Added hibernation support
  • New: [Medallia] Added hibernation support
  • Fix: [DCX] Clicking FAQ’s when in a T-Dialog now cancel the current t-dialog and trigger the FAQ response
  • Fix: [Inbenta] Fix return event trigger after returning from livechat (or other services) to Inbenta

April 23, 2021

  • New: [Parley] Add support for return values from parley service. This way you can receive information about the conversation had with Parley and trigger an action like a customer survey.
  • New: Allow arbitrary escalation points to be defined so we can more accurately track livechat escalation potential
  • New: Add support for topic handling. With topics the front-end can set a topic and the service can react to that appropriately. Especially useful when working with external triggers or buttons on a site that should go to a specific dialog within a bot.

April 9, 2021

  • New: Add response time metrics. We can track first response time and average response time. Response time calculates the difference between a user action and the first response from the agent. We also keep track of number of messages sent and received per service.
  • Fix: [Kubion] Ignore broken avatar images received from service allowing the configured default to be shown.
  • Fix: [Kubion] Set correct participant information on all messages coming from Kubion.

March 26, 2021

  • Fix: [DCX] Questions with more than 1000 characters are now being truncated to make sure they are accepted by DCX
  • Fix: [DCX] T-dialog additions are now properly handled for validation messages, questions and quick-replies

March 17, 2021

  • New: Add support for separate API key to use in Robin availability check

March 12, 2021

  • New: Add Robin service
  • Fix: [DCX] Additions were not available for webhooks triggered by t-dialog answers

March 4, 2021

  • Fix: [DCX] User-Agent and Referer headers are now sent correctly to DCX

March 2, 2021

  • Security fix: Fix potential XSS issues in agent introduction and agent name
  • New: Add Obi LiveEngage service
  • New: Add Avaya livechat service
  • New: Add support for service response hook trigger which allow us to get external data on specific service responses. Currently only available for DCX
  • New: Add hook runs to metrics. This allows customers to see how many times a hook is run and can be used to track for instance how many times the send transcript feature has been used.
  • Improvement: Allow hibernation detach behaviour to be controlled per service (so you don’t get a “Do you want to continue this conversation with XXX” when talking to a bot)
  • Fix: [Kubion] Remove no_choice_message handling for choices as Kubion service now handles those themselves
  • Fix: [DCX] Transfer reason is now passed correctly again when transfer to different service fails

February 22, 2021

  • Security fix: [Medallia] Prevent potential XSS attacks from Medallia content
  • Change: [Medallia] End message will now immediately end the Medallia session

February 17, 2021

  • New: Add **Medallia Conversations** service
  • New: Add send transcript to the interface. If enabled, users can send a copy of the transcript to themselves by e-mail.
  • Start the domain transition from `[seamly.ai](http://api.seamly.ai)` to `[seamly-app.com](http://api.seamly-app.com)` as .com domains have faster DNS and it supports DNSSEC. First part of the transition is to enable running the app on both domains simultaneously. Once clients are updated and the seamly.ai domainname is no longer in use it will be turned off.
  • Fix: DCX now uses 10s timeouts on HTTP requests
  • Fix: DCX continue addition now works properly on dialogs
  • Fix: DCX CTA followed directly by dialogoptions would crash the conversation. The crash has been fixed.
  • Fix: Inbenta using missing personalisations would crash after introduction of Rich messages

January 27, 2020

  • New: Add support for *Cloudmersive Virus Scan API* to scan user uploads before processing them
  • New: Add a *SalesForce Soap API* handler for hooks. This allows customers to send conversation context data to their SalesForce SOAP api, for instance to create a new case
  • New: All outgoing HTTPS calls now support Mutual TLS. Client certificate is the same as https://api.seamly.ai
  • New: Allow to have multiple default service which will be tried in order. This allows you to route more dynamically between services.
  • Fix: Uploads triggered by messages are now properly validated
  • New: [ZenDesk] Add support for passing phone number in a chat
  • Fix: [Inbenta] Fix bug where sessions would not be correctly resumed after the token expiry
  • 15 minor fixes and improvements

December 11, 2020

  • New: Add support for the *Zendesk chat* service
  • New: user timezone is now available in context
  • New: variable transform to toplevel objects now work
  • New: [Kubion Iris] Add support for file uploads
  • [DCX] Improve logging of request failures so issues can be debugged more easily
  • Fix: Normalize all conversation call timeouts. This should make conversations less error-prone
  • Fix: Accept correct content-type for all rest calls
  • Fix: Prevent a service attach loop which in some edge cases would result into Seamly hammering the back-end service
  • Security improvement: all database connections now use TLS

November 25, 2020

  • New: Add support for *messaging*.
  • New: Add support for conversation hibernation which means we have encrypted long-term storage of conversations which take place with identified users.
  • New: File uploads have a max age, this means they can exist longer than a conversation
  • New: Add support for context hooks. You can now fetch external data that updates the context.
  • New: Add a Resume conversation prompt after a user has returned to a conversation after a set threshold
  • New: Upload entry request, a message can now ask for a certain type of answer (Text or Upload). Only works with version 13+ of the WebUI
  • New: [Parley] Add support for queue availability status. So we can queue users if wanted
  • New: [Kubion Iris] Add support for list outputs
  • New: [Kubion Iris] Add support for choose again in choices
  • New: [Azure Bot Direct Line] Using an expectedEntry entity you can request a specific type of input
  • Change: [Azure Bot Direct Line] Uploads are uploaded using the Direct Line API instead of just an URL
  • Security improvement: all (api) requests are now rate limited. This lessens the risk of brute force attacks on uploads
  • Security improvement: updated the certificate storage for all intermediate CA’s
  • Security improvement: file uploads are now authenticated in the client and for the agent before they can be downloaded

November 4, 2020

  • New: Allow routing to happen based on specific availability states. This allows us to route to services which are unavailable. Useful for services that allow queuing
  • New: Add queueable availability state (only for supported services)
  • New: Allow transforming of availability to services (only for supported services)
  • Major improvement to synchronisation of history after reconnect
  • New: [Kubion Iris] Add support for passing initial values on attach
  • New: [OBI Chatbot] Add support for fetching FAQ categories based on metadata on last response.
  • Security Improvement: Move error tracking to internal tracking software to prevent data leakage outside of EU
  • Security Improvement: Use validated DH key exchange parameters (ffdhe4096)
  • Fix: Personalisations with underscores in nested values would not be recognized

October 14, 2020

  • Security Fix: Fix XSS issue with escaped user input
  • New: Add support for *Kubion Iris* service
  • New: [OBI Chatbot] Add support for FAQ’s
  • New: Expose message timestamps to better synchronize history with clients
  • Fix: [CoBrowser] Make survey work in combination with cobrowsing
  • Fix: CORS headers would not be sent on error pages
  • New: API now returns security headers (content-security-policy: default-src ‘none’, cross-origin-window-policy: deny, referrer-policy: no-referrer, x-content-type-options: nosniff, x-download-options: noopen, x-frame-options: SAMEORIGIN, x-permitted-cross-domain-policies: none and x-xss-protecteion: 1; mode=block) Score “A” on https://securityheaders.com/?followRedirects=on&hide=on&q=api.seamly.ai
  • New: https://api.seamly.ai now returns a HTML page with our logo

September 28, 2020

  • Release Seamly Web UI version 12
    • Add support for character limit
    • Add support for custom visibility logic in implementations
    • Add support for custom messages
    • A lot of bugfixes and minor improvements.
  •  Add support for character limit (requires @seamly/web-ui version 12+)
  • Fix: [Azure Bot Direct Line] Correctly remove padding after decryption
  • Fix: [CoBrowser] Make surveys work with the changed CoBrowser API

September 14, 2020

  • New: Add support for Obi Chatbot service
  • New: Add Webhook hook handler. With a webhook you can do external requests on any trigger (when a service attaches, detaches, messages are sent or received, etc)
  • New: Add hook trigger for received messages
  • New: Add hook trigger for service attachment
  • New: Add support for custom messages in Seamly and in Seamly UI. This feature allows clients which use services that support custom message formats to pass them to the UI.
  • New: Add attach_failed_metrics to track how many times transfer from one service to another fails (due to unavailability or other errors).
  • Fix: Make sure profile service settings work like normal service settings. This fixes an issue where schedules could not be set in profiles.
  • New: [SalesForce] Allow passing of affinity_token and session_id to context store (so it can be used in hooks)
  • New: [CoBrowser] Add support for surveys at end of conversation with agent
  • New: [Azure Bot Direct Line] Add support for custom messages passthrought
  • New: [Azure Bot Direct Line] Add implementation guide on how to create a custom chatbot in Azure Bot Framework that works with Seamly
  • New: [Azure Bot Direct Line] Add support for file uploads

August 23, 2020

  • [Parley] Change default end event to “closed_conversation” (can still be overridden in config)
  • Add support for uploads in transcripts
  • Add file uploads to metrics. We track extension and filesize.
  • Fix: [SalesForce] Pass first written message as subject
  • Fix: Make personalisation variables with escaped underscores work

July 29, 2020

  • Seamly Web UI version 11
    • Add file upload support
    • Minor focus fixes
  • New: Add secure *file upload support* to all livechat services
  • New: [Parley] Faster initial connection with agent
  • New: [LiveAsssist] Faster initial connection with agent
  • Fix: Destroy hooks sometimes would not have access to the full history
  • Fix: Prevent metrics from crashing when database is unavailable

July 17, 2020

  • New: Add support for transcripts in all Hook triggers
  • Fix: [DCX] Personalisation errors would not be retried and failed immediately
  • Fix: [DCX] Pass context to DCX with FAQ clicks too
  • Fix: [DCX] Make T-Dialogs from FAQ clicks work
  • New: [DCX] Add support for T-Dialog returnEvent
  • Fix: [PureConnect] Make empty avatars work
  • Fix: [LivePerson] Fix availability check with invalid http response
  • Seamly Web UI Version 10
    • Add support for cobrowsing in UI (needs service specific implementation)
    • Improve idle timer display (“1 minute and 30 seconds” instead of “90 seconds”)
    • Expose idleTimer.start and idleTimer.stop events
    • Publish official documentation site: https://developers.seamly.ai/clients/web-ui/ 

June 30, 2020

  • Security fix: [PureConnect] Sanitize Agent input to prevent XSS attacks on clients
  • New: [Azure Bot Direct Line] Add support for variable transforms on event activities
  • New: [Azure Bot Direct Line] Add support for AES128 encrypted events
  • New: [DCX] Add support for extended session times in DCX (enabled by default)
  • Fix: [LivePerson] Don’t crash when receiving messages after detach
  • Fix: [CoBrowser] Send correct close message to agents so reporting will work correctly
  • Fix: [CoBrowser] Ensure forwardcompatibility with new versions of CoBrowser platform
  • New: [CoBrowser] Setup of cobrowsing/screen sharing feature in CoBrowser (require Web-UI version 10 or higher)

June 12, 2020

  • New: [Parley] Pass transcript as a transcript message instead of separate messages
  • Fix: [PureConnect] Don’t crash on availability error responses from PureConnect
  • New: Store wether user has responded in conversation duration metrics so we can filter interactive/idle times based on that.
  • New: Store metadata in service attach metrics so we have transfer status in storage
  • New: Store (a sanitized version of) the url with attach metrics
  • New: Store client_disconnected as a different end reason than client_ended to improve metrics
  • New: [DCX] Pass outside_schedule as context whenever the service is outside of a defined schedule
  • New: [Inbenta] Pass outside_schedule as context whenever the service is outside of a defined schedule
  • New: [CoBrowser] Correctly end session with reason agent_unavailable whenever you try to connect to an unavailable campaign
  • New: [SalesForce] Correctly end session with reason agent_unavailable whenever you try to connect to an unavailable button_id

May 25, 2020

  • Seamly Web UI version 9.0:
    • New: Only resume chat in new window when user has sent a message to a conversation
    • New: Add support for programatically initialise and destroy chat window instances making the UI easier to use within SPA’s
    • New: Add support for FAQ’s collapsing on user response
    • Security fix: Escape HTML the user enters before we inject it into the DOM. Fixes a potential XSS issue.
  • New: Add support for CORS limit per account (default is to allow on all origins) (requires client version 9.0)
  • New: [DCX] Pass referer header to all requests in DCX so it will show up correctly in CX’s logging
  • Complete overhaul of metrics handling. We can no store arbitrary metadata with metrics and query them too. This allows us to generate custom graphs per account.  Metrics are now also relatable to the service/schedule availability allowing us to answer questions like “How often did a user give negative feedback while there should have been availability according to the schedule but there wasn’t”

May 14, 2020

  • New: Add *Genesys PureConnect* service
  • New: [DCX] Allow setting of custom delay for the feedback question
  • New: [DCX] We can now pass the sessionID to context (for tracking if required)
  • New: [Inbenta] Allow setting of custom delay for the feedback question
  • New: [Parley] Base agent availability on their mode too
  • New: [Parley] Send user disconnected message as system message
  • New: [Parley] Make end event configurable (default is now finished_conversation)
  • Fix: [Azure Bot Direct Line] Fix unexpected websocket disconnect reconnection logic

April 22, 2020

  • New: Add *Microsoft Bot Framework* Direct Line service
  • New: Metrics for feedback presented and feedback scores
  • New: Custom per client Metrics metadata
  • New: Metrics on time spent in idle/interactive per service and profile
  • New: Transfer reason are now available in transfer metrics
  • Fix: [DCX] Also fetch the same amount of related FAQs when retrieving FAQs
  • Fix: [Parley] Ignore empty welcome messages
  • Fix: [Parley] Send out participant information before first message
  • Fix: [Parley] Make profiles with spaces in name work

April 9, 2020

  • New: [CoBrowser] Implement passing browsing urls during conversation
  • New: Add *Parley* messaging service
  • New: [DCX] Allow FAQ’s to be sent on all messages not just start events
  • New: Add idle warnings including end conversation timeout
  • New: [CoBrowser] Implement peekahead for typing indicators
  • New: Implement peekahead for typing indicators (only on supported services)
  • New: Add support for passing extra transfer metadata including from service to the next service

March 26, 2020

  • New: [LiveAssist] Add support for sending context data to the Live Assist Context Store
  • Fix: Correctly assign IP-address information with running conversations
  • Fix: [Inbenta] Better handle API errors for the user

March 20, 2020

  • New: Info messages (currently only in LivePerson and LiveAssist
  • Fix: Increase stability of running conversations connected to temporary slow services
  • Fix: [Inbenta] Keep the FAQ question in the history
  • New: The UI now shows different button/header based on wether or not the client has an active conversation open

March 5, 2020

  • New: Only allow choose again when more than one choice is available
  • New: Allow to run hooks based on messages and their metadata
  • New: All bot services now have support for opening links in new tabs
  • Fix: [LivePerson] Fix case where agent information would be sent again and again causing scroll issues in the front-end
  • Fix: [Inbenta] Speed up initial session creation
  • Fix: [SalesForce] Make dealing with errors in the SF API more robust

February 23, 2020

  • New: Add option to hide privacy disclaimer after X seconds
  • Fix: Don’t crash metrics on unexpected input
  • Fix: [DCX] Add support for images as choiceprompts
  • Fix: Increase max number of allowed file descriptors
  • Fix [DCX] Regression in quick replies

February 17, 2020

  • Fix: [DCX] Don’t break when user enters more than 1000 characters in question

February 13, 2020

  • New: time based variable conditions (for context transforms)
  • Zero downtime deploys

February 5, 2020

  • Fix: Proper fix for transfer metrics
  • Fix: [SalesForce] Idle messages were not sent correctly after choose again update
  • New: [LiveAssist] Add support for LiveAssist max wait time. This setting is useful if you don’t want people to go into a queue that will take a long time.
  • Fix: [LivePerson] Fix edge case where messages would not be properly sent
  • Fix: [SalesForce] Various bugfixes, mainly broken handover scenarios

February 3, 2020

  • New: Allow to pass configurable metadata when doing handover
  • Fix: [CoBrowser] Fix issue when too many messages would have been sent at once
  • Fix: Metrics would not count transfers correctly after choose again update

January 30, 2020

  • New: FAQ is now a core feature that can be enabled in UI
  • New: Add support for choose again functionality in supporting services (currently DCX)
  • Fix: Poll external services only once every 15s instead of every 0.5s
  • Fix: [Inbenta] Feedback storage doesn’t work
  • Fix: [DCX] Sometimes we would get errors from their API, we will now log them properly
  • Fix: [SalesForce] Fix handling of warnings
  • Fix: [SalesForce] Fix handling of switching servers in availability

January 23, 2020

  • New: [Metrics] Store availability over time
  • New: FAQ is now a core feature that can be enabled in UI

January 21, 2020

  • New: [Metrics] Store amount of transfers including originating kbaID (DCX only) per account

January 19, 2020

  • Fix: Log correct IP address in context
  • Fix: Trying to go to a unavailable service now gives an error in the front-end
  • Fix: [DCX] handle DCX api errors better

January 16, 2020

  • New: [DCX] API URLs can now be configured instead of automatic selection.
  • A lot internal fixes we found by better monitoring through Sentry. These should increase stability for all customers.