用Agent+ASP技术制作语音聊天室
--------------------以下为程序内容,按文章中出现的顺序分块排序
<!--定义"AgentControl"-->
<object classid=clsid:D45FD31B-5C6E-11D1-9EC1-00C04FD7081F
codeBase=#VERSION=2,0,0,0 id=Agent>
<!--定义L&H TruVoice Text-To-Speech American English -->
codeBase=#VERSION=6,0,0,0 id=TruVoice width="14" height="14">
______________________________________________________________
尝试从微软Agent角色目录中装载
Set LoadRequestUNC = Agent.Characters.Load ("Peedy", "Peedy.acs")
If LoadRequestUNC.Status <> 0 Then
' 如果失败便尝试从微软服务器下载
Set LoadRequestURL = Agent.Characters.Load ("Peedy", "microsoft.com/agent2/chars/peedy/peedy.acf">http://agent.microsoft.com/agent2/chars/peedy/peedy.acf")
Else
' 现在产生一个Peedy实例
Set Peedy = Agent.Characters("Peedy")
End If
_____________________________________________________________
Welcome to My Chatroom!
RM method="POST" action="default.asp">
Your name please:
DOWNLOAD.htm">Click here to go to download page.
_______________________________________________________________________
_______________________________________________________________________
Session("username") = Server.HtmlEncode(Request.Form("txtUsername"))
Session("personalid")=0
%>
Welcome to My Chatroom!
________________________________________________________________
<!--定义"AgentControl"-->
codeBase=#VERSION=2,0,0,0 id=Agent>
<!--定义L&H TruVoice Text-To-Speech American English -->
codeBase=#VERSION=6,0,0,0 id=TruVoice width="14" height="14">
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
________________________________________________________________
____________________________________________________________________
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
%>
You are welcome,
Choose an expression:
Normal
Explain
Greet
Congratulate
Decline
Pleased
Think
Announce
Uncertain
Gesture Right
Don't Recognize
Get Attention
domagic2" name="rdoExpression">Do Magic
Message:
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752043/viewspace-992817/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10752043/viewspace-992817/