Giter Site home page Giter Site logo

plugin-autocloser's Introduction

osTicket - Ticket Closer Plugin

Automatically closes tickets that haven't been updated in a while.

Preview of Ticket thread after plugin has run

screenshot

Caveats/Assumptions:

  • Assumes osTicket v1.10+ is installed. The API changes a bit between versions.. Open an issue to support older versions.
  • Assumes PHP 5.6+ is being used on the server. (Earlier versions will cause crash when plugin enabled)
  • Assumes you have cron configured! It works from cron calls, so if you don't have it enabled, you will need to tick the "Autocron" option in the settings. Guide to osTicket cron
  • The plugin does not attempt to close tickets with open Tasks (same as core).

Install the plugin

  • Download master zip and extract into /include/plugins/autocloser
  • Install by selecting Add New Plugin from the Admin Panel => Manage => Plugins page, then select Install next to Ticket Closer.
  • Enable the plugin by selecting the checkbox next to Ticket Closer, then select More and choose Enable, then select Yes, Do it!
  • Configure by clicking Ticket Closer link name in the list of installed plugins.

Configure the plugin

Visit the Admin-panel, select Manage => Plugins, choose the Ticket Closer plugin.

  • Check Frequency: Drop down selector for how often you want the plugin to check the tickets? Default is every 2 hours, can be set to run every time cron is run, or once a year.. Open an issue for more options if required.
  • Use Autocron: A checkbox to enable checking via Autocron, (default unchecked). If you don't have a cron config
  • Tickets to process per run per group: How many tickets could we close if we are to close old open tickets? The maximum per run per group basically. If you enter 5, then every "Check Frequency" the plugin will attempt to close up to 5 open tickets that have had no activity for Max open Ticket age, for every enabled group.

Explanation of Setting Groups

Because you have many ticket status's, why wouldn't you want to be able to change from a status to another status multiple times? Well, maybe you do! :-) This has a defined limit of 4 setting groups, however, with minor tweaking (before installing) you can set it as high as you like. If you change it after installing, be warned, it will completely mess up the plugin config. Nothing I can do about that, tryer beware.

To change the number of groups, open the plugin directory, find the file config.php then change the following line near the top:

const NUMBER_OF_SETTINGS = 4;

The only real problem with cranking it up high, is that it will increase the amount of time the admin page takes to load.. also, you have to scroll passed all of them to get to the save button. So, only set it as high as you need.

Each Setting Group:

You can associate a status change with a Canned Reply, (or no reply), giving you control over many status changes automatically.

  • Enable Group: Tick this to enable the settings group, default is only the first group is enabled.
  • Groupname: Name the group something, if you have debugging enabled, it adds this name to the logs, otherwise, it only ever shows this name in the configuration page. Completely optional.
  • Max open Ticket age in days: Specify how many days is too many with no activity for an these tickets, simply enter a number of days, when that has passed, the ticket status will be changed automatically.
  • Only change tickets with an Agent Response: Defaults to checked. (Agent response is a message posted by an agent that the User would have received, if none of these have been posted, and this box is checked, then the tickets will stay in their current status).
  • Only change tickets past expiry date: Defaults to off, however, if you use expiration dates on tickets, and want tickets changed only if they have expired, then this will help, it ignores other settings if a ticket has yet to expire.
  • From Status: Initially set to "Open", because the original plan was to Close tickets by changing status to "Closed", however, if you want to change tickets in another status you've created, you can specify it here.
  • To Status: You can select from the list of available statuses and it will change it to that. kinda pointless changing to "Open", but it's possible. You might prefer "Resolved" if you use that status.
  • Auto-Note: Admin can specify a note to append to the message thread (Note, not Reply/Message), doesn't get emailed to the User. Default is: Auto-closed for being open too long with no updates.
  • Robot Account: Default is "ONLY Send as Ticket's Assigned Agent", if there isn't an assigned agent, an error message will be posted to the thread as a Note (not visible to User). However, the real fun begins when you pick someone to act as the Robot. You can create an agent account with any name/settings you like, even disable it, and then select it from this list to act on your behalf as the ticket-closer. If you don't select someone, it will send and close as if the assigned staff member did it. If a ticket is assigned to a team not an agent, it treats it like nobody is assigned.
  • Auto-Reply Canned Response: Admin can specify a message to append to the message thread which will Reply to the end-user, can include normal Email Template Variables like other CannedResponses or Email Templates (obviously, only those that relate to a ticket work). Additional variables are available (more if you ask nice!) %{lastresponse} or %{firstresponse} even %{wholethread} to inject the entire client visible message thread! If you select an Auto-Reply canned response, you should also specify: "Only close tickets with an Agent Response", and ideally, set "Claim on Response", because otherwise the Reply sent might fail, it assumes there is an Agent to send the Response from, essentially emulates an agent closing a ticket with a Canned Response. Alternatively: You can select a Robot Agent, and configure that to close tickets for you. Simply select the Agent in the admin panel. The canned responses are normal canned responses, configurable by anyone with a role that has permissions to edit the /scp/canned.php page. (Configure via Agents -> Roles -> Select Role -> Permissions -> Knowledgebase)

