Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberCN1433627 A
Publication typeApplication
Application numberCN 00818828
PCT numberPCT/US2000/032846
Publication date30 Jul 2003
Filing date4 Dec 2000
Priority date4 Dec 1999
Also published asCA2393459A1, DE60030155D1, DE60030155T2, EP1238520A1, EP1238520A4, EP1238520B1, US6714978, US7356806, US20040172471, WO2001041407A1
Publication number00818828.9, CN 00818828, CN 1433627 A, CN 1433627A, CN-A-1433627, CN00818828, CN00818828.9, CN1433627 A, CN1433627A, PCT/2000/32846, PCT/US/0/032846, PCT/US/0/32846, PCT/US/2000/032846, PCT/US/2000/32846, PCT/US0/032846, PCT/US0/32846, PCT/US0032846, PCT/US032846, PCT/US2000/032846, PCT/US2000/32846, PCT/US2000032846, PCT/US200032846
InventorsKR波特
ApplicantMci全球通讯公司
Export CitationBiBTeX, EndNote, RefMan
External Links: SIPO, Espacenet
Method and system for processing records in communications system
CN 1433627 A
Abstract  translated from Chinese
在为多个用户提供业务的通信网中,在业务处理期间发生的事件被累积在事件记录中并且发送到记录处理器以便执行后处理,如为该网络的用户估算要计的费用。 In providing the service for a plurality of users of communication networks, events occurring during service processing are accumulated in the event log and transmitted to the recording processor for post-processing, such as the estimated costs for the user to gauge the network. 该通信网中的每个业务处理节点累积事件记录,将其与关于如何对其处理的指令捆绑在一起,并且将其调度到一个或多个记录处理器(408)。 The communications network of each service processing node cumulative event record, on how to bundle it with its instruction processing together, and to dispatch to one or more recording processor (408). 在发送到记录处理器之前,事件记录通过描述如何在事件记录的事件上执行处理的指令增加。 Before being sent to record processor, the event record by describing how to increase instruction processing performed on the Event record. 记录处理器(408)是通用处理器并且用于后处理的指令在事件记录自身中携带。 Record processor (408) is a general-purpose processor and instructions for post-processing of the event record itself carry. 不再要求后处理器专用于如计费的特殊目的。 After no longer required as a special purpose processor dedicated to billing. 而且,后处理函数的调度更及时并且可以与到网络业务处理器(410)的业务处理函数的调度集成在一起。 Moreover, post-processing functions in a more timely and scheduling can be integrated with the network services processor (410) business processing functions scheduling.
Claims(38)  translated from Chinese
1.一种为多个用户提供通信业务的系统,包括:耦合到多个用户的业务承载传输网;一个或多个业务处理器,其控制传输网为多个用户执行业务,生成与业务执行相关的事件记录,并且在事件记录中加入用于处理已记录事件的一个或多个指令;以及一个或多个记录处理器,其从业务处理器接收事件记录,提取用于处理已记录事件的指令,并且使用从中获得的指令处理事件记录。 1. A method of providing communication service system for a plurality of users, comprising: a plurality of users coupled to the transmission network bearer service; one or more service processors, which control the transmission network for a plurality of users to perform operations, generate and execute business related events recorded in the event log and add one or more instructions for processing the recorded events; and one or more records processor that receives the event records from the service processor for processing to extract records of events instruction, and the use of instruction derive processing event record.
2.如权利要求1的系统,还包括:为业务处理器分配用于处理已记录事件的指令的网络管理系统。 2. The system of claim 1, further comprising: a service processor for processing the recorded events allocated for instruction of network management system.
3.如权利要求2的系统,还包括:业务开发环境,其中创建用于处理记录的指令并且发送到网络管理系统以便分配到业务处理器。 3. The system as claimed in claim 2, further comprising: service development environment, which is created for the instruction processing and transmitted to the recording network management system in order to assign to a service processor.
4.如权利要求1的系统,其中所述指令是JAVA字节代码形式的可执行代码。 4. The system of claim 1, wherein said instruction is a JAVA byte code form executable code.
5.如权利要求1的系统,其中所述指令是小应用程序形式的可执行代码。 5. The system of claim 1, wherein said instruction is a small application in the form of executable code.
6.如权利要求1的系统,其中所述指令是servlet形式的可执行代码。 6. The system as claimed in claim 1, wherein said instruction is a servlet in the form of executable code.
7.如权利要求1的系统,其中所述指令是JAVA BEANS形式的可执行代码。 7. The system of claim 1, wherein said instructions are executable code in the form of JAVA BEANS.
8.如权利要求1的系统,其中所述指令是串行软件对象形式的可执行代码。 8. The system of claim 1, wherein said instruction is a serial form of executable software object code.
9.一种为多个用户提供通信业务的系统,包括:耦合到多个用户的业务承载传输网;一个或多个业务处理器,其控制传输网为多个用户执行业务,生成与业务执行相关的事件记录,并且将事件记录转换为可执行文件;以及从业务处理器接收所述可执行文件并且通过执行所述可执行文件完成事件记录处理的一个或多个记录处理器。 9. A method of providing communication service system for a plurality of users, comprising: a plurality of users coupled to the transmission network bearer service; one or more service processors, which control the transmission network for a plurality of users to perform operations, generate and execute business events related records, and record the event into executable files; and receiving the executable file from the service processor and by executing the executable file to complete the processing of an event record or multiple records processors.
10.如权利要求9的系统,其中所述指令是JAVA字节代码形式的可执行代码。 10. The system of claim 9, wherein said instruction is a JAVA byte code form executable code.
11.如权利要求9的系统,其中所述指令是小应用程序形式的可执行代码。 11. The system of claim 9, wherein said instruction is a small application in the form of executable code.
12.如权利要求9的系统,其中所述指令是servlet形式的可执行代码。 12. The system of claim 9, wherein said instruction is a servlet in the form of executable code.
13.如权利要求9的系统,其中所述指令是JAVA BEANS形式的可执行代码。 13. The system of claim 9, wherein said instructions are executable code in the form of JAVA BEANS.
14.如权利要求9的系统,其中所述指令是串行软件对象形式的可执行代码。 14. The system of claim 9, wherein said instruction is a serial form of executable software object code.
15.一种在通信网中提供业务的方法,其中多个用户耦合到由一个或多个业务处理器控制的传输网上,所述方法包括步骤:从业务处理器生成表示业务处理事件的事件记录;将事件记录转换为可执行文件;将事件记录以可执行文件形式发送到记录处理器;以及在记录处理器中执行所述可执行文件以便完成事件记录的处理。 15. A method of providing services in a communications network, wherein the transmission line, the method by one or more service processor coupled to the control of multiple users, including the steps of: business process events, said the event records from the processor to generate business ; event logging into executable files; record the event in the form of an executable file to be sent to the recording processor; and executing the executable file in order to complete the event record processor record deal.
16.一种在通信网中提供业务的方法,其中多个用户耦合到由一个或多个业务处理器控制的传输网上,所述方法包括步骤:从业务处理器生成表示业务处理事件的事件记录;在事件记录中加入一个或多个指令以便供记录处理器在处理事件记录时使用;将事件记录转换为可执行文件;将事件记录以可执行文件形式发送到记录处理器;从事件记录中将指令提取到记录处理器的运行时处理环境中;在记录处理器中执行从事件记录中提取的指令以便处理其中记录的事件;以及依据事件记录中发送的事件而从记录处理器中输出执行指令的结果。 16. A method of providing services in a communications network, wherein the transmission line, the method by one or more service processor coupled to the control of multiple users, including the steps of: business process events, said the event records from the processor to generate business ; join in the event log of one or more instructions to the processor for use in handling record event record; record the event into executable files; record the event in the form of an executable file to be sent to record processor; from the event log The recording processor instruction fetch to run-time processing environment; extracted from the execution instruction for processing event record in which the event recorded in the recording processor; and transmitted according to the event from the event records and outputs recording processor executing result of the instruction.
17.如权利要求16的方法,还包括将指令从网络管理系统分配到一个或多个业务处理器的步骤。 17. The method of claim 16, further comprising one or more steps of the business processor instructions from the network management system to allocate.
18.如权利要求17的方法,还包括在业务开发环境中开发所述方法并且将开发的方法分配到网络管理系统以便分配给业务处理器的步骤。 18. The method of claim 17, further comprising a method developed in service development environment in the development of the method and the network management system in order to assign to the service processor allocation step.
19.如权利要求16的方法,其中基于记录中已有的事件类型选择性地完成到事件记录的方法的增加。 19. The method of claim 16, wherein the recording medium based on the existing event type for selectively increasing the event record to complete the method.
20.一种用于处理在通信系统的业务处理期间发生的事件的方法,所述方法包括步骤:创建在业务处理期间发生的事件记录;向事件记录中加入一个或多个处理方法;将包括处理方法的事件记录传送到记录处理器;从事件记录中将处理方法提取到记录处理器的存储器中;在记录处理器中应用处理方法来处理事件记录中记录的事件;以及输出对事件记录中记录的事件应用处理方法的记录处理器的结果。 20. A method for processing the service processing event during the occurrence of a communication system, said method comprising the steps for: creating an event record occurred during service processing; was added to the event record one or more of the processing method; would include event handler method of recording to the recording processor; in the processing method to extract records from the processor's memory event record; the record processor application processing method to handle the event in the event log records; and the output of the event record The results recorded event processor application processing method records.
21.如权利要求20的方法,其中基于事件记录中存在的事件类型选择性地完成每个处理方法的加入。 21. The method of claim 20, wherein based on the event type of the event record in the presence of optionally added to each completed processing method.
22.如权利要求20的方法,还包括根据后续的事件记录而在与记录处理器相关的永久存储器中保留处理方法的步骤。 22. The method of claim 20, further comprising the step according to the subsequent event recording in a permanent memory associated with the processor in the recording reservation processing method.
23.一种用于表示在通信系统中业务处理期间发生的事件的业务处理事件记录,包括:描述在通信系统中发生的业务处理的一个或多个事件数据;描述记录处理器如何处理业务处理事件记录中的事件数据的一个或多个处理方法。 23. A service processing event record for representing the events occurring during service processing in a communication system, comprising: a description of a communication system in place in a business process or a plurality of event data; describes how to handle the service processing recording processor one or more processing method event record event data.
24.如权利要求23的业务处理事件记录,其中所述事件数据以处理方法调用的形式存在于业务处理事件记录中。 24. The service processing event record of claim 23, wherein the form of said event data to process the method call is present in the service processing event record.
25.如权利要求23的系统,其中所述处理方法采用JAVA字节代码形式。 25. The system of claim 23, wherein said processing method using JAVA byte code form.
26.如权利要求23的系统,其中所述处理方法采用小应用程序形式。 26. The system of claim 23, wherein said processing method using the form of applets.
27.如权利要求23的系统,其中所述处理方法采用servlet形式。 27. The system of claim 23, wherein said processing method using servlet form.
28.如权利要求23的系统,其中所述处理方法采用JAVA BEANS形式。 28. The system of claim 23, wherein said processing method using the form of JAVA BEANS.
29.如权利要求23的系统,其中所述处理方法采用串行软件对象形式。 29. The system of claim 23, wherein the processing method uses a serial software object form.
30.一种用于处理由通信系统生成的可解释文件的记录处理器,所述可解释文件包括方法以及记录的业务处理事件,所述记录处理器包括:包括存储空间的通用处理环境;以及解释程序/加载程序,其接收和解析可解释文件,将方法加载到所述存储空间,并且通过在通用处理环境中执行加载的方法来处理可解释文件中记录的业务处理事件。 30. A method of processing generated by the communication system for interpretable file recording processor, said interpretable file comprising methods and recorded service processing events, the record processor comprises: a general purpose processing environment comprising a memory space; and interpreter / loader, which receive and parse documents explain the method loaded into the storage space, and the method of execution was loaded in the processing environment to handle common business process events interpretable file records.
31.如权利要求30的记录处理器,还包括方法的永久存储库以及记录处理所需的数据。 31. The recording processor as claimed in claim 30, further comprising persistent storage method and the desired data recording process.
32.如权利要求31的记录处理器,其中从可解释文件中获得的一个或多个方法被上载到所述永久存储库中。 32. The recording processor according to claim 31, wherein one or more of the methods obtained from the interpretable file are uploaded to the persistent storage.
33.如权利要求32的记录处理器,其中所述方法被响应于可解释文件中的指示器选择性地上载到所述永久存储库中。 33. The recording processor of claim 32, wherein said method is responsive to the interpretable file indicator selectively upload the permanent repository.
34.一种用于控制通信网向耦合到所述网络的用户提供业务的业务处理器,所述业务处理器包括:至少一个会话处理器,其执行业务逻辑并且生成原始会话处理事件;至少一个事件捆绑器,其从会话处理器采集原始会话处理事件并且组装事件集合;至少一个小代码编制器,其接收来自事件捆绑器的事件集合并且加入方法以形成小代码;以及至少一个调度程序,其接收来自小代码编制器的小代码,创建相应的可解释文件,并且将可解释文件发送到记录处理器。 Traffic processor 34. A method for controlling a communication network coupled to the network to provide services, the service processor comprises: at least one session processor that executes service logic and generates the raw session processing event; at least one event tied, it collected from the original session session handler to handle events and event collection assembled; at least a small code formatter, which receives events from the event tied the set and add methods to form a small code; and at least one scheduler, its receive small code from small code formatter, and create the corresponding interpretable file and sends the file to explain the record processor.
35.如权利要求34的业务处理器,还包括事件捆绑策略函数,其控制事件捆绑器聚集原始业务处理事件、过滤某些类型的事件、以及发送事件集合的方式。 35. The processor 34 business claims, further including an event bundling policy function, which controls the event bundled with the original business process events gather, filter certain types of events, as well as send event collection.
36.如权利要求34的业务处理器,还包括小代码建立策略,其控制小代码编制器如何处理事件集合以及加入方法以便创建小代码。 36. The processor 34 business claim also includes the establishment of a small code policy, which controls how the establishment of small code to handle events and adding methods to create a collection of small code.
37.如权利要求34的业务处理器,还包括调度策略函数,其控制来自小代码的可解释文件的形成并且控制如何将可解释文件发送到记录处理器。 37. The service processor of claim 34, further comprising scheduling function, which controls the formation of the interpretable file from the small code and controls how to send the file to the recording processor interpretable.
38.一种用于管理将来自生成业务处理事件记录的通信系统的指令分配到记录处理器的方法,包括步骤:向业务处理事件记录加入指令以便形成可解释文件;识别哪些指令要由记录处理器保留;指定可解释文件中哪些指令要由记录处理器保留;将可解释文件传送到记录处理器;以及将已经指定要保留的那些指令上载到记录处理器的永久存储器中。 38. An apparatus for managing instruction generated from the service processing event record of the communication system assigned to the recording processor, comprising the steps of: the service processing event record add command to form interpretable file; identify which instructions to be processed by the recording is reserved; specify a file which can explain instructions to be retained by the recording processor; transferring files to record interpreted processor; and those who have been designated to be retained command will upload the recording processor permanent memory.
Description  translated from Chinese
用于处理通信系统中的记录的方法和系统 Processing method for a communication system and a recording system

