FreeScout — Free self-hosted help desk & shared mailbox (Zendesk / Help Scout alternative)

Overview

Free Self-Hosted Zendesk & Help Scout Alternative



PHP version Hits

FreeScout is the super lightweight free open source help desk and shared inbox written in PHP7+ (Laravel framework) – self hosted clone of HelpScout. Now you can enjoy free Zendesk & Help Scout without giving up privacy or locking yourself into a service you don't control. FreeScout has been developed from scratch and is not using any copyrighted Help Scout or Zendesk materials.

FreeScout

Table of Contents

Features

  • No limitations on the number of users, tickets, etc.
  • 100% Mobile-friendly.
  • Multilingual (English, French, Japanese, Italian, Polish, Portuguese, Russian, Dutch, German, Spanish, Swedish).
  • Seamless email integration.
  • Web installer & updater.
  • Starred conversations.
  • Forwarding conversations.
  • Merging conversations.
  • Moving conversations between mailboxes.
  • Phone conversations.
  • Sending new conversations to multiple recipients at once.
  • Push notifications.
  • Following a conversation.
  • Auto reply.
  • Notes.
  • Pasting screenshots from the clipboard into the reply area.
  • Configuring notifications on a per user basis.
  • Open tracking.
  • Editing threads.
  • Search.

Need anything else? Suggest features here.

Demo

Live Demo

Mobile Apps

Mobile apps support the same functionality and modules as the web version of your FreeScout installation. Both support agents and administrators can use mobile apps.

Android App iOS App

Requirements

FreeScout is a pure PHP/MySQL application, so it can be easily deployed even on a shared hosting.

  • Nginx / Apache / IIS
  • PHP 7.1 - 8.x
  • MySQL 5.0+ / MariaDB 5.0+ / PostgreSQL

Installation

Installation Guide

Images & one-click installs:

Modules

Available modules

Tools & Integrations

News & Updates

If you would like to be notified about important news and updates you can subscribe here

Contributing

Screenshots

Dashboard:

Dashboard

Conversation:

Conversation

Mailbox connection settings page:

Mailbox connection settings page

Notifications:

Notifications

Push notification:

Push notification

Web installer:

Web installer

Login page:

Login page