To reset the config

Simply "Delete" the plugin and install it again, all the configuration will reset from the defaults. Admin panel -> Manage -> Plugins, slect the checkbox next to Ticket Closer then, from the drop-down select "Delete", then "Yes, Do it!" from the popup. It's not actually deleting the plugin, just it's config. Then go through the "Add New Plugin" process again.

To enable extra logging

Open the class.CloserPlugin.php file, find:

    /**
     * Set to TRUE to enable extra logging.
     *
     * @var boolean
     */
    const DEBUG = FALSE;

Change the FALSE into TRUE.

Enjoy!

plugin-autocloser's People

Contributors

cartmega avatar clonemeagain avatar perryk avatar skolarianer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

plugin-autocloser's Issues

Auto delete feature

Your plugin works great on 14.1.2 version.

Can you mind about add new feature - auto delete old tickets?

PHP Fatal error: Uncaught TypeError: Argument 1 passed to CloserPlugin::is_valid_thread_entry() must be an instance of AnnotatedModel, instance of AnnotatedModel___ThreadEntry given,

osTicket Version v1.16.3 (e148727)
Web Server Software | Apache
MySQL Version | 8.0.31
PHP Version | 7.4.33

Getting:

[26-Jan-2023 13:55:19 UTC] Looking for tickets with query: 
SELECT ticket_id 
FROM ost_ticket WHERE lastupdate < DATE_SUB(NOW(), INTERVAL 1 DAY)
AND status_id=6  AND isanswered=1
ORDER BY ticket_id ASC
LIMIT 20
[26-Jan-2023 13:55:19 UTC] CloserPlugin group [1]  has 1 open tickets.
[26-Jan-2023 13:55:19 UTC] PHP Fatal error:  Uncaught TypeError: Argument 1 passed to CloserPlugin::is_valid_thread_entry() must be an instance of AnnotatedModel, instance of AnnotatedModel___ThreadEntry given, called in /home/osticket/public_html/include/plugins/plugin-autocloser-master/class.CloserPlugin.php on line 407 and defined in /home/osticket/public_html/include/plugins/plugin-autocloser-master/class.CloserPlugin.php:475
Stack trace:
#0 /home/osticket/public_html/include/plugins/plugin-autocloser-master/class.CloserPlugin.php(407): CloserPlugin->is_valid_thread_entry(Object(AnnotatedModel___ThreadEntry), false, true)
#1 /home/osticket/public_html/include/plugins/plugin-autocloser-master/class.CloserPlugin.php(348): CloserPlugin->fetch_last_response(Object(Ticket))
#2 /home/osticket/public_html/include/plugins/plugin-autocloser-master/class.CloserPlugin.php(158): CloserPlugin->post_reply(Object(Ticket), Object(TicketStatus), '<p>Buna ziua, %...', NULL)
#3 /home/osticket/public_html/include/plugins/plugin-autocloser-master/class.CloserPlugin.php( in /home/osticket/public_html/include/plugins/plugin-autocloser-master/class.CloserPlugin.php on line 475

