Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Attendee availability online

8 views
Skip to first unread message

Dan Williams

unread,
Jul 16, 2003, 11:27:09 AM7/16/03
to
Can anyone tell me how to go about creating my own custom ASP page that can
show several different peoples availability from their Outlook/Exchange 2000
calendars?

I don't want to have to ask users to setup permissions for their respective
calendars, i just want to be able to see if they're busy or not.

Many thanks

Dan Williams.


Ray at <%=sLocation%>

unread,
Jul 16, 2003, 12:08:58 PM7/16/03
to
People don't need special permissions to see if others are free or not. You
can use OWA, start an appointment item, select your requested attendees, and
then view the availability of each recipient without actually sending the
appointment.

Ray at work

"Dan Williams" <dan_wi...@newcross-nursing.com> wrote in message
news:bf3qsc$sub$1...@hercules.btinternet.com...

Dan Williams

unread,
Jul 16, 2003, 12:17:34 PM7/16/03
to
Sorry, i should have mentioned that i wanted an alternative to OWA.

I'd like to be able to use some form of CDO or ActiveX component to create
my own
ASP pages.

Dan

"Ray at <%=sLocation%>" <a...@me.forit> wrote in message
news:u6UURS7S...@TK2MSFTNGP12.phx.gbl...

Ray at <%=sLocation%>

unread,
Jul 16, 2003, 12:24:15 PM7/16/03
to
If you insist on reinventing the wheel, http://www.cdolive.com/ should help.

Ray at work

"Dan Williams" <dan_wi...@newcross-nursing.com> wrote in message

news:bf3tqu$3r6$1...@hercules.btinternet.com...

Robert Cohen

unread,
Jul 16, 2003, 12:50:13 PM7/16/03
to
and did I forget, I don't want to do any script that has the letters "c" or
"d" in it. :-) Sorry, just being silly.

btw, Ray, why didn't you send one of your appropriate asp.faq links? I
thought this huge cross post would have warranted one of your appropriate
links.

--
Sorry, I am no longer including my e-mail address as I am getting to much
spam. I really have no desire to enlarge "it" by three inches, that is even
if I get e-mailed 10 times a day from different e-mail addresses so I can't
block it.
Besides I finally came to believe what others have said, if you have a
question, you should ask the group as others might benefit from it. Anyone
on the group who I converse with off topic or on the side, can easily find
my e-mail address.


"Ray at <%=sLocation%>" <a...@me.forit> wrote in message

news:eNf9za7S...@TK2MSFTNGP11.phx.gbl...

Ray at <%=sLocation%>

unread,
Jul 16, 2003, 12:58:24 PM7/16/03
to
Heh heh. I thought about it, but then I was like, "well, it does have to do
with asp, vbscript (perhaps), exchange clients, and exchange applications."
Exchange admin is another story though. And I was afraid Aaron would yell
at me for posting his links in Exchange groups. :P

Ray at work

"Robert Cohen" <jerry...@gratefuldead.com> wrote in message
news:OcN$vp7SDH...@TK2MSFTNGP11.phx.gbl...

Dan Williams

unread,
Jul 17, 2003, 5:53:27 AM7/17/03
to
You people need to get out more

Dan


"Ray at <%=sLocation%>" <a...@me.forit> wrote in message

news:uk6h5t7S...@TK2MSFTNGP10.phx.gbl...

Ray at <%=sLocation%>

unread,
Jul 17, 2003, 8:43:08 AM7/17/03
to
Now there's a good way to encourage people to help you in the future.

echo Dan Williams>>vendetta.log

Ray at work

"Dan Williams" <dan_wi...@newcross-nursing.com> wrote in message

news:bf5rmn$81f$1...@titan.btinternet.com...

Robert Cohen

unread,
Jul 17, 2003, 9:09:50 AM7/17/03
to
echo Ray>>he cracks me up.log

I actually had to clean soda off my monitor because I read that while
drinking some soda.

but yeah, talk about bitting the hand that feeds you. Dan should have
learned from William Shatner.

But the funny thing is I didn't know you could do that with a bat file like
that. So I learn things in the wierdest ways.

--
Sorry, I am no longer including my e-mail address as I am getting to much
spam. I really have no desire to enlarge "it" by three inches, that is even
if I get e-mailed 10 times a day from different e-mail addresses so I can't
block it.
Besides I finally came to believe what others have said, if you have a
question, you should ask the group as others might benefit from it. Anyone
on the group who I converse with off topic or on the side, can easily find
my e-mail address.

