Skip to content

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 12 Oct 03:43

Added: email notifications and webhooks in your own format

  • Email notifications. An admin connects the email service you already
    use, once, in Settings → Notifications (or helppuff email set):
    Resend, Postmark, SendGrid and Brevo are filled in from the address to
    send from and the key; any other service works with its own request.
    HelpPuff writes each email (a plain-text body, and an HTML one with
    everything a visitor wrote escaped) and sends it with {{email.to}},
    {{email.subject}}, {{email.text}} and {{email.html}}. The key is
    stored encrypted. Send me a test, pause and remove.
  • Everyone chooses their own emails, members too: new contact, hot lead
    (with the AI's summary), callback request, a visitor wants a person, a live
    chat nobody took, a chat given to me (only to that person), new job, new or
    cancelled booking, and the AI budget used up (admins). Nothing is sent
    until a person ticks it; someone removed from the team gets nothing more.
    Settings → Notifications is there for everyone now, with live chat off too.
  • Webhooks in your own format. A webhook can send your own request
    instead of the signed JSON, for a service that wants its own format
    (Slack, a CRM, an SMS API): the method, headers (credentials stored
    encrypted) and a body with {{event.type}} and {{data.…}}. Retries,
    the delivery log and the X-HelpPuff-* signature work the same. In the
    dashboard (Your own request), helppuff webhooks add … --header … --body …, helppuff webhooks set, and the API (format: "custom").
  • The API: GET, PUT and DELETE /notifications/email and
    POST /notifications/email/test (scopes webhooks:read/write).
  • One D1 migration (15), additive: four columns on webhooks and the
    email_service table. helppuff upgrade applies it.

Changed

  • A new HelpPuff logo: a "p" whose bowl is a speech bubble and whose
    tail ends in a small puff. It is the favicon of the website, the
    playground and the dashboard (where the unread count sits on it, in your
    site's colour), and is in the README. Sources, a one-colour version,
    lockups and icons are in logo/.
  • Dashboard: the logo sits beside your site's name at the top of the
    sidebar and on the sign-in and setup pages. The person at the bottom of
    the sidebar opens a menu: who is signed in and their role, Notifications,
    the theme, help, and Sign out.
  • The website now gives the widget's size as about 35 KB gzipped, loaded
    after the page. It used to say 6 KB (that is only the loader) and that
    the rest loaded only when a visitor opened the chat, but it loads once
    the page is idle.
  • New wiki page, Email notifications: an email for new or hot leads
    through your own email service (Resend, Postmark or any send API), or for
    any event through a webhook and n8n, Make or Zapier.

Fixed

  • Dashboard: Export CSV downloads the file without leaving the page; a
    failed export shows an error instead of replacing the dashboard (the
    website's demo exports its sample contacts too).
  • Dashboard: the New job and appointment dialogs close with Escape, take
    focus when they open and give it back when they close.
  • Dashboard: copy buttons no longer fail silently where the browser refuses
    the clipboard: the text is selected to copy by hand.
  • Dashboard: the two Learn more links in Settings → Bookings opened a
    broken page; they open the wiki.
  • Dashboard: the two-way toggles (like List/Board) no longer submit
    the form they sit in.