Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

In this Discussion

osTicket v1.10 (stable) and Maintenance Release v1.9.15 are now available! Go get it now

automate canned response

hi there,
i have a problem again and need the help of the great knowledge of
people here, i want to be able to send out payment reminders using
either canned response or created message.
In summary i want emails to be sent out daily after ticket is overdue,
OS ticket version is 1.10.
I have 3 reminders types and want to send
reminder 1 then 2 then 3 on separate days, would be great if this can
be done easily without creating a custom script or programming.

I look forward to your replies and thanks in advance.

Comments

  • upgraded to v1.10.1

  • no one ?
  • I don't think this can be done in the standard setup, you'd probably have to use a cron job or task scheduler depending on your system.
    We currently have a script that sends reminders to the staff that have overdue tickets on every monday, i imagine something similar could be used to accomplish this.
  • Hi thanks for reply, i did think i would have to use custom method, yes would use similar script but difference would be email address would be different every time.
    Current setup is os ticket 1.10.1 on shared hosting.
    Any advice or help with script ? im sure if we can  get this working will be useful for others.
  • Found another one that you might find useful

    <?php
    @chdir(dirname(__FILE__).'/'); //Change dir.
    require('api.inc.php');

    if (!osTicket::is_cli())
        die(__('cron.php only supports local cron calls - use http -> api/tasks/cron'));

    require_once(INCLUDE_DIR.'class.ticket.php');
    $sql='SELECT ticket_id FROM '.TICKET_TABLE.' T1 '
    .' INNER JOIN '.TICKET_STATUS_TABLE.' status
    ON (status.id=T1.status_id AND status.state="open") '
    .' LEFT JOIN '.SLA_TABLE.' T2 ON (T1.sla_id=T2.id) '
    .' WHERE `est_duedate` BETWEEN now() AND now() + INTERVAL 1 DAY AND `dept_id` IN (3,4)'
    .' ORDER BY T1.created';
    global $cfg;
    if(($res=db_query($sql)) && db_num_rows($res)) {
    while(list($id)=db_fetch_row($res)) {
    if($ticket=Ticket::lookup($id)){
    $cfg->getDefaultEmail()->sendAlert($ticket->getStaff(), 
    "Ticket is about to expire", 
    "Hello " . $ticket->getStaff()->getName() . ",<br /> ticket: <a href='http://domain/scp/tickets.php?id=" . $ticket->getId() . "'>" . $ticket->getSubject() . "</a><br />Will expire within 24 hours.");
    }
    }
    }
    ?>
  • thanks is this script for overdue tickets ?
  • This script is looking at the est_duedate and if the ticket will go overdue in 24 hours it will send an email, so you could change to check for tickets that are already overdue etc by changing the query.
  • please let me know which i need to modify is this cron.php ? can i back up and experiment and restore original while i get it right ?
  • It’s a new file that is called the same way as you call the cron
Sign In or Register to comment.