Sending an email to specific user after checkin

Hi all,
I have a requirement where an email needed to be send to a specific user after a doc checked in into UCM, Here the scenario:
A contributor, while check in a doc, he/she select a name (or maybe multiple name) from a list, whom an email will be send to after the doc checked into UCM.
Is this possible, if so, is it a lot of work or straight forward?
Thanks in advance
d.s.

Hey D.S.
you would need to setup a "onEndServiceRequestActions" filter. This gets executed on successful execution of any service.
1) Get the service name
String serviceName = binder.getLocal("IdcService");
2) Check if its your service
if(serviceName.equalsIgnoreCase("<YOUR_SERVICE_NAME>")){
String emailUsers = binder.getLocal("YOUR META DATA ");
send them emails.
cheers,
sapan

Similar Messages

  • I want to receive all emails a specific user sends and receives

    Hello,
    I am a SysAdmin of a medium-sized company, and for different reasons, I would like to configure/implement what the title says.
    I would like to receive all the emails a specific user sends and receives without him noticing (even the ones he is CC'ed).
    Is this possible? If so, how can I do it?
    Note: we are running Exchange 2010.
    Thanks in advance.

    Note that the CAL requirement is stated clearly in the link I sent:
    Standard journaling   Standard journaling is configured on a mailbox database. It enables the Journaling agent to journal all messages sent to and from mailboxes located on a specific mailbox database. To journal all messages
    to and from all recipients and senders, you must configure journaling on all mailbox databases on all Mailbox servers in the organization.
    Premium journaling   Premium journaling enables the Journaling agent to perform more granular journaling by using journal rules. Instead of journaling all mailboxes residing on a mailbox database, you can configure journal
    rules to match your organization's needs by journaling individual recipients or members of distribution groups.
    You must have an Exchange Enterprise client access license (CAL) to use premium journaling.

  • Email to specific users

    I'd like to send an email to a specific group of users base on events. I know about the NotificationAgent sample program and how it sends email to document owner and modifier. So, I'd like to extend this to be able to send email to specific users based on the event. Do I need to extend DirectoryGroup or ExtendedUserProfile?....

    no, you don't need to extend DirectoryUser or any other iFS ClassObject to accomplish this. you just need to write an agent that works in a similar way to the NotificationAgent. instead of sending an email to the document owner, you can send an email to any user you want. you just have to decide which user to send the email to, based on your business logic.

  • Send e-mail from specific user

    Hello!
    I'd like to create two different sending from SAP System - the first is monthly and the second is everyday.
    May I schedule jobs either send mail from concrete SAP Users?
    Otherwise Everyday job also can send preset messages from monthly job...
    SAP Release: NW 2004
    Thanks and Regards,
    A.M.

    Hello A.M.,
    You cannot schedule the job to send emails from specific users. If the send job is configured to run for INT, for example, it will send all emails with status 672 in SOST.
    One thing you can do is to set waiting time in the emails. To do this, go to SOST, select the emails you want to set a wait time and click on the button "Set Wait Time" (it's a clock icon next to the delete button).
    Regards,
    Tiago

  • Sending an email to the user if the WEBi scheduling failed in CMC

    Hello Everyone,
    Current scenario :
    I am scheduling WEBi report through CMC and the report is going to end user email as an excel attachment.
    Desired Functionality :
    What happens is if the scheduling fails due to some reason. The email does not go to the end user on a particular date and then he complaints.
    What i need here an email sending option that if the WEBi scheduling has been failed in CMC an email should go to the user saying : " The WEBi scheduling has failed. The team is working on it " . (This is just a sample message)
    So the idea is to send an email to the user when the WEBi scheduling fails in the CMC. How to achieve this ?
    Regards,
    Ashutosh Singh

    Hi Ashutosh,
    You can send an alert email to a group when the schedule fails to run by choosing the "A job has failed to run" option under notification.
    You can see this option only if you schedule the report through CMC.
    Regards
    Sunil

  • When I send an email, a photo appears after my name in the sender line. How do I get rid of it?

    When I send an email, a photo appears after my name in the sender line. How do I get rid of it?

    I don't have a signature set up, but did a little research.  Someone posted that these will show up when I send an email to myself, but will not show up when sent to another person.  I sent a test email to a friend to check for sure.

  • How to send one email to multi-users using JavaMail ?

    I am using JavaMail API. I am working in "sending emails to users", I had already tested "one email to one user" and got success but when tried to send one email to multi-users then I failed to do that?
    Can anyone help me to do this?
    I have used the below code to send to multi-user:
    Address[] toAddr = {new InternetAddress(_to),new InternetAddress (to2)};
    msg.addRecipients(Message.RecipientType.TO, toAddr);
    But it is static only 2 users. I want to send to multi-users dynamically taking datas from database.
    I have tried by using below code but it doesn't work.....
    InternetAddress[] emails;
    while (resultset.next()) {
    temp = resultset.getString(1);
    emails.setAddress(temp);
    i++;
    Address[] toAddr = emails;
    msg.addRecipients(Message.RecipientType.TO, toAddr);
    Thank you in advance...
    -ritesh

    I think you're confused about some basic Java programming techniques.
    There are two obvious ways to do this.
    1. Call the addRecipient method in a loop.
    2. Collect all the recipients in a List, convert it to an array, and call addRecipients.

  • How to send an  email to external user (offline form) from se38

    Hi all
    how to send an  email to external user (offline form) from se38 and upload the same from recipent.
        we have sent mail using scripts and smartforms but couldnt do here. It will be helpful if you can give us any sample code
    regards
    mohammed

    Hi,
    Have a look at this thread [Re: Sending PDF forms (created using SFP) as Email Attachment]  i explain all the solution with a sample code .
    Hope it's help you
    regards

  • Abap cod e required  for  send an email with specific template

    hi guru's
    i want to send an email with specific template ,which contain some email links in the body of the email,and some of the font will be in different colour
    i want load the template it in to abap program as it is.is this possible. please let me know.
    where can i maintain the template,

    hello
    check this may help u
    TABLES: ekko.
    PARAMETERS: p_email TYPE somlreci1-receiver
    DEFAULT 'xyzlive.com'.
    TYPES: BEGIN OF t_ekpo,
    ebeln TYPE ekpo-ebeln,
    ebelp TYPE ekpo-ebelp,
    aedat TYPE ekpo-aedat,
    matnr TYPE ekpo-matnr,
    END OF t_ekpo.
    DATA: it_ekpo TYPE STANDARD TABLE OF t_ekpo INITIAL SIZE 0,
    wa_ekpo TYPE t_ekpo.
    TYPES: BEGIN OF t_charekpo,
    ebeln(10) TYPE c,
    ebelp(5) TYPE c,
    aedat(8) TYPE c,
    matnr(18) TYPE c,
    END OF t_charekpo.
    DATA: wa_charekpo TYPE t_charekpo.
    DATA: it_message TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
    WITH HEADER LINE.
    DATA: it_attach TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
    WITH HEADER LINE.
    DATA: t_packing_list LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
    t_contents LIKE solisti1 OCCURS 0 WITH HEADER LINE,
    t_receivers LIKE somlreci1 OCCURS 0 WITH HEADER LINE,
    t_attachment LIKE solisti1 OCCURS 0 WITH HEADER LINE,
    t_object_header LIKE solisti1 OCCURS 0 WITH HEADER LINE,
    w_cnt TYPE i,
    w_sent_all(1) TYPE c,
    w_doc_data LIKE sodocchgi1,
    gd_error TYPE sy-subrc,
    gd_reciever TYPE sy-subrc.
    *START_OF_SELECTION
    START-OF-SELECTION.
    *Retrieve sample data from table ekpo
    PERFORM data_retrieval.
    *Populate table with detaisl to be entered into .xls file
    PERFORM build_xls_data_table.
    *END-OF-SELECTION
    END-OF-SELECTION.
    *Populate message body text
    perform populate_email_message_body.
    *Send file by email as .xls speadsheet
    PERFORM send_file_as_email_attachment
    tables it_message
    it_attach
    using p_email
    'Example .xls documnet attachment'
    'XLS'
    'filename'
    changing gd_error
    gd_reciever.
    *Instructs mail send program for SAPCONNECT to send email(rsconn01)
    PERFORM initiate_mail_execute_program.
    *& Form DATA_RETRIEVAL
    *Retrieve data form EKPO table and populate itab it_ekko
    FORM data_retrieval.
    SELECT ebeln ebelp aedat matnr
    UP TO 10 ROWS
    FROM ekpo
    INTO TABLE it_ekpo.
    ENDFORM. " DATA_RETRIEVAL
    *& Form BUILD_XLS_DATA_TABLE
    Build data table for .xls document
    FORM build_xls_data_table.
    CONSTANTS: con_cret TYPE x VALUE '0D', "OK for non Unicode
    con_tab TYPE x VALUE '09'. "OK for non Unicode
    *If you have Unicode check active in program attributes thnen you will
    *need to declare constants as follows
    *class cl_abap_char_utilities definition load.
    *constants:
    con_tab type c value cl_abap_char_utilities=>HORIZONTAL_TAB,
    con_cret type c value cl_abap_char_utilities=>CR_LF.
    CONCATENATE 'EBELN' 'EBELP' 'AEDAT' 'MATNR'
    INTO it_attach SEPARATED BY con_tab.
    CONCATENATE con_cret it_attach INTO it_attach.
    APPEND it_attach.
    LOOP AT it_ekpo INTO wa_charekpo.
    CONCATENATE wa_charekpo-ebeln wa_charekpo-ebelp
    wa_charekpo-aedat wa_charekpo-matnr
    INTO it_attach SEPARATED BY con_tab.
    CONCATENATE con_cret it_attach INTO it_attach.
    APPEND it_attach.
    ENDLOOP.
    ENDFORM. " BUILD_XLS_DATA_TABLE
    *& Form SEND_FILE_AS_EMAIL_ATTACHMENT
    Send email
    FORM send_file_as_email_attachment tables pit_message
    pit_attach
    using p_email
    p_mtitle
    p_format
    p_filename
    p_attdescription
    p_sender_address
    p_sender_addres_type
    changing p_error
    p_reciever.
    DATA: ld_error TYPE sy-subrc,
    ld_reciever TYPE sy-subrc,
    ld_mtitle LIKE sodocchgi1-obj_descr,
    ld_email LIKE somlreci1-receiver,
    ld_format TYPE so_obj_tp ,
    ld_attdescription TYPE so_obj_nam ,
    ld_attfilename TYPE so_obj_des ,
    ld_sender_address LIKE soextreci1-receiver,
    ld_sender_address_type LIKE soextreci1-adr_typ,
    ld_receiver LIKE sy-subrc.
    ld_email = p_email.
    ld_mtitle = p_mtitle.
    ld_format = p_format.
    ld_attdescription = p_attdescription.
    ld_attfilename = p_filename.
    ld_sender_address = p_sender_address.
    ld_sender_address_type = p_sender_addres_type.
    Fill the document data.
    w_doc_data-doc_size = 1.
    Populate the subject/generic message attributes
    w_doc_data-obj_langu = sy-langu.
    w_doc_data-obj_name = 'SAPRPT'.
    w_doc_data-obj_descr = ld_mtitle .
    w_doc_data-sensitivty = 'F'.
    Fill the document data and get size of attachment
    CLEAR w_doc_data.
    READ TABLE it_attach INDEX w_cnt.
    w_doc_data-doc_size =
    ( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
    w_doc_data-obj_langu = sy-langu.
    w_doc_data-obj_name = 'SAPRPT'.
    w_doc_data-obj_descr = ld_mtitle.
    w_doc_data-sensitivty = 'F'.
    CLEAR t_attachment.
    REFRESH t_attachment.
    t_attachment] = pit_attach[.
    Describe the body of the message
    CLEAR t_packing_list.
    REFRESH t_packing_list.
    t_packing_list-transf_bin = space.
    t_packing_list-head_start = 1.
    t_packing_list-head_num = 0.
    t_packing_list-body_start = 1.
    DESCRIBE TABLE it_message LINES t_packing_list-body_num.
    t_packing_list-doc_type = 'RAW'.
    APPEND t_packing_list.
    Create attachment notification
    t_packing_list-transf_bin = 'X'.
    t_packing_list-head_start = 1.
    t_packing_list-head_num = 1.
    t_packing_list-body_start = 1.
    DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
    t_packing_list-doc_type = ld_format.
    t_packing_list-obj_descr = ld_attdescription.
    t_packing_list-obj_name = ld_attfilename.
    t_packing_list-doc_size = t_packing_list-body_num * 255.
    APPEND t_packing_list.
    Add the recipients email address
    CLEAR t_receivers.
    REFRESH t_receivers.
    t_receivers-receiver = ld_email.
    t_receivers-rec_type = 'U'.
    t_receivers-com_type = 'INT'.
    t_receivers-notif_del = 'X'.
    t_receivers-notif_ndel = 'X'.
    APPEND t_receivers.
    CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
    EXPORTING
    document_data = w_doc_data
    put_in_outbox = 'X'
    sender_address = ld_sender_address
    sender_address_type = ld_sender_address_type
    commit_work = 'X'
    IMPORTING
    sent_to_all = w_sent_all
    TABLES
    packing_list = t_packing_list
    contents_bin = t_attachment
    contents_txt = it_message
    receivers = t_receivers
    EXCEPTIONS
    too_many_receivers = 1
    document_not_sent = 2
    document_type_not_exist = 3
    operation_no_authorization = 4
    parameter_error = 5
    x_error = 6
    enqueue_error = 7
    OTHERS = 8.
    Populate zerror return code
    ld_error = sy-subrc.
    Populate zreceiver return code
    LOOP AT t_receivers.
    ld_receiver = t_receivers-retrn_code.
    ENDLOOP.
    ENDFORM.
    *& Form INITIATE_MAIL_EXECUTE_PROGRAM
    Instructs mail send program for SAPCONNECT to send email.
    FORM initiate_mail_execute_program.
    WAIT UP TO 2 SECONDS.
    SUBMIT rsconn01 WITH mode = 'INT'
    WITH output = 'X'
    AND RETURN.
    ENDFORM. " INITIATE_MAIL_EXECUTE_PROGRAM
    *& Form POPULATE_EMAIL_MESSAGE_BODY
    Populate message body text
    form populate_email_message_body.
    REFRESH it_message.
    it_message = 'Please find attached a list test ekpo records'.
    APPEND it_message.
    endform. " POPULATE_EMAIL_MESSAGE_BODY
    Thank u,
    santhosh

  • Log out a specific user after inactivity, not all users

    I'd like to log out a specific user after a few minutes of inactivity.  Not all users.  Is there a ways to set this on a per user basis?
    I know how to do it system wide.

    Should be possible with this:
    Workgroup Manager 10.8

  • FM to SEND an email to SAP USER

    Hi Gurus,
    Pls let me know the FM if any to send a email to SAP USER (eg. DANYGG) so that it will go to SAP INBOX of the user in T.code So01.
    Promise to reward.
    Regards
    Mac

    hi,
    check with this code, and reward if u find useful..
    Table Declarations
    TABLES: SOLI.
    Data Declarations
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    PARAMETERS: SAPID RADIOBUTTON GROUP ADDR,
    EMAIL_ID RADIOBUTTON GROUP ADDR.
    SELECTION-SCREEN END OF BLOCK B1.
    SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
    SELECT-OPTIONS: ID FOR SOLI-LINE NO INTERVALS.
    SELECT-OPTIONS: CC FOR SOLI-LINE NO INTERVALS.
    SELECT-OPTIONS: BCC FOR SOLI-LINE NO INTERVALS.
    *PARAMETERS: SENDER LIKE SOUD-USRNAM.
    SELECTION-SCREEN END OF BLOCK B2.
    SELECTION-SCREEN BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-009.
    PARAMETERS: SUB_LINE(60) TYPE C.
    SELECTION-SCREEN END OF BLOCK B3.
    SELECTION-SCREEN BEGIN OF BLOCK B4 WITH FRAME TITLE TEXT-008.
    SELECT-OPTIONS: TEXT1 FOR SOLI-LINE NO INTERVALS.
    SELECTION-SCREEN END OF BLOCK B4.
    SELECTION-SCREEN BEGIN OF BLOCK B5 WITH FRAME TITLE TEXT-009.
    SELECTION-SCREEN BEGIN OF LINE.
    parameters: P_ATTACH as checkbox.
    selection-screen comment 3(30) text-010.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK B5.
    DATA: MAIL_CONTENT LIKE SOLI OCCURS 0 WITH HEADER LINE,
    SUBJECT_LINE LIKE SOOD1-OBJDES.
    Start of program processing
    START-OF-SELECTION.
    Get the Body of the Message from the selection screen or from
    calling program
    LOOP AT TEXT1.
    MOVE TEXT1-LOW TO MAIL_CONTENT-LINE.
    APPEND MAIL_CONTENT.
    ENDLOOP.
    Subject of the Message
    MOVE SUB_LINE TO SUBJECT_LINE.
    call a routine to send the workflow message
    PERFORM SEND_EMAIL
    TABLES MAIL_CONTENT
    USING SUBJECT_LINE.
    *& Form SEND_EMAIL
    Send Workflow message
    FORM SEND_EMAIL TABLES OBJCONT STRUCTURE MAIL_CONTENT
    USING TITLE LIKE SOOD-OBJDES.
    DATA: RECEIVERS LIKE SOOS1 OCCURS 0 WITH HEADER LINE,
    TSOOD1 LIKE SOOD1,
    PACKING_LIST LIKE SOXPL OCCURS 0 WITH HEADER LINE,
    OBJCONT1 LIKE MAIL_CONTENT OCCURS 0 WITH HEADER LINE.
    DATA: BEGIN OF AT_HEADER OCCURS 1.
    INCLUDE STRUCTURE SOLI.
    DATA: END OF AT_HEADER.
    CLEAR: TSOOD1,
    RECEIVERS.
    REFRESH RECEIVERS.
    MOVE: SY-LANGU TO TSOOD1-OBJLA,
    'Email Notice' TO TSOOD1-OBJNAM,
    'C' TO TSOOD1-OBJSNS,
    TITLE TO TSOOD1-OBJDES.
    'SCHIAVONIR' TO TSOOD1-OWNNAM.
    loop through each ID and move them to recipient table
    LOOP AT ID.
    TRANSLATE ID-LOW TO UPPER CASE.
    IF SAPID = 'X'.
    MOVE: SY-DATUM TO RECEIVERS-RCDAT,
    SY-UZEIT TO RECEIVERS-RCTIM,
    ' ' TO RECEIVERS-RECESC,
    ID-LOW TO RECEIVERS-RECNAM,
    'X' TO RECEIVERS-SNDEX.
    ELSE.
    MOVE: SY-DATUM TO RECEIVERS-RCDAT,
    SY-UZEIT TO RECEIVERS-RCTIM,
    'U' TO RECEIVERS-RECESC,
    'U-' TO RECEIVERS-RECNAM,
    ID-LOW TO RECEIVERS-RECEXTNAM.
    ENDIF.
    APPEND RECEIVERS.
    CLEAR RECEIVERS.
    ENDLOOP.
    loop through each CC and move them to recipient table
    LOOP AT CC.
    TRANSLATE CC-LOW TO UPPER CASE.
    IF SAPID = 'X'.
    MOVE: SY-DATUM TO RECEIVERS-RCDAT,
    SY-UZEIT TO RECEIVERS-RCTIM,
    ' ' TO RECEIVERS-RECESC,
    CC-LOW TO RECEIVERS-RECNAM,
    'X' TO RECEIVERS-SNDEX,
    'X' TO RECEIVERS-SNDCP.
    ELSE.
    MOVE: SY-DATUM TO RECEIVERS-RCDAT,
    SY-UZEIT TO RECEIVERS-RCTIM,
    'U' TO RECEIVERS-RECESC,
    'U-' TO RECEIVERS-RECNAM,
    CC-LOW TO RECEIVERS-RECEXTNAM,
    'X' TO RECEIVERS-SNDCP.
    ENDIF.
    APPEND RECEIVERS.
    CLEAR RECEIVERS.
    ENDLOOP.
    loop through each BCC and move them to recipient table
    LOOP AT BCC.
    TRANSLATE BCC-LOW TO UPPER CASE.
    IF SAPID = 'X'.
    MOVE: SY-DATUM TO RECEIVERS-RCDAT,
    SY-UZEIT TO RECEIVERS-RCTIM,
    ' ' TO RECEIVERS-RECESC,
    BCC-LOW TO RECEIVERS-RECNAM,
    'X' TO RECEIVERS-SNDEX,
    'X' TO RECEIVERS-SNDBC.
    ELSE.
    MOVE: SY-DATUM TO RECEIVERS-RCDAT,
    SY-UZEIT TO RECEIVERS-RCTIM,
    'U' TO RECEIVERS-RECESC,
    'U-' TO RECEIVERS-RECNAM,
    BCC-LOW TO RECEIVERS-RECEXTNAM,
    'X' TO RECEIVERS-SNDBC.
    ENDIF.
    APPEND RECEIVERS.
    CLEAR RECEIVERS.
    ENDLOOP.
    AT_HEADER = SY-DATUM.
    APPEND AT_HEADER.
    AT_HEADER = SY-UZEIT.
    APPEND AT_HEADER.
    IF SENDER EQ SPACE.
    SENDER = SY-UNAME.
    ENDIF.
    IF P_ATTACH EQ 'X'.
    PACKING_LIST-HEAD_START = 1.
    PACKING_LIST-HEAD_NUM = 2.
    PACKING_LIST-BODY_START = 1.
    PACKING_LIST-BODY_NUM = 9999.
    PACKING_LIST-FILE_EXT = 'TXT'.
    APPEND PACKING_LIST.
    CLEAR PACKING_LIST.
    APPEND LINES OF OBJCONT TO OBJCONT1.
    REFRESH OBJCONT.
    ENDIF.
    CALL FUNCTION 'SO_OBJECT_SEND'
    EXPORTING
    OBJECT_HD_CHANGE = TSOOD1
    OBJECT_TYPE = 'RAW'
    TABLES
    OBJCONT = OBJCONT
    RECEIVERS = RECEIVERS
    ATT_HEAD = AT_HEADER
    ATT_CONT = OBJCONT1
    PACKING_LIST = PACKING_LIST
    EXCEPTIONS
    ACTIVE_USER_NOT_EXIST = 1
    COMMUNICATION_FAILURE = 2
    COMPONENT_NOT_AVAILABLE = 3
    FOLDER_NOT_EXIST = 4
    FOLDER_NO_AUTHORIZATION = 5
    FORWARDER_NOT_EXIST = 6
    NOTE_NOT_EXIST = 7
    OBJECT_NOT_EXIST = 8
    OBJECT_NOT_SENT = 9
    OBJECT_NO_AUTHORIZATION = 10
    OBJECT_TYPE_NOT_EXIST = 11
    OPERATION_NO_AUTHORIZATION = 12
    OWNER_NOT_EXIST = 13
    PARAMETER_ERROR = 14
    SUBSTITUTE_NOT_ACTIVE = 15
    SUBSTITUTE_NOT_DEFINED = 16
    SYSTEM_FAILURE = 17
    TOO_MUCH_RECEIVERS = 18
    USER_NOT_EXIST = 19
    X_ERROR = 20
    OTHERS = 21.
    ENDFORM. " SEND_EMAIL
    regards
    dinesh

  • Send Welcome Email to New User using the Scripting Agent

    Hi
    I require some assistance please.  I have found a number of scripts online to send a Welcome Email to new users whereby they make use of the ScriptingAgent.xml file.
    I like the way the scripts have been configured and have mashed up one or two scripts together for my desired result however when testing in my lab (Exchange 2013) I have found tow problems.
    The problems are:
    1. When creating a new user and mailbox (New-Mailbox) via the ECP the script throws out an error which I will post later in this post. The mailbox is created fine but it does not send out a welcome email.  When a user is created in ADUC and then a mailbox
    is created (Enable-Mailbox) the welcome email is sent out correctly.
    2. In the script i have a section to check for NewUser00 in the HTML file and replace that with the Users Name and Surname, however this does not work correctly, I just come up blank:
    The Script:
    <?xml version="1.0" encoding="utf-8" ?>
    <Configuration version="1.0">
    <Feature Name="WelcomeEmail" Cmdlets="New-Mailbox,Enable-Mailbox">
    <ApiCall Name="OnComplete">
    if($succeeded) {
    # Waiting for synchronization after mailbox has been created.
    Set-ADServerSettings -ViewEntireForest $true
    Start-Sleep -s 10
    # New-Mailbox triggered. Taking SamAccountName parameter.
    if ($provisioningHandler.UserSpecifiedParameters.Contains("SamAccountName") -eq $true) {
    $UsrSamAccountName = $provisioningHandler.UserSpecifiedParameters["SamAccountName"]
    $USRdfirst = $provisioningHandler.UserSpecifiedParameters["FirstName"]
    $USRdlast = $provisioningHandler.UserSpecifiedParameters["LastName"]
    $UsrAlias = (Get-Mailbox -Filter {SamAccountName -eq $UsrSamAccountName}).Alias.ToString()
    $USRdname = $USRdfirst + " " + $USRdlast
    # Enable-Mailbox triggered. Taking Identity parameter, this is the only one avalaible in this case.
    if ($provisioningHandler.UserSpecifiedParameters.Contains("Identity") -eq $true) {
    $UsrIdentity = $provisioningHandler.UserSpecifiedParameters["Identity"].ToString()
    $USRdfirst=$provisioningHandler.UserSpecifiedParameters["FirstName"]
    $USRdlast=$provisioningHandler.UserSpecifiedParameters["LastName"]
    $UsrAlias = (Get-Mailbox -Identity $UsrIdentity).Alias.ToString()
    $USRdname= $USRdfirst + " " + $USRdlast
    # Defining variables.
    $UsrAddr = (Get-Mailbox -Filter {Alias -eq $UsrAlias}).PrimarySmtpAddress.ToString()
    $UsrOU = (Get-Mailbox -Filter {Alias -eq $UsrAlias}).OrganizationalUnit
    # Sending email notification to the user in specific OU.
    if ($UsrOU -match "Contoso.com") {
    # HR #
    $fromHR="[email protected]"
    $SubjectHR="'Welcome to Contoso'"
    $BodyHR = [string] (get-content ("c:\welcome\WelcomeMSG.htm"))
    $BodyHR = $BodyHR -replace "NewUser00",$USRdname
    $fileHR = "c:\welcome\WelcomeMSG.htm"
    $smtp="192.168.x.x"
    Send-MailMessage -From $fromHR -To $UsrAddr -Subject $SubjectHR -Body $BodyHR -BodyAsHtml -Encoding ([System.Text.Encoding]::UTF8) -SmtpServer $Smtp
    # Clearing variables. Each one in its own line in order to prevent error messages from being shown on EMC.
    if ($UsrAlias) { Remove-Variable UsrAlias }
    if ($UsrAddr) { Remove-Variable UsrAddr }
    if ($UsrOU) { Remove-Variable UsrOU }
    if ($UsrMsg) { Remove-Variable UsrMsg }
    if ($UsrIdentity) { Remove-Variable UsrIdentity }
    if ($UsrSamAccountName) { Remove-Variable UsrSamAccountName }
    </ApiCall>
    </Feature>
    </Configuration>
    The Error for issue 1:
    The cmdlet extension agent with the index 5 has thrown an exception in OnComplete().
    The exception is: Microsoft.Exchange.Provisioning.ProvisioningException: ScriptingAgent:
    Exception thrown while invoking scriptlet for OnComplete API: You cannot call a method on a
    null-valued expression.. ---> System.Management.Automation.RuntimeException:
    You cannot call a method on a null-valued expression. at CallSite.Target(Closure , CallSite , Object ) at
    System.Dynamic.UpdateDelegates.UpdateAndExecute1[T0,TRet](CallSite site, T0 arg0) at
    System.Management.Automation.Interpreter.DynamicInstruction`2.Run(InterpretedFrame frame) at
    System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
    --- End of inner exception stack trace --- at Microsoft.Exchange.ProvisioningAgent.ScriptingAgentHandler.OnComplete(Boolean succeeded, Exception e)
    at Microsoft.Exchange.Provisioning.ProvisioningLayer.OnCompleteImpl(Task task, Boolean succeeded, Exception exception)
    Any assistance in resolving these two issues will be really appreciated

    Ok I am gonna to answer my own question.
    I have persevered through the day and have resolved my two issues.  I hope this assist others within the community.
    Script:
    <?xml version="1.0" encoding="utf-8" ?>
    <Configuration version="1.0">
    <Feature Name="WelcomeEmail" Cmdlets="New-Mailbox,Enable-Mailbox">
    <ApiCall Name="OnComplete">
    if($succeeded) {
    # Waiting for synchronization after mailbox has been created.
    Start-Sleep -s 30
    Set-ADServerSettings -ViewEntireForest $true
    # New-Mailbox triggered. Taking SamAccountName parameter.
    if ($provisioningHandler.UserSpecifiedParameters.Contains("Name") -eq $true) {
    $UsrSamAccountName = $provisioningHandler.UserSpecifiedParameters["Name"]
    $Usrname = (Get-Mailbox -identity $UsrSamAccountName | Select Name | foreach { $_.Name})
    $UsrString = $Usrname | Out-String
    $UsrAlias = (Get-Mailbox -Filter {Name -eq $UsrSamAccountName}).Alias.ToString()
    # Enable-Mailbox triggered. Taking Identity parameter, this is the only one avalaible in this case.
    if ($provisioningHandler.UserSpecifiedParameters.Contains("Identity") -eq $true) {
    $UsrIdentity = $provisioningHandler.UserSpecifiedParameters["Identity"].ToString()
    $Usrname = (Get-Mailbox -identity $UsrIdentity | Select Name | foreach { $_.Name})
    $UsrString = $Usrname | Out-String
    $UsrAlias = (Get-Mailbox -Identity $UsrIdentity).Alias.ToString()
    # Defining variables.
    $UsrAddr = (Get-Mailbox -Filter {Alias -eq $UsrAlias}).PrimarySmtpAddress.ToString()
    $UsrOU = (Get-Mailbox -Filter {Alias -eq $UsrAlias}).OrganizationalUnit
    # Sending email notification to the user in specific OU.
    if ($UsrOU -match "contoso.com") {
    # HR #
    $fromHR="[email protected]"
    $SubjectHR="'Welcome to CONTOSO'"
    $BodyHR = [string] (get-content ("c:\welcome\WelcomeMSG.htm"))
    $BodyHR = $BodyHR -replace "NewUser00",$UsrString
    $fileHR = "c:\welcome\WelcomeMSG.htm"
    $smtp="x.x.x.x"
    Send-MailMessage -From $fromHR -To $UsrAddr -Subject $SubjectHR -Body $BodyHR -BodyAsHtml -Encoding ([System.Text.Encoding]::UTF8) -SmtpServer $Smtp
    # Clearing variables. Each one in its own line in order to prevent error messages from being shown on EMC.
    if ($UsrAlias) { Remove-Variable UsrAlias }
    if ($UsrAddr) { Remove-Variable UsrAddr }
    if ($UsrOU) { Remove-Variable UsrOU }
    if ($UsrMsg) { Remove-Variable UsrMsg }
    if ($UsrIdentity) { Remove-Variable UsrIdentity }
    if ($UsrSamAccountName) { Remove-Variable UsrSamAccountName }
    </ApiCall>
    </Feature>
    </Configuration>

  • Send system message to specific users

    Hi,
    We have a requirement to send a system message to specific users that will be displayed immediately to those in the list who are logged on, or for those not currently logged on, the message should be displayed when they next log-in.
    We do not want the message to go to their in-box or to be sent by email. We are looking for something similar to the system message produced by SM02.
    Does anyone have any ideas or examples?
    Thanks
    Jan

    Hi Mylene,
    We have looked at TH_POPUP.
    This works fine if the user is logged in but not if they are not. We need something that will pop up when they do log in.
    Thanks for your help tho
    Jan

  • Send an email to previous approver after rejection in OOB Approval workflow

    Hi all,
    I have created OOB Approval workflow with two approvers.
    If first approver rejects then i want it to send an email to the requester. 
    If second approver rejects then i want it to send an email to the first approver as well as requester?
    Is there any way to acheive this? 
    And same should happened when document is approved
    Also how to identify that the first approver has completed their task? 

    Hi Trupti,
    you can do that using SharePoint designer workflows:
    you can do that by putting the actions in the complete condition so you check who approved it and based on that you do the actions of sending email so it will be if conditions and where to put that in here
    http://bobbyspworld.com/2013/02/08/5-step-to-enhance-sharepoint-2010-approval-workflow/
    https://support.office.com/en-gb/article/Use-the-task-process-editor-for-approval-workflows-8680b4a4-36b1-441c-b070-e515976078aa
    <section class="ocpSection" style="color:#363636;font-family:'Segoe UI', 'Segoe UI Web Regular', 'Segoe UI Symbol', 'Helvetica Neue', 'BBAlpha Sans', 'S60 Sans', Arial, sans-serif;font-size:10.3999996185303px;line-height:normal;">
    Completion conditions for the task process
    When you click the completion conditions, you’re taken to a full-page workflow editor where you can add or change the completion conditions that for the task process. Specifically, these actions
    will run every time an individual task is completed. You can customize the logic here using the workflow commands in SharePoint Designer, like conditions, actions, and else-if statements. You can also add task behavior actions, like the Set Content Approval
    Status and End Task Process.
     Top
    of Page
    </section><section class="ocpSection" style="color:#363636;font-family:'Segoe UI', 'Segoe UI Web Regular', 'Segoe UI Symbol', 'Helvetica Neue', 'BBAlpha Sans', 'S60 Sans', Arial, sans-serif;font-size:10.3999996185303px;line-height:normal;">
    Behavior of a single task
    From the summary page, if you change the behavior of a single task, you’re taken to another full-screen workflow editor where you see the individual task events, such as when it’s assigned, pending,
    expires, and so on. Specifically, there are five events:
    Before a task is assigned: These actions run before every individual task is created.
    When a task is pending: These actions run after every individual task has been created.
    When a task expires: These actions run every time an individual task is incomplete after its due date.
    When a task is deleted: These actions run every time an individual task is deleted before it’s completed.
    When a task completes: These actions run every time an individual task is complete.
    You can add any of the available conditions and actions, and you can add several more task behavior actions this time, like append, delegate, escalate, and reassign. You can even add task notification
    emails and wait for changes in a task process item. The available task behavior actions change depending on the event you’ve selected.
    </section>
    Kind Regards,
    John Naguib
    Technical Consultant/Architect
    MCITP, MCPD, MCTS, MCT, TOGAF 9 Foundation
    Please remember to mark your question as answered if this solves your problem

  • User is getting email delivery failure when processing via SAP as it tries to send an email to a user who have left the company

    Hi Experts,
    I need to remove a name on a group list in Outlook as the user is getting email delivery failure when processing via SAP (He sends the invoice for approval and emails get sent to different users for approval.) One of those users has left the company and so the user gets a email delivery failure error.
    How do I remove this user who is no longer with the company?
    The user is saying: When I approve an invoice in SAP it sends an email notification through outlook. One of those users is no longer with the company so it cannot deliver the notification, and in return send a delivery failure (in outlook). I am approving the invoices from my SAP Workplace inbox.
    How do we know what group the email is going to?
    Please let me know if you have seen this issue before. Greatly appreciate your help.
    Thanks,
    Asad

    Hi,
    Please check whether you are using a custom z program for sending emails of approved invoices to users. If yes then either the user email ids are hardcoded in the program else a ztable is maintained for them.

Maybe you are looking for