"Ray at <%=sLocation%>" <a...@me.forit> wrote in message

news:#NP16DGT...@TK2MSFTNGP12.phx.gbl...

Ray at <%=sLocation%>

unread,
Jul 17, 2003, 11:57:13 AM7/17/03
to
heh heh. cmd.exe rules. I find myself reverting back to that instead of
using the FSO quite often. I mean, what's easier? A or B?

A:
Dim objFSO, objDir, objFiles
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objDir = objFSO.GetFolder("D:\Path")
Set objFiles = objDir.Files
For Each f in objFiles
sOutput = sOutput & f.Name & vbCrLf
Next
Set objDir = Nothing
Set objFiles = Nothing


Set oOutputFile = objFSO.CreateTextFile("D:\Path\file.txt", True)
oOutputFile.Write sOutput
oOutputFile.Close
Set oOutputFile = Nothing
Set objFSO = Nothing


B:
dir D:\Path /B /A:-D>D:\PathFile.txt


Ray at work cross posting off topic posts and will now stop.


"Robert Cohen" <jerry...@gratefuldead.com> wrote in message

news:OM6CRTGT...@TK2MSFTNGP11.phx.gbl...

Curt_C [MVP]

unread,
Jul 17, 2003, 6:23:18 PM7/17/03
to
I'll second ya....
.BAT files too, DOS commands still are quick and easy. I'm amazed at the
looks on the "younger" developers when you drop to DOS to do a quick command
and they look like they've never seen a command prompt before.....
scarry.....

--
----------------------------------------------------------
Curt Christianson (Software_AT_Darkfalz.Com)
Owner/Lead Designer, DF-Software
http://www.Darkfalz.com
---------------------------------------------------------
..Offering free scripts & code snippits for everyone...
---------------------------------------------------------

"Ray at <%=sLocation%>" <a...@me.forit> wrote in message

news:u9i7XwHT...@TK2MSFTNGP11.phx.gbl...

Ray at <%=sLocation%>

unread,
Jul 18, 2003, 8:38:59 AM7/18/03
to
Or when you use the term UHF or VHF when describing a television channel.
:P

Ray at work

"Curt_C [MVP]" <Software_AT_Darkfalz.com> wrote in message
news:%23l2NsEL...@TK2MSFTNGP12.phx.gbl...

Robert Cohen

unread,
Jul 18, 2003, 11:09:23 AM7/18/03
to
or say rabbit ears or beta tapes or 8 track tapes. I still say go to the
DOS prompt and people say "What is a DOS prompt?" and realize I should be
saying "command prompt".

--
Sorry, I am no longer including my e-mail address as I am getting to much
spam. I really have no desire to enlarge "it" by three inches, that is even
if I get e-mailed 10 times a day from different e-mail addresses so I can't
block it.
Besides I finally came to believe what others have said, if you have a
question, you should ask the group as others might benefit from it. Anyone
on the group who I converse with off topic or on the side, can easily find
my e-mail address.

"Ray at <%=sLocation%>" <a...@me.forit> wrote in message

news:#BMNRmST...@TK2MSFTNGP10.phx.gbl...

Dan Williams

unread,
Jul 23, 2003, 6:49:59 AM7/23/03
to
Without the help of you two (cheers for your time anyway, i was only using a
bit of English sarcasm!!), i've managed to create my own custom ASP page
that will show the attendee availability of other users.

The codes as follows (if your at all interested!):-

Copy and paste it to a freebusy.asp file, then edit the strServer,
strMailbox and strDistListName variables to your own values.

<%@ LANGUAGE="VBSCRIPT" %>
<%
Option Explicit
Response.Expires = 0
%>
<!--#include file="adovbs.inc"-->
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual InterDev 1.0">
<META HTTP-EQUIV="Content-Type" content="text/html;charset=iso-8859-1">
<TITLE>Marketing Staff availability</TITLE>
</HEAD>
<BODY>
<%

Const CdoAddressListGAL = 0
Const CdoUser = 0
Const CdoDistList = 1
Const blnDisplayOnlyOutOfOffice = FALSE

Dim objSession, objAddressList, objAddressEntries, objAddressEntry,
objMembers, objMember
Dim dteStartDate, dteEndDate, strDistListName, strServer, strMailbox,
strProfileInfo, strFreeBusyInfo
Dim intCounter, intTimeCounter