发明领域本发明涉及通信网,并且特别是涉及一种用于在通信网使用期间处理事件记录的新方法。 Field of the Invention The present invention relates to communication networks, and particularly relates to a novel method for use in a communication network during a processing event records.

背景在传统的收入承载的通信网,如公共交换电话网(PSTN)中,网络拥有者或“业务提供者”估算每个用户或“业务用户”的费用。 Background In conventional communication network bearer income, such as the public switched telephone network (PSTN), a network owner or "service provider" estimates for each user or "service user" charges. 用户为访问和使用该网络而付费并且估算的费用可基于固定费用、连接的距离和持续时间、传送的数据量、特殊业务的使用等。 Users for access to and use of the network and the estimated costs can be paid a fixed fee based on the distance and duration of the connection, the amount of data transfer, use and other special services.

为测量每个用户的使用,网络中的不同点要代表每个用户保持通过网络的连接或数据流记录。 Used for measuring each user, to different points in the network on behalf of each user held by the connection or stream recording network. 例如,在电话网中,对通话进行路由的交换机保持处理的每个通话的记录。 For example, in a telephone network, for each active call routing switch call processing records maintained. 因实际原因,这些记录传统地在每个交换机本地存储并且周期性地采集以便进行计费处理。 For practical reasons, these records have traditionally stored locally at each switch and periodically collected for billing processing. 这些记录还用于得出业务量统计和检测欺诈使用模式。 These records are also used to draw traffic statistics and detect fraudulent usage patterns.

因为给定的连接,例如长途电话,可能涉及几个交换机,在处理该通话期间将生成几个单独的通话记录。 Because a given connection, such as long-distance calls, which may involve several switches, will generate several individual call records during the processing of the call. 在计费处理期间,这些记录必须从网络中所有交换机采集的数百万其它记录中挑选出来。 During the charging process millions of other records of these records must be collected from all the switches in the network selected. 然后组合相关的记录以便给出在特定通话期间使用了哪些网络资源并且因此应向适当的用户计多少费用的组合描述。 Then a combination of related records in order to give a call during a particular use of network resources and thus what should be a combination of the appropriate user account how much it costs description.

控制每个交换机的软件设计为记录在通话处理期间发生的选定事件并且将这些事件编码为一种非常特殊的格式。 Each switch control software designed to record selected events occurring during the call processing and coding of these events a very special format. 对事件编码的传统方法称为自动消息记帐(AMA)并且在可从泰克科迪亚科技(TelcordiaTechnologies)获得的名为GR-1100-CORE的行业标准文档中有描述。 Traditional methods of event coding called automatic message accounting (AMA) and are described in industry standard document available from Tektronix Cordia Technology (TelcordiaTechnologies) called GR-1100-CORE's. 简而言之,编码格式是很好定义的静态数据结构,在本行业也称为通话详细记录(CDR)。 In short, the encoding format is a well-defined static data structure, also referred to in the industry call detail records (CDR). 单个通话记录捆绑成块,由交换机写入磁带或其它形式的持久存储设备中。 Call records bundled into a single piece, written by the switch tapes or other forms of persistent storage devices.

从网络采集一定时间积累的通话记录之后,计费处理系统必须解码并且解释由交换机和其它网元编码的计费记录内容的意义。 After collecting a certain time to accumulate the call records from the network, the charging system must be decoded and interpreted by the switches and other network elements encoded content billing records significance. 为保证准确的计费处理,CDR的语法和语义必须通常能由生成记录的网元以及解释记录的处理系统理解。 To ensure accurate billing processing, CDR syntax and semantics must usually generated by recording the network element and explain the recording processing system understanding.

计费处理器中的软件设计为解析和处理假定特定结构和内容的通话记录。 Billing processor software is designed to parse and process assumes a specific structure and content of the call records. CDR语法和语义的任何改变都需要计费代码的改变。 CDR syntax and semantics of any changes need to change the billing code. 这个改变由新的可计费业务或特性的引入而成为必需。 This change introduced by the new billable services or features become necessary. 例如,将长途电话通话的费用记在借记卡上或第三方的新业务的引入需要在CDR中编码新的信息。 For example, the debit card is introduced in the long-distance telephone calls charged against a third party or new business needs in the CDR encoding new information.

在过去的电话网中,新业务的引入相对不频繁。 In the last telephone network, introduction of new services is relatively infrequent. 减少进入市场的时间对业务提供者来说不是高优先级的。 Reduce time to market for service providers who are not a high priority. 但是,最近,业务提供者之间的竞争以及由用户需求驱动的新功能的可用性加速了新特性的引入。 However, recently, the competition and the availability of user demand driven by new functions between service providers accelerate the introduction of new features.

修改计费系统代码的负担阻碍了通信网中新特性的引入。 Modifying the billing system code burden hinders the introduction of new features in communication networks. 传统的固定长度的CDR相对不灵活并且是不必要的限制。 The traditional fixed-length CDR is relatively inflexible and is unnecessarily restrictive. 自从第一次引入CDR以来,通信带宽和处理速度已经成倍地改善,消除了保持CDR紧凑的需要。 Since the first introduction of CDR, communication bandwidth and processing speed has improved exponentially, eliminating the need to maintain a compact CDR. 现在可以认识到背离传统CDR格式的许多优点。 Can now be appreciated departing from the traditional CDR format many advantages.

因此,需要一种改善的方法来采集、传送和处理在通信网中记录的事件信息而无论何时新的计费特性加入该网络时都不需要大量的重写和测试计费系统软件。 Therefore, a need for an improved method to collect, do not require a lot of rewriting and testing software billing system when transmitting and processing recorded event information in a communications network and whenever a new charging characteristics to join the network. 这个要求一般适用于由提供无论任何原因,不管是计费、欺诈检测、业务分析等都需要处理的通信业务产生的任何记录。 This requirement generally applicable to the offer for any reason, regardless of any record traffic billing, fraud detection, business analysts need to be addressed so produced.

目前技术正在实现由单一通信网为用户提供各种业务类型、带宽、传输技术和特殊业务。 Current technology is to achieve a variety of business types, bandwidth, transmission technology and special services for users from a single communications network. 因此,需要通用并且易于扩展的后处理系统与通信系统一起协同运行。 Therefore, universal and easy to expand after processing systems and communication systems to run concurrently together.

顺便还需要更通用的术语来表现这样的通信和后处理系统的特点。 Incidentally, the need for more general terms, the performance characteristics of such communications and post-processing system. 虽然“通话”和“通话处理”的概念和术语已经在传统电话网应用很久了,更广泛的术语“会话”和“业务处理”更适合于包含更现代的网络的所有用途。 Although the "talk" and "Call Processing" concepts and terminology have been better suited to contain all use more modern network applications in the traditional telephone network for a long time, the broader term "session" and "business deal." 仅举几个例子,这里使用的“会话”指使用网络的一个实例并且包括单一数据分组的递交、临时双向语音信道的建立、或大量多媒体文件的传送。 To name a few examples, where the use of "session" refers to the use of a single instance of the network and includes the submission of data packets to establish a temporary two-way voice channel, or transfer large multimedia files. 术语“业务处理”一般指网络为实现网络用户的需要作出的决定以及执行的操作。 The term "business process" generally refers to the network to achieve network operating decisions need to be made as well as the user's execution.

根据本发明的一个优选实施方案,处理记录包括用于解释记录中描述的已记录数据的可执行代码形式的指令。 According to one preferred embodiment of the present invention, the processing record includes executable code in the form of instructions recorded data described in the explanation for the recording.

根据另一个方面,本发明针对一种方法,凭此业务处理记录被创建、累积、按合适的函数打包,然后基于一个任意的捆绑和调度策略来转发到计费处理系统。 According to another aspect, the present invention is directed to a method, by virtue of the service processing records are created, accumulated, by appropriate function package, and then based on an arbitrary bundling and dispatching policy to be forwarded to the billing processing system.

根据本发明的一个优选实施方案,业务处理记录符合一个规定的可执行格式,例如可执行JAVA。 According to one preferred embodiment of the present invention, a service processing record meets a predetermined executable format, such as an executable JAVA. (JAVA是Sun微系统的注册商标。)业务处理记录可以由通信网中的任何网元或业务处理函数开始。 (JAVA is a registered trademark of Sun Microsystems.) Business process can begin recording by the communication network or any network element service handler. 业务处理记录与连接、会话或涉及网络的其它事务相关。 Business processing records and connections, sessions, or other related matters involving the network. 除了估算要计费给用户的费用,业务处理记录还被处理以识别欺诈模式、分析消费者趋势、以及促进网络容量工程。 In addition to estimating the cost to the user to be billing, business processing records also processed to identify fraud patterns, analysis of consumer trends, as well as the promotion of network capacity engineering. 每个业务处理记录包括业务处理事件数据并且,根据本发明,还包括指令,如方法或可调用函数,用于解释和处理业务处理事件数据。 Each service processing record comprises service processing event data and, according to the present invention, further comprising instructions, such as methods or callable functions, for interpreting and processing the service processing event data.

根据本发明的业务处理记录作为可执行代码打包,其中方法编码为可调用函数并且事件编码为对使用与事件的特定实例相关的参数的那些函数的调用。 Packaged as executable code according to the present invention, the service processing record, wherein the method is encoded as callable functions and events coded as a function of the use to those with a particular instance of a parameter related to the event of the call.

这种类型的业务处理记录可由通用处理系统处理,从记录中提取函数内容并且然后使用方法来解释和处理记录中的数据。 This type of service processing record processing by a general purpose processing system, a function to extract the content from the recording medium, and then use the methods to interpret and process the data record. 无论何时新的业务或可计费特性加入网络中,新的或修改的业务处理函数就调度到整个网络的网元,如交换机和路由器中。 Whenever a new business or billable feature added to the network, new or modified business handler dispatches to the entire network of network elements, such as switches and routers. 当业务处理函数随新功能升级时,业务处理函数中生成业务处理记录的某些部分可以设计为将计费和其它后处理方法包括在随后生成并且发送的业务处理记录中。 When the service processing function with the new feature upgrades, service processing function to generate certain portions of the service processing records may be designed to be billing and other post-processing method comprises generating and transmitting subsequent service processing record. 因此,计费函数就与业务处理函数一起生成并且分配。 Therefore, the accounting function is generated and distributed with the business processing functions. 换句话说,这个方法使得计费函数的创建和调度与业务处理函数成为一个整体。 In other words, this approach makes creating and scheduling and billing service handler function as a whole.

和使用专用硬件和软件的现有技术记录处理系统相比,根据本发明生成的事件记录可由通用后处理系统从业务处理事件记录中提取指令并且然后使用这些指令处理记录事件来处理。 And recording processing systems of the prior art use of dedicated hardware and software as compared to the generated event in accordance with the present invention, the recording processing system extracts instructions from the service processing event record by the general post and then use these to process the instruction processing event records. 对计费函数的改变与业务函数在同一时间创建并且分配。 Billing function and traffic function to create and change at the same time assigned. 因此,计费函数不需要与业务函数分开维护和测试。 Therefore, the accounting function does not need to maintain separate business functions and tests. 这导致新业务在通信网中更快的实施。 This results in faster implementation of new services in a communication network.

如前所述,传送给记录处理器的业务处理记录包括影响在记录处理器中事件数据如何解释和处理的指令。 As mentioned above, the transfer to the recording processor records including the impact of business processes in the event data recording processor instructions how to interpret and handle. 虽然现有技术通话详细记录包括在彼此的前后关系中解释的多个数据域,多个数据域在彼此前后关系中处理的方法是完全固定在记录处理器的软件和硬件内的。 While the prior art call detail records including a plurality of data fields in each other's context explained, before and after the method of the plurality of data fields are processed in relation to each other completely fixed within the recording processor software and hardware. 因此,现有技术CDR中数据域的语义由约定建立。 Therefore, the prior art semantic CDR data fields established by the convention. 相反,本发明允许数据域基于记录中的其它内容来动态地重新打算并且由记录处理器之外的逻辑操作来决定。 On the contrary, the present invention allows the data fields based on the record of other content and dynamically re intended by the logic operation to determine the recording processor outside. 实际上,本发明甚至使得记录处理器能够仅由业务处理记录的指令内容来重新打算。 Indeed, the present invention is even so that the processor can only be re-recorded by the instruction content intended service processing record. 给定的通用记录处理器除了在业务处理记录本身里传送的指令之外实际上没有内在能力来处理业务处理记录里的事件。 Universal Records processor given instruction in addition to the business process in the transfer of the record itself is not actually deal with the inherent ability to handle business records in the event.