Comments
  • Improve accessibility for the visually impaired

    Improve accessibility for the visually impaired

    I am a completely blind individual using the VoiceOver screen reading program on macOS to navigate around the Internet, including working inside Freescout.

    While the Web app is pretty accessible out of the box, there are many areas of the interface that could use some improvement in terms of how they are read by and made interactible with screen readers.

    What plans do the Freescout team have for improving the accessibility of this app for those who use screen readers and other assistive technologies?

    I am a Web developer experienced in PHP and the Laravel framework (versions 7 and 8 though, not version 5) as well as Web accessibility standards like ARIA. I would be happy to help contribute to this effort, especially since I already know, based on my usage of Freescout as a blind individual, what elements should be made more accessible and how their accessibility can be improved, without sacrificing their functionality or visual appearance. If you would like me to assist in this endeavor please let me know how I can get started.

    Thank you!

    help wanted 
    opened by neosonic2 66
  • Feature Request: JIRA Integration

    Feature Request: JIRA Integration

    Hi guys, Is somebody else using JIRA (cloud) and would like to have a connection to Freescout?

    Right now I can send an email from a Freescout mailbox to the JIRA service desk email which can create an issue. A workflow into the opposite direction is now not possible.

    Potential use cases:

    • Button in a Freescout conversation which lets you directly create an issue in the desired project/service desk.
    • Status from the issue is always updated in the corresponding Freescout conversation and once it‘s resolved the conversation goes into the status „active“ so a mailbox user knows he/she can reply to the customer.
    • If the status of the issue is still open and information is needed by the customer it might be convenient to „automate“ the message flow from JIRA —> Freescout —> customer but always in respect of full conversation history in Freescout.

    Let me know your thoughts.

    Best regards, Max

    PS: I hope it doesn‘t get posted twice as I am traveling between borders.

    opened by maxmueller89 36
  • Darkmode

    Darkmode

    Hi guys,

    I have created a module Darkmode. That only adds a switch to add darkmode class to the body. I add some css to the customization app and when i switch tadaa :-) https://www.dropbox.com/s/mfat3ts2p04i30h/Schermafbeelding%202021-02-24%20om%2021.15.23.png?dl=0

    Are you guys interested in this module and/or my css for this?

    Only little thing is it works with a cookie so on switching just a millisecond it can gives a light theme. A good new feature would be to have that setting in the user profile :-) On, Off, Auto (reacts on machine settings)

    opened by joris85 29
  • Show content from first email in auto reply

    Show content from first email in auto reply

    Hello,

    is it possible to include the first email (that the customer sends to a mailbox) in the automatic reply?

    It is always important to me that I see my request in the automatic e-mail reply I receive from support, so that I know what I have written to support.

    Best regards maisen20

    help wanted 
    opened by maisen20 26
  • Allow CORS in API

    Allow CORS in API

    Hi everybody,

    have bought the API Addon in order to sync Tickets to my ninoxdb database. It allows me to start a request from inside the browser to Freescout API. However I obviously run into cross origin resource sharing problems. So I would like you guys to let me specify in my Freescout API Addon which hosts are allowed to share resources with and which headers.

    opened by kurvenschubser 23
  • Time Tracking Module doesn't stop running unless you manually pause it.

    Time Tracking Module doesn't stop running unless you manually pause it.

    Hi there,

    I've purchased the Time Tracking module, it seems that the timer will run in the background automatically even when a ticket has been replied to and is in 'pending' status. So some tickets show that it's been hours.

    How can I get help resolving this? I'd like to only track time while someone on our team is actively working on the ticket or left that tab open and to stop tracking time when the ticket isn't open.

    Freescout version: 1.5.12

    Screen Shot 2020-09-08 at 04 44 08
    opened by andrewlimaza 23
  • Possibility for HTTP Header Authentication?

    Possibility for HTTP Header Authentication?

    We currently use the LDAP module and it works fine for importing and syncing users - How difficult is it to implement a layer on top of login (say perhaps by a variable set in .env) to allow HTTP Authentication? This would avoid having to have users login to the system and allow for the start of single sign on.

    If a module, I'd gladly pay.

    opened by tiredofit 23
  • Attachment with unknown characters are not showing up

    Attachment with unknown characters are not showing up

    Email attachments(with unknown character/s) are not showing up on the FreeScout.

    image

    Some part within the name of the attachment cannot be encoded properly.

    image

    Tried to load the email file on a different client like Thunderbird, we can see there's an unknown character(Ü) on the name of the file.

    image

    FreeScout 1.8.11 PHP 7.3.31 Nginx 1.20.2 Locale en_US.UTF-8

    help wanted 
    opened by eisennheart 22
  • 1.5.0 Upgrade 404 to Attachments

    1.5.0 Upgrade 404 to Attachments

    Hi,

    after Upgrading to 1.5 all Attachments only give 404 Errors. Directory was moved correctly by the upgrade and the corresponding jpg file is in the Directory structure: /var/www/html/storage/app/attachment

    20200309-085654

    Running Nginx, tried after the upgrade, got 404 Error. Tried to Apply the Changes as mentioned in the changelog;

    APP_DOWNLOAD_ATTACHMENTS_VIA=nginx >> .env

    • part in the vhost.

    Unfortunately still 404.

    Nginx Error Log: 2020/03/09 09:02:25 [error] 112250#112250: *5 open() "/var/www/html/public/storage/attachment/5/7/1/game_Grafik-Vier-von-zehn-Deutschen-kennen-Augmented-Reality.jpg" failed (2: No such file or directory), client: ########, , server: ########, request: "GET /storage/attachment/5/7/1/game_Grafik-Vier-von-zehn-Deutschen-kennen-Augmented-Reality.jpg?id=1842&token=984a1bbcc43ce7935bfab427da8eb060 HTTP/2.0", host: "inbox.planetlan.work", referrer: "https://inbox.planetlan.work/"

    It still tries to read from: /var/www/html/public/storage/attachment where /attachment is not existing.

    screenshot_20200309-090538

    A Quick Workaround to make it read the Attachements via Nginx again is: ln -sd /var/www/html/storage/app/attachment/ /var/www/html/public/storage

    opened by solariz 22
  • Smtp.gmail.com is not available on 465 port. But it's.

    Smtp.gmail.com is not available on 465 port. But it's.

    Hey guys, I'm facing an issue only on 1.6.13 version.

    image

    Please have in mind that I have another installation with 1.5.13 and same credentials that works like a charm.

    I already did the "app less" 2FA instructions and I'm already using a key provided by Google to connect.

    About the sending error logs: Connection could not be established with host smtp.gmail.com [Connection refused #111]; File: /home/casadace/desk.casadaacessibilidade.com.br/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/StreamBuffer.php (269)

    opened by uaimax 21
  • Email not being sent

    Email not being sent

    I am seeing a problem with sending email.

    The logs say: Trying to access array offset on value of type null

    Screenshot 2020-02-05 at 19 28 12

    I really have no idea on where to begin to debug this.

    help wanted 
    opened by tmertz 21
  • Always problems with updating on production server

    Always problems with updating on production server

    Hello,

    unfortunately I have always problems updating to the latest version of freescout. I have now managed the update again, but had to start the update process twice via the WebUI of freescout and failed twice, and the WebUI did not work at all. After that I managed the update via ssh and tools/update.sh command.

    Error logs: [2023-01-03 07:28:25] production.ERROR: The process has been signaled with signal "9". {"exception":"[object] (Symfony\\Component\\Process\\Exception\\RuntimeException(code: 0): The process has been signaled with signal \"9\". at /path/to/support/freescout-dist/overrides/symfony/process/Process.php:434) [stacktrace] #0 /path/to/support/freescout-dist/overrides/symfony/process/Process.php(212): Symfony\\Component\\Process\\Process->wait() #1 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Console/Scheduling/Event.php(201): Symfony\\Component\\Process\\Process->run() #2 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Console/Scheduling/Event.php(176): Illuminate\\Console\\Scheduling\\Event->runCommandInForeground(Object(Illuminate\\Foundation\\Application)) #3 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Console/Scheduling/ScheduleRunCommand.php(59): Illuminate\\Console\\Scheduling\\Event->run(Object(Illuminate\\Foundation\\Application)) #4 [internal function]: Illuminate\\Console\\Scheduling\\ScheduleRunCommand->handle() #5 /path/to/support/freescout-dist/overrides/laravel/framework/src/Illuminate/Container/BoundMethod.php(29): call_user_func_array(Array, Array) #6 /path/to/support/freescout-dist/overrides/laravel/framework/src/Illuminate/Container/BoundMethod.php(87): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}() #7 /path/to/support/freescout-dist/overrides/laravel/framework/src/Illuminate/Container/BoundMethod.php(31): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure)) #8 /path/to/support/freescout-dist/overrides/laravel/framework/src/Illuminate/Container/Container.php(549): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL) #9 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Console/Command.php(183): Illuminate\\Container\\Container->call(Array) #10 /path/to/support/freescout-dist/vendor/symfony/console/Command/Command.php(255): Illuminate\\Console\\Command->execute(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle)) #11 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Console/Command.php(170): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle)) #12 /path/to/support/freescout-dist/vendor/symfony/console/Application.php(992): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #13 /path/to/support/freescout-dist/vendor/symfony/console/Application.php(255): Symfony\\Component\\Console\\Application->doRunCommand(Object(Illuminate\\Console\\Scheduling\\ScheduleRunCommand), Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #14 /path/to/support/freescout-dist/vendor/symfony/console/Application.php(148): Symfony\\Component\\Console\\Application->doRun(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #15 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Console/Application.php(88): Symfony\\Component\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #16 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(121): Illuminate\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #17 /path/to/support/freescout-dist/artisan(62): Illuminate\\Foundation\\Console\\Kernel->handle(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #18 {main} "} [2023-01-03 07:28:25] production.ERROR: The process has been signaled with signal "15". {"exception":"[object] (Symfony\\Component\\Process\\Exception\\RuntimeException(code: 0): The process has been signaled with signal \"15\". at /path/to/support/freescout-dist/overrides/symfony/process/Process.php:434) [stacktrace] #0 /path/to/support/freescout-dist/overrides/symfony/process/Process.php(212): Symfony\\Component\\Process\\Process->wait() #1 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Console/Scheduling/Event.php(201): Symfony\\Component\\Process\\Process->run() #2 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Console/Scheduling/Event.php(176): Illuminate\\Console\\Scheduling\\Event->runCommandInForeground(Object(Illuminate\\Foundation\\Application)) #3 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Console/Scheduling/ScheduleRunCommand.php(59): Illuminate\\Console\\Scheduling\\Event->run(Object(Illuminate\\Foundation\\Application)) #4 [internal function]: Illuminate\\Console\\Scheduling\\ScheduleRunCommand->handle() #5 /path/to/support/freescout-dist/overrides/laravel/framework/src/Illuminate/Container/BoundMethod.php(29): call_user_func_array(Array, Array) #6 /path/to/support/freescout-dist/overrides/laravel/framework/src/Illuminate/Container/BoundMethod.php(87): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}() #7 /path/to/support/freescout-dist/overrides/laravel/framework/src/Illuminate/Container/BoundMethod.php(31): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure)) #8 /path/to/support/freescout-dist/overrides/laravel/framework/src/Illuminate/Container/Container.php(549): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL) #9 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Console/Command.php(183): Illuminate\\Container\\Container->call(Array) #10 /path/to/support/freescout-dist/vendor/symfony/console/Command/Command.php(255): Illuminate\\Console\\Command->execute(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle)) #11 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Console/Command.php(170): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Illuminate\\Console\\OutputStyle)) #12 /path/to/support/freescout-dist/vendor/symfony/console/Application.php(992): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #13 /path/to/support/freescout-dist/vendor/symfony/console/Application.php(255): Symfony\\Component\\Console\\Application->doRunCommand(Object(Illuminate\\Console\\Scheduling\\ScheduleRunCommand), Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #14 /path/to/support/freescout-dist/vendor/symfony/console/Application.php(148): Symfony\\Component\\Console\\Application->doRun(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #15 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Console/Application.php(88): Symfony\\Component\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #16 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(121): Illuminate\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #17 /path/to/support/freescout-dist/artisan(62): Illuminate\\Foundation\\Console\\Kernel->handle(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #18 {main} "} [2023-01-03 07:28:48] production.ERROR: Error: rename(/path/to/support/freescout-dist/vendor,/path/to/support/freescout-dist/storage/app/updater/1.8.45/vendor_tmp) [<a href='https://secure.php.net/manual/en/function.rename.php'>function.rename.php</a>]: No such file or directory; File: /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php (203) [2023-01-03 07:30:28] production.ERROR: Class "Barryvdh\Debugbar\ServiceProvider" not found {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Class \"Barryvdh\\Debugbar\\ServiceProvider\" not found at /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:635) [stacktrace] #0 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(582): Illuminate\\Foundation\\Application->resolveProvider('Barryvdh\\\\Debugb...') #1 /path/to/support/freescout-dist/overrides/laravel/framework/src/Illuminate/Foundation/ProviderRepository.php(89): Illuminate\\Foundation\\Application->register('Barryvdh\\\\Debugb...') #2 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(561): Illuminate\\Foundation\\ProviderRepository->load(Array) #3 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/RegisterProviders.php(17): Illuminate\\Foundation\\Application->registerConfiguredProviders() #4 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(213): Illuminate\\Foundation\\Bootstrap\\RegisterProviders->bootstrap(Object(Illuminate\\Foundation\\Application)) #5 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(296): Illuminate\\Foundation\\Application->bootstrapWith(Array) #6 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(119): Illuminate\\Foundation\\Console\\Kernel->bootstrap() #7 /path/to/support/freescout-dist/artisan(62): Illuminate\\Foundation\\Console\\Kernel->handle(Object(Symfony\\Component\\Console\\Input\\ArgvInput), Object(Symfony\\Component\\Console\\Output\\ConsoleOutput)) #8 {main} "} [2023-01-03 07:30:37] production.ERROR: Error: include(/path/to/support/freescout-dist/vendor/composer/../../overrides/barryvdh/laravel-debugbar/src/Console/ClearCommand.php) [<a href='https://secure.php.net/manual/en/function.include.php'>function.include.php</a>]: Failed to open stream: No such file or directory; File: /path/to/support/freescout-dist/vendor/composer/ClassLoader.php (455) [2023-01-03 07:30:50] production.ERROR: Class "Barryvdh\Debugbar\ServiceProvider" not found {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Class \"Barryvdh\\Debugbar\\ServiceProvider\" not found at /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:635) [stacktrace] #0 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(582): Illuminate\\Foundation\\Application->resolveProvider('Barryvdh\\\\Debugb...') #1 /path/to/support/freescout-dist/overrides/laravel/framework/src/Illuminate/Foundation/ProviderRepository.php(89): Illuminate\\Foundation\\Application->register('Barryvdh\\\\Debugb...') #2 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(561): Illuminate\\Foundation\\ProviderRepository->load(Array) #3 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/RegisterProviders.php(17): Illuminate\\Foundation\\Application->registerConfiguredProviders() #4 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(213): Illuminate\\Foundation\\Bootstrap\\RegisterProviders->bootstrap(Object(Illuminate\\Foundation\\Application)) #5 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(162): Illuminate\\Foundation\\Application->bootstrapWith(Array) #6 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(146): Illuminate\\Foundation\\Http\\Kernel->bootstrap() #7 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(116): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request)) #8 /path/to/support/freescout-dist/public/index.php(83): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request)) #9 {main} "} [2023-01-03 07:30:50] production.ERROR: Call to undefined method TorMorten\Eventy\Facades\Events::action() {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Call to undefined method TorMorten\\Eventy\\Facades\\Events::action() at /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:221) [stacktrace] #0 /path/to/support/freescout-dist/app/Subscription.php(406): Illuminate\\Support\\Facades\\Facade::__callStatic('action', Array) #1 /path/to/support/freescout-dist/app/Http/Middleware/TerminateHandler.php(18): App\\Subscription::processEvents() #2 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(218): App\\Http\\Middleware\\TerminateHandler->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response)) #3 /path/to/support/freescout-dist/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(189): Illuminate\\Foundation\\Http\\Kernel->terminateMiddleware(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response)) #4 /path/to/support/freescout-dist/public/index.php(88): Illuminate\\Foundation\\Http\\Kernel->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\Response)) #5 {main} "}

    opened by maisen20 2
  • Mobile Notifications - Not Receiving Push

    Mobile Notifications - Not Receiving Push

    Recently for the past 1-2 weeks. we have not been receiving any push or browser notifications. I'm not sure what caused it. I tried to uninstall and reinstall the mobile notifications module, but that didn't help.

    I have notifications setup via the twillio module, and that's the only thing that works right now.

    Can someone please help me. Thanks!!

    opened by SecureCPU 1
  • system/status 502 Bad Gateway

    system/status 502 Bad Gateway

    hello, i tried to enter system/status but i got error 502 bad gateway, i checked Manage » Logs » Application logs and i get this error in web-server.log,

    2023/01/02 15:27:13 [error] 928#928: *8262 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: x.x.x.x, server: 10.0.0.214, request: "GET /system/status HTTP/1.1", upstream: "fastcgi://unix:/run/php/php8.0-fpm.sock:", host: "ayuda.xyz.mx", referrer: "https://ayuda.xyz.mx/"

    can you help me or point me the way to go

    regards

    opened by redWaggonCompany 0
  • Emails Not Importing Properly

    Emails Not Importing Properly

    Freescout Version: 1.8.45 Web Server: Caddy v2.6.2 PHP Version: 8.1.13

    When my support inbox receives a new message, Freescout finds it, marks it 'read', and sends a notification via the Telegram module. The Telegram notification it sends uses ID numbers that have already been used, so when I click the ID number, I am taken to a different, older message in Freescout. The email never appears in the Freescout dashboard.

    If I use the "Fetch Emails" tool and select "All", Freescout then pulls the message into the dashboard and resends the Telegram notification with the proper ID number.

    opened by KennyStier 1
  • Wrong response on API create conversation

    Wrong response on API create conversation

    The documentation specifies a HTTP 201 response code with an empty response for the create conversation method on success.

    Screenshot 2022-12-30 at 10 53 33

    However in the application it is sending a 200 response code with some whitespace output.

    opened by fulldecent 8
  • Dark mode will not stay dark

    Dark mode will not stay dark

    Here is a video demonstrating the problem.

    I am using the latest paid version of the dark mode module.

    Please make it so that setting dark mode keeps it on dark mode and does not flash colors.


    out

    opened by fulldecent 2
Releases(1.8.46)
  • 1.8.46(Jan 3, 2023)

    Added

    • Updated Czech translation.

    Fixed

    • Fixed passing null to parameter error in SwiftException.php (#2499)
    • Improved creating tickets from forwarded emails (#2497)

    Changed

    • Added exclude_hidden parameter to Mailbox::usersAssignable() function.
    Source code(tar.gz)
    Source code(zip)
  • 1.8.45(Dec 26, 2022)

    Added

    • Improved searching customers by phone numbers.
    • Added X-Auto-Response-Suppress header to user notification emails to avoid Exchange out-of-office autoreplys (#2488)
    • Added DB_PGSQL_SSLMODE .env variablle allowing to set PostgreSQL SSL Mode(#2485)
    Source code(tar.gz)
    Source code(zip)
  • 1.8.44(Dec 21, 2022)

  • 1.8.43(Dec 20, 2022)

    Added

    • Fetch forwarded by support agent customer's emails as tickets from customers (#290)
    • Added a button to delete all conversations from Spam (#1756)
    • Improved PHP 8.2 compatibility.

    Fixed

    • Fixed saving editor text after editing the code in the editor (#1705)
    Source code(tar.gz)
    Source code(zip)
  • 1.8.42(Dec 19, 2022)

  • 1.8.41(Dec 19, 2022)

    Added

    • Updated Polish translations.

    Fixed

    • Fixed an error when conversation customer is changed and deleted after that (#2467)
    • In SendReplyToCustomer listener do not include messages added after the event has been fired (#2462)

    Changed

    • Added meta column to conversations table.
    Source code(tar.gz)
    Source code(zip)
  • 1.8.40(Dec 15, 2022)

    Added

    • Improved PHP 8.2 compatibility.
    • Clone attachments when cloning conversations (#2465)
    • Updated French translation.

    Fixed

    • Prevent note remembering and restoring after sending a note, clicking Back in the browser and clicking "Add Note" (#1434)
    • Check if an attachment exists on disk when sending a reply to a customer to avoid sending issues.
    • Replace mb_convert_encoding HTML-ENTITIES in FetchEmails (#2461)
    • Make javoscript/laravel-macroable-models compatible with PHP 8.2
    • Fix preg_replace_callback() issue on PHP 8.1 in Helper::linkify() (#2464)
    Source code(tar.gz)
    Source code(zip)
  • 1.8.39(Dec 13, 2022)

    This release begins the process of making FreeScout compatible with PHP 8.2

    Added

    • PHP 8.2 compatibility improvements.

    Fixed

    • Fixed an issue when a customer using FreeScout was sending a message and his/her incoming message could sometimes be connected to the wrong conversation (#2375)
    • Replace soft hyphens with dash in attachments files to avoid sending issues (#2448)
    • Show To dropdown when replying to a conversation with the changed customer (#2455).
    • Fixed site.webmanifest 401 error in the browser console if FreeScout is closed with Basic Authentication.

    Changed

    • Show attachment size in the upper case (KB, MB, GB).
    Source code(tar.gz)
    Source code(zip)
  • 1.8.38(Dec 10, 2022)

  • 1.8.37(Dec 7, 2022)

    Added

    • Added possibility to clone a conversation from a thread dropdown menu.
    • Added ability to sort search results by columns.
    • Added extra auto-reply header to the auto reply detection function (#2445)
    • Allow users delete their notes.

    Fixed

    • Fixed "Call to a member function getFirstName() on null" (#2432)
    • Conversations and customers search made case insensitive on PostgreSQL.
    • Fixed the search when searching in a specific mailbox.
    Source code(tar.gz)
    Source code(zip)
  • 1.8.36(Nov 27, 2022)

    Fixed

    • Fixed PostgreSQL migration on PHP 8.1 (#2401)
    • Fixed "Passing null to parameter" in Translate page (#2398)
    • Fixed PHP 8.1 error on saving mailbox outgoing settings (#2401)
    • Do no show conversations from all mailboxes when the user has no mailboxes assigned (#2409)

    Changed

    • Change "undefined" attachment name to RFC822.eml for Webklex php-imap (#2385)
    • Removed limitation on database connection parameters length on installation (#2418)
    Source code(tar.gz)
    Source code(zip)
  • 1.8.35(Nov 17, 2022)

  • 1.8.34(Nov 16, 2022)

  • 1.8.33(Nov 16, 2022)

    Fixed

    • Show base64-encoded images in conversations (#2355)
    • Remove new lines from Subject when saving outgoing email (#2376)
    • Do not allow to search conversations and customers in mailboxes to which the user have no access (#2370)
    • Do not crop mailbox dropdown menu (#2252)
    • Fixed passing null to parameter to nl2br in FetchEmail.php (#2387)

    Changed

    • Updated Polish translation.
    Source code(tar.gz)
    Source code(zip)
  • 1.8.32(Nov 9, 2022)

    Added

    • Added support for searching for Unassigned conversations (#2368)
    • Allow to prefill the subject via GET parameter when creating a conversation (#2360)

    Fixed

    • Do not allow to search conversations and customers in mailboxes to which the user have no access (#2370)

    Changed

    • Updated French translation (#2366)
    Source code(tar.gz)
    Source code(zip)
  • 1.8.31(Oct 25, 2022)

    Added

    • Set system timezone for new users upon creation (#2312)
    • Added 'View Details' button for failed jobs in Manage > System (#2044)

    Fixed

    • Hide from Assign list users who are hidden in the mailbox settings (#2327)
    • Do not limit line length in chat messages.
    • Fixed passing null parameter to Mail::hasVars() (#2335)
    • Improved email validation (#2338)
    Source code(tar.gz)
    Source code(zip)
  • 1.8.30(Oct 13, 2022)

  • 1.8.29(Sep 29, 2022)

  • 1.8.28(Sep 27, 2022)

    SMS Notifications Module released.

    Added

    • Include email address of original senders when forwarding a conversation (#1236)
    • Allow to forward chat conversations (#2280)
    • Allow to run custom post_update.sh script after executing /tools/update.sh (#2282)

    Fixed

    • Fixed grammar: "...and make the application better" (#2278)

    Changed

    • Rename /tools/pre_upgrade.sh into /tools/pre_update.sh (#2282)
    • Shortened forward_.. meta fields for mailboxes.
    Source code(tar.gz)
    Source code(zip)
  • 1.8.27(Sep 22, 2022)

    Added

    • Add 'alt' attribute to images in the editor (#2265)
    • Add Azerbaijani language to the Translate page (#2269)

    Fixed

    • Fixed an issue with the date and encoding of emails added to IMAP Sent folder (#1892)
    Source code(tar.gz)
    Source code(zip)
  • 1.8.26(Sep 21, 2022)

    Added

    • Allow all users to mute notifications from particular mailboxes.

    Fixed

    • Fixed setting a conversation Preview when a conversation is created outside of web interface (#2254)
    Source code(tar.gz)
    Source code(zip)
  • 1.8.25(Sep 17, 2022)

    Added

    • Allow to set proxy via APP_PROXY variable in .env file (#2242)
    • Added iconv to the list of required extensions (#2236)

    Fixed

    • Fixed unchecking all default subscriptions (#2247)
    • Avoid fatal error when conversation status is zero (#2237)
    Source code(tar.gz)
    Source code(zip)
  • 1.8.24(Sep 14, 2022)

    Embed Images Module has been released.

    Fixed

    • Make conversation history table wider in the customer profile (#2224)
    • Fetch emails by bunches in order to allow fetching of large amounts of emails (#2198)
    • Fixed 'Passing null to parameter' in http-foundation/Response.php (#2223)
    Source code(tar.gz)
    Source code(zip)
  • 1.8.23(Sep 9, 2022)

    Send & Close Module has been released.

    Added

    • Show bell icon in the subject of conversations you are following.
    • Automatically follow a conversation when replying to a conversation assigned to someone else.

    Fixed

    • Preserve column sorting when using conversations navigation (#2191)
    • Fix searching conversations by number.
    • Fix searching convesations in the Merge dialog window.
    Source code(tar.gz)
    Source code(zip)
  • 1.8.22(Sep 3, 2022)

    Added

    • Conversation number now is equal to conversation ID by default. If you want to return to the previous approach, go to Manage > Settings and set Conversation Number option to "Custom" (#2076)
    • Check required PHP functions in the web installer (#2187)
    • Check fpassthru() function in System Status (#597)
    • Added a "Keep Current" option to mailbox Default Assignee and Status After Replying settings.

    Fixed

    • Take into account mailbox's Default Assignee option when user replies to the notification by email (#2153)
    • Set default empty value for preview in Conversation to avoid errors on PostgreSQL.
    • Some changes made for fixes for UI issues for conversation display via x_embed in Kanban (#2141)
    • Fixed locking out on login (#2135)
    • Fixed decoding binary encoded emails (#2186)
    • Show proper error message when trying to forward a conversation without specifying a To address (#2189)

    Changed

    • Updated Danish translation.
    • Updated notifications_table.general.append hook.
    • Changed lockout timeout to 10 minutes on "Too many login attempts" (#2135)
    Source code(tar.gz)
    Source code(zip)
  • 1.8.21(Aug 1, 2022)

    Fixed

    • Fixed fetching emails via POP3 (#2093)
    • Allow to delete mailboxes with unlimited number of conversations (#2089)
    • Allow to delete unlimited number of conversations from Trash.
    • Fixed open tracking pixel for subdirectory installs (#2112)
    • Corrected default customer avatar image URL to work with subdirectory installs (#2121)
    • Fixed modules list if some module's author URL is empty on PHP 8.1 (#2127)
    • Fixed adding 'Re:' to the subject (#2125)

    Changed

    • Do not log in user automatically after resettings the password to improve the security.
    • Updated Spanish translations.
    Source code(tar.gz)
    Source code(zip)
  • 1.8.20(Jul 6, 2022)

    Fixed

    • When emptying trash update starred conversations counter.
    • When deleting conversations forever delete them also from conversation_folder table.
    • Fixed error in isLocaleRtl() if app.locales_rtl is empty (#2072)

    Changed

    • Rename mailboxes.update_after_signature hook into mailbox.update.after_signature
    • Updated apple-touch-icon (#2065)
    • Small optimizations to better style dashboard cards and sidebar folders.
    Source code(tar.gz)
    Source code(zip)
  • 1.8.19(Jun 20, 2022)

  • 1.8.18(Jun 15, 2022)

    Teams Module has been released.

    Added

    • Added basic validation to the customer form (#2034).
    • Show phone type in the customer form (#2034).
    • Allow to call the customer by clicking on customer's phone number in conversation sidebar (#2034).
    Source code(tar.gz)
    Source code(zip)
  • 1.8.17(Jun 7, 2022)

    Auto Login Module released.

    Added

    • Implemented "IMAP Folder To Save Outgoing Replies" option for oAuth IMAP connection (#2018)
    • Added Czech language.
    • Added Korean language.
    • Added APP_KEY_FILE environment variable (#2022)

    Fixed

    • Fixed creating a phone conversation on PHP 8.1 (#2028)
    • Allow acess to /.well-known on Apache.
    Source code(tar.gz)
    Source code(zip)
A Powerful Laravel Help Desk and Lead Management App

Handesk Description Handesk has been created by our need (At Revo Systems www.revo.works) to have a powerful yet simple Ticketing system, we needed a

Jordi Puigdellívol 1.2k Jan 2, 2023
ViMbAdmin project provides a web based virtual mailbox administration system to allow mail administrators to easily manage domains, mailboxes and aliases.

ViMbAdmin project (vim-be-admin) provides a web based virtual mailbox administration system to allow mail administrators to easily manage domains, mailboxes and aliases.

Open Solutions 464 Jan 1, 2023
Self hosted project management and collaboration tool powered by TALL stack

Sponsored By: Self hosted project management and collaboration tool inspired by basecamp. Notice: Project under some major change, do not use until st

iluminar 1.8k Jan 6, 2023
Cloudlog is a self-hosted PHP application that allows you to log your amateur radio contacts anywhere.

Web based amateur radio logging application built using PHP & MySQL supports general station logging tasks from HF to Microwave with supporting applications to support CAT control.

Peter Goodhall 291 Jan 5, 2023
Simple self-hosted bug tracker

Bugken is a simple self-hosted error monitoring tool with laravel based. Json Error Payload { "message" : "get_error_message_from_exception", "log

Nexteam Indonesia 4 Jan 15, 2022
A self hosted download manager for movie and tv show trailers.

Introduction Trailarr is a self hosted download manager for movie and tv show trailers. Features: A beautiful, easy to use UI. Easy setup, readily con

null 13 Dec 19, 2022
An open source self hosted notes and bookmarks taking web app.

Benotes An open source self hosted web app for your notes and bookmarks side by side. This project is currently in Beta. You may encounter bugs or err

null 264 Jan 2, 2023
Self-hosted platform to keep and share your content: web links, posts, passwords and pictures.

Shaark is a self-hosted platform to keep and share your content: web links, posts, passwords and pictures. All of your data can be private, public or

MarceauKa 482 Dec 30, 2022
Self hosted project management application

Version 2 is available at 92fiveapp.com Before proceeding to installation please make sure that your server meets the minimum server requirements: Min

Chintan Banugaria 1.1k Jan 6, 2023
Self-hosted CMS platform based on the Laravel PHP Framework.

October is a Content Management System (CMS) and web platform whose sole purpose is to make your development workflow simple again. It was born out of

October CMS 10.8k Dec 30, 2022
A self-hosted, drag-and-drop, & nosql file conversion server that supports 62x file formats

A self-hosted, drag-and-drop, & nosql file conversion server that supports 62x file formats

Justin Grimes 388 Dec 26, 2022
Mira - A lightweight WebUI alternative to top/htop for GNU/Linux.

Mira Mira lets you monitor your server's resource usage through a responsive WebUI. ======== Introduction Screenshots Installation Limitations Known I

Jams246 9 Mar 27, 2022
A much faster alternative to youtube-dl built for PHP applications.

youtube-downloader This project was inspired by a very popular youtube-dl python package: https://github.com/rg3/youtube-dl Yes, there are multiple ot

null 668 Jan 3, 2023
A full-featured home hosted Cloud Drive, Personal Assistant, App Launcher, File Converter, Streamer, Share Tool & More!

A Fully Featured home-hosted Cloud Storage platform and Personal Assistant that Converts files, OCR's images & documents, Creates archives, Scans for viruses, Protects your server, Keeps itself up-to-date, and Runs your own AppLauncher!

Justin Grimes 178 Dec 26, 2022
ATOS is a locally hosted application that allows you to easily manage clients/projects, generate invoices against backlogs, and estimate taxes.

Built by freelancer ??‍♂️, for freelancer ?? ?? ???? - ATOS is a locally hosted application that allows you to easily manage clients/projects, generate invoices against backlogs, and estimate taxes.

Jon Belelieu 33 Dec 27, 2022
Easily self host your documentation.

Docs for Laravel Generate docs for your projects Support us Like our work? You can support us by purchasing one of our products. Installation WIP, do

Flowframe 6 Oct 31, 2022
Simple Dynamic DNS Web management self-hosting. Run over dnsmasq.

MyDDNS [BETA] Simple Dynamic DNS Web management self-hosting. It use dnsmasq. It was inspired on duckdns.org. Preparation You need root access to a se

Iván Eixarch 4 Jul 6, 2022
Feedback - Website for give opinions after eat in self of school NDLP Avranches.

Self-feedback is an online website software, a PHP web application developed using the Symfony framework (version 5.4.2). He has for objectif to send opinion to a meal with a commentary and a specifics opinions to different criteria. It also aims to be able to retrieve its opinions in various form to analyze them.

Allan BIVILLE 3 Oct 3, 2022