If Request.ServerVariables("LOGON_USER") = "" Then
Response.Status = "401 Access Denied"
End If

On Error Resume Next

strServer = "EXCHANGESERVER" <-- insert your Exchange Mail server name here.
strMailbox = "EXCHANGEMAILBOX" <-- insert your mailbox name here
strDistListName = "DISTRIBUTIONLIST" <-- insert your own ActiveDirectory
distribution group here.

dteStartDate = Request.Form("date")
if dteStartDate = "" then dteStartDate = Date()

SELECT CASE Request.Form("Submit")
CASE "Previous" dteStartDate = DateAdd("d",-1,dteStartDate)
CASE "Next" dteStartDate = DateAdd("d",1,dteStartDate)
END SELECT

dteEndDate = DateAdd("d",1,dteStartDate)
strProfileInfo = strServer & vbLF & strMailbox

set objSession = Server.CreateObject("MAPI.Session")
objSession.Logon "", "", False, True, 0, True, strProfileInfo
%>
<form name="form1" action="freebusy.asp" method="POST">
<TABLE width="100%">
<tr>
<td width="20%"><INPUT size="8" value="<%=dteStartDate%>" name="date">
&nbsp<input type="submit" name="Submit" value="Submit"></td>
<td width="60%" align=center><H3><font color='#000000' face='Arial,
Helvetica, sans-serif'>Marketing Staff availability</font></h3></td>
<td><input type="submit" name="Submit" value="Previous">&nbsp<input
type="submit" name="Submit" value="Next"></td>
</tr>
</table>
</form>
<%

set objAddressList = objSession.GetAddressList(CdoAddressListGAL)
set objAddressEntries = objAddressList.AddressEntries
set objAddressEntry = objAddressEntries.Item(strDistListName)

