Subject: Gosh Julie, you’re a genius…
… and not just for your article on developerWorks! How do you get bold type in your response?
We have 2 servers in our organization:
-
Production server: Domino 8.5 Enterprise server
-
Backup server. Domino 8.5 Utility server.
Sure enough, the Mail file on the Backup server was set to OOS. When I replicated it with the Production server, the OOS was propagated from the Backup to the Production. Switch off OOS on the production server, and the OOS is again propagated from Backup to Production. It doesn’t seem to follow replication logic, it just always propagates from Backup to Production. Why is this done? It could be the settings:
-
Production Server Configuration document has Out-of-Office type: Agent
-
Backup Server Configuration document had Out-of-Office type: Service
This is obviously wrong. We didn’t think to change the type on the Backup server as it isn’t used for email. However, it may be affecting the behaviour of the replicator, so it has now been set to Agent, and I’ll investigate some more tomorrow after the reboot.
We’ve had other problems with OOO being set to service on mail files even after setting the production server. I thought this was due to the profile documents being defaulted to TaskType=“2” in the mail files, so I’ve since set them all to “1” using an agent. Perhaps the users were communicating with the backup server when setting OOO, but this is unlikely as the users have no connection to the Backup server.
To answer your question - why is OOS not suitable for our organization: it is not versatile enough. The options are too restricted, and have even less user functionality than in previous versions; eg cannot cancel notification when an email is sent to specific send-to-groups. The biggest problem with OOO has always been it’s determination to reply to senders who have addressed to a group. We have mail groups that are sent notifications of actions on our website. Somebody books a training course, or downloads a brochure, and an email is generated from that person (their email address is stored on our website) to a group such as Training or Sales. Having downloaded a brochure, they get an out of office notification, and this is confusing. So six years ago we modified the Out of Office agent to ignore emails that had come from the internet but were addressed to a group. It is important that emails addressed to individuals still get through. This served us well until we were scuppered by OOS, and the sales team started jumping up and down about clients receiving OOO messages when all they were doing was using our website. The original modification has been implemented on the version 8 template that is now in use.
I’ve been using some agents to check and set OOS on mail files. I’ve included the agent that resets OOS below. Other agents are: Check individual mail file. Check all mail files (Scheduled). This latter one is 250 lines, plus the TIMEUtilities I nicked from the mail template - very happy to include if you are interested.
Many thanks
Mike
Sub Initialize
Const c_sServer1="Prod/Blueprint"
Const c_sServer2="Backup/Blueprint"
Dim sdbName As String
Dim dbThis As NotesDatabase
Dim docProfile As NotesDocument
Dim dbMail As NotesDatabase
Dim sess As New NotesSession
Dim sString As String
Set dbThis=sess.CurrentDatabase
Set docProfile = dbThis.GetProfileDocument ("OOO")
sDBName = docProfile.GetItemValue ("DbName")(0)
sDBName = Inputbox ( "Enter file name of database:", "DEFAULT in \Mail", sdbName)
If sDBName = "" Then Exit Sub
If Instr (sDBName, "\")=0 Then sDBName = "mail\" & sDBName
Set dbMail = New NotesDatabase ( c_sServer1, sDBName)
If Not dbMail.IsOpen Then
Messagebox "Cannot find database " & sDBName & " on " & dbMail.Server
Exit Sub
End If
docProfile.ReplaceItemValue "DbName", sdbName
docProfile.Save True, False, True
If dbMail.GetOption( DBOPT_OUTOFOFFICEENABLED) Then
sString = "Service disabled on " & sdbName & " on server " & dbMail.Server
Call dbMail.SetOption( DBOPT_OUTOFOFFICEENABLED, False)
Else
sString = "NOT Service!! Result for server: " & dbMail.Server
End If
If c_sServer2="" Then Goto Message
Set dbMail = New NotesDatabase ( c_sServer2, sDBName)
If dbMail.IsOpen Then
If dbMail.GetOption( DBOPT_OUTOFOFFICEENABLED) Then
sString = sString & |
Service disabled on | & sdbName & " on server " & dbMail.Server
Call dbMail.SetOption( DBOPT_OUTOFOFFICEENABLED, False)
End If
End If
Message:
Messagebox sString
End Sub