WEB开发网
开发学院WEB开发ASP 用Agent+ASP技术制作语音聊天室 阅读

用Agent+ASP技术制作语音聊天室

 2002-07-22 11:10:03 来源:WEB开发网   
核心提示:用Agent+asp技术制作语音聊天室以下为程序内容,按文章中出现的顺序分块排序<!--定义"AgentControl"--><OBJECT classid=clsid:D45FD31B-5C6E-11D1-9EC1-00C04FD7081F codeBase=#VERSION=2
用Agent+asp技术制作语音聊天室
--------------------以下为程序内容,按文章中出现的顺序分块排序

<!--定义"AgentControl"-->
<OBJECT classid=clsid:D45FD31B-5C6E-11D1-9EC1-00C04FD7081F
codeBase=#VERSION=2,0,0,0 id=Agent>
</OBJECT>

<!--定义L&H TruVoice Text-To-Speech American English -->
<OBJECT classid=clsid:B8F2846E-CE36-11D0-AC83-00C04FD97575
codeBase=#VERSION=6,0,0,0 id=TruVoice width="14" height="14">
</OBJECT>
______________________________________________________________

尝试从微软Agent角色目录中装载
Set LoadRequestUNC = Agent.Characters.Load ("Peedy", "Peedy.acs")

 If LoadRequestUNC.Status <> 0 Then
  ' 如果失败便尝试从微软服务器下载
  Set LoadRequestURL = Agent.Characters.Load ("Peedy", "http://agent.microsoft.com/agent2/chars/peedy/peedy.acf")
 Else
  ' 现在产生一个Peedy实例
  Set Peedy = Agent.Characters("Peedy")
 End If
_____________________________________________________________

<HTML>
<BODY>
<h3 align="center"><font color="#0000FF">Welcome to My Chatroom!</font></h3>
<FORM method="POST" action="default.asp">
 <p align="center">Your name please:
 <input type="text" name="txtUsername" size="20">
 <input type="submit" value="OK" name="btnOK"></p>
</FORM>
<p align="center"><a href="download.htm">Click here to go to download page.</a></p>
</BODY>
</HTML>
_______________________________________________________________________

<SCRipT LANGUAGE=VBScript RUNAT=Server>
Sub application_OnStart
  Application("message")=""   '发言内容
  Application("exPRession")="" '表情
  Application("sender")=""   '发言者ID
  Application("globalid")=0   '发言总序号
End Sub
</SCRIPT>
_______________________________________________________________________
<%
 session("username") = Server.HtmlEncode(Request.Form("txtUsername"))
 Session("personalid")=0
%>
<HTML>
<HEAD>
<TITLE>Welcome to My Chatroom!</TITLE>
</HEAD>
<frameset border=0 frameSpacing=0 cols="98,*" frameBorder=0>
 <frame name="agent" src="agent.asp">
 <frameset rows="196,68,*">
  <frame name="display" src="display.asp">
  <frame name="refresh" src="refresh.asp">
  <frame name="message" src="message.asp">
 </frameset>
</frameset>
<frameset>
</frameset>
</HTML>
________________________________________________________________

<HTML>
<BODY BGCOLOR="#006699" TEXT="#FFFFFF">
<!--定义"AgentControl"-->
<OBJECT classid=clsid:D45FD31B-5C6E-11D1-9EC1-00C04FD7081F
codeBase=#VERSION=2,0,0,0 id=Agent>
</OBJECT>
<!--定义L&H TruVoice Text-To-Speech American English -->
<OBJECT classid=clsid:B8F2846E-CE36-11D0-AC83-00C04FD97575
codeBase=#VERSION=6,0,0,0 id=TruVoice width="14" height="14">
</OBJECT>

<SCRIPT language=VBScript>
Dim Peedy
Dim LoadRequestUNC
Dim LoadRequestURL
Dim GetShowAnimation

Sub Window_OnLoad
 LoadCharacter
 ' 设置Agent的语言代号
 Peedy.LanguageID = &H0409
 ' 让Peedy出现
 Peedy.MoveTo window.event.screenX-100,window.event.screenY-100
 Peedy.Show
 ' 好啦,Peedy可以开口说话了
 Peedy.Speak "Welcome to my chatroom!"
 Peedy.Play "Greet"
End Sub