发明详述本发明针对用于处理通信网生成的事件记录的系统和方法。 DETAILED DESCRIPTION The present invention is directed to systems and methods for processing the event records generated by a communication network. 根据本发明的一个优选实施方案,事件记录由通用记录处理器处理并且用于执行这样处理的方法在事件记录本身内部传送。 According to a preferred embodiment of the invention, the event record processing by a general purpose processor and the recording processing method for executing such internal transfer in the event log itself.

下面的描述详细说明了记录处理方法的调度和执行如何以这种方式出现。 The following description details the scheduling and processing method to execute recording in this manner.

参见附图1,通信网100显示为包括由有时称为“中继”的通信链路组120和122互联的交换机112、114和116。 Referring to Figure 1, communications network 100 is shown to include the group of communication links are sometimes referred to as "trunk" 120, 112, 114, and 122 and 116 interconnected switches. 这个交换机和链路的集合组成一个业务承载网110。 This collection of switches and links to form a network of 110 service bearer. 在图1的例子中,业务承载网110用于在不同用户位置102a-102i之间传送信息。 In the example of Figure 1, the service bearer network 110 for communicating information between different subscriber locations 102a-102i.

网络110中交换机112、114和116的行动需要协调以便对数据进行路由或者连接用户。 Network switches 112, 114 and 110 need to coordinate the action 116 to the data routing or connection user. 因此,交换控制器/通话处理器132被耦合以便控制交换机112。 Therefore, the switch controller / call processor 132 is coupled to control the switch 112. 然而交换机112直接处理用户业务,交换控制器/通话处理器132命令交换机112在特定端口之间进行连接。 However, the switch 112 to deal directly with business users, the switch controller / processor 132 calls the command switch 112 is connected between a specific port. 在某些实际实现中,交换控制器/通话处理器132的某些或所有功能块都与交换机112集成或配置在一起。 In some practical implementations, the switch controller / call processor 132 of some or all of the functional blocks are integrated together with the switch 112 or configuration.

同样,图1中交换机114和116分别由交换控制器/通话处理器134和136控制。 Similarly, in Figure 1 the switch 114 and 116 by the switch controller / call processors 134 and 136 control respectively.

图1中每个交换控制器/通话处理器都连接到分组交换信令网150中,后者进而又耦合到至少一个业务控制点160。 Figure 1 each switch controller / call processor connects to the packet-switched signaling network 150, which in turn is coupled to at least one service control point 160.

通过信令网150,交换控制器132、134和136利用例如公共信道7号信令网(SS7)彼此之间进行通信。 By signaling network 150, the switch controller 132, 134 and 136 using, for example a common channel SS7 network (SS7) communicate with each other. 而且,交换控制器132、134和136可访问业务控制点160以确定如何发送给定的业务请求。 Moreover, the switch controller 132, 134 and 136 may access service control point 160 to determine how to send a given service request. 在典型的电话网中,SCP160通常包括用于执行号码翻译,如将1-800号码电话通话映射为实际目的地号码的数据库。 In a typical telephone network, SCP160 typically includes for performing number translations, such as the mapping of 1-800 number telephone calls to actual destination number database. 业务控制点160维护影响业务承载网110如何实现用户请求的数据。 Service Control Point 160 110 maintenance service bearer network influence how the user requests data.

如图1所示,业务管理系统(SMS)170耦合用于将业务控制数据下载到SCP160。 As shown in Figure 1, the service management system (SMS) 170 coupled to the download service control data to the SCP160. 在如图1所示的典型的智能网中,决定交换机和通话处理器行为的软件指令“内置”或手工加载到设备中。 In a typical intelligent network shown in Figure 1, the decision to switch and call processor acts software instructions "built-in" or manually loaded into the device. 通过SMS170或SCP160没有机制用于向这些元件分配实际的操作软件。 By SMS170 or SCP160 no mechanism for distributing the software to the actual operation of these components. 代替的,通过改变SCP160处的数据表的内容来实施对网络100的运行的有限控制。 Instead, by changing the contents of the data table SCP160 to implement a limited control over operation of the network 100. 该软件控制交换机控制器/通话处理器132的一个方面创建通话处理临时发生的记录。 The software controls the switch controller / call processor to create a record of 132 call handling temporary occurrence aspect. 这些记录包含关于用户使用实例的信息并且一般用于计算通常在一个给定的时间期间每个用户需要为其使用网络付费的量。 These records contain information about instances of the user and is generally used to calculate normally during a given period of time to pay the network usage for each user needs. 这些记录累积到通话详细记录文件142中。 These records are accumulated to 142 call detail records file.

同样地,交换机控制器/通话处理器134和136分别累积通话详细记录文件144和146。 Similarly, the switch controller / call processor 134 and 136, respectively, the cumulative call detail records file 144 and 146.

因为生成通话详细记录的单元通常相对远的分离,单独的通话详细记录文件在每个站点累积并且然后周期性地采集以便处理。 Because generate call detail records are usually relatively distant separation unit, a separate call detail records file accumulated in each site and then periodically collected for processing.

图2描述采集和处理CDR文件的现有技术。 Figure 2 depicts collection and processing CDR files prior art. 在图2中,在网100内的通话处理期间已经累积的CDR文件142、144和146合并并且提交给各种处理函数。 In Figure 2, which have been accumulated during call processing within network 100, CDR files 142, 144 and 146 were combined and submitted to various processing functions. 计费处理函数210处理CDR文件以便为使用网络的每个用户计费。 210 handle billing CDR file handler in order to use the network for each user billing. 聚集的CDR文件首先由文件解析阶段212解析生成单独的计费记录213。 CDR files are first gathered by parsing the file parsing stage 212 generates a separate billing record 213. 结果的解析计费记录输入到记录关联/解析函数214,其使CDR相互关联并且组成该网络处理的每个通话的描述。 The results of analytical accounting records entered into the record association / analytic function 214, which make up each CDR interrelated and call processing description of the network. 这个函数对于协调来自与给定通话相关的多个位置的CDR特别重要。 This function is especially important for CDR from a plurality of coordinate positions associated with a given call is. 记录关联/解析函数214还鉴别CDR之间的差异。 Records related / analytical function 214 also identify the difference between CDR. 随着从CDR装配出每个通话的一致描述,记录数据实例215就输出到计费分析函数216中。 With the CDR assemble a consistent description of each call, the recorded data is output to the billing instance 215 216 analysis functions. 计费分析函数216检查每个通话的可计费特征,将合适的计费费率应用于记录的使用上,并且将费用加到每个用户的帐单上。 Billing analysis function 216 checks each billable call features, will apply to the use of appropriate billing rates on record, and the cost per user is added to the bill. 计费分析函数216的输出是每个用户的帐单218。 Billing analysis function 216 is output 218 for each user billing.

欺诈分析函数220为了检测欺诈模式,而不是计费,类似地处理CDR文件。 Fraud analysis function 220 in order to detect fraud patterns, rather than the charge, is similarly processed CDR files. 生成计费记录223的文件解析阶段222以及生成记录数据实例225的记录关联/解析224与计费处理器函数210内的函数是类似的。 222, and record the associated record data generated 225 instances of file generation billing record 223 resolution phase / analytic functions and billing 224 210 processor functions are similar. 欺诈分析阶段226检查各个通话的进展,以及检查指示不寻常行为的多个通话之间的相似性。 Fraud analysis phase 226 more calls to check the progress of the similarity of each call, as well as checks indicate unusual behavior between. 生成欺诈结果的报告228以便突出来自欺诈分析226的处理的任何重要的欺诈相关的调查结果。 Report Generation 228 fraud results in order to highlight any significant findings from the analysis and processing 226 Fraud Fraud related.

业务分析函数230为了优化网络的运行或设计类似地处理CDR文件。 230 in order to optimize the business analysis function or design of the network run similarly processed CDR files. 生成计费记录223的文件解析阶段222以及生成记录数据实例235的记录关联/解析234与计费处理器函数210内的函数是类似的。 222, and record the associated record data generated 235 instances of file generation billing record 223 resolution phase / analytic functions and billing 234 210 processor functions are similar. 业务分析阶段236检查使用模型,如网络的给定部分的通话的数量和持续时间,可能对指导网络中的资源利用或规划网络的增长有用。 Business analysis phase 236 to check the use of the model, such as a given part of the network number and the call duration, may be useful in guiding the growth of network resource utilization or planning networks. 生成业务分析结果报告238以便概括业务分析236的调查结果。 Generate business analysis to summarize the results reported 238 236 business analysis findings.

计费处理器210、欺诈分析处理器220,以及业务分析处理器230典型地以软件实现以便运行在计算机上并且典型地彼此单独维护,甚至可能用不同的编程语言或在不同的计算平台上。 Billing processor 210, processor 220 fraud analysis, and business analysis processor 230 is typically implemented in software to run on a computer and is typically maintained separately from each other, and may even use different programming languages or on different computing platforms. 处理的CDR的语法或语义的任何改变都需要所有三个软件实现的改变和重新测试。 Any change in the syntax or semantics of the CDR process changes are required for all three software implementations and re-testing.

图3显示根据现有技术的典型的通话详细记录文件300的结构,与上述CDR文件142、144和146类似。 Figure 3 shows the detailed structure of the document record 300 according to an exemplary call prior art, similar to the above CDR files 142, 144, and 146. CDR文件300基本上是一系列相关联的许多固定长度CDR,在图3中由记录304a-304d描述。 CDR file 300 is essentially a series of a number of fixed-length CDR is associated, as described in Figure 3 by records 304a-304d. CDR文件300还包括头302以便提供关于文件的一般信息,如文件中的记录数或生成记录的网元的标识。 CDR file 300 also includes a head 302 in order to provide general information about the file, such as the identification number or generate recording file in the NE. 还可以包括一个尾部306以便于某些类型的数据处理或存储。 May also include a tail 306 for certain types of data processing or storage. 尾部306可,例如,包括来自CDR的对于检查数据文件的完整性有用的校验和。 Tail 306 may be, for example, including the CDR for integrity check from a data file useful checksum. 通话详细记录文件300中的记录304a-304d仅包含表示如电话号码和特征组的值的数据。 Call Detail Record file 300 records 304a-304d includes only represent data such as phone numbers and characteristics of the value of the group. 现有技术通话详细记录文件300不包含处理逻辑或指令的表示。 Call detail records prior art document does not contain the processing logic 300 or instructions indicate.

图4描述了在通信系统400中实现的本发明的一个示例实施方案。 Figure 4 depicts an example communication system 400 implemented in the embodiment of the present invention. 特别地,图4显示在提供通信业务期间记录是如何生成和发送的。 In particular, Figure 4 shows how records are generated and transmitted during the provision of communication services.

通信系统400包括一个业务承载网络402和一个网络控制/业务处理功能410。 Communication system 400 includes a service bearer network 402 and a network control / business processing functions 410.

业务承载网402可以是电话网、分组交换数据网、帧中继、异步传输模式(ATM)、或任何其它形式的信息传输和路由网。 Service bearer network 402 may be a telephone network, a packet switched data network, frame relay, Asynchronous Transfer Mode (ATM), or any other form of information transmission and routing network. 业务承载网402甚至可以是不同传输类型的组合并且可进一步包含如语音响应单元或传真存储转发设备的特殊资源。 Service bearer network 402 can even be a combination of different types of transport and may further contain special resources such as voice response unit or fax store and forward device.

网络控制/业务处理函数410协调业务承载网402中设备的操作。 Network control / traffic handler 410 coordinating service bearer network equipment operation 402. 例如,在通信系统400是电话网的情况下,网络控制/业务处理函数410处理在传统电话网中典型地由智能网(IN)通话处理器执行的通话处理,如通话路由选择。 For example, in the case where the communication system 400 is a telephone network, network control / service processing function 410 processes in the conventional telephone network typically calls handled by an intelligent network (IN) call processor to perform, such as call routing. 网络控制/业务处理函数410不管业务承载网402中使用的传输技术,都包括向用户提供业务需要的所有处理。 Network control / traffic handler 410 service bearer network regardless of transmission technology used in the 402, includes all processing services required to provide to the user.

在网络控制/业务处理函数410内,会话处理函数412表示确定如何控制业务承载网402以便响应用户请求提供业务的处理。 Within the network control / traffic handler 410, the session handler 412 to determine how to control the service bearer network 402 in response to user requests to provide services. 会话处理函数412类似于电话网中的电话处理。 Session handler 412 is similar to the telephone network call handling. 但是,会话处理函数412还包括对传统电话网之外的数据传输、多方通信、广播、组播、按需带宽、存储转发、网关协调以及其它特性。 However, the session handler 412 also includes outside the traditional telephone network data transmission, multi-party communication, broadcast, multicast, bandwidth on demand, store and forward, gateways coordination and other features.