Please advice.

Autoresponse

Hello there

I'm getting an error when Autocloser closes a ticket: "Unable to send reply, no assigned Agent on ticket, and no Robot account specified in config."

The robot account and autoresponse is assigned in the config, but until recently we've never had to have an agent assigned to a ticket for the response to be made.

In our set up, the tickets will never be assigned to someone, so how do we make the autoresponse work? Thanks

[question] regular cronjob

hello,

is the plugin working with a regular cronjob provided by OS and if yes, what would for example a daily check look like.

Thanks in advance for your answer,

Af0x

autocloser plugin + osticket 1.17.3 - issue with pulling configs (no emails sent) (hack fix)

So the plugin will not work for anyone who updated. due to the fact that now there is an instance config..

add/change line 81 in class.CloserPlugin.php to this

//hacked to only do one instance.
$config = $this->getConfig($this->getInstance( 1 ));

change the 1 with your instance config . can be found in the database easily. most likely it is 1 though for your case.

took me a long time to figure it out. and that is due to them adding instances to plugins. ...

again this is a hack fix. :) not good for long run or multi instance usage.

Empty configuration

Hi!
The configuration page for the plugin is blank. I can see the following in the logs:

PHP Fatal error: Call to a member function get() on a non-object in /var/www/html/support/include/class.plugin.php on line 15, referer: http://support/scp/plugins.php

osTicket version: 1.10.1
/Anders

Require multiple status for selection in config

Require multiple "From Status" to be allowed for selection so that when any one of the selected status is there in the ticket then the autoclose function should be called.
please guide what can be done!

Problema en la instalacion

Buen día Grizly,

Yo tengo OsTicket v.v1.10.1 (9ae093d)
Apache/2.4.7

Como comentaba, a la hora de la instalación del plugin deja de funcionar OsTicket y recurro a borrar el archivo y luego a eliminarlo en OsTicket.

Esto sucede para la version plugin-autocloser-1.1 pero no sucede en la version plugin-autocloser-1.0


Good morning Grizly,

I have OsTicket v.v1.10.1 (9ae093d)
Apache / 2.4.7

As I was saying, at the time of installing the plugin, OsTicket stops working and I resort to deleting the file and then uninstalling it in OsTicket.

This happens for the plugin-autocloser-1.1 version but it does not happen in the plugin-autocloser-1.0 version

I want to install version 1.1, thanks.

[Feature request] Auto reply

Just like the plugin allows to set an internal note to be attached when a ticket is automatically closed, it would be great if it also allowed the option to automatically respond to the ticket and let the user know it was automatically closed.

Change status to Archived without changing the Closure Date value

Version: osTicket v1.16.2

Hi everyne,

I don't know if it is the right place to post this, but I am new here and I don't know where to post it.

I would like to know if there is a way for me to update this plugin so when the status changes to Archived the Closure Date value doesn't get updated?

I would like to use your plugin to avoid old closed ticket to be reopened. I would like to flag them to "No Reopen" or to change their status to Archived.
The problem is that when the plugin changes the tickets status to Archived, the Closure Date value is updated too.
I need to keep the Closure Date unchanged, because we use it for our statistics.
This "wrong" Closure Date will affect the statistics on our dashboard in which we display the number of closed ticket per month, the rate of SLA respect etc...

Thank you in advance for your answers.
Regards,
Angel

Feature: custom settings by topic

I would like to have an option, that the plugin is closing only tickets that are assigned to a special topic.

I know, that their will be some wishes like that maybe, but how about that idea: to not reinvent the wheel, you could use the filters and users can set per filter settings?

Thank you in advance!

Issue between osticket audit plugin, and autocloser

Hello,

I found an issue where a fatal error is happening between the autocloser plugin and the official osticket audit plugin.

When both plugins are active I receive the following PHP Fatal error, and stack trace.
Server Info: Microsoft Windows Server 2019
osTicket Version v1.14.3
Web Server Software: Microsoft-IIS/10.0
MySQL Version: 8.0.19
PHP Version: 7.3.15