if objAddressEntry.DisplayType = CdoDistList then
set objMembers = objAddressEntry.Members
Response.Write("<table align=center cellpadding='0' cellspacing='0'
cols='2' width='80%' bordercolor='#ffffff' " _
& "border='1' bordorcolorlight='#ffffff' bordorcolordark='#ffffff'
bgcolor='#ffff99'>")
Response.Write("<tr valign='top'>")
Response.Write("<th align='left' width='20%' valign='top'
bgcolor='#f28a8a'><font color='#000000' face='Arial, " _
& "Helvetica, sans-serif'>Name</font></th>")
Response.Write("<th align='left' width='80%' valign='top'
bgcolor='#f28a8a'><font color='#000000' face='Arial, " _
& "Helvetica, sans-serif'>&nbsp;" & formatdatetime(dteStartDate, 1) &
"</font></th>")
Response.Write("<tr valign='top'>")
Response.Write("<td>&nbsp</td>")
Response.Write("<td rowspan='" & objMembers.Count + 1 & "'>")
Response.Write("<table border='1' cellpadding='0' cellspacing='0'
width='100%' bordercolor='#ffffff' " _
& "bordercolordark='#ffffff' bordercolorlight='#ffffff'>")
Response.Write("<tr>")

For intCounter = 0 to 23
Response.Write("<td width='200' colspan='2'>" & intCounter & ":00</td>")
next

for each objMember in objMembers
if objMember.DisplayType = CdoUser then
strFreeBusyInfo = objMember.GetFreeBusy(dteStartDate, dteEndDate, 30)
if err.number <> 0 then
strFreeBusyInfo = String(48, "9")
err.clear
end if

if blnDisplayOnlyOutOfOffice then
Response.Write("<TR>")
for intCounter = 1 to 48
Select case mid(strFreeBusyInfo, intCounter, 1)
Case "0"
Response.Write("<td width='100' bgcolor='#000000'>&nbsp</td>")
Case "1"
Response.Write("<td width='100' bgcolor='#000000'>&nbsp</td>")
Case "2"
Response.Write("<td width='100' bgcolor='#000000'>&nbsp</td>")
Case "3"
Response.Write("<td width='100' bgcolor=purple>&nbsp</td>")
Case "9"
Response.Write("<td width='100' bgcolor='#000000'>&nbsp</td>")
end select
next
else
Response.Write("<TR>")
for intCounter = 1 to 48
Select case mid(strFreeBusyInfo, intCounter, 1)
Case "0"
Response.Write("<td width='100' bgcolor='#c0c0c0'>&nbsp</td>")
Case "1"
Response.Write("<td width='100' bgcolor=lightblue>&nbsp</td>")
Case "2"
Response.Write("<td width='100' bgcolor=blue>&nbsp</td>")
Case "3"
Response.Write("<td width='100' bgcolor=purple>&nbsp</td>")
Case "9"
Response.Write("<td width='100' bgcolor='#000000'>&nbsp</td>")
end select
next
end if
end if
next

Response.Write("</tr>")
Response.Write("</table>")
Response.Write("</tr>")

for each objMember in objMembers
if objMember.DisplayType = CdoUser then
Response.Write("<tr valign='top'>")
Response.Write("<td nowrap>&nbsp;" & objMember.Name & "&nbsp</td>")
Response.Write("</tr>")
end if
next

Response.Write("<td align='left' width='20%' valign='top'
bgcolor='#f28a8a'><font color='#000000' face='Arial, " _
& "Helvetica, sans-serif'>&nbsp</font></td>")
Response.Write("<td align='left' width='80%' valign='top'
bgcolor='#f28a8a'><font color='#000000' face='Arial, " _
& "Helvetica, sans-serif'>&nbsp</font></td>")
Response.Write("</table>")

Response.Write("<br>")

Response.Write("<center><table align=center cellpadding='0' cellspacing='0'
cols='2' width='80%' bordercolor='#ffffff' " _
& "border='1' bordorcolorlight='#ffffff' bordorcolordark='#ffffff'>")
Response.Write("<tr valign='top'>")

Response.Write("<td width='2%' bgcolor=lightblue>&nbsp</td>")
Response.Write("<td align='left' width='18%' valign='top'><font
color='#000000' face='Arial, Helvetica, sans-serif'>" _
& "&nbsp;Tentative</font></th>")

Response.Write("<td width='2%' bgcolor='#c0c0c0'>&nbsp</td>")
Response.Write("<td align='left' width='18%' valign='top'><font
color='#000000' face='Arial, Helvetica, sans-serif'>" _
& "&nbsp;Free</font></th>")

Response.Write("<td width='2%' bgcolor=blue>&nbsp</td>")
Response.Write("<td align='left' width='18%' valign='top'><font
color='#000000' face='Arial, Helvetica, sans-serif'>" _
& "&nbsp;Busy</font></th>")

Response.Write("<td width='2%' bgcolor=purple>&nbsp</td>")
Response.Write("<td align='left' width='18%' valign='top'><font
color='#000000' face='Arial, Helvetica, sans-serif'>" _
& "&nbsp;Out of Office</font></th>")

Response.Write("<td width='2%' bgcolor='#000000'>&nbsp</td>")
Response.Write("<td align='left' width='18%' valign='top'><font
color='#000000' face='Arial, Helvetica, sans-serif'>" _
& "&nbsp;No Information</font></th>")

Response.Write("</tr>")
Response.Write("</table></center>")
end if

%>
<BR>
<table border='0' cellspacing='10' height='12' width='100%'>
<tr>
<td height='5' width='295'><font color='#000000' face='Arial, Helvetica,
sans-serif'>Last updated <%=Now%></td>
<td align=right><input type='button' name='Close' value='Close'
onClick="window.close()"></td>
</tr>
</table>

<%
objSession.Logoff
set objSession = nothing
set objAddressList = nothing
set objAddressEntries = nothing
set objMembers = nothing
set objMember = nothing

%>

</BODY>
</HTML>


"Dan Williams" <dan_wi...@newcross-nursing.com> wrote in message

news:bf3qsc$sub$1...@hercules.btinternet.com...

Dan White

unread,
Jul 23, 2003, 10:03:09 AM7/23/03
to
What to you have in the adovbs.inc file?

Dan


"Dan Williams" <dan_wi...@newcross-nursing.com> wrote in message

news:bflp8n$5uo$1...@sparta.btinternet.com...

Dan Williams

unread,
Jul 24, 2003, 4:25:38 AM7/24/03
to
Just the standard ADO constants variables.

You'll most likely already have a copy of it in your 'C:\Program
Files\Common Files\System\ado' directory, assuming you're a Windows user!

Dan


"Dan White" <Dan....@spam.all.you.want.com> wrote in message
news:uZ$VnMSUD...@tk2msftngp13.phx.gbl...

0 new messages