会话处理函数412在协调业务期间生成事件413。 Session handler generates events 413 412 during business coordination. 会话处理函数412以软件实现并且在计算机上运行。 Session handler 412 is implemented in software and run on your computer. 实现会话处理函数412的部分指令决定何时对应于应该记录的重要的、可能可计费的行为的处理步骤出现。 412 parts of instructions to achieve a session handler to decide when to be recorded corresponding to the important, processing steps may be charging behavior occurs.

例如,电话用户可访问查号并且然后为少的费用自动请求该通话结束。 For example, users can access a telephone number and a check for less then the cost of the call request is automatically ended. 因为会话处理函数412引起业务承载网402来满足这个请求,该行为作为事件记录因此计费处理会将该费用附加在用户的帐单上。 Because session handler caused 412 402 service bearer network to satisfy the request, which acts as an event record and therefore the cost accounting process will be attached to the user's bill.

不是所有事件都有计费意义。 Not all events have billing significance. 有些事件简单地记录什么发生并且被证明对发现和消除网络中的问题,或者对观察使用模式有用。 Some events simply recorded what happened and is proven to detect and eliminate problems in the network, or useful to observe usage patterns. 实现业务处理函数的软件指令决定哪些行为会生成事件。 Implement business software instructions handler determines what actions will generate events. 因此,业务处理软件的设计者控制哪些事件适合被报告。 Therefore, which event service designer of the software control for processing are reported.

如图4所示,在业务处理期间生成的事件413由事件捆绑器414累积。 4, during service processing events generated by the event 413 accumulated bundle 414. 事件捆绑器414决定如何将事件分组在一起,哪些事件可以过滤掉,以及何时累积了足够数量的事件以便以事件集合415的形式传递到下一个处理阶段。 414 events tied to decide how events are grouped together, which can filter out events, and when accumulated a sufficient number of events in the event aggregate form so that 415 is passed to the next stage of processing. 事件捆绑策略422是决定事件捆绑器414行为的存储的规则集合或数据。 Event 422 bundling strategy is to determine the conduct of the event bundling rule 414 collection or data storage.

为调整事件捆绑器414的行为或性能,网络工程师在事件捆绑策略422内任意建立规则。 To adjust the event tied up 414 acts or performance, network engineer at events tied to any established rules within the policy 422. 结果,例如,事件捆绑器414使用会话的结束作为将与该会话相关的所有事件捆绑在一起的触发器。 As a result, for example, an event tied to use 414 as the end of the session all the events associated with the session tied to the trigger. 否则,事件捆绑器414按使用的资源、按事件类型或按事件中涉及的网络事件的标识将事件分组。 Otherwise, the event tied up 414 by the use of resources, according to event type or by the network to identify events involved in the event will be an event grouping. 如事件捆绑策略422控制的,事件捆绑器414还规定表示部分或多个会话的事件组。 Bundling strategies such as event-controlled 422, 414 also provides event tied a partial or multiple sessions of the event group.

如图4所示,由事件捆绑器414创建的事件集合415随后由小代码编制器416处理以生成小代码417。 4, an event created by the event tied 414 followed by a collection of 415 small code shown in the preparation process to generate 416 small code 417. 每个小代码417包括与表示对解释事件数据有用的处理步骤的代码一起的记录事件数据。 Each small code 417 includes data representing the interpretation of the event useful processing steps of recording event data codes together. 小代码编制器416检查一个或多个接收的事件集合415并且增加可执行代码段和附加数据。 Small Code Builder 416 check one or more receivers 415 and increased event collection executable code and additional data. 特别地,小代码编制器416依据事件集合415中存在什么事件类型来有条件地增加选择的数据和指令(可执行代码)。 In particular, small code formatter 416 based on what event type event set to conditionally increase the presence of selected data and instructions (executable code) 415. 要增加到小代码中的指令源自包含代码段的库420或者由小代码编制器416动态地构建。 Small code to be added to the instruction from the library that contains the code segment is constructed from 420 or 416 small dynamically compiled code. 小代码编制器416将来自多个事件集合415的数据组合到单一小代码417。 Small code compiled from more than 416 to 415 data set of events combined into a single small code 417.

小代码编制器416的行为由网络工程师任意建立的存储的小代码建立原则424确定。 Small code small code compiled 416 acts arbitrarily established by the network engineer to establish the principle of storing 424 OK. 小代码建立策略424可以是包含例如导致小代码编制器416将多个事件集合组合成单一小代码417的规则和数据的数据文件。 Small code 424 may be included to establish strategies such as causing a small code compiled a collection of 416 multiple event data files combined into a single small code 417 rules and data. 小代码建立策略424还例如决定将来自库420的代码段包含在小代码417中,或仅仅是参考。 Small code 424 also establish policies such as deciding to snippets from the library included in the small code 420 417, or just a reference. 小代码编制器416会考虑已知的通用库函数在将最终接收打包数据的记录处理器之间的可用性。 Small Code Builder 416 will consider the known generic library functions will eventually receive packetized data between recording processor availability. 小代码编制器416决定记录处理器以前从没用过的新的或者更新的函数已经可用。 Small Code Builder 416 determines a function of new or updated records had never used the processor is already available. 因此,小代码处理策略函数可确保小代码中包含新函数,因此记录处理器可使用新函数并且可能为以后使用而存储该函数。 Thus, small code that handles policy function to ensure that small code contains new functions, so the processor can use the new function recorded and may be stored for later use this function. 而且,通过小代码建立策略424,网络工程师可明确地指定新的或更新的函数来上载到记录处理器的本地库中。 Moreover, the establishment of policies through small code 424, network engineers can explicitly specify a new or updated record processor function to upload a local library. 对每个方法或方法组的这一指定在图5中描述为上载指示器532。 The designation of each method or group of methods is described in Figure 5 for the upload indicator 532.

在本发明的优选实施方案中,小代码编制器416赋予每个小代码417足够的数据和方法,因此通用处理器可以解释包含在其中的数据并且给出有用的输出,例如为用户计费。 In a preferred embodiment of the invention, the preparation of small code 416 assigned to each small code 417 sufficient data and methods, and therefore general purpose processor can interpret the data contained therein and give a useful output, for example, user billing. 因此,对如何进行计费以及其它间接处理的控制在软件指令以及网络控制/业务处理器函数410内的函数库内实现。 Therefore, how to handle billing and other indirect control and network control software instructions / service processor functions 410 function library implementation. 这意味着计费以及其它间接处理函数可伴随业务处理特性开发、测试和调度。 This means that the billing and processing functions can be accompanied by other indirect business processing feature development, testing and scheduling.

在本发明的优选实施方案中,小代码417以如JAVA字节代码的通用可执行代码的形式创建,以便各种网络控制/业务处理器410以及记录处理器408a-b可以在不同的计算平台上实现并且在创建和处理事件记录方面完全兼容。 In a preferred embodiment of the invention, such as small code 417 in the form of JAVA byte code to create executable code common to all kinds of network control / service processor 410 and the recording processor 408a-b can be different computing platforms in and the realization of the event record in creating and processing is fully compatible. 不管对JAVA字节代码的示例参考,相关领域的技术人员认可可采用许多其它种类的通用可执行代码,如小应用程序(applet)、servlet、JAVA BEANS、以及串行对象。 JAVA byte code regardless of the reference sample, the relevant skill can be recognized by many other kinds of universal executable code, such as small application (applet), servlet, JAVA BEANS, and serial objects.

在图4中,记录处理器408a和408b代表可解释和执行在通信系统400内的业务处理期间生成的指令和数据的通用目的处理器。 In Figure 4, record processors 408a and 408b representative of the general-purpose processor may interpret and execute generated during service processing within the communication system 400 instructions and data.

调度程序418接收每个小代码417并且生成发送到记录处理器408a、408b的所谓的“可解释”文件419。 Scheduler 418 receives each small code 417 and generate transmit to the recording processor 408a, 408b of the so-called "interpreted" File 419. 如调度策略426中存储的指令所指导的,调度程序418决定何时以及向哪里发送每个结果可解释文件419。 The scheduling policy stored guided instruction 426, the scheduler 418 determines when to send each interpretable results, and where the file to 419. 通过调整调度策略426中的设置,网络工程师可使调度程序418将可解释代码发送到选择的或优选的记录处理器408a、408b中的一个。 By adjusting the set scheduling policy 426, network engineers can interpret the scheduler 418 will send the code to the selected or preferred recording processor 408a, 408b of a. 调度程序418还通过感知记录处理器408a和408b之间的瞬时处理负载来执行负载均衡并且决定因此向哪里发送每个可解释文件419。 Scheduler 418 also recorded by sensing the instantaneous processing load between processors 408a and 408b to perform load balancing, and therefore decided to send the file to explain where 419 each. 调度程序418“调节”可解释文件419到多个记录处理器。 418 dispatcher "tune" explain files to multiple record 419 processors. 调度程序418选择将可解释文件419发送到存储区域440而不是直接到任何记录处理器。 Scheduler 418 to select the interpretable file 419 is sent to the storage area 440 rather than directly to any record processors. 调度程序418基于对库函数的了解或区分每个记录处理器408a、408b的特殊功能来决定向哪里发送每个可解释文件419。 418 dispatcher based understanding of library functions or special features distinguish each record processor 408a, 408b to decide where to send each file 419 interpretable.

调度程序418的上述任何行为都由调度策略426的内容控制或改变。 Scheduler 418 by any of the above acts Content Strategy 426 dispatcher control or change. 调度程序418还决定可解释文件419的最终形式。 418 dispatcher also decided the final form interpretable file 419.

根据本发明的一个优选实施方案,通信系统400还包括网络管理系统(NMS)404和业务开发环境(SDE)406。 According to one preferred embodiment of the present invention, a communication system 400 also includes a network management system (NMS) 404 and a service development environment (SDE) 406.

部分地,网络管理系统404担任传统的监视业务承载网402的功能状态,以及声称对其控制的角色。 In part, NMS 404 as the traditional functional status monitoring service bearer network 402, and claimed control of their roles. 根据本发明的一个优选实施方案,NMS404还是一种用于向通信系统400中的一个或多个网络控制/业务处理函数410分配操作指令或软件的装置。 According to one preferred embodiment of the present invention, NMS404 or to a communication system 400 in one or more network control / service processing function 410 dispensing operation means for instructions or software. 在1998年8月5日提交的共同转让、共同未决的美国专利申请第09/128,937号并且名为“用于智能分布式网络结构的智能呼叫平台(Intelligent Call Platformfor an Intelligent Distributed Network Architecture)”中描述有用于向业务处理器分配操作软件和数据的这样一种装置,该专利申请的整个内容和公开内容合并在这里供参考,就象在这里提出一样。 In commonly assigned August 5, 1998 submitted in co-pending US patent application No. 09 / 128,937 and entitled "Intelligent Call for intelligent distributed network architecture platform (Intelligent Call Platformfor an Intelligent Distributed Network Architecture)" There is described in the software and data for operating such a device assigned to a traffic processor, the entire contents of the patent application and the disclosure of which is incorporated herein by reference, the same as presented here.

业务处理和其它函数,包括计费处理以及其它这样的间接处理函数,在业务开发环境(SDE)406中创建。 Business processing and other functions, including billing processing and other such indirect handler, create a business development environment (SDE) 406 in. 一旦满意的开发和测试,在SDE406中开发的函数就对NMS404可用以便分配到网络中。 Once satisfied with the development and testing, developed in SDE406 function on the right NMS404 available for distribution to the network. 通过前面描述的机制,计费以及其它间接处理函数通过SDE406和NMS404类似地开发和传播。 Mechanisms, billing and other indirect processing functions similar to those described by the previous developed and spread through SDE406 and NMS404.

本发明的一个显著优点是可以在无须记录处理器软件任何改变的情况下以这种形式提供许多类型的改变。 A significant advantage of the present invention can be recorded in the case of processor software without any change in this form to provide many types of changes. 因为记录处理器的函数多半源自接收的可解释包,所以大多数通常的改变,如新的可计费特性的增加,在不改变记录处理器代码的情况下已经完成。 Since the recording function is mostly derived from the processor interpretable packages received, most usually changes, such as adding new billable features, without changing the recording processor code in the case has been completed. 在优选实施方案中,记录处理器支持JAVA等并且可解释代码是象这样打包的。 In a preferred embodiment, the processor supports JAVA and other records and interpretable code is packaged like this.

只有可执行程序的基本形式方面的改变,如在可解释对象中定位方法和数据的方式,会必然地影响记录处理器的操作。 Only by changing the terms of the basic form of an executable program, as explained by way of object positioning method and data, will inevitably affect the recording operation of the processor. 业务处理特性、事件处理策略、小代码处理策略以及调度策略的改变一般对记录处理器代码没有影响,除了这些改变需要可解释文件格式的基本改变的未必可能的事件。 Business processing features, changing event processing strategies, small code processing strategy and scheduling policies generally do not affect the recording processor code, in addition to these changes require a fundamental change in the file format does not necessarily explain the possible events.

图5描述了根据本发明的一个优选实施方案调度到记录处理器的一个可解释文件的典型内容。 5 depicts a scheduler to recording processor interpretable file according to a preferred embodiment of the present invention typically content. 在图5中,可解释文件500显示为包括几段。 In Figure 5, interpretable file 500 is shown to include a few paragraphs. 文件数据头510包括关于可解释文件500的一般信息,如文件类型标识符串512,文件长度514,以及包含段的相对位置或文件内的进入点的进入点表516。 File data header 510 includes general information about interpretable file 500, such as file type identifier string 512, length of the file 514, the entry point table 516 and the entry point or the relative position within the file that contains the segment.