PHP Fatal error: Uncaught Error: Call to a member function getName() on null in phar://C:/inetpub/wwwroot/helpdesk/include/plugins/audit.phar/class.audit.php:746
Stack trace:
#0 C:\inetpub\wwwroot\helpdesk\include\class.signal.php(98): AuditEntry::auditObjectEvent(Object(ConfigItem), Array)
#1 C:\inetpub\wwwroot\helpdesk\include\class.config.php(124): Signal::send('object.edited', Object(ConfigItem), Array)
#2 C:\inetpub\wwwroot\helpdesk\include\class.config.php(81): Config->update('last-run', 1598211725)
#3 C:\inetpub\wwwroot\helpdesk\include\plugins\autocloser\class.CloserPlugin.php(188): Config->set('last-run', 1598211725)
#4 C:\inetpub\wwwroot\helpdesk\include\plugins\autocloser\class.CloserPlugin.php(79): CloserPlugin->is_time_to_run(Object(CloserPluginConfig))
#5 C:\inetpub\wwwroot\helpdesk\include\plugins\autocloser\class.CloserPlugin.php(68): CloserPlugin->logans_run_mode()
#6 C:\inetpub\wwwroot\helpdesk\include\class.signal.php(98): CloserPlugin->{closure}(NULL, Array)
#7 C:\inetpub\wwwroot\helpdesk\include\class.cro in phar://C:/inetpub/wwwroot/helpdesk/include/plugins/audit.phar/class.audit.php on line 746

If there is any further information I can provide please let me know.

Working on release 1.12?

Hi there.

First: thanks for making the auto-close plugin. It's working perfect on our current version.
Then now back to the reason for creating this issue post: I am configuring the newest release, version 1.12, and making sure all plugins are working as intended. Unfortunately I noticed the autoclose plugin does not work 100%.

I have created a rule, saved it, enabled the plugin, OK so far.
The ticket status is changed as expected, a reply is being added to the ticket 'status has been changed because of inactivity', also good. But this message is not being sent as e-mail.

Another issue: we want to inform users with a automated message saying 'it's real busy at this time, it will take longer before you receive a reply' (when, let's say, it's taking over 3 days to receive a initial reply). When I tested this, the 'Robot' account is ignored and the plugin is trying to use the assigned agent name to send the auto reply. But, as there is no one assigned to the ticket yet, a error is shown (failed to send reply, failed to send on behalf of assigned agent).

To ensure it's not a SMTP problem, I tested the regular e-mails aswell and that part is working as intended.

Am I doing something wrong or could the new version cause problems?

We're using the following config:
Linux Debian 9
Apache 2.x
PHP 7.0

1.14.5 compatibility

Hi Guys,

Im new to git hub and couldn't be sure how to ask this but does this mod work for 1.14.5? I read that it hasn't been updated in years so wanted to check.

Thanks

Ross

Admin option to close only overdue and answered

Currently it ignores those stats, which might be desirable, might not, won't take much to add those.

Couple of checkboxs to the admin config page, couple of filters to the Logan's Run function.

[bug] Closing immediately when overdue

I've noticed the tickets seems to be getting closed automatically when overdue and in Waiting-For-Reply status, even if the days established before auto-closing have not passed

Plugin update?

Hey @clonemeagain are you still monitoring this plugin?
It seems like it isn't working with the latest version of osTicket (v1.17.2) and I was wondering if you were planning to share a new version?
Cheers!

DB Error #1062 after osTicket Update

Dear Support Team

Last Week we updated osTicket to the latest Version.
No we have some issues with the Ticket Closer Plug-In.
There are an DB Error #1062.
Ialready deleted the Plug-In and the last-run key in the Database. But it not help. This is the Error we got:

[INSERT INTO ost_config SET key = 'last-run', value = 1666005608, updated = NOW()] Duplicate entry 'last-run' for key 'namespace'

