Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Requirements

  • many-to-one assignment (one assignment group can have many email addresses)
  • should not have to edit code to add/update/delete queue mail aliases
  • should ignore Cc: address list

Proposal

  • create a related table under Assignment Groups for Mail Aliases
  • modify the Create Incident inbound action script to use the new table to match To: address to Assignment Group

Steps

  • create/populate table 'u_group_mail_aliases':
    • u_email (string)
    • u_group (reference to sys_user_group)
  • update the Create Incident inbound action with something like this:
    // bw -- expose headers and text in description (just for PoC)
    // current.description = email.headers + email.body_text;
    
    // bw -- find assigment group by doing a lookup in u_group_mail_aliases
    // loop through email.direct 
    var addresses = email.direct.split(",");
    for (var i=0; i < addresses.length; i++) {
        var alias = new GlideRecord('u_group_mail_aliases');
        alias.addQuery('u_email', '=', addresses[i]);
        alias.query();
        if (alias.getRowCount() > 0) {
            break;
        }
    }
    // if there was an alias match, use it to assign group
    if (alias.getRowCount() > 0) {
    // first match wins!
        alias.next();
        current.assignment_group = alias.u_group;
    }
    

...the table can be permissioned as appropriate (probably fine to restrict it to admin). Might be nice to restrict the u_email field to be unique, but that's just icing since it's enforceable manually by any reasonable admin.

== Configuring ==

The mail alias binding to groups happens at the Group level in Adminstration controls. Click a group, and then bottom of the dialogue page contains a tab called "Group Email Alias".

To configure a new alias, we need to open a ticket to YSS Client Accounts and make a request to bounce the mail to servicenow@yale.edu

  • No labels