CN1473298A - 电脑化广告的方法和系统 - Google Patents

电脑化广告的方法和系统 Download PDF

Info

Publication number
CN1473298A
CN1473298A CNA01818538XA CN01818538A CN1473298A CN 1473298 A CN1473298 A CN 1473298A CN A01818538X A CNA01818538X A CN A01818538XA CN 01818538 A CN01818538 A CN 01818538A CN 1473298 A CN1473298 A CN 1473298A
Authority
CN
China
Prior art keywords
user
computer
image
flash
version
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA01818538XA
Other languages
English (en)
Inventor
迪格·达彦
A
艾贝尔·A·戈登
A����ά
乔治·A·埃斯塔维兹
�ơ�M������������
费德里科·M·阿尔瓦雷兹
S�����ض�
伊凡·S·安特尔
��S�����ϱ�ķ
塞缪尔·S·特南鲍姆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
United Virtualities Inc
Original Assignee
United Virtualities Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by United Virtualities Inc filed Critical United Virtualities Inc
Publication of CN1473298A publication Critical patent/CN1473298A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Software Systems (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)
  • Control Of Vending Devices And Auxiliary Devices For Vending Devices (AREA)
  • Processing Or Creating Images (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Digital Computer Display Output (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

广告是以生动的多媒体形象的形式出现在用户监视器(10)的电脑屏幕上,在这里将被称为存放在Shoshkele网络服务器(W)中的“ShoshkeleTM”形象。ShoshkeleTM以闯入方式不时出现在用户监视器(10)的屏幕上,用户对它不可预测,因此它完全不受用户的控制。ShoshkeleTM能够在用户监视器(10)的整个屏幕上移动,并且是在浏览器程序显示的最高图层中,所以它不会被任何视窗或对象覆盖。它也可以提供声音,包括数据库(20)中存放的语音、音乐和音效。所以根据这些数据,动态网页内容发生器(3)能够产生一个动态网页,带有ShoshkeleTM及其娱乐价值,以吸引用户的注意。

Description

电脑化广告的方法和系统
技术领域
一般说来,本发明涉及新媒体比如因特网和软件程序中的广告,更确切地说,涉及实现这种广告方式的方法和系统。
背景技术
因特网的用户了解网上出现的广告材料的数量在增加。典型情况下,它是以携带着广告词之广告条的形式出现。不过,以这种形式出现的广告越多,似乎它起到的效果就越小。这是因为这种广告形式有若干缺点。一方面,广告条一成不变而且全都太相似,所以用户对它们兴趣不大,很容易忽略它们。另一方面,用户只要滚动屏幕空间就能够使它们消失。广告条也占用了宝贵的屏幕空间,使屏幕显得混乱和过度拥挤。所以,需要有一种更加有效、具有丰富内容的广告形式。
起初,大多数因特网广告仅仅是矩形框架(广告条、弹出视窗)包围的图画,有时单一的影像即可,有时广告包括一系列影像(动画GIF)。后来,开发了一种新型的广告,它包括声音,有时还有互动功能。这些广告被称为丰富媒体(rich media),包括Java广告条、插播广告、延缓式插播广告(Superstitial)、Flash广告条、Shockwave广告条以及使用这些技术或其它专有技术的弹出视窗。虽然丰富媒体的定义很多,但是基本上可以定义为不仅具有静态影像的任何类型的广告。包括动画、声音和互动功能的广告,通常被称为丰富媒体广告。不过,无论使用了何种技术,所有这些形式都具有一个共同的特征:它们总是存在于一个预置的外形之内,通常是一个预置的尺寸之内。不管它是在一个视窗内部的一个框架中,还是占据整个一个弹出视窗,在本发明出现之前,所有广告单元都占据一个矩形的空间。
发明内容
按照本发明,广告是以生动的多媒体形象的形式出现在电脑屏幕上,在这里将被称为“ShoshkeleTM”形象。ShoshkeleTM是UnitedVirtualities,Inc.公司的一种商标和服务标志,该公司是本专利申请的拥有人。ShoshkeleTM以闯入方式不时出现在屏幕上,用户对它不可预测,因此它完全不受用户的控制。ShoshkeleTM能够在整个屏幕上移动,并且是在一个操作系统比如Windows中一个应用程序显示(优选情况下是一个浏览器视窗)的最高图层中,所以它不会被任何视窗或对象覆盖。当然,如果ShoshkeleTM所在图层之上若干图层至少是部分透明,ShoshkeleTM就能够处于最高图层之下的某一图层中。它也可以提供声音,包括语音、音乐和音效。ShoshkeleTM的突然出现及其娱乐价值吸引了用户的注意。利用现有的技术,能够实现现今的广告观念和ShoshkeleTM
ShoshkeleTM的性质是浏览器驱动、不论平台、自由移动、有多种外形和尺寸、音视频动画,并且使用时不需要下载外挂程序。一种ShoshkeleTM形象是音视频广告:它包含完全同步的影像和声音;它是自由浮动的;它能够采取任何外形、形式或尺寸,因而与内容水乳交融或者泾渭分明;而且它的功能不依赖于任何外挂程序,在任何指定的时间,使用多种技术解决方案之一即可。
ShoshkeleTM的一种使它们有别于每一种其它类型广告的特性在于,所有其它的广告都具有预定的外形和尺寸,因此广告必然有所调整和限制。它们有指定的适用范围,并受其限制;无论是广告条的框架还是整个视窗。与其它任何广告不同的是,ShoshkeleTM在浏览器视窗之内独立于内容地自由移动,不受外形、形式或尺寸的任何限制。它们没有预置的边界。ShoshkeleTM占据着与内容相伴的任何浏览器的视窗,但是功能却与之完全独立。
这表明设计或修改一个网页时,不必考虑ShoshkeleTM。它们也不依赖于自身专用视窗的启动。此外,大多数丰富媒体产品在使用前,需要下载和安装外挂程序。如果没有这个外挂程序,广告服务器就发送广告的非丰富媒体版本,它基本上包括一个动画GIF、一个jpeg或一个PNG影像。在ShoshkeleTM之前,所有的音视频广告都需要一个外挂程序。仅有影像的广告可能不需要它。仅有音频的广告也可能不需要它。但是互动和(声音和图画)二者的同步却无一例外地依赖外挂程序或Java小程序。ShoshkeleTM却不需要,所以它们是通用的。在丰富媒体广告技术中,只有它们在使用中不必考虑有没有任何特定外挂程序,而仅仅需要一个支持JavaScript和图层的浏览器(在2001年8月时市场上超过99%满足要求)。
通过一套工具支持的一种基本观念,可能做到这一点。这种观念是,使用图形用户界面的所有多媒体电脑,自然能够显示ShoshkeleTM,尽管不总是使用相同的技术。那么,就需要确定任何指定的电脑支持哪种技术,以及如何产生对于该项技术或若干项技术特制的一个特定广告单元。
发行ShoshkeleTM时,能够利用多种电脑化的媒介,比如包装软件(商业软件)、自由软件(免费软件)和共享软件(部分自由软件),以及其它软件种类、因特网站点、还有任何屏幕表面,无论是现有的还是要开发的(视窗、表格、壁纸、挡风玻璃、外涂层等等)。
一个cookie标识客户,一个脚本根据该客户的ShoshkeleTM浏览历史参数,从一个数据库中挑选出不同的ShoshkeleTM。JavaScript脚本嵌入在一个网页中,它执行一个FLASH对象或动画GIF以及声音。动画和声音要同步。声音的格式可以是WAV、MP3、Quicktime、RealAudio、AVI、专有的等等,带有或没有外挂程序。在内容供应商提供的每个网页中,嵌入了一个ShoshkeleTM标签。执行网页中的ShoshkeleTM标签时,用户就连接到一个ShoshkeleTM服务器,一个cookie就传送用户的标识和ShoshkeleTM浏览历史信息。ShoshkeleTM服务器根据用户的电脑中存在的用户的浏览历史和技术,选择适当的Shos OS、Windows CE、Aperios Sony、General Magic、机顶盒等等)中。
ShoshkeleTM的营销,是结合了广告代理、新闻机构、因特网服务供应商(ISP)、内容供应商等等。在网络平台上,可以按照CMP(每千次印象的成本)以及按照其中出现ShoshkeleTM之网页的流量来确定价格,或者按照赞助商站点的实际点击次数,或者按照每秒、每个用户,或者这些方式的一种结合。
用户将收到多种形式的鼓励,比如:对选择立即点击的用户给予惊喜大奖(“点击它否则失去它”),或者对第“n”个点击的用户给予惊喜大奖等等。为了增加吸引力,还可以将ShoshkeleTM编排为讲故事的方式。
某种软件可能有不只一个赞助商赞助。ShoshkeleTM程序既能够在Windows、Macintosh中执行,也能够在当前的应用程序中执行。ShoshkeleTM会时时出现,例如在打开一个菜单时,不是出现命令而是出现ShoshkeleTM
在其它非网络平台上,比如所述软件中,考虑到用户实际上支付了软件的费用,ShoshkeleTM可能闯入性要小一些。因此,在这种情况下,ShoshkeleTM将提高生产力,而不是干扰它。例如,一种办公助理软件展示带有广告产品的一件T恤衫。
在所有情况下,ShoshkeleTM都能够模仿名人(语音和/或影像)来提高广告产品的品牌知名度。
附图简要说明
参考附带的附图,从当前优选实施例的以下详细说明,将会更全面地理解本发明前面的简要说明,以及进一步目标、特性和优点,其中:
图1是一幅功能框图,显示了使用本发明的一个系统;
图2是一幅流程图,显示了图1中用户监视器10的操作;
图3是一幅流程图,显示了确定在一台用户的电脑上产生ShoshkeleTM所用技术的过程;
图4是一幅框图,显示了依据本发明实现电脑化广告的业务模型;以及
图5是一幅框图,显示了依据本发明实现电脑化贺卡服务的业务模型。
具体实施方式
现在介绍附图的细节,图1是一幅功能框图,显示了使用本发明的一个系统。多个用户U作为客户,通过因特网I与一台或多台内容服务器C通信,以便收到来自内容供应商的多媒体内容。在收到的、来自服务器C的一个网页之内,用户将遇到一个标签,它将把用户的电脑传送到ShoshkeleTM网络服务器W。服务器W与实现本发明的系统S合作,或者包括该系统,以便执行其中的方法。该系统包括一台网站用户监视器10、一个数据库20和一个动态网页内容发生器30。
运行时,用户监视器10监视所有用户对网络服务器W的访问,并通过使用cookie识别用户。用户的标识提供给数据库20,它把有关用户的信息提供给动态网页内容发生器30,它再产生ShoshkeleTM,插入用户正在浏览的网页中。虽然不是必需的,监视器10、数据库20和动态网页内容发生器30还是能够以分离的软件程序实现,在作为网络服务器W的同一电脑上运行。
图2是一幅流程图,显示了用户监视器10的操作。操作开始于方框100,在方框102探测用户的到达。优选情况下,这时服务器W向用户发送一个JavaScript脚本,结果是询问其电脑,对ShoshkeleTMcookie定位,以便确定该电脑上有何种技术(如浏览器软件的品牌和版本,以及安装了何种外挂程序)。下一步,在方框104确定这是不是一个新用户(例如,假若他没有ShoshkeleTMcookie,就会是这种情况),如果是的话,在方框106向他的电脑发送ShoshkeleTMcookie。这个cookie包含着该用户的标识信息以及这个用户最近对ShoshkeleTM访问的记录。因此,在这个cookie发送到该用户之前,会利用为他准备的ShoshkeleTM有关的信息对该cookie进行更新。
如果在方框104中确定这不是一个新用户,就在方框108中从用户处提取ShoshkeleTMcookie的信息,并用于更新数据库20。这时,数据库会收到用户对ShoshkeleTM访问有关的cookie中存放的全面信息。在方框114中向服务器提供用户信息,以便准备一个ShoshkeleTM,然后在方框116中结束操作。应当注意,在结束之前,用户对ShoshkeleTM访问有关的信息会记录在他的cookie中。
在网页中产生ShoshkeleTM的优选动画软件,是Macromedia的Flash。不过,正如下面将会变得明了,可以预期实际上ShoshkeleTM会在任何电脑上运行。ShoshkeleTM动画是以Flash产生的,相伴的音频是来自网络原型的Flash程序自身以MP3进行编码。然后,对一种公有的JavaScript脚本进行修改,使它支持和包含任何对象,包括不同尺寸和外形的动画,并能够把ShoshkeleTM放在屏幕上的任何位置。该JavaScript脚本插入浏览器视窗显示的最高图层上的Flash动画对象中,使它不可滚动。还编写和插入了另一种JavaScript脚本,它的功能是与Flash对象通信,对其执行过程进行计时(如网页下载之后播放20秒钟)。只有在Internet Explorer 4.0和更高的版本中,而且它必须具有Flash外挂程序,才能在不干扰背景网页的情况下使用这个系统。
对于产生ShoshkeleTM的技术,另一种可能的方案是,如同前面的实例一样通过JavaScript获得一个动画GIF,但是它包含一个GIF对象,而不是包含一个Flash对象。另外通过HTML代码获得一个WAV对象。为了得到ShoshkeleTM所需的时间线(time line),使用了称为,时间线(Time line)’的一种Dreameweaver程序功能。通过这种嵌入,实现了GIF和WAV对象(动画和音频)之间的同步。GIF的所有围绕区域都将保持透明,以显示下面图层中的内容。因此,浏览者看见了一个形象,但是看不见一个矩形或者矩形视窗。无论是在Internet Explorer和Netscape 4.0和更高的版本中,还是在具有图层技术的其它浏览器中,都可以使用这种方案。
这两种技术都能够被服务器W提供的HTML网页使用,如果所有必需的技术在用户的电脑中都有,就使用第一选项,否则就使用第二选项。用户绝不会注意到进行了选择。图3是一幅流程图,显示了确定将使用何种脚本的过程。该过程在方框200开始,在方框210中确定在用户的电脑中有什么技术接收ShoshkeleTM。如果该电脑具有Internet Explorer 4.0或更高的版本以及Flash,就在方框230创建一个脚本,它产生协调的Flash影像,包括MP3或其它声音文件。如果该电脑缺乏这种技术,就在方框240产生一个脚本,它产生一个动画GIF文件和一个同步的WAV文件,如同以上的讨论。在方框250产生适当的代码,以产生由服务器向用户提供的HTML网页中的ShoshkeleTM。然后在方框260中结束过程。
为了编写驱动ShoshkeleTM的JavaScript脚本,用作基础的原始JavaScript脚本是公开的,但是进行的所有修改都是为了本发明的目的,其结果也是创新的,换句话说,它们允许播放任何动画,尺寸不同,在屏幕上的任何位置,所以实现了一个独特的结果:ShoshkeleTM
图4是一幅框图,显示了电脑化广告的业务方法。假设通过一种称为媒体源(MediaSource)的机构,能够获得ShoshkeleTM
ShoshkeleTM的营销是通过广告代理340,它能够向其客户(如赞助商310)提供ShoshkeleTM以产生广告(’shoshmercial’)。赞助商310按照项目或“每项策略”向代理340付款。代理340为了ShoshkeleTM的创作而向创作室330付款。在第一阶段,可以从媒体源订购一个ShoshkeleTM,带有准备好的脚本。在以后的一个阶段,媒体源应当提供一个工具箱’the shoshkelizer’,它将允许创作室330或某个其它的分包商创建一个ShoshkeleTM,同时向媒体源支付许可费。一旦产生了Shoshmercial,就会在内容供应商320提供了在内容中插入ShoshkeleTM所用之标签的任何网页中,把它提供给一个用户。优选情况下,广告客户因为创作ShoshkeleTM而会向媒体源支付许可费,以及每次印象费(一次印象=对一个访问者的一次展示),包括一次印象延续期间的计费。媒体源会与内容供应商交涉并付款。或者,内容供应商会向媒体源支付一项待定的款额,以每个ShoshkeleTM,然后是每次印象计算。激活ShoshkeleTM的所有代码都会保留在媒体源的服务器中,所以查看网页来源的任何人都不能拷贝ShoshkeleTM代码。
一个实例:百威的代理可能为了5秒的Magic Johnson舞蹈ShoshkeleTM而返还媒体源。该代理可能需要通过Yahoo或另一个入口(即内容供应商320),向美国西南部的市场展示。代理340会按照媒体源的指标,向媒体源提供数字媒体中的动画(如创作室330准备的内容)。媒体源会准备必需的代码,将它变换为ShoshkeleTM,Yahoo的网管会在Yahoo的网页中插入指向ShoshkeleTM服务器的标签。媒体源应当对此计费X美元。ShoshkeleTM会被激活,直到特定的代码通过因特网传送给它。一旦ShoshkeleTM被激活,已识别的西南部访问者每次访问Yahoo,每次播放ShoshkeleTM,都会向媒体源支付Y美分。由于该代理带给媒体源的每一个客户,该代理都将收到媒体源收入的一定百分比。
图5是一幅框图,显示了使用ShoshkeleTM的一个电脑化贺卡系统。现在因特网上有贺卡,但是还没有结合付费广告的背景网页。利用其中带有选项的模板来创建一张贺卡,任何因特网用户都能够把一个贺卡ShoshkeleTM发送给另一个因特网用户。这个ShoshkeleTM将出现在媒体源而不是访问者选择的、因特网中一个网页的背景上,所以媒体源能够对这样做的站点收费。
实例:
一个因特网访问者420来到贺卡ShoshkeleTM创建主页400(媒体源),他在此从形象图库(包括他自己的照片)中选择。然后他选择动作,从语音库(包括用户自己的语音)中选择说出的、唱出的或写出的贺词。他输入他自己的名字和电子邮件地址,并指明他希望发送该贺卡ShoshkeleTM的人(名字和电子邮件地址)。然后,媒体源自动化的系统向接收者410发送一封电子邮件,向接收者指出(媒体源的服务器中的)一个网页,他可以点击该网页并收到一个等待他的贺卡ShoshkeleTM。接收者到达该网页后,会看见内容供应商或者说广告客户430例如Yahoo准备的一个常规的和/或定制的网页,贺卡ShoshkeleTM就出现了。媒体源和内容供应商将签署协议,按照印象的次数付款。访问者在背景站点停留得更长时,媒体源将进行附加的计费。请注意,公众也可以使用模板制作ShoshkeleTM,在他们的网站或其它网站上作广告或其它事情。指导性和/或教学性ShoshkeleTM
ShoshkeleTM可以出现在因特网站点,为用户指引特点和/或区域和/或其它网页,以及有助于教授一种语言、一种贸易、某些性技巧、一种舞蹈、某些武术、审查制度、阅读新闻等等。它可以指出电脑使用中的某些错误。更新软件
ShoshkeleTM出现在屏幕上,用于更新已经过时的软件,或者丢失的外挂程序,或者更换旧程序。低成本软件
从因特网下载或者在媒体上提供的软件,在其中激活ShoshkeleTM,将降低该软件的成本。实例:
●一个用户下载一个反病毒程序和自由版本,执行时打开一个浏览器视窗,ShoshkeleTM播放。每一次反病毒程序更新和/或仅有一次,这就可能发生。
●一个因特网冲浪者想要知道是否某个特定的人已经提交了第十一章保护,一个提供这种信息的商业站点允许该数据下载,或者以软盘或CD ROM发送,该数据将是免费的,同时通过附带一个ShoshkeleTM而获得收益。
●使用一个话筒和扬声器,通过一个拨号小键盘,在因特网上打国际长途电话,拨到世界上的任何地方,但是通话在两端都与ShoshkeleTM交错(可能仅有声音)。
ShoshkeleTM对于因特网正如广告片对于电视,意味着直到现在在因特网上所作的所有广告,都是通过广告条来进行的(类似于杂志或报纸上的广告)。相反,由于ShoshkeleTM在需要时能够说话并且像人,所以像是电视广告片。与广告条相比,ShoshkeleTM的特殊性质
1.它们是不可滚动的。这表明,例如,假若ShoshkeleTM出现并且说’喝一杯可口可乐’,而用户不想见它,却不能像对广告条一样将ShoshkeleTM滚动出去。它将停留在屏幕上,直到结束。
2.声音。今天在因特网上作广告使用的仅有的两种方法——如果确实有的话——是:
●MIDI音乐,它是电脑产生的声音,或者
●使用特殊的程序,必须下载它们(外挂程序或其它程序),才能听到声音。实例:Flash,你不认识Jack。相反,ShoshkeleTM将在两种主要的浏览器(Netscape和Explorer)中的任何一种中,在其4.0或以上的版本(今天用户的97.5%)中,播放任何声音,单声道、立体声、音乐或谈话。
3.与广告条相反,普通的用户不可能事先注意到ShoshkeleTM会出现。打开一个网页时,直到它下载完毕,广告条的位置都有标记,而ShoshkeleTM是默默地和不引人注目地下载的。
4.透明性。广告条不是透明的,ShoshkeieTM也不是,但是紧靠着ShoshkeleTM的周围区域却是透明的,而且ShoshkeleTM往返移动时,它离开的每一个地方都完全可见(透明)。这与弹出视窗不同,后者不是如此。ShoshkeleTM周围没有特殊的视窗。你不能使它最小化或关闭。它处于网页的外图层。
5.ShoshkeleTM是完全可定制的。实例:
●它可能是一位名人,由全数字视频制成,其尺寸适合任何需要。例如,Ricky Martin、Magic Johnson等。他可以说话(“喝一杯百事可乐”)或者仅仅是在他的手里拿着一杯百事可乐而不说什么。他可以唱和说,或者仅有任何音效,像是步伐、关门等,甚至是以立体声(从一个扬声器走到另一个)。
●它可能是一个生动的形象。一位名人,比如Bugs Bunny,任何卡通或者像卡通的人物,带有全部音效,如同上面的实例。
●它可能是一片鱼翅,游弋在写出的网页上,带有’Jaws’背景音乐,最后显现为耐克的飞驰符号。
●它可能是从这个人正在浏览的网页上飞舞而出的若干字母,带有或没有声音。
●它可能只有声音(’喝一杯可口可乐’)。
6.完全可同步的。这表明ShoshkeleTM能够预置为出现一次或几次和/或以选定的任何时间间隔。例如:Ricky Martin能够来说出“喝一杯百事可乐”并且不再出现,或者每三分钟再出现一次,以及/或者在Ricky Martin走了之后20秒钟,鱼翅(见上)能够出现。它可能延续从一秒钟至选定的任何时间长度。如果使ShoshkeleTM出现的网页最小化,ShoshkeleTM的图像会随着网页而消失。如果关闭网页,图像和语音都会消失。
7.便于实施。任何网管使一个ShoshkeleTM例程激活或者解除激活都不必花5分钟。
8.利用cookie互动。ShoshkeleTM将利用cookie技术进行互动,所以:
●它可以使信息因人而异(’Have a Pepsi,Mister Smith’——英语)或者(’Tome usted una Pepsi,Se?or Smith’——西班牙语)。
●它可以识别出这个人以前已经见过这个和/或另一个ShoshkeleTM以及何时见过,所以它可能会问’你当时害怕这条鲨鱼吗?’它可以用于按章节讲述一个故事,而不显得太频繁以变得令人厌烦。
●它可允许引入cookie。
通过一套工具支持的一种基本观念,形成了ShoshkeleTM的通用性。这种观念是,使用图形用户界面的所有多媒体电脑,自然能够显示ShoshkeleTM,尽管不总是使用相同的技术。那么,就需要确定任何指定的电脑支持哪种技术,以及如何产生对于该项技术或若干项技术特制的一个特定广告单元。
应当明确的是,一个ShoshkeleTM广告单元不是由一个单独的文件组成的,而是由一组文件组成的,以及传送一个可用ShoshkeleTM的关键在于确定这些文件中的哪一个与给定的电脑兼容。为了完成这项任务,有四个步骤需要完成:
●定义要支持哪些技术;
●开发使用每种技术的匹配广告单元;
●确定要发送到每台电脑的最优技术;以及
●向每台电脑传送恰当的文件。
换句话说,形成ShoshkeleTM不是通过一项单独的新技术,而是通过现有技术的新颖的、不明显的结合,以及专用代码。根据用户电脑的配置和性能,选择、传送和执行ShoshkeleTM的许多技术架构之一。
创作ShoshkeleTM时遇到的主要困难之一在于,每一项技术或者每一组技术都有固有的局限。有些在能够显示运动影像的同时,局限于矩形的外形。其它的不能携带声音,或者仅仅能描述声音。再有其它的需要外挂程序,或者取决于它们运行的平台而具有不同的性能。
遇到的第一个问题是,网页上每一个单独的对象都定义为一个矩形,所以限制了所有的影像都是正方形或矩形的。这就解释了为什么在ShoshkeleTM技术之前,所有的广告单元都采取这种特定的外形。通过使用半透明或透明技术,使对象的某些部分不可见,通常是其外围以外的部分,已经克服了这种限制,因此使其外观不是矩形的外形。这项技术与在浮动图层之内放置对象相结合,创作出了任何外形和尺寸的自由移动形式的幻影。
某些现有技术提供了半透明模式(如GIF89),因此更容易实现这种幻影。不过,GIF89具有其它的局限,像是缺乏声音和互动性能,使它不能成为传送引人注目广告的最优解决方案。其它的技术具有其它的局限,比如:
●Flash 3——需要一个外挂程序,而且没有透明模式;
●Flash 4和5——需要一个外挂程序,而且在某些平台上没有透明模式;
●Java Applet——没有透明模式,而且有错误;
●Shockwave——需要一个外挂程序,而且在某些平台上没有透明模式;
●WAV——没有影像。
●GIF——没有声音。
●JPEG——没有声音,而且没有透明模式。
●PNG——没有声音。
这些局限,以及许多其它的局限,激发了新的替代技术的探索,同时总是使用现有技术的结合。我们的出发点总是相同的基本前提:所有的多媒体电脑都能够显示一种包括声音的、自由浮动的、多种形式的、生动的广告。但是并非总是通过相同的手段。
形成ShoshkeleTM,是通过选择其架构的过程。根据每种广告观念和最终用户的电脑上可用的技术,在许多可替换的ShoshkeleTM架构中,考虑到哪一种最适合以最有效的方式传送特定的信息,来作出这种选择。下面介绍的过程根据的前提是,连接到网络的每一台单独的电脑都包含若干工具的汇集,以正确的方式结合时,它们能够用于驱动一个ShoshkeleTM
用于传送和驱动ShoshkeleTM的替换架构也进行了介绍。这些不同的架构设计为克服任何单一技术的缺点,比如缺乏同步的声音、透明性或对特定外挂程序的依赖。根据ShoshkeleTM的固有特征和用户电脑的实际配置,使用一种具体的架构。
ShoshkeleTM的创作划分为两个步骤(其中每一个再划分为子步骤),虽然有明确的差异,却相互依赖并且是完全整合的:
●创作
  ■定义要支持哪些技术
  ■开发使用每种技术的匹配广告单元
●服务
  ■确定要发送到个用户的最优技术
  ■向每个用户传送恰当的文件
这些步骤密切地相互交织,除非它们仔细地协调,否则ShoshkeleTM不会正常工作。这些步骤包括在本文介绍的方法中,并且得到一套工具或预定过程的帮助。
                          创作定义要支持哪些技术
即使考虑了在用技术平台的数百种可能的组合——众多的操作系统、浏览器和外挂程序,本发明还是设法使需要的ShoshkeleTM架构的数目保持在最小值。它适应的操作系统之多,包括Windows 95、Windows 98、Windows ME、Windows NT 4.0、Windows 2000、Macintosh System 7、Mac OS 8、Mac OS 9、Mac OS X、Linux的几个变种,甚至有某些网络设备的操作系统。它也适应每种操作系统中使用的大多数已有的浏览器。性能和兼容性是首先要考虑的问题。
ShoshkeleTM能够划分为四种主要的类型或者说家族,划分定义为有没有Flash外挂程序以及能不能在特定的浏览器/平台组合中显示出半透明性。这四种基本类型(带有子类别)是:
a.带有半透明性且带有MP3压缩的Flash
1)在Windows上Internet Explorer 4.0或更好版本上的Flash 4
2)在Windows上Internet Explorer 4.0或更好版本上的Flash 5
b.没有半透明性却带有MP3压缩的Flash
1)在Mac上的Internet Explorer 4.0或更好版本
2)在所有平台上的Netscape Navigator 4.0
3)Opera
c.没有半透明性也没有MP3压缩的Flash
d.没有Flash
类型a及其子类别允许以最简单的方式创作和观察ShoshkeleTM。仅有的需要是一个swf文件和一些专用JavaScript代码。
类型b及其子类别需要几种解决方案,取决于ShoshkeleTM固有的艺术和技术特征。使用的解决方案是下列之一:
Flash 4或5(ShoshkeleTM在其本身的图层上局限于正方形和矩形,广告结束之后该图层就隐藏和卸载。所有运动都是内部的,即外部对象保持静止。ShoshkeleTM突然出现,播放,突然消失。
通过Flash对象内部的α通道,能够实现淡入淡出)Flash 4或5/Timeline(与#1相同,只不过由JavaScript代码移动
该图层,所以正方形的ShoshkeleTM能够围绕浏览器视窗自由移动)
Flash 4或5/GIF/Timeline(与#2相同,只不过在这种情况下,正方形的Flash对象包围着GIF影像,该影像与它同步移动,而且由于GIF不支持透明性,所以轮廓可以是任何外形,或者说至少显得如此)
 Flash 4或5/GIF(与#3相同,减去图层移动)
 GIF/Timeline/Flash 4或5(这是一种完全不同的ShoshkeleTM类型。全部由GIF影像形成图画,或者是静止的,或者是移动的。GIF放在其自身的图层上,该图层通过Timeline而活动,并且与声音同步。与Win/Exp/Flash 4或5一起,这是仅有的允许ShoshkeleTM的外形完全自由的选项)
类型c包括在每一种平台上支持Flash的每一种浏览器。这种组合具有与Flash 4同样的局限、问题和可能性,只不过缺乏MP3压缩,这表明swf文件会略微大一些。解决方案与不支持半透明性之平台上的Flash 4和5相同,只不过它使用Flash 3。
至于类型d,缺乏任何外挂程序必然导致系统自有声音格式与Timeline以及一个图层或多个图层中的一种或多种动画GIF同步。
以下是从不同的角度看这些分类。它不是根据ShoshkeleTM的类型,而是根据平台/外挂程序组合进行定义。
1.Windows(95或更好的版本)
1.1.Explorer(4.0或更好的版本)
1.1.1. Flash 4(透明性存在,无须替换解决方案:ShoshkeleTM能够采取任何外形,并且能够在位于最高图层上的透明Flash对象之内移动。动画结束时,该图层被隐藏然后卸载)。该广告在其自身的图层中加载,后来又卸载,无论网页的其余部分有什么内容,从而使其设计和管理有完全的自由。
1.1.2. Flash 3(没有透明性,ShoshkeleTM局限于其自身图层上的正方形或矩形,广告结束之后,该图层被隐藏并卸载)
1.1.3. Flash 3/Timeline(与1.1.2相同,只不过该图层由JavaScript代码移动,所以正方形的ShoshkeleTM能够往返移动)
1.1.4. Fiash 3/Timeline/GIF(与1.1.3相同。在这种情况下,正方形的Flash对象包围着GIF影像,而且由于GIF不支持透明性,所以轮廓可以是任何外形,或者说至少显得如此)
1.1.5. GIF/Timeline/Sound(这是一种完全不同的ShoshkeleTM类型。全部由GIF影像形成图画,或者是静止的,或者是移动的。GIF放在一个单独的图层上,该图层通过Timeline而活动,并且与声音同步。)
1.1.5.1. GIF/Timeline/WAV
1.1.5.2. GIF/Timeline/Flash 3(与1.1.5.1相同,带有更好的压缩)
l.1.6. GIF/WAV(类似于1.1.5,只不过该GIF是一个简单的动画GIF;它不在屏幕上移动)
1.1.7. Flash 3”补钉”(这种方法通过网页的产格拷贝,作为Flash对象的背景,弥补了透明性的缺乏。所以,包含着ShoshkeleTM的图层出现时,用户还能看见相同的影像,因此不会察觉它已经被ShoshkeleTM覆盖)
1.2.Netscape
1.2.1. Flash 4(没有透明性,ShoshkeleTM局限于其自身图层上的正方形或矩形,广告结束之后,该图层被隐藏并卸载)
1.2.2. Flash 4/Timeline(与1.2.1相同,只不过该图层由JavaScript代码移动,所以正方形的ShoshkeleTM能够往返移动)
1.2.3. Flash 4/GIF/Timeline(与1.2.2相同。在这种情况下,正方形的Flash对象包围着GIF影像,而且由于GIF不支持透明性,所以轮廓可以是任何外形,或者说至少显得如此)
1.2.4. Flash 4/GIF(与1.2.3相同,减去图层移动)
1.2.5. Flash 3(与1.2.1相同)
1.2.6. Flash 3/Timeline(与1.2.2相同)
1.2.7. Flash 3/GIF/Timeline(与1.2.3相同)
1.2.8. Flash 3/GIF(与1.2.4相同)
1.2.9. GIF/Timeline/Sound(这是一种完全不同的ShoshkeleTM类型。全部由GIF影像形成图画,或者是静止的,或者是移动的。GIF放在一个单独的图层上,该图层通过Timeline而活动,并且与声音同步。与Win/Exp/Flash 4一起,这是仅有的允许ShoshkeleTM的外形完全自由的选项)
1.2.9.1. GIF/Timeline/WAV
1.2.9.2. GIF/Timeline/Flash 3(与1.2.9.1相同,带有更好的压缩)
1.2.9.3. GIF/Timeline/Flash 4(与1.2.9.2相同,带有MP3压缩)
1.2.10. GIF/WAV(类似于1.2.9,只不过该GIF是一个简单的动画GIF;它不在屏幕上移动)
1.3.Opera(与Netscape相同)
1.4.AOL(与Netscape相同)
2.Macintosh(与Windows/Netscape相同,只不过在Timeline中必须包括一个短的延迟)
3.Playstation
4.WebTV开发使用每种技术的匹配广告单元
一旦分析完成,下一个步骤就是创作必需的版本,或者说ShoshkeleTM架构,以便使广告单元用于所有需要的平台。考虑了创造性工作的艺术性,99%的当前网络世界能够由仅仅9种架构来适应,尽管包括了数千种平台/浏览器/外挂程序的组合。
所有版本的出发点是这样一个ShoshkeleTM,它在带有Flash外挂程序第4版或更新版本的Internet Explorer 4.0或更新版本(后文中称之为WE4F4)上运行。由于这种组合能够描述矢量和位图图形、动画、声音和半透明性,所以它是衡量所有其它版本的金本位。这种架构毋庸置疑是最容易创作和实施的。所有其它的架构都是为了模仿这一架构的性能而开发的。
假若目标是开发一个ShoshkeleTM,它仅仅用于运行Windows的一台电脑上、带有Flash 4或更新的外挂程序的IE4.0或更新的浏览器(WE4F4)上所见的一个HTML网页上,那么仅仅通过把网页上Flash对象中嵌入的标签上称为wmode的参数设置为transparent,就能实现:
<paramname=“wmode”value=“transparent”>
由于其它平台都不允许这种解决方案,所有其它的平台都采取一种非常独特的路径。Flash文件中包含的影像和声音输出为多种格式。一种JavaScript时间线(timeline)通过在HTML文档之内创建若干图层,把影像和声音加载到这些图层上,以及使它们同步和活动,控制着这些输出的文件(多媒体文件或者说MMF)。这些是不同于WE4F4的所有ShoshkeleTM版本的原始材料——MMF和JavaScript代码。
ShoshkeleTM架构的世界由以下九种情况定义:
1.带有Flash v4.0或更新版本的WindowsIEv4.0或更新版本:[WE4F4]
2.没有Flash的Windows IE v4.0或更新版本:[WE4F0]
3.没有Flash的Windows Netscape v4.1或更新版本:[WN4F0]
4.没有Flash的Macintosh Netscapev4.0或更新版本:[MN4F0]
5.带有Flash v4.0或更新版本的Windows Netscape v4.1或更新版本:[WN4F4]
6.带有Flash v4.0或更新版本的Macintosh Netscape v4.0或更新版本:[MN4F4]
7.带有Flash v4.0或更新版本的Windows Netscape v6.0或更新版本:[WN6F4]
8.带有Flash v4.0或更新版本的Macintosh Netscape v6.0或更新版本:[MN6F4]
9.带有Flash v4.0或更新版本的Macintosh IE v5.0或更新版本:[ME5F4]
1.WE4F4
这种架构是利用一种模板实现的,其中的改变都是文件的名称和尺寸。除了这个版本以外,所有其它的架构都具有一个结构,包括影像文件、声音文件和JavaScript控制代码或者说Timeline。
2.WE4F0
致力于使有效ShoshkeleTM的全部范围覆盖所有平台的第一个步骤,是将WE4F4架构转变为影像/声音/JavaScript架构之一。为了使过程标准化起见,要创建的第一个是WE4F0。我们称之为HTML基础,其MMF的文件格式为GIF/动画GIF和WAV。为了覆盖剩余的要支持的平台,将构建这个HTML基础的若干变种。
第一步是把HTML基础改变为外部JavaScript文件,所以它能够包括在脚本标签内部,通过文档写的方法传送到网页中。为了做到这一点,来自HTML基础的所有图层都必须粘贴在紧跟着<scriptlanguage=“JavaScript”>标签之后:
  <divid=“skltrama”style=“position..[etc,etc,etc...]

  <divid=“sklbanner”style=“position:absolute;left:499px;top:63px;wi

  dth:21px;height:5px;z-index:5;visibility:hidden”><ahref=“http://w

  ww.aimovie.com”><imgsrc=“skl_g_variety_aibanner.jpg”width=“2

  02”height=“44”border=“0”></α></div>

  function MM_findObj(n,d){//v4.0

  varp,i,x;if(!d)d=document;if((p=n.indexOf(“?”))>0&amp;&amp;parent.frame
s.length){

     d=parent.frames[n.substring(p+1)l.document;n=n.substring(0,
p);}[etc,etc,etc...]
目标是为了保护这些图层,除了JavaScript以外,HTML不能写入它们。
下一步,把图层放到一个变量中:
varSH_Lay=′<divid=“skltrama”style=“position:absolute;left:268px;
top:37px;width:26px;height:21px;z-index:1;visibility:hidden”><img
src=“skl_g_aicircu01.gif”width=“413”height=“413”name=“sklimgt
rama”></div>′
document.write(SH_Lay);这是该基础的JavaScript时间线,所有的版本都将从这一个版本引申。
下一步加入的是指向MMF的、称为“theSRC”的一个新变量
VartheSRC=’http://akamai.com/imagenes/’
varSH_Lay=′<divid=“skltrama”style=“position:absolute;left:268px;
top:37px;width:26px;height:21px;z-index:1;visibility:hidden”><img
src=“skkl_g_aicircu01.gif”width=“413”height=“413”name=“sklimgt
rama”></div>′
在这个实例中我们看到,没有给称为skl_g_aicircu01.gif的影像分配一个位置。为了能够使浏览器指向一个具体的URL或目录,变量theSRC置于该影像的名称之前。
varSH_Lay=′<divid=“skltrama”style=“position:absolute;left:268px;
top:37px;width:26px;height:21px;z-index:1;visibility:hidden”><img
src=“′+theSRC+′skl_g_aicircu01.gif”width=“413”height=“413”na
me=“sklimgtrama”></div>′通过对所有的影像和声音这样做,我们最终有了一个非常灵活的文件,它能够容易地定位其MMF。
由于JavaScript代码调用了外部的MMF,所以不仅需要加载时间线,还需要完全加载MMF,才能开始执行。我们通过加入以下代码确保这一点。
window.onload=shcreate;这就告诉了浏览器,网页完全加载时执行shcreate函数,因此避免了在所有MMF都可用之前显示一个ShoshkeleTM
问题在于,浏览器只要加载了它知道的要素就立即触发该函数,而这些要素并非它们的全部。尚未在一个图层中的某些MMF,将不会由这个命令贮藏。这里的技巧在于,某些影像还没有在这些图层的内部,因此我们需要实施某种方式来预加载它们。在识别了它们之后,通过对我们的时间线进行以下修改,我们就能够指示浏览器预加载它们:
  var theSRC=″;

  var SH_Lay=′<divid=“skltrama”[etc,etc...]><img

  src=“′+theSRC+′skl_g_aicircu01.gif”[etc,etc...]>/div>′

  +′<divid=“sklpibe”[etc,etc...]><imgsrc=“′+theSRC+′skl_g_aisecuen

  cia.gif”[etc,etc...]border=“0”></div>′

  +′<divid=“sound”[etc,etc...]><embedsrc=“′+theSRC+′skl_s_ai12.wa

  v”autostart=“false”></embed></div>′

  +′<divid=“texto”[etc,etc...]><fontsize=“5”>ARTIFICIALINTELLI

  NGENCE</font></font></font></p></div>′
  +′<divid=“sklbanner”[etc,etc...]<imgsrc=“′+theSRC+'skl_g_variety

  _aibanner.jpg”width=“202”he></a></div>';

  document.write(SH_Lay);

  MM_preloadImages(theSRC+'skl_g_aicircu05.gif,theSRC+'skl_g_

  aicircu 04.gif,

  theSRC+′skl_g_aicircu 02.gif';

  theSRC+′skl_g_aicircu03.gif,theSRC+′skl_g_aicircu0 6.gif);
声音文件的处理和预加载有其它的考虑。通过EMBED函数,我们在网页上插入音频文件,标签由于我们需要控制回放,AUTOSTART性质必须设置为FALSE。
为了开始回放,Flash外挂程序考虑了play()方法,因此:
<HTML>
<EMBEDNAME=“soyunsonido”src=“elSonido.wav”autostart=“fal
se”></EMBED>
<SCRIPTLANGUA GE=“JavaScript”>
document.soyunsonido.play();
</SCRIPT>
</HTML>
对于不支持play()命令的情况(声音文件是另一种格式的情况),解决方案是重写该图层,使AUTOSTART设置从FALSE改变为TRUE。原始设置
<EMBEDSRC=“thebeatles.wav”autostart=“false”>重写后
<EMBEDSRC=“thebeatles.wav”autostart=“true”>这种方法的缺点是不能重写嵌入的声音,解决方案是在一个图层内部进行。
<divid=“sound”><embedsrc=“skl_s_ai12.wav”width=“32”height=“
32”
autostart=“false”></embed></div>
在此阶段,进行了不同版本所需的调整。为了使前面的操作在Netscape上起作用,图层必须是可见的,因此,为了是声音控制器保持不可见,图层必须位于屏幕之外。
<divid=“sound”style=“position:absolute;left:Opx;top:-300px;visibili
ty:visible;”>
<embedsrc=“′+theSRC+′skl_s_ai12.wav”width=“32”height=“32”na
me=“snd”
autostart=“false”></embed>
</div>现在声音文件已经能够随意执行了。重写图层的内容有不同的方法,取决于浏览器。
3.WN4F0
虽然与Explorer的版本非常类似,但是在这种情况下<DIV>标签必须改变为<LAYER>标签。从理论上说,在Netscape 4.0或更新的浏览器上,两种标签都可接受,但是经验表明,使用文档写入方法时,<DIV>标签可能导致错误。
varSH_Lay=′<lyerid=“skltrama”style=“position:absolute;left:268p
x;top:37px;
width:26px;height:21px;z-index:1;visibility:hidden”><img
src=“′+theSRC+′skl_g_aicircu01.gif”width=“413”height=“413”
name=“sklimgtrama”></layer>′现在,由于<LAYER>标签不支持STYLE,它就被去除。
varSH_Ldy=′<layerid=“skltrama”><imgsrc=“′+theSRC+'skl_g_aici
rcu01.gif”
width=“413”height=“413”name=“sklimgtrama”></layer>′下一步,设置性质。
varSH_Lay=′<layerid=“skltrama”LEFT=“268”TOP=“37”WIDTH=
“26”HEIGHT=“21”Z-INDEX=“1”VISIBILITY=“VISIBLE”><img
src=“′+theSRC+′skl_g_aicircu01.gif”width=“413”height=““413”na
me=“sklimgtrama”></layer>′注意,在Netscape上,所有图层都具有绝对位置,所以消除了这种设置。而且,顶端/左端/宽度/高度都是以像素度量,就删除了“bx”。最后,HIDE取代了HIDDEN。
在WN4F0版本中编码时,对所有图层都必须进行这些改变:
  var theSRC=″;

  var

  SH Lay=′<LAYERid=“skltrama”LEFT=“268”TOP=“37”WIDTH=

  “26”

  HEIGHT=“21”Z-INDEX=“1”VISIBILITY=“HIDE”><img

  src=“′+theSRC+′skl_g_aidrcu01.gif”width=“413”height=“413”

  name=“sklimgtrama ”></LA YER>′

  +′<LAYERid=“sklpibe”LEFT=“390”TOP=“139”WIDTH=“15”HEI

  GHT=“20”

  Z-INDEX=“2”VISIBILITY=“HIDE”><imgsrc=“′+theSRC+′skl_g_

  aisecuencia.gif”

  width=“166”height=“169”name=“sklimgpibe”border=“0”></LAYE

  R>′

  +′<LAYERid=“sound”LEFT=“0”TOP=“-300”WIDTH=“11”HEIG

  HT=“11”Z-INDEX=“3”VISIBILITY=“VISIBLE”><embedsrc=“'+t

  heSRC+'skl_s_ai12.wav”width=“32”height=“32”name=“snd”autost
				
				<dp n="d25"/>
  art=“false”></embed></LA YER>′

  +′<LAYERid=“texto”LEFT=“335”TOP=“295”WIDTH=“283”HEI

  GHT=“14”Z-INDEX=”4”VISIBILITY=“HIDE”><palign=“center”

  ><fontface=“TimesNewRoman,Times,serif”size=“2”color=“#FFFF

  FF”><b><fontsize=“4”>ASTEVENSPIELBERGFILM<br></font>

  </b><fontsize=“4”><fontsize=“5”>ARTIFICIALINTELLINGENC
  E</font></font></font></p></LAYER>′

  +′<LAYERid=“sklbanner”LEFT=“499”TOP=“63”WIDTH=“21”H

  EIGHT=“5”Z-INDEX=“5”VISIBILITY=“HIDE”><ahref=“http://

  www.aimovie.com”><imgsrc=“′+theSRC+'skl_g_variety_aibanner.j

  pg”width=“202”height=“44”border=“0”><a></LAYER>′;
4.MN4F0
这个版本与前一个完全相同,只是必须注意声音文件必须是AIFF格式,而不是WAV。图层应当表现为:
+′<LAYERid=“sound”LEFT=“0”TOP=“-300”WIDTH=“11”HEIG
HI=“11”Z-INDEX=“3”VISIBILITY=“VISIBLE”><embedsrc=“'+t
heSRC+′skl_s_ai12.aif”width=“32”height=“32”name=“snd”autosta
rt=“false”></embed></LAYER>′而且时间线为:
Document.MM_Time[0][15].value=
“MM_showHideLayers(′sklpibe′,″,′show);MM_setTextOfLayer(′so
und′,″,′%3Cembedsrc=%22′+theSRC+′skl_s_ai12.aif%22autostart=
%22true%22hidden=%22true%22%3E%3C/embed%3E′)”;
5.WN4F4
对于这个版本,不是使用一种WAV声音,而是利用了Flash 4或更新的外挂程序中的MP3编码性能。通过发送swf文件(Flash)内部的声音,能够缩小其尺寸和整个ShoshkeleTM组合文件的尺寸。必须记住,即使这个版本使用了Flash外挂程序,也仅仅是传送声音,而不是影像。Flash外挂程序不支持这个平台上的TRANSPARENT(透明)设置,使我们为了显示非矩形对象而不得不使用GIF影像。
为了实施这个版本,在包含音轨的swf中加入了一种预加载,并且在其中调用了sh_cargar()函数。在sh_create()函数中,使用swf声音动态地写入声音层。下一步创建sh_create()函数,并在执行时指示它启动时间线执行。在原始JavaScript代码中,sh_create函数表现为:
function shcreate(){
  MM_timelinePlay(′shtimeline′);
}而在这个ShoshkeleTM架构中,它应当表现为:
function shcreate(){
  MM_setTextOfLayer(′sound′,″,′<embedsrc=“′+theSRC+′skl_s_ai
12.swf”quality=highpluginspage=“http://www.macromedia.com/sho
ckwave/download/index.cgi?P1_Prod_Verion=ShockwaveFlash”ty
pe=“application/x-shockwave-flash”width=“152”height=“115”loop
=“false”></embed>′);
}
EMBED之内的性质仅仅是向浏览器指明文件格式。shcreate函数把swf文件加载到SOUND层中。正如编码所示,这个文件在加载之后,调用sh_cargar函数,所以所有剩下的工作就是编制这种函数,使得它开始回放时启动时间线。
function sh_ cargar(){
  MM_timelinePlay(′shtimeline′);
}换句话说,sh_cargar函数执行的功能,与其它版本中的shcreate相同。
ONLOAD-->shcreate-->swfsound-->sh_cargar-->Timelineexecution修改了shcreate并增加了sh_cargar之后,删除SOUND层中的原始内容。另外,也要删除Frame(框架)中发现的、对MM_setTextOfLayer的调用。
+′<LAYERid=“sound”LEFT=“0”TOP=“-300”MDTH=“11”HEIG
HT=“11”Z-INDEX=“3”VISIBILITY=“VISIBLE”></LAYER>′
6.MN4F4
与WN4F4兼容。
7.WN6F4
这种架构是WE4F4和WN4F4之间的一种混合。它与两者共享代码,对于Explorer更多一些。由于这种原因,以WE4F0开始,必须修改它,以便使用swf文件作为声音格式。做到这一点,采取的方式与以前相同。删除SOUND层中嵌入的内容:
<embedsrc=“′+theSRC+′skl_s_ai12.wav”width=“32”
height=“32”name=“snd”autostart=“false”></embed>该层应当看起来有些像:
+′<divid=“sound”style=“position:absolute;left:Opx;top:-300px;widt
h:11px;height:11px;z-index:3;visibility:visible”></div>′下一步,删除时间线的Frame(框架)1中对MM_setTextOfLayer的调用:
MM_setTextOfLayer(′sound′,″,′%3Cembedsrc=%22′theSRC+′skl_
s_ai12.wav%22autostarf=%22true%223E%3C/embed%3E′)最后,它应当看起来像:
document.MM_Time[0][15]=newString(“behavior”);
document.MM_Time[0][15].frame=1;
document.MM_Time[0][15].value=“MM_showHideLayers(′sklpibe′,
″,′show);”;
document.MM_Time[0][16]=newString(“behavior”);修改shcreate函数并增加sh_cargar(),使得结果代码看起来如下
  function shcreate(){

    MM_setTextOfLayer(′sound′,″,′<embedsrc=“′+theSRC+′skl_s_ai

  12.swf”quality=highpluginsplage=“http://www.macromedia.com/sho

  ckwave/download/index.cgi?Pl_Prod_Version=ShockwaveFlash”ty

  pe=“application/x-shockwave-flash”width=“152”height=“115”loop

  =“false”></embed>′);

  }

  function sh_cargar(){
				
				<dp n="d29"/>
    MM_timelinePlay(′shtimeline′);

  }
8.MN6F4
与WN6F4相同。
9.ME5F4
一开始,采取任一个Netscape 6的版本。不是VISIBILITY,与DISPLAY一起使用的参数是NONE或者INLINE。还应当注意,不需要修改声音层,因为其可见性不改变。
  var

  SH_Lay=’<dividl=”skltrama”style=”position:absolute;lef:268px;top

  :37px;

  width:26px;height:21px;z-index:1;display:none”><img

  src=”’+theSRC+’skl_g_aicircu01.gif”width=”413”height=”413”

  name=”sklimgtrama”></div>’

  +′<divid=“sklpibe”style=“position:absolute;lef:390px;top:139px;wi

  dth:15px;height:20px;z-index:2;display:none”><imgsrc=“′+theSRC

  +′skl_g_aisecu en cia.gif”width=“166”height=“169”name=“sklimgpi

  be”border=“0”></div>′

  +′<divid=“sound”style=“position:absolute;left:0px;top:-300px;widt

  h:11px;height:11px;z-in dex:3;visibility:visible”><embedsrc=“′+the

  SRC+′skl_s_ai12.wav”width=“32”height=“32”name=“snd”autostar

  t=“false”></embed></div>′

  +′<divid=“texto”style=“position:absolute;left:335px;top:295px;widt
				
				<dp n="d30"/>
  h:283px;height:14px;z-index:4;display:none”><palign=“center”><

  fontface=“TimesNewRoman,Times,serif”size=“2”color=“#FFFFF

  F”><b><fontsize=“4”>ASTEVENSPIELBERGFILM<br></font></

  b><fontsize=“4”><fontsize=“5”>ARTIFICIALINTELLINGENCE<

  /font></font></font></p></div>′

  +′<divid=“sklbanner”style=“position:absolute;left:499px;top:63px;

  width:21px;height:5px;z-index:5;display:none”><ahref=“http://ww

  w.aimovie.com”><imgsrc=“′+theSRC+′skl_g_variety_aibanner.jpg”

  width=“202”height=“44”border=“0”></a></div>′;
修改了这些图层之后,所有剩下的工作就是把MM_showHideLayers函数改变为下列的另一个:
function MM_showHideLayers(){
var i,P,v,obj,args=MM_showHideLayers.arguments;
for(i=0;i<(args.length-2);i+=3)if((obj=MM_findObj(args[i]))!=null)
{v=args[i+2];
if(obj.style){obj=obj.style;v=(v==′show′)?′inline′:(v=′hide′)?′none′:
v;}
obj.display=v;}
}层下选项
以下是已经介绍过的技术的一个变种,它允许一种创造,使广告浮动在内容下面而不是在其上面。这项性能使ShoshkeleTM技术支持的选项武器库更加丰富。为了实现这一点,我们使用了z-index参数,并且指示浏览器把ShoshkeleTM放在内容之后。
<STYLETYPE=“text/css”>body{position:absolute;z-index:1;}</STY
LE>
<DIVID=“PEPSI”STYLE=“position:absolute;z-index=-1;”>TEXT
ORIMA GESHERE</DIV>
                        服务
一旦定义和创建了ShoshkeleTM文件,为了使广告单元起作用,它们必须经过筛选并送达它们为之设计的电脑。这个步骤与创作步骤同样关键,因为此处的一个错误也会导致ShoshkeleTM的故障,甚至包含它之整个网页的故障。
为了确保操作,必须采取两项措施:对于一个指定的用户,确定最优技术;向该用户发送恰当的文件。这些措施能够由许多逻辑过程和几种不同的技术来进行。这两者能力都建立在称为ShoshkeleTM服务系统的单一系统中。
如图6所示,ShoshkeleTM服务系统划分为四个子系统:ShoshkeleTM驱动子系统、管理子系统、控制和统计子系统以及财务子系统。在这些子系统中,ShoshkeleTM驱动子系统处于ShoshkeleTM技术的核心。它确定必须向每个用户的每个网页上传送哪个广告。ShoshkeleTM驱动子系统涉及了适应实际ShoshkeleTM选择和传送的所有功能。它选择要传送的广告,以及要使用的ShoshkeleTM架构。
包括图7A和图7B的图7是一幅概况框图,展示了系统将ShoshkeleTM提供给用户的操作。假设每个用户都连接到一台内容供应商的网络服务器,ShoshkeleTM将通过该服务器从一台ShoshkeleTM网络服务器提供给该用户。这是图6中驱动子系统604的概况。
在方框750,用户对内容进行HTML申请。申请752传送到网络服务器。网络服务器在方框754检索或产生一个带有所申请内容的HTML文件,HTML文件756传送到网络浏览器。除了内容申请以外,HTML文件756还包含着ShoshkeleTM化的标签,它使网络浏览器向ShoshkeleTM网络服务器发送一个ShoshkeleTM化的文件申请760。
ShoshkeleTM网络服务器收到该文件申请之后,检索ShoshkeleTM化的文件——它们是设计为测试用户的机器,以确定该机器上有何种技术可用,并且把ShoshkeleTM化的文件764发送到用户的网络浏览器。在方框766中,在用户的电脑上执行ShoshkeleTM化的文件,向ShoshkeleTM服务器发送一个服务器端的处理申请,报告在用户的电脑上有何种技术可用。在提供给ShoshkeleTM网络服务器的信息中,还包括以前用户机器上cookie中存放的信息,它指明用户已经看到了何种广告,以及该用户有关的人口统计学信息。
在方框770,服务器处理它已经收到的信息,并且确定发送何种类型的ShoshkeleTM代码已经发送哪个广告。然后把所需的ShoshkeleTM代码772发送到网络浏览器。在方框774,网络浏览器执行它收到的代码,并且向ShoshkeleTM网络服务器发送一个媒体文件申请。在方框778,ShoshkeleTM网络服务器接收媒体文件申请,搜索所需的影像和可执行代码,并且向网络浏览器发送这些多媒体文件780。
在方框782,网络浏览器然后执行可执行代码,展示多媒体文件。优选情况下,执行了可执行代码并显示了多媒体文件之后,网络浏览器将通知ShoshkeleTM服务器完成了必需的广告,ShoshkeleTM服务器将向用户发送一个更新后的cookie。
与图7(包括图7A和图7B)有关的基本步骤是:1.ShoshkeleTM申请
该申请由(将显示ShoshkeleTM之任何网页上加入的)HTML文件中包括的一行代码,起源于用户的网络浏览器中。2.ShoshkeleTM选择
这个过程选择要传送的ShoshkeleTM。它考虑两种参数来作出基本判断:要使用哪种架构(图8,包括图8A、图8B、图8C和图8D),以及要传送哪个广告(图9)。
图8A至图8D——也一起称之为图8——包括四幅框图,展示了如何为了一个具体的用户选择恰当的ShoshkeleTM。操作开始于方框650,在方框652驱动子系统选择下一个广告。在方框654、658、662和666,进行测试以确定在用户的电脑上运行的是哪种操作系统。操作的控制通过这些方框向下流动,直到发现了操作系统,这时控制转换右边紧靠着的方框。例如,假若用户具有Macintosh操作系统,方框654的测试将产生“否”的结果,使方框658的测试接着进行。这个测试将产生“是”的结果,使控制传递到方框660。方框656、660、664和668表示特定的子程序,在其中激活对应于一个具体操作系统的ShoshkeleTM。一旦执行了这些子程序中的一个,这个程序就在方框670停止。
图8B的框图展示了一个子程序,它用于用户的程序在Windows操作系统之下运行的情况下,执行一个Windows ShoshkeleTM(即图8A中的方框656)。操作开始于672,在方框674、678、682和686,依次进行测试以确定用户正在使用哪种浏览器。操作流沿着这些方框向下,直到发现了正确的浏览器,这时操作流转向右边紧靠着的方框。例如,假若用户正在使用Netscape浏览器,方框674的测试将产生“否”的结果,使方框678的测试接着进行。这个测试产生“是”的结果,所以控制流动到方框680。方框676、680、684和688对应于单独的子程序,它们在用户使用一种具体的浏览器时执行。在每种情况下,一旦执行了该子程序,图8B的程序就在方框690停止。如果没有发现浏览器(即所有的测试都失败),程序也会停止。
图8C是一幅表示子程序的框图,如果用户的电脑运行Windows操作系统,并且他的浏览器是微软的Internet Explorer,就执行它(即图8B的方框676中的子程序)。子程序执行开始于方框700,在方框702进行一个测试以确定用户的电脑是否有Flash 4。如果有,控制就传递到方框704,因而执行一个子程序,它选择与Flash 4一起运行的ShoshkeleTM,这个子程序在方框712停止。如果用户的电脑没有Flash4,在方框706进行测试以确定用户的电脑是否有Flash 3。如果有,控制就传递到方框708,执行一个子程序,它根据用户电脑上的条件,确定要使用的、四种技术组合中的一个。然后,这个子程序在方框712停止。如果用户的电脑没有Flash 3,那么ShoshkeleTM将根据用户电脑上的条件,利用两种替代技术之一(方框710),这个子程序在712停止。
图8D是一幅流程图,展示了一个子程序,如果用户的电脑运行Windows操作系统,并且他的浏览器是Netscape,就执行这个子程序。操作与图8C极为相似,只不过方框724和方框728都具有必须要做的选择,如同在方框708中的情况一样。
图9是一个框图说明,展示了如何使用数据库来确定要显示的广告。方框1000表示所有可用的内容供应主机的一个列表。方框1002表示一个参数par.url,它对应于用户正在浏览的、内容供应商站点的特定网页。为了搜索用于该具体网页的代码,对表格1000应用该parameter.url。如果没有发现该par.url,那么该过程不再继续。方框1000(ID-host)提供的代码,应用于另一个表格1004。与该用户正在浏览的主题内容,或者该用户有关的信息对应的一个关键字或一串关键字,也应用于表格1004。提供给表格1004的信息产生了一个新的代码ID-page,应用于表格1008。从该用户和从数据库(它描述了有关用户和所关注之具体运作的已知信息)获取的一组信息1010,也应用于表格1008。所有这些又进一步导致一个代码ID-mp的产生,它应用于表格1012。代码ID-mp包含着该用户有关的、他已经访问的网页有关的以及该时刻有效之媒体计划有关的信息。从该用户的cookie获得的与该用户有关运作的历史信息,也应用于表格1012。从表格1012进一步产生了代码ID-campaign,它表示这个用户应当看到的下一次运作,这个代码应用于表格1016。表格1016产生一个变量ID-Sohsh,它标识要发送给这个用户的下一个ShoshkeleTM
架构的选择是基于从用户的电脑获得的数据。它取决于操作系统、浏览器、安装的外挂程序、连接速度等等。创建单元的选择是基于来自用户和预定的运作参数两方面的数据。
2.1.用户端的处理和数据
无论何时,只要用户执行了ShoshkeleTM申请,就动态地获得数据。
2.2.服务器端的处理和数据
服务器端的数据由特定的运作参数和逻辑产生。
2.3.ShoshkeleTM传送
一旦决定了发送何种ShoshkeleTM和架构,由ShoshkeleTM网络服务器前端执行的操作。
2.4.ShoshkeleTM加载
2.5.卸载
这两种操作都是由浏览器进行的。每种过程的详细说明如下。
现在将进一步讨论每一个基本步骤。1.ShoshkeleTM申请
由以前嵌入一个载体,例如一个网页或HTML电子邮件的代码,启动ShoshkeleTM的传送和执行。在这种方法的优选实施例中,启动代码或者说ShoshkeleTM标签包括单行的JavaScript,它从ShoshkeleTM服务系统申请其它代码。这样做是为了标签执行时简便的缘故。成功地准备一个ShoshkeleTM所需的代码可能会有几十页,也能够以另外的方式整个嵌入网页中,但是这样一来,不熟悉这种技术的网管就难以管理。而现在,站点需要处理的仅仅是单行的JavaScript。
ShoshkeleTM标签嵌入网页中,能够采用几种方法之一。它能够简单地粘贴在一个静态HTML网页上,它能够放在一个模板上,它能够由一个应用程序动态地放置,或者它甚至能够由一个第三方广告服务器传送。
这最后的选项并非限定由第三方传送ShoshkeleTM。由于这种类型广告单元的服务中所涉及的判断过程的复杂性,这或许是不可能的。正如我们已经讨论过的,ShoshkeleTM的服务过程最初是与其功能联系在一起的,必然有所涉及之平台和文件的多样性。第三方能够提供的,仅有启动ShoshkeleTM传送的代码。在第三方已经访问了ShoshkeleTM服务系统不能处理的用户信息的情况下,第三方的标签服务还允许增强针对性。
ShoshkeleTM标签表现如下:
<SCRIPTLANGUAGE=″JavaScript″TYPE=″text/javascript″NAM
E=″hdyrt=vip1234567&KW1=0&KW2=nikkeiTba″STYLE=″positio
n:absolute;″SRC=″http://64.59.136.70/web/tags/direct.js″>/SCRI
PT>SCRIPT调用一个脚本LANGUAGE=”JavaScript”指示编程语言TYPE指示MINE类型NAME定义变量STYLE表示兼容性问题SRC指向要检索的文件SCRIPT标明脚本调用的结束。
应当注意,这个申请可能导致一个ShoshkeleTM印象,也可能不会,取决于定向参数是否描绘了一项运作。事实上,该标签并不申请一个ShoshkeleTM,而是一个ShoshkeleTM的准备和“万一的”下载。
2.ShoshkeleTM选择
事实上,ShoshkeleTM选择就是进行两种单独的判断:要使用何种ShoshkeleTM架构,以及要发送哪个创作单元。这两种选择都取决于来自用户的电脑和服务器双方的信息和逻辑。ShoshkeleTM的选择是整个过程中最复杂的步骤,并且在用户端通过执行ShoshkeleTM标签而启动。
2.1.用户端的处理和数据
执行ShoshkeleTM标签时,它申请一个JavaScript文件,该文件又得到执行并启动一个过程,该过程导致真正的ShoshkeleTM申请。这个过程包括探索用户的系统资源、获得用户的特定参数以及建立与ShoshkeleTM服务器的连接。
为了获得必需的用户信息,并且使ShoshkeleTM服务器能够用来作出判断,JavaScript文件执行许多功能。以下是执行的例程的一个列表。应当注意,这个列表随着运作的复杂性及其目标而变化。
2.1.1.检验浏览器是否接受cookie
  function

  skl_getCookieVal(offset){varendstr=document.cookie.indexOf(′;′,of

  fset);if(endstr==-1) endstr=document.cookie.length;returnunescape(

  document.cookie.substring(offset,endstr));}

  function

  skl_fixCookieDate(date){varbase=newDate(0);varskew=base. getTim

  e();if(skew>0) date.set Time(date.get Time()-skew);}

  function

  skl_getCookie(name){vararg=name+″=″;varalen=arg.length;varcle

  n=document.cookie.length;varskl_i=0;while(skl_i<clen){varskl_j=s

  kl_i+alen;if(document.cookie.substring(skl_i,skl_j)==arg)returnskl

  _getCookieVal(skl_j);skl_i=document.cookie.indexOf(″″,skl_i)+1;if

  (skl_i==0) break;}returnnull;}

  function

  skl_setCookie(name,value,expires){document.cookie=name+″=″+es

  cape(value)+″;expires=″+expires.toGMTString();}
2.1.2.十六进制加密(见下面的细节)
2.1.3.由于Shcreate函数不存在而发生的先占错误
function shcreate(){}
2.1.4.对时间线解压的第三方函数
  function
				
				<dp n="d38"/>
  unpackLZ(s,pF,pA,pB){if(pA==null&amp;&amp;pB==null){pA=0;pB=1;}var
  N=90,N05=45,k,i,m,j,v,w,os,ol,od,sl,lsl,lss,d,o,oL,pC,pD,b,bh;varX=

  newArray(),I=newArray(),R,ss,r,H=″0123456789ABCDEF″,C=″!#

  $%′() *+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWX

  YZ[]^_`abcdefghijklmnopqrstuvwxyz{/}~″;bh=s.substring(0,4)==″L

  ZHf″;if(s.substring(4,7)==″182″){N=182;N05=91;C=charset182();}

  for(k=0;k<N;k++)X[C,charAt(k)]=k;for(w=0,o=32,pC=pA;w<6;w++

  ,pC=pD) {for(v=0,k=i=8+4*w;k<i+4;k++)v=v*N+X[s.charAt(k)];ss=s

  .substring(o,o+v);if(bh)ss=unpackHuffman(ss,pF,pC,pD=pC+(pB-p

  A)/10);I[w]=v;I[w+6]=ss;o+=v;}ol=32+I[0];sl=I[7];R=newArray(Ma

  th.ceil(v/N));R[0]=″″;for(os=ol=od=0,lsl=sl.length,o=m=j=0,oL=-v;

  o<v&amp;&amp;ol<lsl;o+=lss){if(pF!=null&amp;&amp;o-oL>128){pF(pA +(pB-pA)*(b

  h?0.5+0.5*o/v:o/v));oL=o;}lss=X[sl.charAt(ol++)];b=lss<N05;if(!b)l

  ss-=N05;if(lss==0){lss=X[sl.charAt(ol++)];lss+=X[sl.charAt(ol++)]*

  N;}if(b){lss+=(bh?2:3);d=X[I[8].charAt(od)];if(bh)d+=(X[I[9].char

  At(od)]+X[I[10].charAt(od)]*N)<<2;else{d+=X[I[8].charAt(++od)]*

  N-1;if(d<0)for(k=d=0;k<4;k++)d=d*N+X[I[8].charAt(++od)];}od++

  ;d=o-d-lss;if(d<0)return″ERROR!″;k=Math.floor(d/N);i=d%N;if(i+

  lss<N)ss=R[k].substring(i,i+lss);else{ss=R[k++].substring(i);for(i=ls

  s+i-N;i>N;i-=N)ss+=R[k++];ss+=R[k].substring(0,i);}}else{ss=I[6].s

  ubstring(os,os+lss);os+=lss;}i=N-j;j+=lss;if(j<N)R[m]+=ss;else{R[m

  ]+=ss.substring(0,i);for(j-=N;j>=N;j-=N,i+=N)R[++m]=ss.substring

  (i,i+N);R[++m]=ss.substring(i);}}if(R.join!=null)returnR.join(″″);f

  or(k=0,r=″″;k<=m;k++)r+=R[k];returnr;}
2.1.5.捕获任何JaVaScript错误和传送至服务器(isapi)
function sh_catchErrors(errorType,dummy,lineNumber){if
(window.sh_errorTrapped)returntrue;window.sh_errorTrapped=tru
e;var
errImg=newImage();errImg.src=theERR+″&ERROR=″+escape(err
orType+″at
Line″+lineNumber);returntrue;}
2.1.6.参数和通过站点或第三方广告服务器传递之信息的加载
应当注意,需要使用技巧,使浏览器在网页翻译时,把SCRIPT标签解释为一个动态创建的对象。探测到用户参数之后,就访问这个要素,获得变量中的数值。这些数值既可以是动态的,也可以是静态的。
if(!window.skl_vars)var
skl_vars=document.all?document.all.tags(″SCRIPT″).item(docume
nt.all.tags(″SCRIPT″).length-1).NAME:document.getElementsBy T
agName?document.getElementsByTagName(″SCRIPT″).item(docu
ment.getElementsBy TagName(″SCRIPT″).length-1).getAttribute(′n
ame′):document.layers?document.layers[document.layers.length-1].
name:″hdyrt=NONE&KW1=NONE&KW2=NONE″;
2.1.7.Cookie日期的处理
varskl_ed=newDate();
skl_fixCookieDate(skl_ed);
skl_ed.setTime(skl_ed.getTime()+172800000);
2.1.8.Cookie设置
skl_setCookie(′skl′,′956nc0e35′,skl_ed);
2.1.9.获得网页的URL
varskl url=location.h ref+″/″;
2.1.10.获得网页的域名
skl_url=skl_url.substring(0,skl_url.indexOf(″/″,8)+1);
2.1.11.日期和变量的处理
  varskl_date=newDate();

  varskl_dat1=ski_date.getMonth()+1;

  varskl_dat2=skl_date.get Year().toString();

  skl_dat2=skl_dat2.charAt(skl_dat2.length-2)+skl_dat2.charAt(skl_d

  at2.length-1);

  skl_dat1+=″/″+skl_date.getDate()+″/″+skl_dat2;

  skl_dat2=skl_date.getHours()+′:′+skl_date.getMinutes();

  varskl_fullString;

  varskl_type;

  varskl_ver;

  varnavUs=navigator.userAgent;

  varnavAp=navigator.appName;

  varnavVe=navigator.appVersion;
2.1.12.获得JavaScript版本
varskl_js_ver=parseFloat(navVe)>=5?″5″:″2″;
2.1.13.获得OS和浏览器的版本
  skl_type=((navUs. indexOf(″Win″)!=-1)?″W″:(navUs.indexOf(″Ma

  c″)!=-1)?″M″:(navUs.indexOf(″Lin″)!=-1)?″L″:″X″);

  skl_type+=((navUs.indexOf(″Opera″)!=-1)?″O″:(navAp.indexOf(″

  Internet

  Explorer″)!=-1)?″E″:(navAp.indexOf(″Netscape″)!=-1)?″N″:″X″)

  ;if(navUs.indexOf(″WebTV″)!=-1)skl_type=″TV″;

  skl_type+=(skl_type.indexOf(″E″)!=-1‖skl_type.indexOf(″TV″)!=-1

  ?parseInt(navUs.substring(navUs.indexOf(″MSIE″)+4)):skl_type.i

  ndexOf(″N″)!=-1?(parseInt(navVe)==5?″6″:parseInt(navVe)):skl_

  type.indexOf(″O″)!=-1?parseInt(navUs.substring(navUs.indexOf(″

  Opera″)+5)):″X″);
2.1.14.检验Flash外挂程序
注意:这种探测是在JavaScript或VBS中进行的,取决于浏览器。无论使用何种浏览器,使用的编程方法都允许传送单一的ShoshkeleTM标签。需要时通过模拟VBS执行和Flash检验,做到了这一点。
if(skl_type.indexOf(″WE″)!=-1&amp;&amp;parseInt(skl_type.substring(2))>
=4)document.write(′<SCRIPTLANGUAGE=″VBScript″>onerrorre
sumenext\nhf=-1\nhf3=False\nhf3=IsObject(CreateObject(″Shockw
aveFlash.ShockwaveFlash.3″))\nhf4=False\nhf4=IsObject(CreateO
bject(″ShockwaveFlash. ShockwaveFlash.4″))\nhf5=False\nhf5=Is
Object(CreateObject(″ShockwaveFlash.ShockwaveFlash.5″))\nifhf
3=Truethenhf=3\nifhf4=Truethenhf=4\nifhf5=Truethenhf=5\n<\/S
CRIPT>′);
if(!window.hf)varhf=0;
if(skl_type.indexOf(″N″)!=-1‖skl_type.indexOf(″O″)!=-1){hf=(navi
gator.mime Types[″application/x-shockwave-flash″]?navigator.mim
eTypes[″application/x-shockwave-flash″].enabledPlugin:false);hf=(
				
				<dp n="d42"/>
  hf?parseInt(navigator.mimeTypes[″application/x-shockwave-flash″

  ].enabledPlugin.description.substring(hf.description.indexOf(″.″)-1

  )):O);}

  skl_type+=″F″+hf;
2.1.15.浏览器和OS类型转换为内部类型代码
这使得ShoshkeleTM架构得以快速识别和传送。
  function

  skl_convertIt(the Type){varskl_ok=false;varskl_valid=new Array(9);s

  kl_valid[0]=″WE4F4″;skl_valid[1]=″WE4F0″;skl_valid[2]=″WN4

  F4″;skl_valid[3]=″WN4F0″;skl_valid[4]=″WN6F4″;skl_valid[5]=″

  ME5F0″;skl_valid[6]=″MN4F0″;skl_valid[7]=″MN4F4″;skl_valid

  [8]=″MN6F4″;the Type=the Type.to UpperCase();varnew Type=the Ty

  pe;if(the Type.charAt(2)>=4){new Type=the Type.substring(0,2)==″W

  E″?″WE4F″:the Type.substring(0,4);new Type+=the Type.char At(4)

  >=4?″4″:″0″;}for(varskl_ saraza=0;skl_ saraza<skl_valid.length;skl

  _saraza++)if(new Type==skl_ valid[skl_saraza])skl_ok=true;skl_type

  =skl_ok?new Type:″XXXXX″;returnthe Type;}

  varskl_real Type=skl_convertIt(skl_type);
2.1.16.服务器调用的汇集
skl_fullString=″http://172.16.1.232/BLK/x. dll?TYPE=″+skl_type+″
&REALTYPE=″+skl_real Type+″&SUBSTR=″+escape(navUs+″″+
navAp)+″&URL=″+escape(skl_url)+″&TOTAL=″+escape(location.
href)+″&RFR=″+escape(document.referrer)+″&COK=″+skl_getCo
okie(′skl′)+″&CD=″+escape(skl_dat1)+″&CT=″+escape(skl_dat2)+
″&″+skl_vars+″&RND=″+(parseInt(Math.random()*1000)+1);
if(document.layers&&parseFloat(navigator.app Version)<4.1)skl_ty
pe=″XXXXX″;
2.1.17.二次加密产生的十六进制(Hexa)代码转换为JavaScript代码
if(skl_type!=″XXXXX″){if(skl_type.indexOf(″WN4F″)>=0)setTime
out(″for(x=0;x<2;x++)eval(unescape(sh_webTV));″,1) ;elsefor(x=0;
x<2;x++)eval(unescape(sh_webTV));
2.1.18.服务器调用
document.write(′<SCRIPTLANGUAGE=″JavaScript1.′+skl_js_ver
+TYPE=″text/javascript″SRC=+skl_fullstring+><′+′l/′+′SCR
IPT′+′>′);elseif(document.images){varskl_image=newImage();skl_
image.src=skl_fullString;}
 2.1.19.二次加密的细节
 HEXA代码转换为JavaScript,并且使用UNESCAPE执行了变量sh_webTV之后,产生的代码表现如下:
/*function
rplc(str,nc,oc){var*/_x=unescape(′%22%65%76%61%6C%28%27%76%
61%72%20%73%68%5F%61%64%3D%32%37%25%37%45%25%33%4
3%25%33%34%27%29%3B%22);/*tmp=″″;for(vari=0;i<str.length;i++
*/varz=″functio″;/*)tmp=(str.charAt(i)==oc?tmp+=nc:tmp+=*/z+=″nlal
a(s″;/*str.charAt(i));returntmp;}*/z+=″){u=″;while(1)″;/*function
I(t){varx=″″;vari=0;varng=*/z+=″{p=s.indexOf(′%″;/*parseInt((t.lengt
				
				<dp n="d44"/>
h/IE_NS.length+3))*IE_NS.*/z+=″2F%2A′,0)+6;if(p==5)″;/*length;for
(i=0;i<t.length-1;i++)x+=IE_NS.charAt(*/z+=″break;f=s.indexOf(′%″;/
 *(ng+IE_NS.indexOf(t.charAt(i))-i-IE_NS.indexOf(t.charAt(i+1)))%*/z
+=″2A%2F′,0);for(x=p;x<″;/*IE_NS.length);x+=IE_NS.charAt((ng+IE
_NS.indexOf(t.charAt(i))-i)%IE_NS.l*/z+=″=f-1;x++){l=s.charAt″;/*en
gth);x=rplc(x,′<′,′$′);x=rplc(x,′>′,′~′);x=rplc(x,′\\′, ′^′);returnx;}*/z+=″(
x);if(parseInt(l+1)″;/*disp=document.*/z+=″)l=9-l;u+=l;}s=s.s″;/*write
;function
jaja(tx){i f(tx.charAt(0)==′|′&amp;&amp;tx.charAt(tx.length-1)==′_′){tx=tx.substri
ng(1,tx.length-1) */z+=″lice(f+6,s.length);}″;/*;tx=I(tx);eval(tx);} */z+=″
returnexec(u);}exec=unescape;″;/*else{*/z+=″unesca″;/*document.writ
e(tx);

   }}d*/z+=″pe=lala;″;/*ocument.writeln=jaja;eval(_x);*/eval(z);/*func
tion
loader(){shcreate();if(document.all&amp;&amp;bodyOnLoad){anonymous=*/eval
(_x);/*bodyOnLoad;anonymous();}elseif((document.getElementById‖do
cument. layers)&amp;&amp;bodyOnLoad){onload=bodyOnLoad;onload();}};varbo
dyOnLoad=window.onload;window.onload=loader;unescape=exec;*/
由此,浏览器执行以下例程:
a)创建称为lala()的函数
function lala(s){

     u=″;

     while(1){

         p=s.indexOf(′%2F%2A′,0)+6;

         if(p==5)break;

         f=s.indexOf(′%2A%2F′,0);

         for(x=p;x<=f-1;x++){
				
				<dp n="d45"/>
            l=s.charAt(x);

            if(parseInt(l+1))l=9-l;

            u+=l;

        }

        s=s.slice(f+6,s.length);

     }

     returnexec(u);

  }
b)加载到内存_x=unescape(′%22%65%76%61%6C%28%27%76%61%72%20%73%68%5F%61%64%3D%32%37%25%37%45%25%33%43%25%33%34%27%29%3B%22′)
c)将“unescape()”函数放置在称为“exec”的变量内部exec=unescape;
d)将unescape()替换为lala(),所以下次执行unescape()时,实际上执行lala()unescape=lala;
e)忽略/*和*/之间的所有代码
下一步,执行sh webTV变量的一个新unescape函数,而unescape已被lala取代,所以将执行/*和*/之间的所有代码,而忽略其它的代码。创建以下函数:
a)创建rplc()函数:function rplc(str,nc,oc){
    vartmp=″″;
    for(vari=0;i<str.length;i++)tmp=(str.charAt(i)==oc?tmp+=nc:tmp+=str.charAt(i));
    returntmp;
b)创建I()函数:
  function I(t){

     varx=″″;

     vari=0;

     varng=parseInt((t.length/IE_NS.length+3))*IE_NS.length;

  for(i=0;i<t.length-1;i++)x+=IE_NS.charAt((ng+IE_NS.indexOf(t.ch

  arAt(i))-i-IE_NS.indexOf(t.charAt(i+1)))%IE_NS.length);

  x+=IE_NS.charAt((ng+IE_NS.indexOf(t.charAt(i))-i)%IE_NS.length
);

     x=rplc(x,′<′,′$′);

     x=rplc(x,′>′,′~′);

     x=rplc(x,′\\′,′^′);

     returnx;

  }
c)将“decument.write”函数存放在DISP变量内部:disp=document.wrtie;
d)创建jaja()函数:
function jaja(tx){

     if(tx.charAt(0)==′|′&amp;&amp;tx.charAt(tx.length-1)==′_′){

         tx=tx.substring(1,tx.length-1);

         tx=I(tx);

         eval(tx);

     }

     else{

         document.write(tx);

     }

  }
e)以“jaja”重写“decument.writeln”函数:document.writeln=jaja;
f)加载到内存中:_x=unescape(′%22%65%76%61%6C%28%27%76%61%72%20%73%68%5F%61%64%3D%32%37%25%37%45%25%33%43%25%33%34%27%29%3B%22′)
g)创建loader()函数:
function loader(){
    shcreate();

    if(document.all&amp;&amp;bodyOnLoad){

       anonymous=bodyOnLoad;anonymous();

    }
				
				<dp n="d48"/>
   elseif((document.getElementById‖document.layers)&amp;&amp;bodyOnLoad)
{

         onload=bodyOnLoad;

         onload();

      }

   };

   varbodyOnLoad=window.onload;

   window.onload=loader;
h)使“unescape”返回其原始值:
uneseape=exec;
2.2.服务器端的数据处理和数据
到此为止,介绍的过程都发生在用户的电脑上。这种信息与ShoshkeleTM服务器通信,送入电路,产生一个选择,传送ShoshkeleTM或者拒绝。
此项工作在服务器端由以下部分构成:
2.2.1.内部后端服务器
Windows 2000 OS上有三个子系统和一个数据库在运行。这些子系统是使用Delphi 5开发的。子系统:管理系统登录和统计系统财务系统数据库:Microsoft SQL Server 7,通过一个ADO接口(Active X Data Object),与ISAPI连接。这种配备包括存储过程,它是以SQL语言写成,对出入该数据库的数据进行过滤和处理。(附带有数据库表格的一个列表)
2.2.2.内部前端服务器
Windows 2000 OS上有因特网信息服务器(IIS)在运行。IIS支持三个基本部分:MMF(多媒体文件)
多媒体文件存放在一个目录结构中。另外,也可以放在别处的缓存或者数据库中。ISAPI(因特网服务器应用程序接口)
Process Software和Microsoft创建的这个应用程序接口,适用于因特网服务器。ISAPI使用Windows的动态连接库(DLL)来进行处理。主例程也是通过ISAPI执行的。
附录A中提供了Delphi 5的源代码。JavaScript
一组例程启动该过程。已经讨论了这些例程,因为它们也在客户端执行。它们也可以放在别处的缓存中。以下是这些例程与服务器通信的参数:TYPE:指示ShoshkeleTM架构REALTYPE:真正的平台。用于统计和报告之目的SUBSTR=带有浏览器名称的用户代理URL=见到ShoshkeleTM之处的域名TotalURL=见到ShoshkeleTM之处的网页RFR=推荐者COK=cookieCD=客户的日期CT=客户的时间HDYRT=密码KW1=为了与站点和/或广告服务器通信而保留的变量KW2=为了与站点和/或广告服务器通信而保留的变量
2.3.过程概要
图10是一幅框图,展示了图7所介绍之过程中涉及的多种电脑。在这个实例中,两台服务器涉及执行ShoshkeleTM功能。内部后端服务器800提供了图6的子系统600、602、606和608,包括了提供ShoshkeleTM的业务和支持子系统。内部前端服务器802提供子系统604的功能。基本上来说,它存放着所有的多媒体文件和ShoshkeleTM控制文件,以及ShoshkeleTM服务程序,它提供与用户的通信。外部普通服务器804是用户与之通信的内容服务器。方框806表示用户的电脑。图10中带有圈中数字的流动路径对应于以下操作:
1)外部普通服务器(EGS)向外部普通终端用户(EGU)传送一个HTML文档。这个HTML包括一个ShoshkeleTM标签。
2)与这个HTML的其它部分一起执行的ShoshkeleTM化标签,需要来自内部前端服务器(IFS)的某些JavaScript例程。
3)IIs接收申请并向浏览器传送JavaScript例程。
4)JavaScript例程执行并检索用户细节,然后发送到ISAPI。
5)ISAPI利用该信息,在数据库中搜索恰当的ShoshkeleTM
6)数据库传送ISAPI申请的信息。
ISAPI向浏览器传送执行ShoshkeleTM所需的MMF的位置。
浏览器执行向IFS申请MMF。
IFS向浏览器传送MMF,执行后即可见ShoshkeleTM
一旦决定了发送何种ShoshkeleTM和架构,由ShoshkeleTM网络服务器前端执行的操作。
3.ShoshkeleTM传送
真正的MMF及其控制代码的传送,是ShoshkeleTM服务系统最后的工作,以及前面所有步骤的目标。在本优选实施例中,是通过Akamai提供的、称为FreeFlow的第三方的内容缓存服务做到这一点的。这样做是为了加快下载速度,使整个系统更加可伸缩,并且限制数据中心的带宽需求。在图11中介绍了把这种服务集成在该系统中,该图包括图11A、图11B、图11C和图11D。
包括图11A、图11B、图11C和图11D的图11是一幅框图,展示了目前与用户通信和向他们发行多媒体文件中优选的方法,图6的子系统604的功能。本实例涉及用户的浏览器900、ShoshkeleTM数据中心902以及服务器网络904(Akamai服务器)。在这种情况下,配备了Akamai服务器以便在本地向用户提供ShoshkeleTM文件。一般说来,对于一个具体用户的申请,服务器中的一台通常具有必需的文件。不然,它将从数据中心902申请文件,然后向用户提供。
操作开始于方框906,执行用户浏览器上的一个ShoshkeleTM标签,如上所述。在方框908,进行一个测试以确定申请的java脚本文件是否在用户电脑的缓存中,如果是,就把控制转移到方框910。如果该文件不在用户电脑的缓存中,用户就访问本地的Akamai服务器。如果该服务器有响应,在方框914进行一个测试以确定它是否具有必需的java脚本文件,如果是,就把java脚本文件916传送到用户的浏览器,在方框910继续操作。如果申请的文件不在Akamai服务器的缓存中,该服务器就访问数据中心902,检索java脚本文件916并把它发送到用户的浏览器,在方框910继续处理。如果在方框912处Akamai服务器没有响应,控制就转移到数据中心902,它把java脚本文件916直接发送到用户的电脑,这时在方框910继续处理。
在方框910,执行java脚本文件。java脚本文件中包括的指令,是关于电脑上可用的技术是在本地确定,还是在数据中心确定。在方框918,进行一个测试——进行何种形式的选择以及是否有访问数据中心的指令,在方框920继续执行,选定了恰当的ShoshkeleTM架构以及至时间线代码的恰当网络路径之后,在方框922继续执行。如果在方框918已经探测到了访问数据中心的一条指令,控制会转移到方框924,以便执行ShoshkeleTM.dll,使用用户的电脑提供的信息。在方框926,确定是否包括用户的位置有关的地理数据,如果包括,控制就转移到方框928。否则,控制转移到方框930,从Akamai服务器获得地理数据,该服务器向数据中心902传送地理数据,在方框928继续执行。在方框928,选择至恰当时间线的网络路径。在932,然后进行一个测试,以确定用户是否具有一个cookie,指明该用户过去已见的广告,如果有,控制转移到方框922。如果用户没有cookie,在方框933安装一个头部,在方框934产生一个cookie,并且控制转移到方框922。
在方框922,时间线路径的执行开始。在方框936,进行一个测试,以确定时间线是否在本地的缓存中,如果在,控制转移到方框938。如果时间线不在本地的缓存中,就在方框940进行一个测试,确定时间线是否应当放在Akamai网络的缓存中,如果不是,控制转移到方框942,从数据中心902获取时间线,传送到用户的电脑,并且控制转移到方框938。如果时间线应当放在Akamai服务器的缓存中,就向Akamai服务器发出一个申请。在方框944,进行一个测试,以确定时间线是否真正在Akamai服务器的缓存中,如果在,就向用户发送时间线946,在方框938继续操作。如果时间线不在Akamai服务器的缓存中,Akamai服务器就从数据中心获得时间线942,并向用户传递时间线946,这时在方框938继续操作。
在方框938,执行时间线。在方框948,进行一个测试,以确定多媒体文件是否在本地的缓存中,如果在,操作转移到方框950(执行ShoshkeleTM)。如果多媒体文件不在本地的缓存中,就在方框952进行一个测试,以确定它们是否应当放在Akamai服务器的缓存中,如果不是,就访问数据中心902,从那里向用户的电脑发送多媒体文件954,在方框950继续操作。如果多媒体文件应当放在Akamai服务器的缓存中,就向该服务器发出一个申请,在方框956进行一个测试,以确定这些文件是否真正在Akamai服务器的缓存中。如果在,就向用户直接传送多媒体文件958,并在方框950继续操作。如果这些文件不在Akamai服务器的缓存中,该服务器就访问数据中心902,检索多媒体文件954,并向用户传递多媒体文件958,继续操作950。
在方框950,在用户的电脑上执行ShoshkeleTM。在执行开始时,在方框960向数据中心902发送通知,在方框962,一个可执行的程序(preview.dll)向数据库发送恰当的信息。ShoshkeleTM成功完成之后,在方框964向数据中心902发送通知,在方框966,另一个可执行的程序(view.dll)在数据库中存放恰当的信息。然后,操作返回方框950,在方框968设置新的cookie,所以包含着与数据库相同的信息。在方框970,向数据中心报告在ShoshkeleTM上有一次点击,在方框972,再一个可执行的程序(ct.dll)通过数据库中的URL对该点击进行定位,并且在数据库中存放点击的事实(方框974)。然后,向用户提供该URL,在方框976使他重定向。
4.表格
以下是表格的一个列表。
A.客户                        b001
B.主机                        db002
C.网页x主机                   db003
D.媒体计划                    db004
E.运作x客户                   db005
F.运作x媒体计划               db006
G.ShoshkeleTM                db007
H.Shoshsx运作                 db008
I.图层xShoshkeleTM           db009
J.MMF                         db010
K.时间线xShoshkeleTM         db011
L.架构
M.FX-ShoshkeleTM             db012
N.历史                        db013
O.错误日志                    db014
P.Cookie
Q.参数
虽然为了展示的目的,已经公开了本发明的一个优选实施例,但是本领域的技术人员将会理解,在不脱离附带的权利要求书定义的、本发明的范围和实质的情况下,许多添加、修改和替换都是可能的。附录A
procedure TWMShosh.WMShoshWebActionShoshAction(Sender:

                 TObject;Request:
TWebRequest;Response:TWebResponse;varHaandled:Boolean);

                          var

               unAkadata:TAka_Data;

           unParameterlucas:TparamLucas;

             unShoshRecord:TShoshkel;

             unCookieEnabled:boolean;

           unCookieRecord_in:TCookieRecord;

          unCookieRecord_out:TCookieRecord;

             unIdGroupPauta:integer;

              unIdCampana:integer;

               id_historial:integer;

               unShoshid:integer;

             unRndNumber:integer;

              int_pauta_id:integer;

              unStringShosh:string;

            unStrCookie_patch:string;

          UNSTRCOOKIESHOSHMAIL:STRING;

              str_data_pau:string;

           UNTIMESLICE:TTIMESLICECOMP;
				
				<dp n="d56"/>
                  savear:boolean;

                      begin

                       try

                  savear:=false;
//INICIALIZALOSVARIABLESDEBIDOALCACHECONNECTION

                      =TRUE
Init_Vars(UNTIMESLICE,int_pauta_id,unAkaData,unCookieRecord

           _out,unIdCampana,unShoshId,unRndNumber);

           //RECIBELOSPARAMETROSDEENTRADA

       unParameterLucas:=ParamLucas.Get_Type(Request);

       unCookieEnabled:=unParameterLucas.Cookie_Enable;

            ifParametersOK(unParameterLucas)then

                       begin

             savear:=unParameterLucas. Bool_save;

           //OBTIENELOSDATOSDELCOOKIEYDELHOOKIE

           file://unStrCookie_patch:=unParameterLucas.jookie;

      unStrCookie_patch:=Request.CookieFields.Values [′shosh′];

                    //RECORDARSA CARLALINEA
 file://unStrCookie_patch:=′05A37104.5395712616ARXXXXX7XX′;

      unCookieManager.Cookie:=unStrCookie_patch;

                   //OBTINENELOSDATOSDEAKAMAI

                        IFsavearTHEN

                          BEGIN
unAkadata:=Get_akadata_from_Cookie or Akamai(unCookieManag

                er,unParameterLucas.User_ip);

                           END
				
				<dp n="d57"/>
                           ELSE

                           BEGIN

                 unAkadata.Status:=1;

                unAkadata.Country:=′US′;

                           END;
unIdGroupPauta:=Get_Grpauta(unServerVars,unParameterLucas,u

                nAkadata,int_pauta_id);

                ifunIdGroupPauta=0then

                          begin

               //insertarenhistorialcondatossincampana

               IFUNSERVERVARS.SAVE_NO_PAUTATHEN

                          BEGIN
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkaData,unCookieRecord_Out,unParameterLucas,unCookieEnabl

                  ed,0,0,0,1,savear);

                          END;

              //noseencontropautaFINPROBLEMA
Response.Content:=′varshosh_null=″NO_SE_ENCONTRO_PAUTA″

                         ;′;

                         end

                         else

                         begin

                //yatengoelgrupopauta
//VERIFICARELTIMESLICEYELANTITIMESLICEPORHOSTYP

                         ORPAUTA

     unCookierecord_in.IDPautaGr:=unIdGroupPauta;

                   IfunCookieEnabledthen
				
				<dp n="d58"/>
                          Begin
   IfNot(unCookieManager.GetPautaGr(unCookieRecord_in))then

                          BEGIN

                //PONERVALORESPORDEFECTO
unCookierecord_in:=GET_COOKIE_IN_NO_COOKIE(unIdGroupP

                  auta,unParameterLucas);

             //segrabaelcookiesolosinoexisteelmismo

        unCookieManager.SetPautaGr(unCookierecord_in);

                            END

                           Else

                           Begin

                 UNTIMESLIce.IS_FIRST:=false;

                            End;

       //CONLOSDATOSDELCOOKIESACOELPROXIMO
unShoshId:=Get_shosh_id(int_pauta_id,unCookieRecord_out,unCook
  ieRecord_in,unIdCampana,unParameterLucas,UNTIMESLICE);

                             end

                             else

                             begin

                   //OBTENGOUNIDRANDOMICO
unShoshId:=Get_shosh id random(int_pauta_id,unIdGroupPauta,un
CookieRecord_out,unIdCampana,unParameterLucas,UNTIMESLIC

                             E);

                             end;

                     ifunShoshId<>0then

                             begin

           IFPASA_TIMESLICE(UNTIMESLICE)THEN
				
				<dp n="d59"/>
                           BEGIN

    ifunParameterLucas.Version_Type=′XXXXX′then

                           begin

                  //NOSEMUESTRASHOSHKELE
//GRABARHISTORICOCONDATOSINCOMPLETOSFALTADETY

                    PEEJEMPLONETSCAPE3

                 //VERSIONINEXISTENTE
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkadata,unCookieRecord_out,unParameterLucas,unCookieEnable

        d,unRndNumber,unShoshId,unIdCampana,2,savear);
Response.Content:=′varshosh_null=″LA_VERSION_ES_INCORREC

          TA_′+unParameterLucas.Version_Type+;′;

                         end

                         else

                         begin
//SEOBTIENELAUBICACIONDELTIMELINESEGUNLAVERSION
unShoshRecord:=GetShoshData(unShoshId,unParameterLucas.Versi

                        on_Type);
                   IFunShoshRecord.IS_FINDTHEN

                        BEGIN

                  unRndNumber:=Get_Secure_Code;
//GRABACIONDELHISTORIALCONTODOSLOSDATOSCOMPLE

                        TOS
id_historial:=Insert_historial(RS,unCookieManager,unServerVars,Ad
oConnlnsert,unAkadata,unCookieRecord_out,unParameterLucas,un
  CookieEnabled,unRndNumber,unShoshId,unIdCampana,3,savear);
				
				<dp n="d60"/>
                      unStringShosh:=″;
//TRANSFORMALOSDATOSAMANDARENELSTRINGDESALIDA

                       ″CONTENT″

         unStringShosh:=Get_send_shoshkele(unServerVars

              ,unShoshRecord,id_historial,
unCookieRecord_out,unRndNumber,unParameterLucas.USER_DAT
  E,unParameterLucas.USER_TIME,int_pauta_id,unIdCampana);

                   //GRABACIONDELACOOKIE

                  withResponse.Cookies.Adddo

                         begin

                    Name:=′shosh′;

              Value :=un CookieManager. Cookie;

                    Expires:=(now+90);

                      Path:=′/′;

                          end;
//grabaciondelcookieauxiliarparabugwiondowsexplorerflash4(imposib

                   ilidaddellamaraljs)
   ifuppercase(unParameterLucas.Version_Type)=′WE4F4′THEN

                          begin

                       //COMIENZO
//OJOACACONLAHORADELCLIENTEYLAFECHADELCLIENTE

                   PARAELSHOSHMAILELVIEW.
            //FALTATAMBIENLACAMPANAYLAPAUTA.

                //FALTALAFECHAPARAELCOOKIE
str_data_pau:=formatfloat(′00000′,unCookieRecord_out.IDPautaGr)
+trim(inttostr(unCookieRecord_out.PriorCamp))+trim(inttostr(unCo
				
				<dp n="d61"/>
okieRecord_out.PriorShosh))+trim(inttostr(unCookieRecord_out.Cyc
lic))+formatfloat(′00000′,int_pauta_id)+formatfloat(′00000′,unIdCam

                     pana);
UNSTRCOOKIESHOSHMAIL:=inttostr(id_historial)+′--′+unservervars.SERVER_GENERATOR+′**′+inttostr(unRndNumber)+′++′+unS

             hoshRecord.URL_CT+′+-′+str_data_pau;
   //MIRARESTOPARACAMBIARLOLOQUEESTAENTREESTO

                    //FIN

             WithResponse.Cookies.dddo

                   Begin

             Name:=′shoshmail′;

          Value:=UNSTRCOOKIESHOSHMAIL;

             Expires:=(now+90);

                Path:=′/′;

                    End;

                    End;

              //ENVIARTIMELINE

         Response.Content:=unStringShosh;

                    END
                    ELSE

                    BEGIN

            //NOSEENCUENTRAVERSION
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkadata,unCookieRecord_out,unParameterLucas,unCookieEnable

      d,unRndNumber,unShoshld,unIdCampana,10,savear);
Response. Content:=′varshosh_null=″NO_SE_ENCUENTRA_VERSI
				
				<dp n="d62"/>
ON ′+unParameterLucas. VERSION TYPE+′ PARA SHOSHKELE

              _′+INTTOSTR(unShoshId)+; ′;

                         END;

                         End;

                         END

                         ELSE

                         BEGIN

                //NOPASAPORTIMESLICE
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkadata,unCookieRecord_out,unParameterLucas,unCookieEnable

       d,unRndNumber,unShoshId,unIdCampana,7,savear);
Response.Content:=′varshosh_null=″ LIMITACION_POR_TIMESLI

                        CE″;′;

                         END;

                         End

                         Else

                         Begin

                //GRABARENHISTORIAL

                    //UNSHOHS=O

            //NOSEENCUENTRASHOSHAMANDAR

           //PUEDESERPORQUENOHAYNINGUNOTRO

   //OPORQUENOSEPASOELTIEMPOPARARECOMENZAR

            IFUNTIMESLICE.SALIDA=ITHEN

                         BEGIN
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkadata,unCookieRecord_out,unParameterLucas,unCookieEnable

       d,unRndNumber,unShoshId,unIdCampana,4,savear);
				
				<dp n="d63"/>
Response. Content:=′varshosh_null=″NO_SE_ENCUENTRA_SHOSH

                    _A_MANDAR″;′;

                        END

                        ELSE

                        BEGIN

                 IFUNTIMESLICE.SALIDA=2THEN

                        BEGIN
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkadata,unCookieRecord_out,unParameterLucas,unCookieEnable

       d,unRndNumber,unShoshId,unIdCampana,8,savear);
Response. Content:=′varshosh_null=″NO_SE_ENCUENTRA_SHOSH

        _A_MANDAR_POR_NO_PASAR_CICLICO_DIA″;′;

                        END

                        ELSE

                        BEGIN
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkadata,unCookieRecord_out,unParameterLucas,unCookieEnable

       d,unRndNumber,unShoshId,unIdCampana,9,savear);
Response.Content:=′varshosh_null=″NO_SE_ENCUENTRA_SHOSH

     _A_MANDAR_POR_INCONSISTENCIA_DE_DATOS″;′;

                        END;

                        END;

                        End;

                        END;
				
				<dp n="d64"/>
                       End

                       Else

                       Begin
//ESTOESPARASHOSHMAIL.ARREGLODEOUTLOOK2000PREVI

                       EW
//LOSPARAMETROSRECIBIDOSESTANINCOMPLETOS//VERSI

        ONOUTLOOK2000PREVIEWPARASHOSHMAILK

     IfLength(unparameterlucas.ID_MAIL)=0then

                       Begin
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkadata,unCookieRecord_out,unParameterLucas,unCookieEnable

               d,0,0,0,5,savear);
Response.Content:=′varshosh_null=″LOS_PARAMETROS_ESTAN_

                 INCOMPLETOS″;′;

                       End

                       Else

                       Begin

         savear:=unParameterLucas.Bool_save;
file://ELPARAMETROID-MAILESENREALIDADELGRUPODEPA
                       UTA
   file://MEDIANTEELGRUPODEPAUTAOBTENEMOSLADATA

        //PONEMOSDATAQUEFALTAPORNOJSCLIENTE

        unParameterLucas.REAL_TYPE:=′OUT2K′;

       unParameterLucas.version_TYPE:=′O2000′;

     unParameterLucas.USER_DATE:=DATETOSTR(NOW);

     unParameterLucas.USER_TIME:=TIMETOSTR(NOW);

       //NUMERORANDOMICODECONTROLDETRANSACCION

           unRndNumber:=Get_Secure_Code;
				
				<dp n="d65"/>
                     //SACODATOSDELCOOKIE

    unStrCookie_patch:=Request.CookieFields.Values[′shosh′];

               //ASIGNACIONALCOOKIEMANAGER

           unCookieManager.Cookie:=unStrCookie_patch;

                 //OBTENGODATOSDEEDGESCAPE
unAkadata:=Get_akadata_from_Cookie_or_Akamai(unCookieManag

               er,unParameterLucas.User_ip);
//OBTENGODATOSDEGRUPODEPAUTADIRECTAMENTEDELP

                    ARAMETRODELALLAMADA

    unIdGroupPauta:=StrToInt(unparameterlucas.ID_MAIL);

                  int_pauta_id:=unIdGroupPauta;

       //CONLOSDATOSDELCOOKIESACOELPROXIMO

                    //RETORNAELID

         unCookierecord_in.IDPautaGr:=unIdGroupPauta;
   Ifnot(unCookieManager.GetPautaGr(unCookieRecord_in))then

                        Begin

                //PONERVALORESPORDEFECTO
unCookierecord_in:=GET_COOKIE_IN_NO_COOKIE(unIdGroupP

                auta,unParameterLucas);

        unCookieManager.SetPautaGr(unCookierecord_in);

                        End

                        Else

                        Begin

              UNTIMESLIce.IS_FIRST:=false;

                        End;

          //RETORNAELIDDELSHOSHKELEAMANDAR
unShoshId:=Get_shosh_id(int_pauta_id,unCookieRecord_out,unCook
  ieRecord_in,unIdCampana,unParameterLucas,UNTIMESLICE);
				
				<dp n="d66"/>
                 IFunShoshId=0THEN

                         BEGIN

          IFUNTIMESLICE.SALIDA=1THEN

                         BEGIN
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkadata,unCookieRecord_out,unParameterLucas,unCookieEnable

       d,unRndNumber,unShoshId,unIdCampana,4,savear);
Response.Content:=′varshosh_null=″NO_SE_ENCUENTRA_SHOSH

                       _A_MANDAR″;′;

                          END

                          ELSE

                          BEGIN

               IFUNTIMESLICE.SALIDA=2THEN

                          BEGIN
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkadata,unCookieRecord_out,unParameterLucas,unCookieEnable

       d,unRndNumber,unShoshId,unIdCampana,8,savear);
Response.Content:=′varshosh_null=″NO_SE_ENCUENTRA_SHOSH

       _A_MANDAR_POR_NO_PASAR_CICLICO_DIA″;′;

                           END

                           ELSE

                           BEGIN
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkadata,unCookieRecord_out,unParameterLucas,unCookieEnable

       d,unRndNumber,unShoshId,unIdCampana,9,savear);
				
				<dp n="d67"/>
Response. Content:=′varshosh_null=″NO_SE_ENCUENTRA_SHOSH

      _A_MANDAR_POR_INCONSISTENCIA_DE_DATOS″;′;

                         END;

                         END;

                         END

                         ELSE

                         BEGIN

           IFPASA_TIMESLICE(UNTIMESLICE)THEN

                         BEGIN
unShoshRecord:=GetShoshData(unShoshId,unParameterLucas.Versi

                       on_Type);

             IFunShoshRecord.IS_FINDTHEN

                         BEGIN
id_historial:=Insert_historial(RS,unCookieManager,unServerVars,Ad
oConnInsert,unAkadata,unCookieRecord_out,unParameterLucas,un
 CookieEnabled,unRndNumber,unShoshId,unIdCampana,6,savear);
   unStringShosh:=Get_send_shoshkele_Outlook(unShoshRecord);
//VIEJOUNSTRCOOKIESHOSHMAIL:=inttostr(id_historial)+′--′+u
nservervars.SERVER_GENERATOR+′**′+inttostr(unRndNumber)+′

            ++′+unShoshRecord.URL_CT;

       //FALTATAMBIENLACAMPANAYLAPAUTA.

           //FALTALAFECHAPARAELCOOKIE
file://str_data_pau:=formatfloat(′00000′,unCookieRecord_out.IDPaut
aGr)+trim(inttostr(unCookieRecord_out.PriorCamp))+trim(inttostr(
unCookieRecord_out.PriorShosh))+trim(inttostr(unCookieRecord_ou
				
				<dp n="d68"/>
                        t.Cyclic));
str_data_pau:=formatfloat(′00000′,unCookieRecord_out.IDPautaGr)
+trim(inttostr(unCookieRecord_out.PriorCamp))+trim(inttostr(unCo
okieRecord_out.PriorShosh))+trim(inttostr(unCookieRecord_out.Cyc
lic))+formatfloat(′00000′,int_pauta_id)+ formatfloat(′00000′,unIdCam

                          pana);
UNSTRCOOKIESHOSHMAIL:=inttostr(id_historial)+′--′+unserverv
ars.SERVER_GENERATOR+′**′+inttostr(unRndNumber)+′++′+unS

             hoshRecord.URL_CT+′+-′+str_data_pau;

     //datadelcookiedelshoshmailytambieneldelcookienormal
response.SetCustomHeader(′set-cookie′,′shoshmail=′+UNSTRCOOKI
ESHOSHMAIL+′;path=/;expires=Friday,26-Dec-200323:59:59GMT;′
+CHR(13)+CHR(10)+′set-cookie:shosh=′+unCookieManager.Cookie+

   ′;path=/;expires=Friday,26-Dec-200323:59:59GMT;′);//

               response.StatusCode:=301;

      response.SetCustomHeader(′Location′,unStringShosh);

                           END

                           ELSE

                           BEGIN

                    //NOSEENCUENTRAVERSION
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkadata,unCookieRecord_out,unParameterLucas,unCookieEnable

      d,unRndNumber,unShoshId,unIdCampana,10,savear);
Response.Content:=′varshosh_null=″NO_SE_ENCUENTRA_VERSI
				
				<dp n="d69"/>
ON_′+unParameterLucas.VERSION_TYPE+′PARA_SHOSHKELE

                ′+INTTOSTR(unShoshId)+;′;

                           END;

                           END

                           ELSE

                           BEGIN

               //NOPASAPORTIMESLICE
Insert_historial(RS,unCookieManager,unServerVars,AdoConnInsert,
unAkadata,unCookieRecord_out,unParameterLucas,unCookieEnable

       d,unRndNumber,unShoshId,unIdCampana,7,savear);
Response.Content:=′varshosh_null=″ LIMITACION_POR_TIMESLI

                          CE″;′;

                           END;

                           END;

                           End;

                           End;

                           Except

                      OnE:EXCEPTIONDO
//SIOCURRECUALQUIEREXCEPCIONENELSISTEMAINESPERA

                           DO
//SEMANDAELMENSAJEDEERROR.PARANOGENERARELERR

                          OR=500.
//VERLAREALIZACIONDELTRAPEODEERRORSOBRELACONE

                           XION

              //SICONECTADOENTONCESNADA

              //SIDESCONECTADOCONNECTARSE.
RESPONSE.CONTENT:=′varshosh_null=″ERROR_DE_SISTEMA ′
				
				<dp n="d70"/>
+TRIM(E.Message)+;;′;

     End;

     End;

Claims (39)

1.一种修改电脑系统的显示屏幕上由应用程序产生之影像的方法,该电脑系统在具有图形用户界面的操作系统下运行应用程序,该方法包括在屏幕上引入多媒体生动形象的步骤,所述形象是一个变化的影像,它以电脑用户不可预测而且完全不受该用户控制的方式,突然出现在屏幕上,所述形象是由提供给该电脑系统的可执行代码产生的,该可执行代码由该电脑系统上可用的其它可执行代码确定。
2.根据权利要求1的方法,其特征在于,所述形象在电脑屏幕上平移。
3.根据前面任何权利要求、在屏幕上产生多层视窗影像操作系统中使用的方法,所述形象处于应用程序视窗的最上层,使得用户不能把它移出屏幕或者利用其它对象覆盖它。
4.根据前面任何权利要求的方法,其特征在于,所述形象伴随着同步的声音。
5.根据前面任何权利要求的方法,其特征在于,该形象浮在由应用程序在屏幕上产生的已有影像之上,该形象的一部分是透明的,使得已有影像的一部分得以透过该形象而可见。
6.根据前面任何权利要求的方法,其特征在于,以一个数据库中存放的信号控制所述形象的产生,以响应从用户电脑的信息交换。
7.根据权利要求6的方法,其特征在于,数据库中存放的所述信号定义多个所述形象,它们是按照来自用户电脑的、不受用户控制的信息和用户电脑中可用的技术特性来选择和控制。
8.根据权利要求6或7的方法,其特征在于,用户的电脑连接到一个网络,该网络也连接着一个形象控制服务器,与用户的电脑通信,该服务器可访问数据库,所述方法进一步包括产生一系列指令的步骤,在该服务器中通过用户的电脑和该服务器之间的一个交互处理执行这些步骤,以确定一个命令序列,它选择所述数据库中形象之一所对应的控制信号,以及向用户的电脑发送命令,用于把该形象引入应用程序的影像。
9.根据权利要求8的方法,其特征在于,该应用程序是一个浏览器,而且命令是在用户浏览的HTML网页之内,向用户的电脑提供的。
10.根据权利要求9的方法,其特征在于,用户正在浏览的HTML网页是从内容供应商的服务器收到的,而且内容供应商把该形象引入作为网页中保留的标签。
11.根据权利要求1的方法,其特征在于,用于该形象的可执行代码加入了该应用程序的安装媒体和安装文件之一,而且可执行代码与应用程序同时安装。
12.一种将广告材料引入用户通过电脑网络浏览之多媒体内容的方法,在该网络中用户的电脑是一个客户,在具有图形用户界面的操作系统下运行应用程序,内容从作为内容服务器的、内容供应商的电脑接收,该网络还连接着媒体源操作的一台电脑,作为形象控制服务器,该方法包括以下步骤:
从内容服务器向客户发送内容,而且在该内容中提供一个与形象控制服务器通信的标签;以及
在形象控制服务器,客户接触时,向客户传递控制信号,这些信号将在客户的电脑上显示多媒体生动形象的内容,所述形象是一个变化的影像,它以电脑用户不可预测而且完全不受他控制的方式,突然出现在内容上,该控制信号由用户电脑上可用的可执行代码确定。
13.根据权利要求12的方法,其特征在于,该媒体源根据对一个形象访问的次数和一次访问的延续时间,接收支付。
14.根据权利要求12或13的方法,其特征在于,所述形象在电脑屏幕上平移。
15.根据权利要求12-14中任何一条、在屏幕上产生多层视窗影像操作系统中使用的方法,所述形象处于应用程序视窗的最上层,使得用户不能把它移出屏幕或者利用其它对象覆盖它。
16.根据权利要求12-15中任何一条的方法,其特征在于,所述形象伴随着同步的声音。
17.根据权利要求12-16中任何一条的方法,其特征在于,该形象浮在由应用程序在屏幕上产生的已有影像之上,该形象的一部分是透明的,使得已有影像的一部分得以透过该形象而可见。
18.根据权利要求12-17中任何一条的方法,其特征在于,根据一个数据库中存放的信息产生所述控制信号,以响应从用户电脑的信息交换。
19.根据权利要求12-18中任何一条的方法,其特征在于,数据库中存放的所述信号定义多个所述形象,它们是按照来自用户电脑的、不受用户控制的信息和用户电脑中可用的技术特性来选择和控制。
20.根据权利要求7或19的方法,其特征在于,来自用户电脑的信息,是从该电脑之内存放的一个cookie得到的。
21.一种通过电脑网络从发送者向接收者提供电子贺卡的方法,在该网络中二者的电脑都是客户,在具有图形用户界面的操作系统下运行应用程序,贺卡由作为媒体服务器的、媒体源的电脑产生,该服务器作为形象控制服务器,该网络还连接着内容供应商操作的一台电脑,作为形象控制服务器,该方法包括以下步骤:
在发送者的电脑选择贺卡的特征,包括贺卡上出现的形象、接收者和要发送的贺词;
在形象控制服务器,发送者接触时,向接收者发送控制信号,这些信号将在接收者的电脑上显示传送贺词的多媒体生动形象,所述形象是一个变化的影像,它以接收者不可预测而且完全不受他控制的方式,突然出现在内容上,该控制信号由用户电脑上可用的可执行代码确定,该服务器也向接收者提供一个信号,它将调用内容供应商提供的一个网页,作为形象的背景,并且在传送了贺词之后仍然保留。
22.根据权利要求21的方法,其特征在于,该媒体源根据对内容供应商的网页传送为贺卡背景的次数,从内容供应商接收支付。
23.一种修改电脑的显示屏幕上由应用程序产生之影像的系统,该电脑在具有图形用户界面的操作系统下运行应用程序,该系统包括:
一个媒体信号发生器,配置为在用户的应用程序显示上产生多媒体生动形象,该媒体信号的内容由用户电脑上可用的可执行代码确定,所述形象是一个变化的影像,它以电脑用户不可预测而且完全不受该用户控制的方式,突然出现在屏幕上;以及
把该形象引入用户电脑显示的装置。
24.根据权利要求23的系统,其特征在于,所述媒体信号配置为产生一个形象,它在电脑屏幕上平移。
25.根据权利要求23或24的系统,其特征在于,操作系统在屏幕上产生多层视窗影像,所述媒体信号配置为使该形象处于应用程序视窗的最上层,使得用户不能把它移出屏幕或者利用其它对象覆盖它。
26.根据权利要求23-25中任何一条的系统,其特征在于,所述媒体信号配置为使该形象伴随着同步的声音。
27.根据权利要求23-26中任何一条的系统,其特征在于,所述媒体信号配置为使该形象浮在由应用程序在屏幕上产生的已有影像之上,并且该形象的一部分是透明的,使得已有影像的一部分得以透过该形象而可见。
28.根据权利要求23-27中任何一条的系统,其特征在于,所述媒体信号根据一个数据库中存放的信息而产生,以响应从用户电脑的信息交换。
29.根据权利要求28的系统,其特征在于,该数据库中存放的信息定义多个形象,该系统进一步包括一个选择器,响应来自用户电脑的、不受用户控制的信息和用户电脑中可用的技术特性,选择这些形象之一对应的媒体信号。
30.根据权利要求28或29的系统,进一步包括用户的电脑和一个网络之间的连接,一个形象控制服务器也连接到该网络,与用户的电脑通信,该服务器可访问数据库,所述媒体信号发生器受到用户的电脑和该服务器之间交互通信的控制。
31.根据权利要求30的系统,其特征在于,该应用程序是一个浏览器,而且媒体信号是与用户电脑正在处理的HTML网页一起,向用户的电脑提供的。
32.根据权利要求31的系统,进一步包括连接着该网络的、内容供应商的服务器,与用户的电脑通信,正在浏览的HTML网页是从内容供应商的服务器收到的,内容供应商把该形象引入作为网页中保留的标签。
33.根据权利要求31的系统,其特征在于,该发生器包括一个电脑程序,它是来自该应用程序的安装介质之一和一个安装文件中,与该应用程序同时安装在用户的电脑上。
34.根据权利要求1至11中任何一条的方法,其特征在于,提供给电脑系统的可执行代码包括一种技术组合,它模拟使用Flash 4(和更高版本)的Internet Explorer 4(和更高版本)的操作,至少能实现声音与视频同步、形象的自由移动和使它成为任何外形的能力。
35.根据权利要求34的方法,其特征在于,技术组合包括下列之一:
带有Flash v4.0或更新版本的Windows IE v4.0或更新版本;
没有Flash的Windows IE v4.0或更新版本;
没有Flash的Windows Netscape v4.1或更新版本;
没有Flash的Macintosh Netscapev 4.0或更新版本;
带有Flash v4.0或更新版本的Windows Netscape v4.1或更新版本;
带有Flash v4.0或更新版本的Macintosh Netscape v4.0或更新版本;
带有Flash v4.0或更新版本的Windows Netscape v6.0或更新版本;
带有Flash v4.0或更新版本的Macintosh Netscape v6.0或更新版本;以及
带有Flash v4.0或更新版本的Macintosh IE v5.0或更新版本。
36.根据权利要求12至22中任何一条的方法,其特征在于,控制信号包括一种技术组合,它模拟使用Flash 4(和更高版本)的Internet Explorer 4(和更高版本)的操作,至少能实现声音与视频同步、形象的自由移动和使它成为任何外形的能力。
37.根据权利要求36的方法,其特征在于,技术组合包括下列之一:
带有Flash v4.0或更新版本的Windows IE v4.0或更新版本;
没有Flash的Windows IE v4.0或更新版本;
没有Flash的WindowsNetscapev4.1或更新版本;
没有Flash的MacintoshNetscapev4.0或更新版本;
带有Flash v4.0或更新版本的Windows Netscape v4.1或更新版本;
带有Flash v4.0或更新版本的Macintosh Netscape v4.0或更新版本;
带有Flash v4.0或更新版本的Windows Netscape v6.0或更新版本;
带有Flash v4.0或更新版本的Macintosh Netscape v6.0或更新版本;以及
带有Flash v4.0或更新版本的Macintosh IE v5.0或更新版本。
38.根据权利要求23至33中任何一条的系统,其特征在于,可执行代码包括一种技术组合,它模拟使用Flash 4(和更高版本)的Internet Explorer 4(和更高版本)的操作,至少能实现声音与视频同步、形象的自由移动和使它成为任何外形的能力。
39.根据权利要求38的系统,其特征在于,技术组合包括下列之一:
带有Flash v4.0或更新版本的WindowsIEv4.0或更新版本;
没有Flash的Windows IE v4.0或更新版本;
没有Flash的Windows Netscapev4.1或更新版本;
没有Flash的Macintosh Netscapev4.0或更新版本;
带有Flash v4.0或更新版本的Windows Netscape v4.1或更新版本;
带有Flash v4.0或更新版本的Macintosh Netscape v4.0或更新版本;
带有Flash v4.0或更新版本的Windows Netscape v6.0或更新版本;
带有Flash v4.0或更新版本的Macintosh Netscape v6.0或更新版本;以及
带有Flash v4.0或更新版本的Macintosh IE v5.0或更新版本。
CNA01818538XA 2000-09-08 2001-09-10 电脑化广告的方法和系统 Pending CN1473298A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US23140400P 2000-09-08 2000-09-08
US60/231,404 2000-09-08
US25763400P 2000-12-21 2000-12-21
US60/257,634 2000-12-21

Publications (1)

Publication Number Publication Date
CN1473298A true CN1473298A (zh) 2004-02-04

Family

ID=26925098

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA01818538XA Pending CN1473298A (zh) 2000-09-08 2001-09-10 电脑化广告的方法和系统

Country Status (13)

Country Link
US (1) US20070226621A1 (zh)
EP (1) EP1325400A4 (zh)
JP (1) JP2004508629A (zh)
KR (1) KR20030051643A (zh)
CN (1) CN1473298A (zh)
AR (1) AR030644A1 (zh)
AU (1) AU2001290723A1 (zh)
BR (1) BR0114119A (zh)
CA (1) CA2421750A1 (zh)
IL (1) IL154722A0 (zh)
MX (1) MXPA03002027A (zh)
RU (1) RU2259588C2 (zh)
WO (1) WO2002021238A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102194341A (zh) * 2011-04-11 2011-09-21 无锡诺宝科技发展有限公司 视力锻炼屏幕分片移动题目答题系统
CN102194343A (zh) * 2011-04-11 2011-09-21 无锡诺宝科技发展有限公司 视力锻炼移动题目答题系统

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL137106A0 (en) 2000-06-29 2001-06-14 Ilissos Inc A method and system for generating bursting-messages
AUPR294101A0 (en) * 2001-02-07 2001-03-01 Aristocrat Technologies Australia Pty Limited Gaming machine with transparent symbol carriers
US8924411B2 (en) 2005-05-31 2014-12-30 Open Text S.A. System and method for the dynamic provisioning of static content
US7860820B1 (en) 2005-05-31 2010-12-28 Vignette Software, LLC System using content generator for dynamically regenerating one or more fragments of web page based on notification of content change
US8935243B2 (en) 2003-08-27 2015-01-13 Inoventiv (Canada) Corp. Method and system for dynamic web display
US20050160141A1 (en) * 2004-01-21 2005-07-21 Mark Galley Internet network banner
EP1583341A1 (en) * 2004-04-01 2005-10-05 Avaya UK Simplified call answering service
WO2006033497A1 (en) * 2004-09-24 2006-03-30 Imusicsoft Co., Ltd. Method for authoring and playing multimedia contents
US20060259239A1 (en) * 2005-04-27 2006-11-16 Guy Nouri System and method for providing multimedia tours
US20070192467A1 (en) * 2006-02-04 2007-08-16 Keeler James D System and method for providing advertising and content in a distributed internet access environment
US20080091529A1 (en) * 2006-07-24 2008-04-17 Bailey Kenneth S Fly Buy Coupon System
US20080084416A1 (en) * 2006-10-06 2008-04-10 Microsoft Corporation User-pluggable rendering engine
US8943189B2 (en) * 2007-05-18 2015-01-27 Microsoft Corporation Standard based detection and launch of client applications
US8890874B2 (en) 2007-12-14 2014-11-18 Microsoft Corporation Changing visual content communication
US20100318907A1 (en) * 2009-06-10 2010-12-16 Kaufman Ronen Automatic interactive recording system
US9460092B2 (en) * 2009-06-16 2016-10-04 Rovi Technologies Corporation Media asset recommendation service
US8769398B2 (en) * 2010-02-02 2014-07-01 Apple Inc. Animation control methods and systems
US8407419B2 (en) 2010-11-30 2013-03-26 Open Text S.A. System and method for managing a cache using file system metadata
WO2012173514A2 (ru) * 2011-03-29 2012-12-20 ЛИСОВСКИЙ, Пётр Петрович Пассажирский конвейер с возможностью отображения преимущественно визуальной информации и устройство отображения информации
RU2499299C2 (ru) * 2011-03-29 2013-11-20 Владимир Михайлович Герасимов Пассажирский конвейер с возможностью представления преимущественно визуальной информации и устройство для представления указанной информации
JP5210466B1 (ja) * 2011-06-17 2013-06-12 楽天株式会社 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理プログラムを記録した記録媒体
RU2473136C1 (ru) * 2011-06-29 2013-01-20 Владимир Михайлович Герасимов Пассажирский конвейер с возможностью представления преимущественно визуальной информации
WO2013028101A2 (ru) * 2011-06-29 2013-02-28 ЛИСОВСКИЙ, Пётр Петрович Устройство представления информации для восприятия ее с пассажирского конвейера
JP2013077119A (ja) * 2011-09-30 2013-04-25 Networks Plus Inc 広告表示システム,その方法,そのプログラム,広告用外部サーバ
JP5684766B2 (ja) * 2012-09-19 2015-03-18 株式会社東芝 複合機およびシステム

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5682469A (en) * 1994-07-08 1997-10-28 Microsoft Corporation Software platform having a real world interface with animated characters
US5781894A (en) * 1995-08-11 1998-07-14 Petrecca; Anthony Method and system for advertising on personal computers
US5913040A (en) * 1995-08-22 1999-06-15 Backweb Ltd. Method and apparatus for transmitting and displaying information between a remote network and a local computer
WO1997012486A1 (en) * 1995-09-29 1997-04-03 Boston Technology, Inc. Multimedia architecture for interactive advertising
US6016484A (en) * 1996-04-26 2000-01-18 Verifone, Inc. System, method and article of manufacture for network electronic payment instrument and certification of payment and credit collection utilizing a payment
US5999912A (en) * 1996-05-01 1999-12-07 Wodarz; Dennis Dynamic advertising scheduling, display, and tracking
US5895454A (en) * 1997-04-17 1999-04-20 Harrington; Juliette Integrated interface for vendor/product oriented internet websites
US5983190A (en) * 1997-05-19 1999-11-09 Microsoft Corporation Client server animation system for managing interactive user interface characters
US6433784B1 (en) * 1998-02-26 2002-08-13 Learn2 Corporation System and method for automatic animation generation
US6636219B2 (en) * 1998-02-26 2003-10-21 Learn.Com, Inc. System and method for automatic animation generation
JP3125006B2 (ja) * 1998-04-07 2001-01-15 コナミ株式会社 キャラクタ画像の表示制御方法および装置、記録媒体
EP1076871A1 (en) * 1998-05-15 2001-02-21 Unicast Communications Corporation A technique for implementing browser-initiated network-distributed advertising and for interstitially displaying an advertisement
EP0997827A4 (en) * 1998-05-22 2003-01-15 Bandai Co SYSTEM FOR GENERATING INFORMATION
JP2000076487A (ja) * 1998-09-03 2000-03-14 Sony Corp 情報処理装置および方法、並びに提供媒体
JP4232232B2 (ja) * 1998-09-30 2009-03-04 ソニー株式会社 情報処理装置および方法、並びに記録媒体
GB9902480D0 (en) * 1999-02-05 1999-03-24 Ncr Int Inc Method and apparatus for advertising over a communications network
US6563503B1 (en) * 1999-05-07 2003-05-13 Nintendo Co., Ltd. Object modeling for computer simulation and animation
US6340977B1 (en) * 1999-05-07 2002-01-22 Philip Lui System and method for dynamic assistance in software applications using behavior and host application models
US6377281B1 (en) * 2000-02-17 2002-04-23 The Jim Henson Company Live performance control of computer graphic characters
US6948131B1 (en) * 2000-03-08 2005-09-20 Vidiator Enterprises Inc. Communication system and method including rich media tools

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102194341A (zh) * 2011-04-11 2011-09-21 无锡诺宝科技发展有限公司 视力锻炼屏幕分片移动题目答题系统
CN102194343A (zh) * 2011-04-11 2011-09-21 无锡诺宝科技发展有限公司 视力锻炼移动题目答题系统
CN102194341B (zh) * 2011-04-11 2015-09-23 无锡诺宝科技发展有限公司 视力锻炼屏幕分片移动题目答题系统

Also Published As

Publication number Publication date
WO2002021238A2 (en) 2002-03-14
AR030644A1 (es) 2003-08-27
JP2004508629A (ja) 2004-03-18
RU2259588C2 (ru) 2005-08-27
EP1325400A2 (en) 2003-07-09
BR0114119A (pt) 2004-02-17
KR20030051643A (ko) 2003-06-25
EP1325400A4 (en) 2006-02-08
US20070226621A1 (en) 2007-09-27
IL154722A0 (en) 2003-10-31
MXPA03002027A (es) 2005-06-30
CA2421750A1 (en) 2002-03-14
WO2002021238A3 (en) 2002-04-25
AU2001290723A1 (en) 2002-03-22

Similar Documents

Publication Publication Date Title
CN1473298A (zh) 电脑化广告的方法和系统
CN100346286C (zh) 用于改变网络浏览器的布局和功能的方法
CN1163837C (zh) 网络访问管理系统和方法
CN1669018A (zh) 手持终端框架系统
CN1365478A (zh) 捐赠处理系统
CN1221897C (zh) 内容提供设备、方法及系统和内容预约控制方法
CN1326638A (zh) 具有可配置功能的电视机顶盒
CN1173285C (zh) 固定显示信息的方法和装置
CN1609794A (zh) 用于计算机平台的编程接口
CN1912825A (zh) 信息处理装置及其控制方法
CN1596433A (zh) 信息处理装置、信息处理方法和信息处理系统
CN100342691C (zh) 多模式对话处理方法
CN1156780C (zh) 电子邮件准备装置、终端装置、信息发送系统和程序记录媒体
CN1735879A (zh) 用于使用代码、用户终端、通信代理平台、操作代理平台、在线关系成员模块的内容和信息提供业务系统及其方法
CN1445705A (zh) 服务提供系统、方法、程序以及存储介质
CN100338955C (zh) 在电视机顶盒中执行交互式电视的设备和方法
CN1332879A (zh) 形成全方位服务研究当局与测试中心的方法及装置
CN1609792A (zh) 计算机程序的编程接口
CN1244933A (zh) 互联网上消费品信息管理服务系统及其方法
CN1504942A (zh) 组织计算机网络中电子文件的方法及电子邮件系统
CN1679024A (zh) 提供为特定客户机设备类型而优化的动态视口分层的成像系统
CN1588859A (zh) 提供互联网内容的方法及装置
CN1783083A (zh) 动态概要模块
CN1433541A (zh) 显示图形对象
CN1609793A (zh) 用于计算机平台的编程接口

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1060788

Country of ref document: HK

C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1060788

Country of ref document: HK