可解释文件500中的方法段530包括可由记录处理器直接执行的函数。 Section 500 of the 530 files explain methods include direct function by recording processor execution. 在本发明的优选实施方案中,方法段530包括已编译的JAVA可执行代码段。 In a preferred embodiment of the invention, methods section 530 comprises compiled JAVA executable code segment of. 但是,图5中为清楚起见,方法段530以与源代码类似的形式出现。 However, in Fig. 5 for clarity, the method with the source code segment 530 similar form. 某些方法或方法组附有上载指示器532,用于指定应该上载并且保留在最终接收可解释文件500的每个记录处理器的库中的那些方法。 Some methods or group with the overload indicator 532, is used to specify those methods should be uploaded and interpreted in the final document is received for each record 500 processor library reserved.

可解释文件500中的记录数据段550包括表示通信网中业务处理期间发生的实际事件的方法调用。 Interpretable file 500 recorded in the data segment 550 includes a representation of the actual events that occurred during service processing in a communication network calls. 记录数据段550中调用的某些方法是在可解释文件500的段530中包含的那些,而其它方法可从可解释文件外部的库中获得。 Some method of recording the data segment 550 in the call are those in interpretable file 500 contained in paragraph 530, whereas other methods may be obtained from the interpretable file external library. 每个方法调用使用适合于特殊事件或行为的特殊实例的参数。 Each method call using the parameters appropriate for a special event or behavior of specific examples. 下面将详细进行描述,当记录处理器加载并且执行可解释代码时,顺序方法调用使得记录处理器能够重新构造网络中业务处理期间发生的事件并且基于重新构造的事件执行有用的处理。 Will be described in detail below, when the recording processor loads and executes the interpretable code, the order of method calls so that the recording processor to reconstruct the events that occurred during the network service processing and perform useful processing based on the reconstructed events.

例如,可解释文件500的方法段530包括称为“Add_Party(加入会话方)”的方法。 For example, the method can explain file segments 500 530 including one called "Add_Party (join session party)" method. 这个方法接受许多新的一方加入到已有的通信会话中,以及该方请求加入的日期和时间。 This method takes a lot of the new party is added to the existing communication session, and the date and time of the request to join the party. 新的一方加入到通信会话中将要求对用户计算额外的费用。 The new party is added to the communication session will require the user to calculate the extra cost. “Add_Party”方法包括用于确定增加到用户帐单的合适的费用的代码。 "Add_Party" method includes the code to the user to determine the appropriate billing costs.

如前面与小代码建立策略424一起描述的,在给定可解释代码中给定方法的包括依赖于函数的需要。 As previously established policies and 424 together with small code described in a given interpretable code given method depends on the need to include the function. 如果可解释文件包括许多会话的事件但是没有一个会话涉及Add-Party函数,则可解释文件不需要包括Add-Party函数。 If interpreted file includes many sessions incident but no one conversation involves Add-Party function, you can interpret the file does not need to include the Add-Party functions. 同样,如果加入会话方函数很常见,可能是标准库函数,则可解释文件不需要包括该函数,而是引用该函数或记录处理器需要的库。 Similarly, if a function is very common way to join the session, it may be the standard library functions, you can interpret the file does not need to include this function, but a reference to the function or record processor required libraries.

记录数据段550包括在代码中处理从哪里开始的一个准确的进入点,如图5中main()语句所表示的。 Recording data processing section 550 includes a precise entry point from where to start in your code, as shown in main () statement represents. 所有的执行环境(例如,操作系统,以及解释程序)规定如何识别其特定可执行格式的开始点(例如,在C/C++和JAVA中的“main”程序)。 All of the execution environment (for example, operating systems, and explain the program) to specify how to identify their starting point (for example, in C / C ++ and JAVA in the "main" program) specific executable format. 记录数据段550的开始是通用处理器加载可执行文件500并且然后开始处理内容之后的执行开始点。 Begin recording data segment 550 is the starting point of a general purpose processor executing the executable file is loaded and then start processing the contents of 500 after. 如后面详细描述的,通用记录处理器对可解释文件的最终处理需要对象的说明、在这些对象上的方法调用、以及对象间的相互作用,这对于面向对象编程的领域的技术人员是熟知的。 As described in detail later, the universal register file processor interpretable description of the final processing requires an object, the method calls on these objects, as well as interactions between objects, which for the field of object-oriented programming are well known in the art .

简而言之,随着网络用户参加使用通信网的会话,与该会话相关的事件被记录并且组装到可解释文件500中的整体描述中。 In short, as the network users to participate in a session using the communication network, an event associated with the session is recorded and assembled into the interpretable file 500 overall description. 事件表示为可解释文件500的记录数据段550中的方法调用。 Event indicates that the call is interpretable data file record segment 550 500 method. 在可解释文件500处理期间要调用的方法可通过可解释文件500自包含在并且分配到记录处理器中。 In the method of interpretable file 500 may be invoked during the processing of interpretable file 500 by self-contained in and assigned to the recording processor. 在本说明书的附录A中作为参考显示了根据可解释文件500的上述描述的JAVA代码的例子。 In Appendix A of this specification by reference shows a JAVA code interpretable file 500 described above is an example.

图6说明了根据本发明的一个优选实施方案装备以便接收并且处理可解释文件的记录处理器600。 Figure 6 illustrates, according to one preferred embodiment of the present invention, the equipment for receiving and processing interpretable file recording processor 600.

在图6中,可解释文件419由记录处理器408a接收并且以与程序在计算机中加载和执行或者小应用程序由主计算机应用程序,如互联网浏览器加载和执行类似的方式加载并且执行。 In Figure 6, interpretable file 419 408a and is received by the recording processor to load and execute the program or applet by the host computer in a computer application, such as Internet browsers loaded and executed in a similar manner to load and execute. 更特别地,可解释文件419的内容被解析并且由加载程序/解释程序610读进记录处理器408a的存储空间630。 More particularly, the contents of interpretable file 419 is parsed and by loader / interpreter 610 into the recording processor 408a reads memory 630. 因在解析期间找到可解释文件419中的代码段,这些段被作为临时代码640拷贝到记录处理器的存储空间并且加载程序/解释程序610生成一个临时表,在内存中将函数的名字映射到其地址。 Interpretable result found files during parsing code in 419 segments that are copied to a temporary code 640 processor storage space for recording and loader / interpreter 610 generates a temporary table, the name will be mapped to the function of memory its address. 因为在可解释文件419中遇到对库函数的引用,所以加载程序/解释程序610将从本地库630中选择的函数拷贝到存储空间630以便在处理期间很容易对其访问。 Because encountered references to library functions, so the load function program / interpreter 610 630 from the local library to select the copy storage space 630 is easy to handle during their visit in interpretable file 419. 这相当于本地库的运行时绑定。 This binding is equivalent to running a local library when.

当解释程序610遇到可解释文件419中的主进入点时,实际记录网络事件的处理开始。 When the interpreter encounters interpretable file 610 419 main entry point, the actual record of network events processing starts. 例如,存储器中的处理上下文有效地重新构建与给定通信会话相关的事件和环境。 For example, the memory processing context effectively rebuild the given event and the environment associated with the communication session. 在存储器中的会话重构650内,因表示事件的每个函数调用在可解释文件419中遇到,所以创建对象实例652、654、656和658并且紧接着调用方法来完成由可解释文件419中的代码计划的处理。 Reconstruction of the session in a memory 650, each represented by a function call event encountered in interpretable file 419, so creating object instances 652,654,656 and 658 and followed by a call to complete the method interpretable file 419 Processing code program.

各种对象实例652、654、656和658,例如,表示给定会话中涉及的用户、用户设备、交换机、路径、通话支路、业务或资源。 Various object instances 652,654,656 and 658, for example, represent a given user, user equipment, switches, the path, the call branch, business or resource involved in the session. 计算机科学和面向对象的编程领域的技术人员熟悉处理可以这种形式发生的各种方式。 Computer Science and object-oriented programming skill in the art are familiar with a variety of ways to deal with the occurrence of this form.

记录处理器408a可访问一个外部或集中的数据库660来检索如给定用户的当前帐户信息的共享数据。 Record processor 408a may access an external or centralized database 660 to retrieve a given user, such as the current account information of shared data. 记录处理器408a为给定用户处理事务并且然后将更新的信息返回数据库660。 Record processor 408a processing transactions for a given user, and then returns the updated information database 660. 例如,记录处理器408a获得用户的帐户并且然后将费用添加到该用户的帐户信息中。 For example, the recording processor 408a to obtain user's account and then add the costs to the user's account information. 因此,即使不同会话的使用由不同的记录处理器处理,费用也会正确地累加到该用户的帐户。 Therefore, even if different sessions handled by different record processors, costs will correctly accumulate to the user's account.

将编码的功能放在可解释文件419的一个显著优点是具有包括如哈希表和二进制树的有用数据结构以及如循环、递归、条件分支等的编程结构的灵活性。 The encoding function in interpretable file 419 is a significant advantage of the flexibility of including useful data and the binary tree structure of a hash table, and such as loops, recursion, conditional branches, etc. having a structure such as programming. 相反,现有技术的通话详细记录仅包含数值。 Instead, call detail records of the prior art contains values only.

现在参见图7,显示的流程图用于描述事件捆绑器414在处理来自会话处理器412的事件413时执行的处理步骤。 Referring now to Figure 7, a flowchart for describing event bundler 414 in handling the processing of step 412 of the event from the session processor 413 when executed. 一接收到来自会话处理器702的事件413,处理就从步骤702处开始。 Upon receiving the event from the session processor 702 413, the process starts at step 702. 因此图7中描述的处理对每个这样的接收事件413重复。 Thus the processing described in FIG. 7 413 are repeated for each such received event. 优选地,事件捆绑器414为会话处理器412参与的每个单独的通信会话维护一个持久的事件累积。 Preferably, event bundler 414 for each individual participating in a communication session session processor 412 maintains a persistent accumulation of events. 每个这样的累积称为“会话事件集合”并且优选地持续直到相关会话完成并且由会话处理器412决定中断。 Each such accumulation is called "Session Event Collections" and preferably continued until the completion of the relevant session is interrupted by a session processor and 412 decisions. 这对技术人员很容易理解,会话处理器412为每个事件413提供某种类型的指示器来识别通信会话的相关实例。 This art will readily appreciate that the session handler 412 413 to provide some type of indicator to identify the associated instance of the communication session for each event. 事件捆绑器414使用这个指示器来正确地关联与业务处理器412中特定通信会话相关的进入事件413。 414 events tied to correctly use this indicator associated with the business associate processor 412 into the event-specific communication session 413.

从步骤704继续,决定事件是与一个进行中的会话有关,还是一个事件捆绑器414还没有创建会话事件集合的新会话。 Continue from step 704 to determine the event is related to an ongoing conversation, or an event tied 414 have not created a new session session event collection.

如果进入事件表示一个新会话,则在步骤706,建立新的会话事件集合。 If the entered event indicates that a new session, at step 706, to establish a new session event collection. 否则,处理直接从步骤704移到步骤708。 Otherwise, the processing advances directly from step 704 to step 708.

在步骤708,决定进入事件是否表示会话的结束。 In step 708, the decision whether to enter the event, said the end of the session. 一旦会话结束,会话处理器412就生成并且发送一个由事件捆绑器414识别的末端类型事件。 Once the session ends, the session processor 412 generates and sends an event tied up by the end of the 414 identified types of events. 为概括处理的剩余部分,如果进入事件不表示会话结束,则该事件简单地添加到与会话相关的进行中事件集合中。 To summarize the remainder of the process, if the incoming event does not represent the end of the session, the event is simply added to the events associated with the collection of the session. 否则,事件捆绑器414将决定如何将结束的事件集合与其它事件集合组合在一起并且决定是否将累积的事件集合发送到小代码编制器416。 Otherwise, the event 414 bundle will decide how to end the set of events set in combination with other events and decide whether to send a cumulative set of events to prepare small code 416.

在步骤708,如果决定事件不表示会话结束,则处理从决定步骤710继续。 In step 708, if the event does not represent a decision session ends, the process continues from decision step 710. 在步骤710,事件捆绑器414根据事件捆绑策略424中的设置执行什么事件类型添加到会话事件集合中的控制。 In step 710, an event tied to perform any type of event 414 added to the session event collection bundling strategy according to the event control 424 settings. 如前面提到的,网络工程师使用这种方法来限制集合中事件的类型。 As mentioned earlier, network engineers use this method to restrict the type of collection events. 例如,某些事件消息仅对诊断目的有用并且在后处理期间用不到。 For example, some event messages only useful for diagnostic purposes and not during the post processing. 通过改变事件捆绑策略422的内容,网络工程师可动态地导致诊断事件通知包含在或不包含在事件集合中。 Bundled Content Strategy 422 by changing events, network engineers can lead to the diagnosis of dynamic event notification contained in or is not included in the event set. 在通常情况下,采用这个过滤来避免最终将会发送到后处理的集合中无关的内容。 Under normal circumstances, to avoid the use of this filter set will ultimately be sent to post-processing of unrelated content.

如果在步骤710,进入事件没有被事件捆绑策略422中实现的当前指令过滤,则在步骤712该事件添加到合适的会话事件集合。 If, at step 710, the event is not tied into the events of the current instruction strategies implemented filter 422, then in step 712 to add the event to the appropriate event collection session. 否则,跳过步骤712并且单一进入事件的处理如末端步骤714表示的结束。 Otherwise, skip to step into the events of 712 and a single processing step, such as the end of the end of the 714 represented.