---- Backtrace ----
#0 C:\inetpub\wwwroot\support\Include\mysqli.php(203): osTicket->logDBError('DB Error #1062', '[INSERT INTO o...')
#1 C:\inetpub\wwwroot\support\Include\class.orm.php(3482): db_query('INSERT INTOos...', true, true)
#2 C:\inetpub\wwwroot\support\Include\class.orm.php(658): MySqlExecutor->execute()
#3 C:\inetpub\wwwroot\support\Include\class.config.php(176): VerySimpleModel->save(true)
#4 C:\inetpub\wwwroot\support\Include\class.config.php(109): ConfigItem->save()
#5 C:\inetpub\wwwroot\support\Include\class.config.php(119): Config->create('last-run', 1666005608)
#6 C:\inetpub\wwwroot\support\Include\class.config.php(84): Config->update('last-run', 1666005608)
#7 C:\inetpub\wwwroot\support\Include\plugins\autocloser\class.CloserPlugin.php(188): Config->set('last-run', 1666005608)
#8 C:\inetpub\wwwroot\support\Include\plugins\autocloser\class.CloserPlugin.php(79): CloserPlugin->is_time_to_run(Object(CloserPluginConfig))
#9 C:\inetpub\wwwroot\support\Include\plugins\autocloser\class.CloserPlugin.php(68): CloserPlugin->logans_run_mode()
#10 C:\inetpub\wwwroot\support\Include\class.signal.php(98): CloserPlugin->{closure}(NULL, Array)
#11 C:\inetpub\wwwroot\support\Include\class.cron.php(123): Signal::send('cron', NULL, Array)
#12 C:\inetpub\wwwroot\support\Include\api.cron.php(19): Cron::run()
#13 C:\inetpub\wwwroot\support\Include\api.cron.php(40): CronApiController->run()
#14 C:\inetpub\wwwroot\support\api\cron.php(23): LocalCronApiController::call()
#15 {main}

Version OS Ticket -> 1.17
MySQL Version -> 5.5.65
PHP Version -> 8.1.11

Thank you for your help

Best regards
Michael

osTicket site crash after plugin install

Hi!
After installing the latest version of the plugin my osTicket site went down completely.

Problem seems to be in the config.php:
return array_merge($global_settings, ...$config_groups);

PHP Parse error: syntax error, unexpected '.' in config.php on line 217
Errors parsing config.php

should be:
return array_merge($global_settings, $config_groups);

Now the plugin gets installed and osTicket stays alive.

I will open a new issue regarding the next problem.

osTicket version: 1.10.1
/Anders

Not working

Hi,

I installed the plugin and it is not working.

osticket 1.17.1
Php 8.0
Cron job configured.

multiple notifications sent out after system is recovered from crash

We are using osTicket 1.16.1 and use the autocloser plugin. Whenever our system crashes and boots, if there were any issues that had to be closed during the down time, they will be closed upon system boot. That is acceptable. But we noticed that there are multiple attempts to close the ticket and the corresponding notifications get registered in the ticket view numerous time and also multiple identical email notifications will be sent out all parties, which is irritating. How can we best address this issue? Is this is a bug that that not recognize failed attempts and tries to send a notification per each failed attempt?

1.17 compatibility

Hi,
I just upgraded to the version 1.17 of osTicket. Since then, I am getting DB Error #1062 in osTicket logs every 5 minutes.
The error shows autocloser plugin folder and class.CloserPlugin.php. So I guess it is related to this plugin. I disabled the plugin and I don't get the error log anamore.

Does anyone know what I can do to make it work again?
Thank you in advance.

Our osTicket settings:

osTicket Version | v1.17 (1d8b790) —  Up to date
Web Server Software | Apache/2.4.37 () OpenSSL/1.1.1g Phusion_Passenger/6.0.6
MySQL Version | 5.7.34
PHP Version | 8.0.11

This is the entire log message I am getting:

DB Error #1062
[INSERT INTO hgjv_config SET key = 'last-run', value = 1666085703, updated = NOW()] Duplicate entry 'last-run' for key 'namespace'