Sub Agent_RequestComplete(ByVal Request)
 ' 如果是从微软服务器装载ACF角色的请求结束
 If Request = LoadRequestURL Then
  ' 如果申请下载失败
  If Request.Status = 1 Then
   Msgbox "无法从服务器下载Peedy,可能服务器太忙。"
   Exit Sub 
   ' 如果成功
  ElseIf Request.Status = 0 Then
   ' 产生一个实例
   Set Peedy = Agent.Characters("Peedy")
   ' 预取Peedy的部分动画效果
   Set GetShowAnimation = Peedy.Get ("state", "showing, speaking")
   Peedy.Get "animation", "Blink, Greet, Pleased, Explain, Think, GestureRight,Idle1_1,Idle2_2, Announce, Uncertain", False
  End If
  ' 如果是请求预取动画效果的请求结束
 ElseIf Request = GetShowAnimation Then
  ' 如果失败
  If Request.Status = 1 Then
   Msgbox "下载动画的请求失败,可能服务器太忙。"
   Exit Sub
  End If
 End If
End Sub

' 装载Agent角色
Sub LoadCharacter
 On Error Resume Next
 ' 尝试从微软Agent角色目录中装载
 Set LoadRequestUNC = Agent.Characters.Load ("Peedy", "Peedy.acs")

 If LoadRequestUNC.Status <> 0 Then
 ' 如果失败便尝试从微软服务器下载
  Set LoadRequestURL = Agent.Characters.Load ("Peedy", "http://agent.microsoft.com/agent2/chars/peedy/peedy.acf")
 Else
  ' 产生一个Peedy实例
  Set Peedy = Agent.Characters("Peedy")
 End If
End Sub

</SCRIPT>
</BODY>
</HTML>

________________________________________________________________

<HTML>
<HEAD>
<META HTTP-EQUIV="REFRESH" CONTENT=3 URL="refresh.asp"> 
</HEAD>
<BODY>
<SCRIPT language=VBScript>
Sub Window_OnLoad
<%
 If Session("personalid") < Application("globalid") Then
%>
  self.parent.display.document.write("<table width=100% border=0 cellPadding=0 cellSpacing=0><font color=#0000FF>"+"<%=Application("sender")%>"+"</font>: "+"<%=Application("message")%>"+"</table>")
  self.parent.display.scroll 0, 20000000
  self.parent.agent.Peedy.Speak "<%=Application("message")%>"
  self.parent.agent.Peedy.Play "<%=Application("expression")%>"
<%
  Session("personalid") = Application("globalid")
 End If
%>
End Sub
</SCRIPT>
</BODY>
</HTML>
____________________________________________________________________

<%
 Application.Lock
 If Request.Form("txtMessage") <> "" Then
  Application("message") = Server.HtmlEncode(Request.Form("txtMessage"))
  Application("sender") = Session("username")
  Application("expression") = Request.Form("rdoExpression")
  Application("globalid") = Application("globalid") + 1
 End If
 Application.UnLock
%>
<HTML>
<HEAD>
<STYLE type=text/CSS>
.smalltext {font-size: 9pt}
</STYLE></HEAD>
<BODY BGCOLOR="#006699" TEXT="#FFFFFF" onload="document.frmMessage.txtMessage.focus();">
<FORM METHOD="POST" ACTION="message.asp" name=frmMessage>
 <p class="smalltext">
 You are welcome,<%=Session("username")%>   
    
 </p>
 <p class="smalltext">
 Choose an expression:<br>
 <input type="radio" value="Idle1_1" checked name="rdoExpression">Normal   
 <input type="radio" value="Explain" name="rdoExpression">Explain   
 <input type="radio" value="Greet" name="rdoExpression">Greet 
 <input type="radio" value="Congratulate" name="rdoExpression">Congratulate   
 <input type="radio" value="Decline" name="rdoExpression">Decline
 <input type="radio" value="Pleased" name="rdoExpression">Pleased
 <input type="radio" value="Think" name="rdoExpression">Think   
 <input type="radio" value="Announce" name="rdoExpression">Announce   
 <input type="radio" value="Uncertain" name="rdoExpression">Uncertain   
 <input type="radio" value="GestureRight" name="rdoExpression">Gesture Right   
 <input type="radio" value="DontRecognize" name="rdoExpression">Don't Recognize 
 <input type="radio" value="GetAttention" name="rdoExpression">Get Attention
 <input type="radio" value="DoMagic2" name="rdoExpression">Do Magic 
 </p>
 <p class="smalltext">
 Message:<input name="txtMessage" type="TEXT" size=66>
 <input type="submit" name="Submit" value="Submit">    
 </p>
</FORM>
</BODY>
</HTML>

Tags:Agent ASP 技术

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接