回来参考步骤708,如果进入事件确实表示相关会话的结束,则处理从步骤716重新开始,其中会话事件集合对进一步输入关闭并且关于该集合的任何需要的概要数据被编译并且加入到该集合中。 Referring back to step 708, if the incoming event does indicate the end of the relevant session, the process start again from step 716, in which event set for further input session is closed and summary data on any of the collection needs to be compiled and added to the collection. 概要数据可包括,例如,集合中事件的数量、使用的任何特殊资源的列表,或会话处理器或事件捆绑器函数的软件版本。 Summary data may include, for example, a list of the number of events in the collection, the use of any special resources, or the session processor or event bundler functions of the software version.

然后继续到步骤718,事件捆绑器414,由事件捆绑策略422中的内容指导,基于事件集合的某个通用属性决定事件集合是否要分组到聚合的集合。 Then proceed to step 718, the event tied 414, 422 by the event's content bundling strategy guide, decide whether you want to set the event to the aggregation group based on a common set of properties of the event collection. 例如,网络工程师通过将与业务承载网402中的特定资源的使用相关的集合组合在一起来决定优化性能。 For example, network engineers will use the 402 service bearer network related set of specific resources together to determine the optimal performance.

如果在步骤718,没有使用用于组合集合的标准,则在步骤720,最近结束的事件集合被简单地添加到累积的或聚集的集合。 If, at step 718, there is no standard for the use of combination set, then at step 720, the most recently completed event collection is simply added to the cumulative or aggregate collection. 随着单一集合的增加,在步骤722检查累积集合的属性以便决定累积的集合是否准备好发送到小代码编制器416。 With the increase of a single collection, cumulative set in step 722 checks to determine whether the accumulation of property is ready to be sent to a small collection of compiled code 416. 做出这个决定的事件捆绑器414的标准由事件捆绑策略424内的内容决定。 This decision of the event bundled 414 standard policy decision by the incident bundled content within 424. 例如,无论何时聚集的集合增长到某个整体大小或当从来自事件捆绑器的前一个聚集集合的发送以来已经过去了一个时间限制,则事件捆绑器414发送一个聚集集合。 For example, whenever the aggregate grows to a certain overall size of the set, or when its front from the event bundler from an aggregate transmit has passed a set time limit, the event bundler 414 sends an aggregated set. 完成后者以便当网络相对空闲时减少处理少量会话的延迟。 Completion of the latter in order to reduce processing delays when a small amount of a session when the network is relatively idle.

然后在步骤722,如果符合发送累积集合的标准,则该事件集合就发送到小代码编制器416并且优选地从实现事件捆绑器414的处理器的有效存储器中去除。 Then, in step 722, if they meet the criteria set send accumulation, then the event is sent to a small collection of compiled code 416, and preferably removed from the effective realization of the event bundled memory 414 processors. 否则,在步骤722,如果不满足发送标准,则累积的集合仅暂时保持在存储器中并且单一事件的处理如末端步骤714所指示的结束。 Otherwise, at step 722, if the transmission standard is not met, then the cumulative collection is only temporarily held in the memory and the end of a single event such as the end of the process indicated in step 714.

附图的图8描述了小代码编制器416执行的处理,由此每个事件集合415从事件捆绑器414中接收并且处理以便生成小代码417。 DRAWINGS Figure 8 depicts a small code processing performed by the formatter 416, whereby each event collection 415 is received from event bundler 414 and processed to generate a small code 417.

图8的处理一接收到单一事件集合415就从步骤802开始。 Figure 8 is a reception processing to a single set of events begins in step 415 to 802. 然后直接进行到步骤804,小代码编制器416决定被组装的小代码是否已经存在或者新的事件集合的接收是否应该启动一个新的小代码。 Then proceeds directly to step 804, a small code small code formatter 416 determines whether there is already being assembled or receive a new set of events should start a new small code. 如果在步骤804决定需要,则在步骤808重新开始执行之前在步骤806创建小代码。 If you need to determine in step 804, then in step 808 before execution resumes at step 806 to create a small code. 在步骤806创建的小代码将作为一个或多个事件集合的容器。 Small code created in step 806 the container as a collection of one or more events.

注意步骤804和806主要在单一小代码中包括多个事件集合时有用。 Note that steps 804 and 806 includes a useful set of multiple events in a single small code.

在步骤808,小代码编制器416决定是否容许在单一小代码中放置多个事件集合。 In step 808, a small code formatter 416 determines whether to allow placing multiple events in a single set of small code. 这受到小代码建立策略424的内容的影响。 This small code established by the contents of the policy impact of 424. 例如,网络工程师为了效率决定允许事件集合绑定到小代码中。 For example, network engineers decided to allow the event to the efficiency of the collection is bound to a small code. 如果允许这样的绑定,则执行步骤812以便将接收的事件集合加入到当前小代码中。 If you allow this binding, the 812 steps to the event received a small collection added to the current code.

在加入事件集合之后,小代码编制器416在步骤814估算该小代码是否满足结束并且发送该小代码的条件。 After adding an event collection, small code formatter 416 estimates in step 814 the small code meets the conditions of the small end and send the code. 小代码发送条件是小代码建立策略424内的设置。 Small code to send a small code to establish the conditions set policies within 424. 例如,网络工程师将无论何时小代码超过某个大小或事件集合的数量就导致小代码编制器发送小代码的内容放在小代码建立策略424中。 For example, network engineers whenever a small code size or the number of events over a collection led to the preparation of small code to send the contents of a small code establish policies on small code 424.

发送条件还考虑在小代码内的事件集合中用到的资源类型。 Send conditions also consider the resource type used in the event set within the small code.

如果,在将事件集合加入到小代码之后,在步骤814小代码还不满足发送条件,则处理在步骤830终止并且事件集合和小代码都不再进一步处理直到接收到随后的事件集合。 If, after the event added to the small collection of code, in step 814 small code transmission conditions is not satisfied, the process is terminated in step 830 and event collection and small code without further processing until it receives a set of subsequent events.

替代地,如果在步骤814小代码被认为满足发送条件,则可能包括多个事件集合的小代码在步骤816开始进一步被处理。 Alternatively, if at step 814 is considered small code satisfies the transmission condition, it may comprise a plurality of small code start event set 816 is further processed in step.

回来参见步骤808,如果不允许多个事件集合构成小代码,则执行进行到步骤810,其中在步骤802接收的单一事件集合被简单地放入在步骤806创建的小代码中。 Referring back to step 808, if the event does not allow multiple collections constitute a small code, the execution proceeds to step 810, where the collection is simply placed in a small code you created in step 806, step 802 is received in a single event. 此后在步骤816开始进一步处理新的小代码。 Since then start a new small code further processing in step 816.

图8中的剩余处理步骤按需要用后面后处理器需要的功能块扩大小代码。 Figure 8 remaining processing steps as required by the processor after the back needed to expand the small block code. 这些功能块与前面与图5一起描述的方法530对应。 These function blocks 530 and corresponding methods previously described in conjunction with FIG.

在步骤816,基于小代码中包括的事件类型构造了表示运行时需要的所有处理方法和任何其它功能块的相关性列表。 In step 816, based on the event code included in the small type constructs a list of all the correlation processing method, and any other function block representation needs at runtime. 例如,如果即使小代码中的一个事件集合包括涉及对通话方的费用撤销的事件,则为了后处理器正确地处理该事件以及处理包含该事件的任何会话,在运行时,某些函数必须可用。 For example, if even a small code set includes an event related to the cost of the caller revocation event, the processor correctly in order to post the event and handle any session consists of the event, at runtime, certain functions must be available .

某些经常用到或非常基本的函数如图6中的库620所示永久地驻留在后处理器中。 Some frequently used or very basic function shown in Figure 6, 620 libraries reside permanently in the processor. 通过对哪些函数一般对后处理器可用的某些了解,小代码编制器可避免在小代码中复制这些运行时函数。 Which functions through the general understanding of some of the post-processor is available, small code formatter can avoid duplication of these run-time functions in a small code. 因此,步骤818涉及决定是否能用引用代替实际运行时函数以便减少小代码的大小。 Therefore, the steps involved in deciding whether to use a reference to 818 instead of the actual run-time functions in order to reduce the size of a small code. 在步骤818,由小代码建立策略424指示小代码编制器416是否允许引用来代替实际的运行时函数。 In step 818, the establishment of strategies compiled code 424 indicates that small little code consists of 416 references is allowed to replace the actual run-time functions. 网络工程师可调整小代码建立策略424的内容来导致小代码编制器为最小化小代码大小来使用对运行时函数的引用。 Network Engineer adjustable small code 424 to create a content strategy resulting in a small code formatter for small code size to minimize the use of a reference runtime functions. 否则,网络工程师想要某些或所有需要的函数显式地包括在每个小代码中,以便确保最终接收该小代码的所有后处理器使所有需要的功能完整。 Otherwise, network engineers want some or all of the functions needed to be explicitly included in each small code in order to ensure that the final code to receive all the small post-processor to make all the necessary functions intact. 如果目标后处理器的功能在小代码建立时还不确定时,这样做很有必要。 If after the establishment of the target processor functionality in a small code Shihai uncertain, it is necessary to do so.

如果处理步骤818发现允许小代码中的引用,则在步骤820对可由引用表示的每个函数的合适的引用就放置在小代码的方法段中。 If the processing step 818 found references in the code to allow small, step 820 pairs each function can be expressed in a reference to the appropriate reference method and put in a small section of code. 这样的引用例如,可规定库名和函数调用名。 Such references, for example, may require the library name and the name of the function call.

除此之外,对于在步骤820由引用代替的每个函数,更新运行时相关性列表,删除现在已经通过引用充分包含在小代码中的函数。 In addition, step 820 for each function replaced by a reference in updating runtime dependency lists, delete functions are now fully contained in a small code by reference.

无论函数是否由引用代替,在步骤822小代码的处理都继续,其中为任何剩余的相关性检查在步骤816得到的相关性列表。 Regardless of whether the function is replaced by a reference to the process in step 822 are small code continues, the list of which is correlated to check for any remaining correlation obtained in step 816. 如果还有必需寻址的运行时相关性,则执行步骤824来向小代码的方法段增加需要的函数。 If there is correlation between the required addressing operation, step 824 functions to the methods section of a small increase in the required code is executed.

这些函数可,例如,从图4所示的本地函数库420获得。 These functions can be, e.g., 420 obtained from local function library shown in FIG. 4. 由步骤824包括在小代码中的所有函数从步骤816得到的相关性列表中去掉。 By step 824 includes all the functions in a small code removed from the list of step 816 the correlation obtained.

然后,在步骤826,再次检查相关性列表来看是否还需要没有显式地或通过引用包含的任何函数。 Then, in step 826, once again check whether the correlation also need to look at the list does not explicitly or by reference to any function included. 如果还有函数需要包括,则在步骤828,查阅小代码建立策略以便找到可用的指令来在小代码编制器416中动态建立所需的功能。 If there is need to include the function, then in step 828, a small code to establish strategic review in order to find the available commands to dynamically build the required functionality in a small code Builder 416. 然后从相关性列表中去掉动态构建并且包括在小代码中的任何函数并且处理在步骤830重新开始。 Then removed from the list dynamically build relevance and include any function in a small code and processing resumes at step 830.

在步骤830,进行相关性的最终评估。 In step 830, the correlation of the final assessment. 如果有任何剩余的未解决的相关性,则小代码编制器在步骤832声明一个错误情况并且取消小代码以便网络工程师查找错误的故障原因。 If there is any correlation between the small code formatter remaining unresolved an error at step 832 and a declaration of withdrawal of the code so network engineers find the cause of the error fault. 因此接收事件集合的处理在步骤840终止。 Therefore, processing the received event collection terminates at step 840.

否则,如果步骤830,所有运行时函数相关性都解决了,则在步骤834完整的小代码传递到调度程序418并且接收事件集合的处理在步骤840结束。 Otherwise, if the step 830, all runtime function correlations are resolved, then in step 834 is passed intact to the scheduler 418 small code and process the received event collection ends at step 840.

图9描述了在接收来自小代码编制器416的小代码415并且将完整的可执行代码或“可解释”文件419发送到记录处理器408或临时数据存储库时由调度程序418执行的处理步骤。 Figure 9 depicts the processing steps in receiving compiled code from the small small code 416 415 and the complete executable code or "interpreted" file 419 is sent to the recording processor 408 or temporary data repository executed by the scheduler 418 .

一接收到小代码,图9的处理就从步骤902开始并且立即继续到步骤904。 Upon receiving the small code, to the processing of FIG. 9 begins at step 902 and immediately proceeds to step 904.

在步骤904,通过编译和链接(如果需要)累积在小代码中的代码并且通过将头信息加到对应于图5中头段510的可执行文件,小代码被转换成自包含可解释代码。 In step 904, by compiling and linking (if necessary) the code accumulated in a small code and header information is added by the header corresponds to the executable file 510 in FIG. 5, the code is converted into a small self-contained interpretable code. 在一个变化方案中,接收的小代码包括类似人们可读的源代码形式的函数。 In one variation, the small code received include similar human-readable source code form of the function. 这个源代码需要编译成某种形式的直接可执行机器指令并且函数引用需要通过链接解决,计算机编程的技术人员通常都理解这一点。 This source code needs to be compiled into a form directly executable machine instructions and function references resolved through links, computer programming and technical personnel usually understand that. 在另一个变化方案中,小代码包括作为仅需要包含和链接在可解释文件中的预编译段的函数。 In another variation, including small code needs to be included only as a function of pre-compiled and linked segments in interpretable file. 在第三个变化方案中,函数以类似源代码的形式在可解释文件中传递以便由记录处理器后处理程序在运行时解释。 In a third variation, the function of the source code in the form of a similar transfer in order to explain the document handler at runtime interpreted by the processor after recording.