---- Backtrace ----
#0 (root)/include/mysqli.php(203): osTicket->logDBError('DB Error #1062', '[INSERT INTO h...')
#1 (root)/include/class.orm.php(3482): db_query('INSERT INTO `hg...', true, true)
#2 (root)/include/class.orm.php(658): MySqlExecutor->execute()
#3 (root)/include/class.config.php(176): VerySimpleModel->save(true)
#4 (root)/include/class.config.php(109): ConfigItem->save()
#5 (root)/include/class.config.php(119): Config->create('last-run', 1666085703)
#6 (root)/include/class.config.php(84): Config->update('last-run', 1666085703)
#7 (root)/include/plugins/autocloser/class.CloserPlugin.php(203): Config->set('last-run', 1666085703)
#8 (root)/include/plugins/autocloser/class.CloserPlugin.php(85): CloserPlugin->is_time_to_run(Object(CloserPluginConfig))
#9 (root)/include/plugins/autocloser/class.CloserPlugin.php(68): CloserPlugin->logans_run_mode()
#10 (root)/include/class.signal.php(98): CloserPlugin->{closure}(NULL, Array)
#11 (root)/include/class.cron.php(123): Signal::send('cron', NULL, Array)
#12 (root)/include/api.cron.php(19): Cron::run()
#13 (root)/include/api.cron.php(40): CronApiController->run()
#14 (root)/api/cron.php(23): LocalCronApiController::call()
#15 {main}

[Feature Request] Language support

We have customers in different countries and it would be great if we could send them different kinds of autoreplies.

The way it would work for ex.: have two/multiple "from status" choices like "waiting for answer (DUTCH)" and waiting for answer (ENGLISH)" and give them different autoreply fields.

Or any alternative that would achieve this would also be great.

Thank you for this plugin BTW :)

Ticket creator not getting email reply for the closure of the ticket

I have configured your plugin Ticket Closer on OsTicket v1.14.1 (f1e9e88), the ticket is been auto closed by the plugin and I can also see the canned reply in the ticket. However, email to the ticket owner is not sent. This is my Ticket Closer setting.

image

This is the update I can see in the ticket by Ticket Closer

image

Specify Day Of The Week/Time

Is there a possibility to make this plugin execute on a specific day of the week at a specific time? I know that you can specify to use a set up cronjob, but is there a possibility to specify a different cronjob?

installed but not working

Hi,
i've just installed and configured the plugin but nothing seems to happen
where i can find the logs?
version of os 1.14.2

thank you

not saving options

Hi,

The plugin is not saving the options Robot Account and Auto-Reply Canned Response.

Everytime i click save both options return to the default state. The plugin is closing the tickets normally but that two options are not working for me.

Environment details:
osTicket Version: v1.10.4 (035fd0a)
PHP 5.6.36
Web Server: Apache

Some idea to fix this?

Regards,
Wilson

Plugin not showing up

Sorry if I'm posting this in the wrong place, but this plugin will NOT show up for me when I go to add it. I put the files, as instructed, in the include/plugins folder in a folder called "autoclose". When I go to manage plugins and click "Add New Plugin" it tells me that any plugins found in the plugins folder folder will show up there. But it simply doesn't show up.

I'm running osTicket version 1.12. Any advice would be appreciated.

Screenshot 2020-11-09 at 3 58 29 PM
Screenshot 2020-11-09 at 3 58 18 PM

[feat] Parse error, syntax error for 1.9 API

i wnat to adapt or test/support the 1.9 api, please can provide me some help ..? what the difference?

i read the README and said that send a issue request.. i can code something.. not expert but i make great efforts when i need

error_log httpd

I am receiving tese lines after isntalling autocloser plugin:

phar:///var/www/html/osTicket/include/plugins/audit.phar/class.audit.php:746
Stack trace:
#0 /var/www/html/osTicket/include/class.signal.php(98): AuditEntry::auditObjectEvent(Object(ConfigItem), Array)
#1 /var/www/html/osTicket/include/class.config.php(124): Signal::send('object.edited', Object(ConfigItem), Array)
#2 /var/www/html/osTicket/include/class.config.php(81): Config->update('last-run', 1592598242)
#3 /var/www/html/osTicket/include/plugins/plugin-autocloser-1.1/class.CloserPlugin.php(188): Config->set('last-run', 1592598242)
#4 /var/www/html/osTicket/include/plugins/plugin-autocloser-1.1/class.CloserPlugin.php(79): CloserPlugin->is_time_to_run(Object(CloserPluginConfig))
#5 /var/www/html/osTicket/include/plugins/plugin-autocloser-1.1/class.CloserPlugin.php(68): CloserPlugin->logans_run_mode()
#6 /var/www/html/osTicket/include/class.signal.php(98): CloserPlugin->{closure}(NULL, Array)
#7 /var/www/html/osTicket/include/class.cron.php(122): in phar:///var/www/html/osTicket/include/plugins/audit.phar/class.audit.php on line 746