在优选实施方案中,可解释文件包括已编译JAVA字节代码形式的函数并且记录处理器能够直接执行这样的可解释文件。 In a preferred embodiment, the interpretable file comprises compiled JAVA byte code form of function and capable of performing such a recording processor interpretable file directly.

在步骤904,还生成了一个压缩或加密版本的可解释文件以便改善可解释文件传输和存储时的效率和安全性。 In step 904, also generates the efficiency and safety of a compressed or encrypted version of the file in order to improve interpretable interpretable file transfer and storage time.

接着,在步骤906,查阅调度策略426以便决定可解释文件的目的地是否固定。 Next, in step 906, 426 inspection scheduling policy documents in order to decide whether a fixed destination interpretable. 在某些情况下,网络工程师希望强制所有的可解释文件发送到一个特定的记录处理器。 In some cases, network engineers want to force all of the files are sent to explain a particular record processor.

如果是这种情况,则在步骤908,试图将可解释文件发送到指定的记录处理器或存储库。 If this is the case, then in step 908, attempts to send the interpretable file to a specified processor or store the recording. 如果这个发送努力失败则声明一个错误。 If this effort fails to send an error is declared. 然后因为不允许替代的目的地或存储库所以处理在步骤910终止。 Since then allowed to replace the destination or repository so treatment is terminated in step 910.

返回步骤906,如果在调度策略426中可解释文件的目的地不固定,则执行进行到步骤912。 Returning to step 906, if the destination is in the scheduling policy interpretable file 426 is not fixed, then execution proceeds to step 912. 在步骤912,生成两个列表。 In step 912, generate two lists. 一个是当前对调度程序可用的所有目的地列表,如记录处理器和存储库。 One is a list of all destinations currently available to the scheduler, such as processor and store records. 另一个是小代码的外部相关性列表。 The other is an external dependency lists small code. 例如,小代码编制器假设某些库在运行时可得到并且如图8的步骤818-820所指示的选择仅引用函数。 For example, suppose some small code formatter available at run-time library and select Step 8 as indicated in Figure references only function 818-820. 外部相关性可以是小代码编制器假设将在后处理运行时环境中存在的数据或函数。 External correlation may be small code assumes compiled data or function present in the environment in post-processing runtime.

如果不是所有的记录处理器都有假设的运行时函数,则步骤912、914和915确保可解释文件仅调度到在本地库中确实有需要的运行时函数的记录处理器中,如图6所示的库620。 Runtime function, if not all the records processors have assumed, then steps 912, 914 and 915 to ensure that files can only be interpreted to record the processor scheduling in the local library does need runtime functions, as six Library 620 shown.

在步骤912生成列表之后,执行步骤914以便确定是否允许基于每个目的地功能的路由。 After the step 912 to generate a list, execute step 914 to determine whether each destination based routing function allows. 这个决定由调度策略426的内容确定。 This decision is determined by the contents of the scheduling policy 426. 每个目的地的功能包括,例如,可用的运行时库、处理或存储功能、或目的地的特定资源的可用性。 The function of each destination include, for example, specific resources runtime libraries available, processing or storage, or destination availability. 网络工程师可能想要禁止功能的路由以便执行故障检查或协调新的函数库的调度,这将在后面与图10的步骤1008一起描述。 Network engineers may want to prohibit the routing function in order to perform troubleshooting or coordinate scheduling of new library, which will be described later in conjunction with step 1008 of FIG. 10.

如果允许基于功能的路由,则执行步骤915由此没有处理可解释文件需要的功能的目的地从步骤912得到的候选目的地列表中删除。 If you delete the destination list of candidate-based routing capabilities allow, then step 915 thus does not require processing capabilities interpretable destination file from step 912 to get.

接着,在步骤916,查阅调度策略以便确定到目的地的可执行文件的路由是否可考虑候选目的地之间的优先选择顺序。 Next, in step 916, the scheduling policy review to determine whether the route to the destination executable file can be considered candidates in order of preference between destinations. 如果是,则执行步骤917以便基于调度策略426中包含的优先选择对候选列表排序。 If yes, proceed to Step 917 to 426 based on the scheduling policy contained in preference to sort the candidate list. 网络工程师可利用这个功能使得特定业务处理器优选地“归位”到特定的记录处理器。 Network engineers can use this function to make specific business processor preferably "homing" to a particular recording processor. 这个优先选择可基于,例如静态负载均衡或业务处理器和记录处理器之间的接近性。 This preference may be based, for example, near a static load balancing or service processor and recording processor.

在步骤918,查阅调度策略以便确定是否允许动态负载均衡。 In step 918, the scheduling policy review in order to determine whether to allow dynamic load balancing. 如果允许,则执行步骤919以便进一步根据当前处理负载对候选目的地列表排序。 If allowed, 919 in order to further sorted according to the current processing load on the candidate list of destinations is executed step. 每个目的地记录处理器的当前处理负载可通过例如网络管理系统转播到调度程序。 Each destination record processor's current processing load can be broadcast through the network management system for example, to the Scheduler. 虽然没有明确地显示,但是通信网领域的普通技术人员很容易理解实现这个的方法。 Although not explicitly shown, but one of ordinary skill in the field of communication networks to achieve this is easy to understand way.

一到达步骤920,则从步骤912得到的目的地的候选列表就根据调度策略426的指示完成过滤和排序。 A step to reach the destination list 920 candidates from step 912 to get instructions on scheduling strategy based on complete filtering and sorting 426. 步骤920简单地涉及选择目的地列表的最上部的记录作为由步骤922、924、926和928形成的处理循环的初始上下文。 Step 920 simply involves selecting a destination list of records as the initial context uppermost steps 922,924,926 and 928 by the formation of the processing loop.

在步骤922,试图将在步骤904建立的当前可解释文件发送到对于步骤922的第一次迭代,在步骤920识别的当前候选目的地。 In step 922, attempts to establish at step 904 the current interpretable file is sent to step 922 for the first iteration, the current candidate destination identified at step 920.

在步骤924,如果步骤922的试图发送是成功的,则如末端步骤930所示就完成了小代码的处理以及相应可解释文件的调度。 In step 924, if the step 922 transmission attempt was successful, then, as shown in step 930 to complete the end of the scheduling process and the corresponding small code interpretable file.

否则,如果步骤924指示调度不成功,则处理移到步骤926来找到另一个候选目的地。 Otherwise, if step 924 indicates scheduling unsuccessful, the process moves to step 926 to find other candidate destinations. 如果步骤926发现在列表中没有其它候选目的地,则在步骤932声明一个错误,可解释文件被发送到临时存储区,并且处理在步骤930终止。 If step 926 destinations found no other candidate in the list, then an error is declared in step 932, interpreted the file is sent to a temporary storage area, and the process is terminated in step 930.

当步骤926确实在候选目的地列表中找到额外的未试过的目的地时,处理在步骤928继续,其中前面试过的候选项从列表中删除并且列表中的下一个候选目的地成为当前目的地。 When the step 926 is really not tried to find additional candidates destination in the destination list, the process continues at step 928, in which the front of the candidates tried to remove it from the list and the list of candidates for the next destination becomes the current purpose ground. 如所示,然后对新的当前目的地重复步骤922和924。 As shown, then repeat steps 922 and 924 of the new current destination. 简单地说,重复包括步骤922、924、926和928的循环,直到或者成功地将可解释文件发送到目的地,或者目的地列表用完。 Briefly, comprising the steps 922,924,926 and 928 repeat the cycle, until either successfully sent interpretable file to the destination, or the destination list is exhausted. 本领域的普通技术人员应该理解,有几种方式来实现并且检验到目的地的可解释文件的传输。 Of ordinary skill in the art should appreciate that there are several ways to implement and verify the interpretable to a destination file transfers.

图10描述了根据本发明的一个优选实施方案,一接收到由业务处理器生成的可解释文件,就由记录处理器执行的处理步骤。 Figure 10 depicts a preferred embodiment according to the present invention, upon receiving the interpretable file is generated by the service processor, the processing steps performed by the recording processor. 与下面的描述一起参考图6和图10将特别有帮助。 Together with the following description with reference to FIG. 6 and FIG. 10 will be particularly helpful. 图10中大多数的处理步骤由图6中的加载程序/解释程序610执行或协调。 10. Most of the processing performed in step 610 in FIG. 6 or coordinated by loader / interpreter.

随着可解释文件的接收,图10的处理从步骤1002开始。 As interpreted receive files, the process of FIG. 10 begins in step 1002. 接着,在步骤1004,如果需要,则可解释文件被解密并且解压缩,以生成准备加载到处理环境中的可解释文件。 Subsequently, 1004, if required, can interpret the file is decrypted and decompressed in step, to generate a ready to be loaded into the processing environment interpretable file. 接着,在步骤1006,读取可解释文件中的头信息以便决定可解释文件处理期间需要的相关性。 Next, in step 1006, reads the interpretable file header information to determine required during processing of interpretable file correlation.

在步骤1008,为指定要从可解释文件上载到记录处理器库中的方法检查包含对应于图5中方法段530的方法的部分可解释文件。 In step 1008, explain to upload files to a specified method checks from record processor library contains the methods corresponding to the methods section 5 of section 530 of interpretable files. 如前面与图4中小代码建立策略424一起描述的,特别是当调度希望广泛分布和经常使用的新方法时,网络工程师可指定要上载到记录处理器的库中的选定方法。 The new method is widely distributed and is often used as previously in Fig. 4 small code described in connection with the establishment of policies 424, particularly when scheduling desired, a network engineer can specify the record processor library to upload the selected method.

在步骤1008,对接收的可解释文件中的每一种方法或方法集都检查如图5中的上载指示器532的标记,以便确定可解释文件中的任何方法是否应该上载并且驻留在记录处理器的库中。 In step 1008, the received document to be interpreted in each method or set of methods are checked. 5 FIG upload indicator 532 marks, in order to determine whether any of the methods interpretable file should reside on the record carrier and processor library. 如果不,则处理如下所述从步骤1014继续。 If not, the process continues as described from step 1014. 否则,则执行步骤1010以便决定指定的可上载方法是否已经在库中。 Otherwise, perform the method steps can upload if so decided to designate 1010 has been in the library. 如果可上载的方法已经在库中,则处理如下所述从步骤1014继续。 If the method can be uploaded already in the library, as described below, the process from step 1014 to continue. 否则,指定的方法被上载并且永久地存储在记录处理器库中。 Otherwise, the specified method is uploaded and stored permanently in the record processor library.

如本领域的技术人员认可的,这个处理自动地更新记录处理器库并且可以补充一个从记录处理器库中偶然删除不用的或不经常使用的函数和数据的维护处理。 As one skilled in the art recognized, this processing is automatically updated record processor library and can handle an occasional supplement to maintain deleted from the record processor library unused or infrequently used functions and data.

而且,本领域的技术人员将认识到,从可解释文件到记录处理器库的方法上载还可以通过执行可解释文件中的代码来控制或固有地实现。 Moreover, those skilled in the art will recognize from the interpretable file to a record processor library may also be a method to control the carrier or inherently accomplished by executing code in the interpretable file. 换句话说,简单地往回参见图5,当由记录处理器执行可解释文件时,可解释文件500的记录数据段550内的某些方法调用可进行库内容的检查以及选定方法到记录处理器库中的上载。 In other words, briefly back to Figure 5, when the interpretable file is executed by the recording processor, some method of interpretable file 550 recorded data segment 500 within the call may be for the contents of the selected method to check and record Upload processor library.

在步骤1014,检查记录处理器,并且特别是记录处理器的本地库以便看看是否所有的相关性都存在。 In step 1014, inspection records processors, and in particular the local library record processor in order to see whether there is any correlation. 如果在步骤1014,确定某些相关性在记录处理器中不存在,则在步骤1010,检查可解释文件以便看看缺少的相关性是否是自包含的。 If, at step 1014, to determine the correlation does not exist in some record processor, then step 1010, check the file in order to see the lack of interpretable correlation is self-contained. 如果不是,则在步骤1026声明一个错误并且可解释文件的处理在末端步骤1024结束。 If not, an error is declared in step 1026 and processing of interpretable file ends at the end of step 1024.

否则,当确定所有需要的元素对记录处理器都是可用的时,则执行步骤1016,其中包括作为可解释文件中的函数或库的方法被读取到运行时环境中,即作为如图6所示的存储空间630中的代码640。 Otherwise, when it is determined that all the elements required for recording processor is available, step 1016 is performed, including as a method for interpretable file function or library is read into runtime environment, that is, as shown in Figure 6 memory space 630 shown in the code 640. 如前面所描述的,来自库620的函数也因支持可解释文件的执行的需要拿到存储空间630。 For example, the previously described function from library 620 may also be explained by the need to support the implementation of the file to get memory space 630. 随着库函数放入存储空间620,加载程序/解释程序610建立一个将函数名映射为表示存储器中实例化的每个函数的进入点的存储器地址的临时表。 With the library functions into the storage space 620, loader / interpreter 610 to establish a mapping function names to represent the memory instantiated for each function entry point memory address temporary tables. 这使得调用每个函数时能够找到跳到的正确的存储器位置。 This makes it possible to find the right memory location to jump in when you call each function. 本领域的技术人员会将这个认作称为运行时绑定的常规处理。 Those skilled in the art will recognize this as called runtime binding of conventional treatment.

再参见图10,在步骤1010,加载程序/解释程序610定位已经调度到存储器空间630中的可解释文件的主进入点。 Referring again to Figure 10, in step 1010 loader / interpreter 610 has been positioned in the main memory space scheduling in interpretable file 630 entry point. 然后进行可解释文件的执行。 Then execute interpretable file. 如前面与图6一起描述的,然后可解释文件中的指令将典型地导致在存储空间630内创建会话重建空间650并且会在其中实例化各种业务相关以及事件相关的对象。 As previously described in conjunction with FIG. 6, and then the file interpretable instructions will typically cause a session reconstruction space is created in the memory space 650 and 630 in which the instance of the various business-related and event-related objects. 由可解释文件执行创建的输出累积在记录处理器中直到可解释文件执行结束。 Cumulative interpreted by the output file created in the recording processor execution until the end of interpretable file execution. 可解释文件的执行还导致数据写入上下文信息存储器660。 Interpretable file is executed also cause data written to the memory 660 the context information. 例如,如果记录处理器运行一个由长途电话会话引起的可解释文件,则输出文件可以是用户的帐单或报告并且上下文信息存储器660可存储包含该用户帐户的即时余额的帐户记录。 For example, if a file could explain the processor is running a record caused by long-distance telephone conversation, the output file can be user billing or reporting and context information stored in the memory 660 may include immediate account records the user's account balance.

如步骤1020所指示的,来自上下文信息存储器660的记录可按可解释文件执行期间的需要检索以及更新。 As indicated by step 1020, records from context information memory 660 of the file can be interpreted during execution need to retrieve and update.

在步骤1022,当可解释文件的执行结束时,执行结果输出为输出670表示的文件或打印报告。 In step 1022, when the end of the implementation of interpretable files, execute the resulting output to output 670 represents a file or print the report. 然后如末端步骤1024所表示的,单一可解释文件的处理结束。 Then ends as represented by step 1024, the processing of a single interpretable file end.

图11描述根据本发明的一个优选实施方案,在业务功能创建、调度和实施时执行的全部步骤。 Figure 11 depicts a preferred embodiment according to the present invention, in the business function creating, scheduling and implementing all the steps performed. 与下面的描述一起参见图11和图4会很有用。 See the following description in conjunction with FIG. 11 and FIG. 4 is useful.

当在业务开发环境(SDE)406中开发出新的业务时图11的处理从步骤1102开始。 When developing a new business in a business development environment (SDE) 406 11 1102 processing step begins.

在步骤1104,业务开发者执行SDE 406中的进一步操作以便为最近开发的业务函数指定相关性。 In step 1104, the business developer SDE 406 execution of further actions to specify the correlation function for the recent development of the business. 优选地,自动包括代码相关性而数据资源可能需要业务开发者明确地标识。 Preferably, the code automatically includes the correlation and data resources may need to clearly identify the business developer.

在步骤1106,完成的新业务函数的拷贝通过NMS 404分配到网络400中的许多网络控制/业务处理器410。 In step 1106, a copy of the completion of the new business function is assigned to the network through the NMS 404 400 many network control / traffic processor 410. 特别地,新业务函数可能出现在会话处理器412和库420中。 In particular, new services function 412 may appear in session processor 420 and library.

在步骤1108,在新业务函数调度之后的某个时刻,新的业务函数在业务处理过程中被访问并且会话处理器412生成一个相应的事件413。 In step 1108, after the dispatch of the new business function at a time, a new business function in a business process is accessed and the session processor 412 generates a corresponding event 413. 最终,小代码编制器416将在小代码中发现该事件的存在并且从库420加入相应的记录处理函数。 Eventually, small code formatter 416 will exist in the event of discovery in a small code and add the appropriate handler record 420 from the library. 这个记录处理函数可能在步骤1106初始业务调度时加入到库中。 This record handler may be added to the library in 1106 when the initial service scheduling step.

在步骤1110,小代码打包为可解释文件并且如前面详述地调度到记录处理器。 In step 1110, a small code files packaged as interpreted and as previously detailed schedule to record processor.

在步骤1112,接收到可解释文件的记录处理器认出没有包含在其本地库中的新功能。 In step 1112, the recording processor receives interpretable document recognized in their local library does not contain new features. 通过图10中描述的过程,记录处理器自动识别并且为随后的可解释文件保留新的业务函数。 By the process described in FIG. 10, recording processor automatically recognize and retain the new service function for subsequent interpretable file. 而且,如前所述,记录处理器通过某些方式与小代码编制器通信以指示新函数现在包括在记录处理器库中并且代码编制器仅包括对该函数的引用直到进一步通知。 Moreover, as mentioned above, the recording processor via some way to communicate with a small code compiled to indicate a new function is now included in the record processor library and compiled code includes a reference to the function only until further notice.

在步骤1114,记录处理器读取可解释文件,开始执行其内容,并且由图11所述的处理生成输出。 In step 1114, the processor reads the interpretable file recording, begin execution of its contents, and generates output by the process of FIG 11.

最后,在步骤1116,调度和使用从业务处理器发出的通过可解释文件递交的新记录处理函数的过程结束。 Finally, in step 1116, a new record deal with scheduling and use function emanating from the business processor interpretable documents submitted by the end of the process.

虽然在这里在示例实施方案环境中描述了本发明,但是本领域的普通技术人员应认识到,在不背离本发明范围和精神的情况下,在已经示出和描述的基础上可以有许多改变。 Although in the exemplary embodiments herein described in the context of the present invention, those of ordinary skill in the art should recognize that, without departing from the scope and spirit of the invention, has been shown and described on the basis of numerous modifications . 示出和描述的示例实施方案的任何方面都不应该解释为限制本发明。 Any aspect of the example shown and described embodiments should not be construed as limiting the present invention. 本发明的范围应该由所附的权利要求来解释。 Scope of the invention by the appended claims should be interpreted.

附录A//标题:计费例子//版本://版权:版权(c)1999//作者:Kelvin R.Potrer//公司:MCI WorldCom//描述:计费例子<pre listing-type="program-listing">public class BillingTest{public class Datum{ public String myName; private Datum(){}; public Datum(String name){myName=name;}; public void add(String type,String value){}; public String toString() { StringBuffer buffer=new StringBuffer(myName); buffer.append(":"); //... return(buffer.to String()); };};//class Datumpublic class PhoneDevice{ private String myNumber; private String myType; public PhoneDevice(String number,String type) { myNumber =number; myType =type;};//PhoneDevicepublic void offhook(String timestamp){ System.out.println(myType+':'+myNumber+''+"offhook"+timestamp);};//摘机public void dialed_digits(String digits,String timestamp){ System.out.println(myType+':'+myNumber+''+"dialed="+digits+''+ timestamp);};//dialed_digits &lt;dp n="d23"/&gt; public String getNumber() { return(myNumber); }; public void ring(String timestamp) { System.out.println(myType+':'+myNumber+''+"offhook"+timestamp); };};//调用状态private boolean invokedStandalone=false;//构造程序public BillingTest(){}//构造程序public void doFileInfo(){ //文件信息Datum fileInfo=new Datum("File Information"); fileInfo.add("FileType","Call-grouped&amp;amp;Timestamped Phone Operations"); fileInfo.add("SourceTypeVersion","1.3.1"); System.out.println(fileInfo.toString());};public void doSourcelnfo(){ //源信息Datum contextData=new Datum("Source Information"); contextData.add("Source","Switch 153-1503 Main St.,Garland,TX"); contextData.add("StartTime","Jan 02 1997 03:00:05.3"); contextData.add("StopTime","Jan 09 1997 02:59:11.2"); System.out.println(contextData.toString());};public String doCall_00000(){ //参与方:通话00000 PhoneDevice phone1=new PhoneDevice("2149367856","POTS"); PhoneDevice phone2=new PhoneDevice("9727291000","Business Set"); //通话00000序列&lt;dp n="d24"/&gt; phonel.offhook("Jan 02 19997 03:00:05.3"); phonel.dialed_digits(phone2.getNumber(),"Jan 02 19997 03:00:06.8"); //... return("...");};public String doCall_00001(){ return("...");};//...thru doCall_00499()...//快速索引函数public String doCall(int i){ String result; switch(i) { case 0:result=doCall_00000();break; case 1:result=doCall_00001();break; //... default:result="Bad Index."; };//switch return(result);};//doCallpublic void doProcess(){//文件信息doFileInfo();//源传息doSourceInfo();//开始处理通话int number_of_calls=500;String result;for(int i=0;i<number_of_calls;i++){ result=doCall(i);System.out.println(result); &lt;dp n="d25"/&gt; }; //... };//doProcess() public static void main(String[]args) { BillingTest billingTest=new BillingTest(); billingTest.invokedStandalone=true; billingTest.doProcess(); };//main(...)}</pre> Appendix A // Title: billing examples // Version: // Copyright: Copyright (c) 1999 // Author: Kelvin R.Potrer // Company: MCI WorldCom // Description: Billing example <pre listing-type = " program-listing "> public class BillingTest {public class Datum {public String myName; private Datum () {}; public Datum (String name) {myName = name;}; public void add (String type, String value) {}; public String toString () {StringBuffer buffer = new StringBuffer (myName); buffer.append (":"); // ... return (buffer.to String ());};}; // class Datumpublic class PhoneDevice { private String myNumber; private String myType; public PhoneDevice (String number, String type) {myNumber = number; myType = type;}; // PhoneDevicepublic void offhook (String timestamp) {System.out.println (myType + ':' + myNumber + '' + "offhook" + timestamp);}; // hook public void dialed_digits (String digits, String timestamp) {System.out.println (myType + ':' + myNumber + '' + "dialed =" + digits + '' + timestamp);}; // dialed_digits & lt; dp n = "d23" / & gt; public String getNumber () {return (myNumber);}; public void ring (String timestamp) {System.out.println (myType + ': '+ myNumber +' '+ "offhook" + timestamp);};}; // call status private boolean invokedStandalone = false; // constructor public BillingTest () {} // constructor public void doFileInfo () {// file Information Datum fileInfo = new Datum ("File Information"); fileInfo.add ("FileType", "Call-grouped & amp; amp; Timestamped Phone Operations"); fileInfo.add ("SourceTypeVersion", "1.3.1"); System .out.println (fileInfo.toString ());}; public void doSourcelnfo () {// source information Datum contextData = new Datum ("Source Information"); contextData.add ("Source", "Switch 153-1503 Main St., Garland, TX "); contextData.add (" StartTime "," Jan 02 1997 03: 00: 05.3 "); contextData.add (" StopTime "," Jan 09 1997 02: 59: 11.2 "); System .out.println (contextData.toString ());}; public String doCall_00000 () {// participants: Call 00000 PhoneDevice phone1 = new PhoneDevice ("2149367856", "POTS"); PhoneDevice phone2 = new PhoneDevice ("9727291000 "," Business Set "); // call 00000 sequence & lt; dp n =" d24 "/ & gt; phonel.offhook (" Jan 02 19997 03: 00: 05.3 "); phonel.dialed_digits (phone2.getNumber (), "Jan 02 19997 03: 00: 06.8"); // ... return ("...");}; public String doCall_00001 () {return ("...");}; // ... thru doCall_00499 () ... // fast indexing function public String doCall (int i) {String result; switch (i) {case 0: result = doCall_00000 (); break; case 1: result = doCall_00001 (); break; // ... default: result = ". Bad Index";}; // switch return (result);}; // doCallpublic void doProcess () {// file information doFileInfo (); // pass information source doSourceInfo ( ); // start processing calls int number_of_calls = 500; String result; for (int i = 0; i <number_of_calls; i ++) {result = doCall (i); System.out.println (result); & lt; dp n = "d25" / & gt;}; // ...}; // doProcess () public static void main (String [] args) {BillingTest billingTest = new BillingTest (); billingTest.invokedStandalone = true; billingTest.doProcess () ;}; // main (...)} </ pre>

Referenced by
Citing PatentFiling datePublication dateApplicantTitle
CN100496138C26 Jul 20063 Jun 2009华为技术有限公司System and method for processing communication operation
CN102016842B27 Feb 200930 Jul 2014优罗克利尔股份有限公司Improvements relating to handling and processing of massive numbers of processing instructions in real time
Classifications
International ClassificationG06Q20/14, H04L12/14, G06F17/30, H04Q3/545, H04M15/00
Cooperative ClassificationG06Q20/14, H04Q2213/13345, H04M15/58, H04M2215/7277, H04M15/8228, H04M2215/7833, H04Q2213/13103, H04Q2213/13176, H04L12/14, H04M15/745, H04Q2213/1305, H04M2215/0184, H04M15/41, H04M2215/0108, H04L12/1403, H04Q2213/13036, H04M2215/0164, H04M2215/0188, H04M15/49, H04M2215/46, H04M2215/0152, H04M15/8083, H04M15/775, H04M15/80, H04M2215/44, H04M15/43, H04M15/55, H04Q2213/1313, H04L12/1482, H04M15/00
European ClassificationG06Q20/14, H04M15/58, H04M15/82E, H04M15/49, H04M15/745, H04M15/41, H04M15/80L, H04M15/43, H04M15/775, H04M15/55, H04M15/80, H04L12/14P6, H04L12/14A, H04M15/00, H04L12/14
Legal Events
DateCodeEventDescription
30 Jul 2003C06Publication
15 Oct 2003C10Request of examination as to substance
17 May 2006C02Deemed withdrawal of patent application after publication (patent law 2001)
23 Jul 2010REGReference to a national code
Ref country code: HK
Ref legal event code: WD
Ref document number: 1057665
Country of ref document: HK