Autoclose is not using its account to close the tickets.

I have installed the plugin in my osTicket system, v 1.18, and it works as intended, except for one feature. I created an account for the plugin and assigned it in the configuration. I have configured the plugin to close the ticket without sending an email to the user. When it closes the tickets, it says that the assigned person closed the tickets, not the bot account. From what I read, it should close with the selected account, and if there is no account, it should use the one assigned to the ticket instead.

I don't understand if this is a bug or if it was intended. Can you help me find a solution?
Screenshot 2024-05-13 111835

Robot per Setting Group

Forum user bankcircle would like a Robot assigned to each group.

I can't see a problem with that per-se, however it will require some changes to the code.

  • Modify admin configuration
  • Update README
  • Change post-reply to a group-based function.

Compatibility with OST 1.16.3

We would like to use this plugin, but it seems it is not working with 1.16.3 on PHP8.0. Are there any recommendations how to get it working, is the creator planning an update of this plugin?

With osticket v1.15

Hi, I use plugin with v1.15 but not work.
I set status Resoveld to Closed
Screenshot from 2021-09-23 10-53-17

Add overdue the list of "From Status"

Hi,

Please add overdue to the list of "From Status" and if necessary to "To Status".

Also, please add support for v 1.14.1

thanks a ton for your great efforts, I wish I knew PHP to help you further.

thanks

DB Error #1062 in System Logs osTicket (v1.17.3)

When the plugin is active, it generates a "Duplicate entry" error in the osTicket system logs every time it runs (every cron which i have setup to run every 2 min).

The error message is as follows:

DB Error #1062
[INSERT INTO ost_config SET key = 'last-run', value = 1684269962, updated = NOW()] Duplicate entry 'last-run' for key 'ost_config.namespace'

---- Backtrace ----
#0 (root)/include/mysqli.php(211): osTicket->logDBError()
#1 (root)/include/class.orm.php(3482): db_query()
#2 (root)/include/class.orm.php(658): MySqlExecutor->execute()
#3 (root)/include/class.config.php(181): VerySimpleModel->save()
#4 (root)/include/class.config.php(114): ConfigItem->save()
#5 (root)/include/class.config.php(124): Config->create()
#6 (root)/include/class.config.php(89): Config->update()
#7 (root)/include/plugins/plugin-autocloser-master/class.CloserPlugin.php(188): Config->set()
#8 (root)/include/plugins/plugin-autocloser-master/class.CloserPlugin.php(79): CloserPlugin->is_time_to_run()
#9 (root)/include/plugins/plugin-autocloser-master/class.CloserPlugin.php(68): CloserPlugin->logans_run_mode()
#10 (root)/include/class.signal.php(98): CloserPlugin->{closure}()
#11 (root)/include/class.cron.php(122): Signal::send()
#12 (root)/include/api.cron.php(15): Cron::run()
#13 (root)/include/api.cron.php(45): CronApiController->run()
#14 (root)/api/cron.php(23): LocalCronApiController::call()
#15 {main}

I've tried modifying the plugin code to update the last-run key instead of inserting a new entry, but the error still persists.

The issue seems to be related to the last-run key in the ost_config table. Clearing the entry in the database temporarily resolves the issue, but the error reappears after the plugin runs again.

Any guidance on modifying the plugin code or other suggestions would be greatly appreciated.

image

Error when editing plugin settings

Hi,
While opening plugin settings, the "Auto-Reply Canned Response" field always come with no-reply option set, no matter what you select.

Best regards,

Adriano

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.