CN103477600B - Device, method and system for transmitting message - Google Patents

Device, method and system for transmitting message Download PDF

Info

Publication number
CN103477600B
CN103477600B CN201080070941.2A CN201080070941A CN103477600B CN 103477600 B CN103477600 B CN 103477600B CN 201080070941 A CN201080070941 A CN 201080070941A CN 103477600 B CN103477600 B CN 103477600B
Authority
CN
China
Prior art keywords
communication
request
operation
job
response
Prior art date
Application number
CN201080070941.2A
Other languages
Chinese (zh)
Other versions
CN103477600A (en
Inventor
P·阿南德
L·皮佐特
P·莎马
J·雷夫斯特拉普
Original Assignee
惠普发展公司有限责任合伙企业
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 惠普发展公司有限责任合伙企业 filed Critical 惠普发展公司有限责任合伙企业
Priority to PCT/US2010/030220 priority Critical patent/WO2011126479A1/en
Publication of CN103477600A publication Critical patent/CN103477600A/en
Application granted granted Critical
Publication of CN103477600B publication Critical patent/CN103477600B/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1268Job submission, e.g. submitting print job order or request not the print data itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1286Remote printer device, e.g. being remote from client or server via local network
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/28Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network
    • H04L67/2823Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network for conversion or adaptation of application content or format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Application independent communication protocol aspects or techniques in packet data networks
    • H04L69/08Protocols for interworking or protocol conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1265Printing by reference, e.g. retrieving document/image data for a job from a source mentioned in the job
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration

Abstract

An apparatus includes a messaging client and a server. The messaging client is configured to receive, utilizing a first protocol, a first communication, extract a request from the first communication, and send, utilizing a second protocol, the request to the server. The server is configured to receive the request, return, utilizing the second protocol, a response to the messaging client, and forward a job instruction included in the request. The messaging client is also configured to send, utilizing the first protocol, a second communication that includes the response to a source of the first communication

Description

For the equipment of messaging, method and system

Background technology

Operation can consign to the equipment of such as printer etc via data network.Specifically, user is by document delivery To network service.Network service to document formatting, so as to generate the operation consigned to by particular network enabled device.Fire wall The payment of network service initiating task is prevented with other safety measures.However, as equipment does not have operation when available intrinsic Knowledge, equipment do not know how or when request job, therefore equipment is inquired about with regard to whether operation is ready first.

Equipment can see whether to be ready to pay to make using poll or " hang up and obtain (hanging get) " technology Industry.When poll, the network equipment is sent a request to device periodically to understand whether operation can use, and server is made Response.The response or instruction do not have operation can use, or if applicable, return the operation in the response.For " hang-up Obtain " for, equipment sends a request to network service.The request is held in the service, keeps session to open, and only can in operation Used time responds.Or, if the too many time in past, then session timeout, obtain so as to force equipment to send another hang-up Call request.

Polling method consumption network bandwidth and network service resource when request is made and no operation is available.When big rule When poll is implemented on mould ground, i.e., when multiple equipment polled network simultaneously, bandwidth consumption becomes is a problem.Additionally, poll causes operation Pay delayed.In other words, operation is not delivered, till equipment sends its next predetermined polling request." hang-up is obtained " method consumption network service resource, it is when multiple equipment competes those resources, especially true.Specifically, network service Request is obtained for each hang-up and maintains session or thread.

Description of the drawings

Fig. 1 depicts the exemplary environments that can wherein realize each different embodiment.

Fig. 2 is depicted for realizing the example and each different physics and logical block of each different embodiment.

Fig. 3-7 realizes the exemplary process diagram of each different embodiment institute steps taken to draw.

Specific embodiment

Introduction:In order to notify that equipment availability is available in network service center, develop hereafter described in each different reality Apply example.Especially, these embodiments are developed to overcome the shortcoming of the technology of such as poll and " hang up and obtain " etc.Overcome this The shortcoming of sample allows network service that operation is consigned to equipment in the scale more larger than possible in the case of other.

" network service " is related to be configured to communicate with cluster tool complete the server or server of expected purpose Set.Such purpose is included optionally by message and job transfer to equipment.Term " operation " is used to refer to can be by equipment Process to produce the data of desired result.Operation can cause equipment identification and transferring status data.Such information can be with Physical location, its current operation status including equipment and even with statistic.In the case where equipment is printer, make Industry can cause equipment to produce the output for printing.

As used herein, " job instruction " refers to be designed such that the instruction that equipment processes operation.Operation Instruction can include operation itself or the reference (reference) for retrieving operation, such as URL.Job instruction can be wrapped Include parameter setting or the access of parameter setting is provided to, these parameter settings affect how equipment processes operation.Parameter setting Whether control uses the option of special characteristic etc such as when operation is processed.It is in the case where equipment is printer, such Feature can include colour print, duplex printing, bookbinding, multiple copies, arrangement etc..In not included in job instruction itself When, parameter setting is readily modified as being retrieved using the reference that job instruction includes.This can be the phase for retrieving operation With reference.

Below description is divided into some sections.The first segment for being labeled as " environment " describes one and can wherein realize that each is different Embodiment exemplary environments.Be labeled as " part " second section describe for realize each different embodiment each The example of different physics and logical block.Be labeled as " operation " Section three describes to realize that each different embodiment is adopted The step of taking.

Environment:Fig. 1 depicts the exemplary network 10 that can wherein realize each different embodiment.Network 10 is illustrated as Including equipment 12, job service 14, messaging services 16 and client 18 and 20.Equipment 12 generally is represented to process and is connect Receive any equipment of the operation from job service 14.In the example of fig. 1, equipment 12 is illustrated as being configured to from print job produce The printer of the raw output for printing.Job service 14 is represented and is configured to be cooperated so that operation is paid with messaging services 16 To the network service of equipment 12.Messaging services 16 are represented and are configured to realize carrying out operation payment by job service 14 Purpose transfer a message to equipment 12 and from equipment 12 receive message network service.

Each expression in client 18 and 20 is configured to interact with job service 14 and instruct job service 14 So that operation is delivered on the computing device of the equipment 12 of selection.An implementation being discussed more fully below In, equipment 12 is for printer and client device 16 and 18 is configured to indicate that job service 14 so that print job is handed over Pay.Although network 10 is shown as including three printers, 12, two clients 16 and 18 and two services 14 and 16, net Network 10 can include any amount of such part.Although additionally, service 14 and 16 is depicted as distinguishing, service 14 and 16 are readily modified as realizing in the way of more integrated.For example, job service 14 and messaging services can be represented and be matched somebody with somebody It is set to the public server or server set of the function of realizing specifying.

Part 12-20 is interconnected via link 22.Link 22 generally represents cable, wirelessly, optical fiber or via telecommunication link, One or many in the long-range connection of infrared link, radio frequency link or any other adapter or system that electronic communication is provided It is individual.Link 22 can include Intranet, the Internet or combination at least in part.Link 22 can also include middle generation Reason, router, switch, load balancer etc..As depicted in the Figure 1 being followed by link 22 between part 12-20 Logical communication path between path representation these equipment, the physical pathway being not necessarily between these equipment.

Part:Fig. 2 is depicted for realizing each different physics and logic section of each different exemplary embodiment Part.In fig. 2, equipment 12 is shown as including interface 24, communication engines 26 and job engine 28.Interface 24 is generally represented and is configured Into via link 20 receive institute from communication and transmission communication hardware and program any combinations.Especially, interface 24 can So that including one or more physical ports, such as the wired or wireless network port can be more than a number via the port According to communication is sent and received on passage.As discussed below, to can be used for such as XMPP (expansible to disappear for such passage Breath transmission and agreement of showing up) etc the first agreement communication, and another data channel to can be used for such as HTTP (super literary This host-host protocol) etc second protocol communication.

The generally expression of communication engines 26 is configured to the communication processed via the reception of interface 24 and generation will be via interface The hardware of 24 communications for sending and any combinations of programming.Discuss in greater detail below, communication engines 26 be responsible for process and Generate the different types of communication for receiving in different data channel and sending using different agreements.Especially, by that A little to communicate, communication engines 26 are operable to retrieve operation and operation is transferred to job engine 28.28 usual table of job engine Show and be configured to process the operation for being received from communication engines 26 to realize the hardware of expected result and any combinations of programming. For example, in the case where equipment 12 is printer and operation is print job, job engine 28 is responsible for processing the print job To produce the output of printing.In this example, job engine 28 will include the image forming material of such as ink or carbon dust etc sinks Product is to the part on dieelctric sheet.

In fig. 2, communication engines 26 are shown as including messaging client 30, server 32 and operation client 34. Messaging client 30 generally represents hardware and the programming for being configured to communicate with messaging services 16 using the first agreement Any combinations.Especially, messaging client 30 is received using the first agreement and is led to from the first of messaging services 16 Letter, extracts request from the communication, and sends the request to server 32 using second protocol.The request includes will be by server 32 job instructions for processing.As noted above, the first agreement can be XMPP, and second protocol is HTTP.Messaging Client 34 is configured to the reception first in the case where request first does not communicate first and communicates.Messaging client 34 also by It is configured with the first agreement the second communication to be sent to the source of the communication of messaging services 16 first.Second communication bag Include be received from server 32 response and be for the response of the request for extracting from the first communication.

Server 32 generally represent be configured to receive request from messaging client 30, process the request and The hardware of messaging client 30 and any combinations of programming are returned a response to using second protocol.In request is processed, The job instruction that request includes is forwarded to operation client 34 by server 32.In order to generate response, server 32 can be with Job engine 28 or operation client 34 communicate to obtain the information relevant with the state of job engine 28.It is to beat in equipment 12 In the case of print machine, such status information can include consumable level and service condition, being properly received of job instruction, What is printed successfully completes and any other information relevant with the state of job engine 28.Server 32 then can be in response Include the status information.

Operation client 34 generally represents and is configured to process hardware and the programming of the job instruction for being received from server 32 Any combinations.Job instruction can for example be or (unification is provided including the such as URL for operation is retrieved from job service 14 Source finger URL) etc reference.In this case, operation client 34 be responsible for using the reference using second protocol ( It is HTTP in above example) communication is sent using via interface 24.The communication includes from job service 14 retrieving being drawn by described With the request of the operation of identification.In response to the request, operation client 34 receives operation and is passed to job engine 28 For processing.In the case where operation is print job, job engine 28 produces the output for printing.Job instruction can also include Parameter setting.Here, those settings are transferred to job engine 28 for use in the operation is processed by operation client 34.

First agreement and messaging services of the messaging client 30 via communication by the transmission of the first data channel 16 communications.Operation client 34 is led to job service 14 by the second protocol of the second different pieces of information passage transmission via communication Letter.The difference of the first and second agreements is, can messaging client 30 do not ask first PERCOM peripheral communication (from The communication of messaging services 16) in the case of the PERCOM peripheral communication is sent to messaging client 30.Such as XMPP etc Agreement can serve as the first agreement.On the other hand, from job service 14 send to operation client 34 PERCOM peripheral communication first Asked by operation client 34.Therefore, HTTP can serve as second protocol.

In a given implementation, operation can be included in job instruction.In this case, operation client End 34 directly can not be communicated with job service 14, but be changed to operation is extracted from job instruction and the operation is forwarded to Job engine 28.In the case where such as equipment 12 is printer, the operation of extraction can be through processing to produce printing The print job of output.

Job service 14 is shown as including client-side interface 36, formatter 38, operation 39, spooler 40, message Interface 42 and equipment interface 44.Client-side interface 36 is generally represented and is configured to reception from the hard of the data of client 18 and 20 Part and any combinations of programming.Generally, the data are relevant with the operation of the equipment that to be consigned to 12.In the feelings that equipment 12 is printer Under condition, the data include document.Formatter 38 generally represent be configured to process the data for being received from client 18 and 20 with Just the hardware of operation 39 and any combinations of programming are generated.In the case where equipment 12 is printer, formatter 38 is by data Format to create print job.This can include being formatted into the number printed with equipment 12 or for accessing and print later The compatible form of word filing.Example format includes Post Script, PDL (PDL) and PDF (Portable Documents Form).

The generally expression of spooler 40 is configured to act as the queue for operation 39 and when being asked by equipment 12 The hardware of release operation 39 and any combinations of programming.Message interface 42 is generally represented and is configured to when getting out pay operation The hardware of notification message transmission service 16 and any combinations of programming.The notice includes the reference for request job, and it Also identification equipment 12.Especially, the notice can take the form of request (will send to the HTTP request of server 32).Message Interface also is responsible for from messaging services 16 receiving for the response of such request.Equipment interface 44 is generally represented and is configured to Any combinations of hardware and programming of the reception from the request of operation client 34.The request includes the reference of such as URL etc. Then equipment interface 44 is cooperated with spooler 40 to pass back through the operation that the reference is recognized.

Messaging services 16 are shown as including job interface 46 and Messaging Server 48.Job interface is generally represented The hardware for being configured to the request received from message interface 42 and response being back to message interface 42 is any with programming Combination.Messaging Server 48 generally represent be configured to will communication send to messaging client 30 and receive from The hardware of the communication of messaging client 30 and any combinations of programming.As noted, these communications are to allow message to pass Send server that communication transmission is not received the first agreement of the request for the communication first to messaging client 30.

Send communicating including the request for being received from job service 14 to messaging client 30.As noted, this The request of sample can include job instruction, and the job instruction can include what is kept by spooler 40 for retrieval in turn The reference of operation.Especially, the request is packaged in communication and the communication is sent at that by Messaging Server 48 In its equipment 12 for being received by messaging client 30.This can be for example complete in XMPP message by request is packaged into Into.Messaging Server 48 also is responsible for the communication for receiving to return from messaging client 30.The communication of reception can be such as It is the response being packaged in XMPP message.The response will be the request included for the XMPP message for previously consigning to equipment 12 Response.

Client 18 is shown as including application program 50, job service driver 52 and network interface 54.Application program 50 With 52 joint operation of job service driver so as to create work data and by work data consign to job service 14 for Job service 14 is used for the operation for creating the equipment of being consigned to 12.Client 20 is shown as including browser 54 and work data 56.Here, browser 54 by means of or without the help of extension (extension) in the case of, for by work data 56 It is uploaded to job service 14.In the case where equipment 12 is printer, such work data can include will be by job service 14 are formatted into print job and and then consign to the document that equipment 12 is printed.

In discussion above, by the combination that each different component representation is hardware and programming.Such part can be with Realize in a number of ways.In an example, the processor that the programming can be stored on Tangible storage medium can be held Row is instructed, and hardware can be included for performing those processors for instructing.Therefore, the specific unit for operating on identical device Element can share public processor and public storage medium.

Operation:Fig. 3-7 is to realize the exemplary process diagram of each different embodiment institute steps taken.Discuss Fig. 3- In 7, the diagram of Fig. 1-2 is referred to provide context instance.However, implementation is not limited to those examples.Fig. 3-4 and Fig. 5 depicts the job stream from from the perspective of equipment (such as equipment 12).Fig. 6 depict from such as messaging services 14 it Steps taken from the perspective of the network service of class.Fig. 7 depicts the workflow from system from the viewpoint of extensive.

Started with Fig. 3, communication (step 58) is received using the first agreement.The communication is not ask the communication first in equipment In the case of received at equipment.Request is encoded in communication.For example, the communication can be the XMPP for having packed request Message.Request (step 60) is extracted from communication.With reference to Fig. 2, the communication of step 58 is at equipment 12 by messaging client 30 receive.Messaging client 30 also is responsible for the request of the extraction in step 60.

After step 60, if appropriate, the process can be resolved into two threads.First thread includes step 62 and 64, and the second thread includes step 66 and 68.In first thread, the request extracted in process step 60 is to generate sound Answer (step 62).Using the first agreement, the response is returned to into the source of the communication received in step 58.With reference to Fig. 2, server 32 It is responsible for processing in step 62 and asks and generate response, and messaging client 30 is responsible for sending response in step 64.

In another example, the request extracted in step 60 can include the request for status information.Therefore, step 62 By including the response generated including asked status information.With reference to Fig. 2, in response is generated, server 32 and job engine 28 communicate to obtain status information.In the case where equipment 12 is printer, such status information can include consuming Level and service condition and one or more particular prints processed by job engine 28 state.

The second thread is moved on to, (if present) (step 66) in the request extracted from step 60, is quoted.Such as Pointed, reference can be that identification can be from the URL of the network site for wherein retrieving operation.By means of the reference, is utilized Two agreement requests operation (step 68).The second protocol is different from the first agreement for being utilized in step 58 and 64.As above Pointed, second protocol can be HTTP.With reference to Fig. 2, server 32 is responsible for being quoted in the step 66, and operation client It is responsible for carrying out request job using reference in the step 68 in end 34.

The exemplary extended of the step of Fig. 4 depicts Fig. 3 58-64, and Fig. 5 is extended to step 66 and 68.First With reference to Fig. 4, using the first agreement, the first communication (step 72) is received at primary nodal point.Request (step is extracted from the first communication It is rapid 74).Secondary nodal point (step 76) is sent this request to using second protocol.With reference to Fig. 2, messaging client 30 is used as Primary nodal point, extracts request and response is sent to the server 32 for serving as secondary nodal point.Again, the first agreement is allowed Request is received in the case where not asking first.XMPP is such agreement.Second protocol can be HTTP.

Generate for the response (step 78) of the request.The response is returned to into from secondary nodal point using second protocol One node (step 80).The second communication is sent from primary nodal point using the first agreement to the source (step 82) of the first communication.Ginseng According to Fig. 2, server 32 is used as secondary nodal point and is responsible for step 78 and 80.Messaging client 30 be used as primary nodal point and Responsible step 80.Especially, messaging client 30 is packaged into response in the second communication, and second communication is as noted It can be XMPP message.

Sending in step 76 to the request of secondary nodal point to include the request for status information.Therefore, step 78 will Including response of the generation comprising asked status information.With reference to Fig. 2, in response is generated, server 32 and job engine 28 Communicate to obtain status information.In the case where equipment 12 is printer, such status information can include consumable The state of level and service condition and one or more particular prints processed by job engine 28.

Sending in step 76 to the request of secondary nodal point to include job instruction.As noted, job instruction can be with Including for guide equipment operation parameter setting and quote in one or the two.Fig. 5 is moved on to, job instruction is forwarded to 3rd node (step 84).The third communication (step is sent from the 3rd node using the reference and second protocol from job instruction 86).With reference to Fig. 2, operation client 34 is used as the 3rd node and uses the quote request operation.In the example of figure 2, draw With being URL, operation client 34 can retrieve operation from job service 14 using HTTP request via URL.In response to Three communications, receive operation (step 88).The operation of reception is by the operation for quoting identification.So that the operation is processed (step 90).With reference to Fig. 2, operation client 34 is responsible for step 88 and 90.For example, in the case where equipment 12 is printer, make Industry client 34 receives the print job from job service 14, and the print job is transferred to job engine 28 so that Job engine processes print job.As discussed above, operation can be included as the part of job instruction.So In the case of, extract operation after step 84, and and then skip step 86 and 88 and which is processed in step 90.

In addition to reference, the job instruction forwarded in step 84 can include parameter setting.It is to beat in such as equipment 12 In the case of print machine, such parameter setting can be control such as whether the printer using the option of special characteristic etc sets Put.Such feature can include colour print, duplex printing, bookbinding, multiple copies, arrangement etc..Referring still to Fig. 2, make Industry client 34 can be responsible for for those parameter settings being transferred to job engine 28, so as to be processed in step using those parameter settings Its processed operation is caused in rapid 90.

As noted, Fig. 6 depicts the angle of the network service of the messaging services 14 from such as Fig. 1 and Fig. 2 etc Steps taken from the point of view of degree.In figure 6, receive the request (step 92) of the equipment that to be sent to.The request includes job instruction. In the example of Fig. 2, messaging services 16 receive from job service 14 request for receiving.The request is packaged in the first communication (step 94).In superincumbent example, first communication can be XMPP message.The first communication is sent out via the first data channel Deliver to equipment (step 96).The equipment is configured to via the second data channel request different from the first data channel and receives The operation quoted in the request.The is sent in the case where not receiving first for the first communication or the request of job instruction One communication.

Second communication (step 98) is received from equipment via the first data channel.Response (step is extracted from the second communication 100).The response is sent to into the source (step 102) of the request received in step 92.With reference to Fig. 2, messaging services 16 are in step Receive second to communicate and extract response in rapid 98 and 100.Then the response is returned to job service by messaging services 16 14。

With reference to Fig. 2, in the case where equipment 12 is printer, the internal server of printer is packaged in the first communication Request intended recipient.The request can include job instruction, and the job instruction includes making for retrieving to print in turn The reference of industry and for equipment 12 print parameters arrange in one or two.Equipment can use this using the reference Quote from print service 14 and retrieve operation and the setting regulation parameter using supply.The request can also be included for state The request of information.Equipment can obtain the appropriate response that asked status information and generation will be transmitted in a step 102.This The status information of sample can include the state of the consumable level of printer and service condition and one or more print jobs.

Communication in first data channel is sent and received using the first agreement, and the communication profit in the second data channel Sent and received with second protocol.As noted above, the first agreement can be XMPP, and second protocol can be HTTP.With reference to Fig. 2, messaging services 16 in fact notify that using first data channel equipment 12 is ready to from uniforms for worker Operation is retrieved in business 14.Equipment 12 is then using the second data channel come from the retrieval operation of job service 14.It is advantageous that message is passed Take business 16 to be not to wait for the first communication is sent in the case of the request of equipment 12.

Fig. 7 depicts the workflow from system from the perspective of extensive.The system includes that job service 14, messaging takes Business 16, messaging client 30, server 32 and operation client 34.It should be pointed out that part 30,32 and 34 is equipment 12 part.In the example of figure 7, messaging services 16 are used as XMPP server, and messaging client is that XMPP is objective Family end.Additionally, server 32 is used as LEDM (low side data model) REST (representative state transfer) interface.Messaging client End 30 can be set up lasting XMPP with messaging services 16 and be connected.Via the connection, can notify that 12 operation of equipment can use In retrieving from job service 14.Additionally, equipment 12 rapidly can provide job status information to print service 14.

In one exemplary embodiment, messaging client 30 realizes XMPP core stacks (RFC 3920,3921) With IBB (with interior binary system) agreement (XEP 0047).Messaging services 16 trustship (host) equipment 12 and other similar devices The XMPP server group for communicating.Each node trustship equipment 12 or another equipment in XMPP server group is used The internal part that XMPP message is communicated.The content of the XMPP message transmitted between equipment 12 and Messaging Server 16 To allow equipment 12 and print service 14 to ask and respond in accordance with the LEDM REST of common communication contract.

When first time is to electricity on equipment 12, it points out user to allow to communicate with print service 14.If user agrees to, that Equipment 12 is using the REST API (application programming interfaces) above such as TLS (transmission safe floor) to 16 note of messaging services Volume oneself.Messaging services 16 are that equipment 12 creates XMPP account, and distribute new client id and password to equipment 12. Messaging services 16 also provide as messaging services 16 Hostname and joint detail client id with And together with the port list of its priority.Messaging client 30 can safeguard XMPP registers or " good friend arranges Table ".Register can remain empty to avoid transmitting the expense involved by existence information.

Equipment 12 tries to be connected to messaging services 16 in its default port (such as 5222).Connection because of The reason for fire wall is limited and it is unsuccessful in the case of, it according to priority order using such as 5223,80 and 443 etc it is standby Port retries.If successful connection, then client id and mouth that messaging client 30 was received using which between the waiting period Order signs in messaging services 16.All of XMPP communications can be passed with message in messaging client 30 above TLS Take and occur between business 16 to assist in ensuring that data integrity and to hide the information of sensitive or individual.

In Successful login, equipment 12 is considered to be ready to receive the operation from job service 14.It should be pointed out that Equipment 12 create only one be connected with the TCP (transmission control protocol) of messaging services 16 and multiple IBB sessions with Will pass through TCP connections and concurrently send and receive message.One IBB session can be used for LEDM requests and respond and another Can be by equipment 12 for operation and device events are sent to messaging services 16.This separation allows to be taken by messaging The different parts of business 16 are servicing different types of message.

In the following discussion, equipment 12 is that printer and job service 14 are responsible for paying print job.When initial, use Document and any parameter setting are uploaded to job service 14 by family.Document is presented to beating for printer 12 by job service 16 In print operation.Print job meets the specific format of the such as PCL (printer control language) for the design of printer 12 etc.Beat Print operation is now ready for equipment 12 is sent to together with any parameter setting.

Job instruction is sent to messaging services (step 104) by job service 14.In this example, step 104 is led to Cross using HTTP transmission LEDM REST requests and complete.The request includes job instruction.The job instruction includes beating for retrieval Print operation and the URL of any parameter setting.LEDM REST requests are packaged into (step in XMPP message by messaging services 16 106) and by the XMPP message send to messaging client 30 (step 108).

Messaging client 30 extracts LEDM REST requests (step 110) from XMPP message.Then, messaging Client 30 asks to make HTTP request (step 112) to server 32 using the LEDM REST for extracting.The process of server 32 should LEDM REST are asked and are returned http response (step 114).As noted above, LEDM REST request include for In the case of the request of status information, the response can include asked status information.Messaging client 30 is received should Response, and (step 116) in XMPP message is packaged into, and the XMPP message is sent to messaging services (step 118).Response (step 120) is extracted in the XMPP message that messaging services 16 are sent from step 118 and the response is turned It is sent to job service 14.

The request made to server 32 in step 112 includes job instruction.The job instruction is forwarded to by server 32 Operation client 34.Operation client 34 is made for the printing from job service 14 using the URL that job instruction includes The HTTP request (step 126) of operation.Used as response, job service 14 returns print job (step 128) in http response. Then operation client 34 causes equipment 12 to produce print job using any parameter setting that job instruction includes.

All LEDM REST requests and response are via XMPP message via XMPP channel transfers.Each XMPP message is not Sent in the case of receiving the request for the message or its content first.Print job data is not sent out on that channel Send.On the contrary, as noted, used as the response of HTTP request, print job is transmitted via HTTP passages.XMPP leads to Communication on road is kept as very gently, and this allows each XMPP server group (in messaging services 16) to process thousands of beating Print machine is more.

Conclusion:The diagram of Fig. 1-2 shows framework, function and the operation of each different embodiment.What is illustrated in Fig. 2 is each Individual different part is defined as program at least in part.Part, its part or its a variety of combination as each Wholly or partially can represent including one or more realization (one or more) any logic functions specified can The part of the module, section or code of execute instruction.Each part or its a variety of combination can represent realization ( Or multiple) circuit of logic function specified or some interconnection circuits.

Furthermore, the present invention may be embodied in for instruction execution system using or it is relevant with the instruction execution system any In computer-readable medium, system or ASIC (special integrated electricity of the instruction execution system for example based on computer/processor Road) or logic can be fetched or obtained from computer-readable medium and the other systems of the instruction for wherein including are performed." meter Calculation machine computer-readable recording medium " can be to include, store or maintain to use for instruction execution system or perform system with the instruction Any medium of the relevant program of system and data.Computer-readable medium can include any one of many physical mediums, Such as electronics, magnetic, optical, electromagnetism or semiconductor medium.Suitable computer computer-readable recording medium is particularly Example include but is not limited to portable magnetic computer disk, such as floppy disk or hard disk drive, random access memory (RAM), read only memory (ROM), Erasable Programmable Read Only Memory EPROM or portable optic disk.

Although the flow process of Fig. 3-7 illustrates specific execution sequence, these execution sequences can with drawn Those are different.For example, the execution sequence of two or more functional blocks can be upset relative to shown order.Furthermore, continuously show Two or more functional blocks for going out concomitantly or partly can be executed concurrently.Model of all such changes in the present invention In enclosing.

The present invention is illustrated and described with reference to exemplary embodiment above.It is to be understood, however, that can be Without departing from other forms, details are made in the case of the spirit and scope of the present invention defined in claims below And embodiment.

Claims (14)

1. a kind of including messaging client and the device of server, wherein:
The messaging client is configured to lead to using the first agreement reception first in the case where the first communication is not asked Letter, from the described first communication extracts request, sends this request to server using second protocol;
The server is configured to receive the request, and returns a response to the messaging using the second protocol Client;And
The messaging client is configured to the second communication be sent to the described first communication using first agreement Source, second communication include the response.
2. device as claimed in claim 1, further includes operation client, wherein:
The source of first communication is messaging services;
The server is operable for the job instruction that the request includes is forwarded to the operation client;And
The operation client is operable for sending the third communication using the second protocol, and the third communication includes that retrieval is logical Cross the request of the operation of the job instruction identification.
3. device as claimed in claim 1, wherein:
The request of first communication includes the request for status information;
The server is operable for obtaining asked status information;And
The response of the messaging client is returned to including asked status information.
4. device as claimed in claim 2, further includes job engine, the job engine be configured to process operation so as to The image of printing is produced on the print medium, and wherein described operation client is operable in response to the third communication Receive the operation and the operation is delivered to into the job engine.
5. device as claimed in claim 4, wherein:
The messaging client is configured to communicate and not with the messaging services in the first data channel First is received via first data channel in the case of the first communication of request to communicate;And
The operation client is configured to communicate with job service in the second data channel, via second data channel The third communication is sent, and in response to the third communication, is received from the uniforms for worker via second data channel The operation of business.
6. device as claimed in claim 4, further includes operation client, wherein:
The source of first communication is messaging services;
The server is operable for the job instruction that the request includes is forwarded to the operation client;
The operation client is operable for operation is extracted from the job instruction, and the operation is forwarded to the work Industry engine is to be processed.
7. device as claimed in claim 5, wherein first agreement is XMPP (scalable message is transmitted and agreement of showing up) And the second protocol is HTTP (HTML (Hypertext Markup Language)).
8. a kind of method of messaging, including:
The first communication is sent to printer via the first data channel, the printer be configured to via the second data channel and It is not that the first data channel asks and receive work data, first communication to be included in the job instruction in request;With And
Second is received via first data channel to communicate, second communication is for the response of the request;
Wherein send.
9. method as claimed in claim 8, further includes:
The request is received from job service and the request is packaged in first communication;And
The response is extracted from the described second communication and the job service is sent the response to.
10. method as claimed in claim 8, wherein the request bag includes request and the response bag for status information Include asked status information.
11. methods as claimed in claim 8, wherein:
The job instruction includes the reference for access operation;
Transmission includes sending first communication so that the printer can be using the reference via second data Operation described in channel request;And
Second communication includes the job engine status information relevant with the operation.
12. is a kind of including job service and the system of messaging services, wherein:
The job instruction that the job service is configured to include in request is sent to the messaging services, and the operation refers to Order includes the reference for request job;
The messaging services are configured to the request is packaged in the first communication and is incited somebody to action via the first data channel First communication is sent to printer;And
The job service is configured to receive from printer via the second data channel quotes the request made simultaneously using described And the operation is returned to into the printer via second data channel in response to the request.
13. systems as claimed in claim 12, wherein the messaging services are configured to not first from the printing Machine receive for the job instruction request in the case of send it is described first communication.
14. systems as claimed in claim 12, wherein the messaging services are configured to:
Second is received via first data channel to communicate, second communication is included for the response of the request;
The response is extracted from the third communication;And
The response is sent to the job service, the response includes the status information for the printer.
CN201080070941.2A 2010-04-07 2010-04-07 Device, method and system for transmitting message CN103477600B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/US2010/030220 WO2011126479A1 (en) 2010-04-07 2010-04-07 Device messaging

Publications (2)

Publication Number Publication Date
CN103477600A CN103477600A (en) 2013-12-25
CN103477600B true CN103477600B (en) 2017-03-22

Family

ID=44763188

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080070941.2A CN103477600B (en) 2010-04-07 2010-04-07 Device, method and system for transmitting message

Country Status (4)

Country Link
US (2) US9019532B2 (en)
EP (1) EP2556480A4 (en)
CN (1) CN103477600B (en)
WO (1) WO2011126479A1 (en)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9182932B2 (en) 2007-11-05 2015-11-10 Hewlett-Packard Development Company, L.P. Systems and methods for printing content associated with a website
JP5602424B2 (en) * 2009-12-24 2014-10-08 キヤノン株式会社 Information processing apparatus, information processing method, and program
US9082139B2 (en) 2010-03-10 2015-07-14 Hewlett-Packard Development Company, L.P. Printer credit management
US9019532B2 (en) 2010-04-07 2015-04-28 Hewlett-Packard Development Company Device messaging
JP5703791B2 (en) * 2011-01-31 2015-04-22 セイコーエプソン株式会社 Printing system and printer
US9152357B2 (en) 2011-02-23 2015-10-06 Hewlett-Packard Development Company, L.P. Method and system for providing print content to a client
US9137394B2 (en) 2011-04-13 2015-09-15 Hewlett-Packard Development Company, L.P. Systems and methods for obtaining a resource
US9036185B2 (en) 2011-09-28 2015-05-19 Hewlett-Packard Development Company, L.P. Managing network connections
WO2013059958A1 (en) 2011-10-25 2013-05-02 Hewlett-Packard Development Company, L.P. Automatic selection of web page objects for printing
US9773214B2 (en) 2012-08-06 2017-09-26 Hewlett-Packard Development Company, L.P. Content feed printing
US9183375B2 (en) 2013-01-30 2015-11-10 Hewlett-Packard Development Company, L.P. Use of resource up to extension value by subscription device
US8769031B1 (en) 2013-04-15 2014-07-01 Upfront Media Group, Inc. System and method for implementing a subscription-based social media platform
JP6020353B2 (en) * 2013-05-29 2016-11-02 コニカミノルタ株式会社 Information processing apparatus, image forming apparatus, remote operation method, remote control method, remote operation program, and remote control program
US9715645B2 (en) 2013-06-03 2017-07-25 Hewlett-Packard Development Company, L.P. Marking agent subscription credits
US9380103B2 (en) * 2013-06-27 2016-06-28 Ebay Inc. Adapting legacy endpoints to modern APIs
CN105393208B (en) 2013-07-24 2019-05-31 惠普发展公司,有限责任合伙企业 The adjustment of marking agent credit
US20150120903A1 (en) * 2013-10-24 2015-04-30 KYOCERA Document Solutions Development America, Inc. System for monitoring XMPP-based communication services
US9798503B2 (en) 2014-11-24 2017-10-24 Kyocera Document Solutions Inc. Collaborative remote maintenance of printing devices via communication with multiple servers
US10082992B2 (en) 2014-12-22 2018-09-25 Hewlett-Packard Development Company, L.P. Providing a print-ready document
US10333869B2 (en) 2015-06-30 2019-06-25 Avaya Inc. Telephony endpoint presence and instant messaging data-packet management
JP2017134702A (en) * 2016-01-29 2017-08-03 キヤノン株式会社 Server system, control method of server system, and program
CN106230915B (en) * 2016-07-26 2019-08-06 深圳酷泰丰科技有限公司 A method of realizing function machine intelligence communication

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1638333A (en) * 2004-01-02 2005-07-13 三星电子株式会社 Data-security printing method and system using authentication protocol in network printer
CN101677319A (en) * 2008-09-19 2010-03-24 华为技术有限公司 Method, apparatus and system for service access on the basis of XMPP protocol

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5287194A (en) * 1992-11-25 1994-02-15 Xerox Corporation Distributed printing
US5638497A (en) * 1992-12-18 1997-06-10 Dataproducts Corporation Virtual printer
US6184996B1 (en) * 1997-06-18 2001-02-06 Hewlett-Packard Company Network printer with remote print queue control procedure
AT453977T (en) 1999-09-23 2010-01-15 Pulsar Technologies S A Autonomous remote management device for printers, copiers and fax machines via sms
JP2001101109A (en) 1999-09-30 2001-04-13 Fujitsu Ltd Method for controlling communication in network
JP2001325182A (en) 2000-03-10 2001-11-22 Ricoh Co Ltd Print system, print method, computer readable recording medium with program recorded therein, portable communication equipment of print system, printer, print server and client
US7111060B2 (en) * 2000-03-14 2006-09-19 Aep Networks, Inc. Apparatus and accompanying methods for providing, through a centralized server site, a secure, cost-effective, web-enabled, integrated virtual office environment remotely accessible through a network-connected web browser
EP1176500A1 (en) * 2000-07-28 2002-01-30 Hewlett-Packard Company, A Delaware Corporation Method and apparatus for job preview in printer device
US6757741B1 (en) * 2000-08-17 2004-06-29 Hewlett-Packard Development Company, L.P. System and method for network printing using a peer hybrid printing protocol
US20020075506A1 (en) * 2000-12-15 2002-06-20 Xerox Corporation Remote printing of electronic mail
US20020103853A1 (en) * 2001-01-26 2002-08-01 Copp Larry A. Method and device for locating a peripheral
US6922258B2 (en) 2001-05-30 2005-07-26 Polaroid Corporation Method and apparatus for printing remote images using a mobile device and printer
US20030078965A1 (en) * 2001-08-22 2003-04-24 Cocotis Thomas A. Output management system and method for enabling printing via wireless devices
US7528974B2 (en) 2003-02-28 2009-05-05 Electronics For Imaging, Inc. Methods and apparatus for providing universal print services and asynchronous message services
US8223355B2 (en) 2003-06-16 2012-07-17 Hewlett-Packard Development Company, L.P. Cellular telephone protocol adaptive printing
JP4113081B2 (en) 2003-09-09 2008-07-02 株式会社リコー Communication system, communication method, communication device, and communication program
JP2005135374A (en) 2003-10-06 2005-05-26 Seiko Epson Corp Network data processing system, network printing system, data processor, printer, data processing program, print processing program, network data processing method and network printing method
EP1545051A1 (en) 2003-12-15 2005-06-22 Alcatel Alsthom Compagnie Generale D'electricite Method for waking up a sleeping device, a related network element and a related waking device
US20050162685A1 (en) * 2004-01-27 2005-07-28 Lainye Heiles Printing using instant message protocol
JP4383941B2 (en) * 2004-03-30 2009-12-16 キヤノン株式会社 Job management apparatus and method, job management program, storage medium, and job management system
US7444505B2 (en) * 2004-04-22 2008-10-28 At&T Intellectual Property I, L.P. Method, system and software for maintaining network access and security
US8869043B2 (en) 2004-06-07 2014-10-21 Avaya Inc. System for presenting applications on instant messaging clients
US7701602B2 (en) 2005-02-10 2010-04-20 Hewlett-Packard Development Company, L.P. Mobile device-based printing system and method
DE102005018971A1 (en) 2005-04-15 2006-10-19 Thinprint Gmbh Data e.g. electronic mail text , printing method for e.g. blackberry device, involves automatically initiating transmission of requested data to printing server by computer program, and activating printing process in printing server
US20070016680A1 (en) 2005-06-30 2007-01-18 Burd Gary S Method and system for proxy-based file sharing
GB0513363D0 (en) 2005-06-30 2005-08-03 Claricom Ltd Printer control method
JP4443482B2 (en) 2005-08-10 2010-03-31 ファバ株式会社 Internet printing system and program for realizing the same
JP4986689B2 (en) 2006-05-22 2012-07-25 キヤノン株式会社 Information processing apparatus, printing system, job processing method, and program
CN101051995B (en) * 2006-06-05 2012-07-04 华为技术有限公司 Protection switching method based on no connection network
US7730339B2 (en) 2006-11-20 2010-06-01 Ricoh Company, Ltd. Remote wake-up from an energy-saving mode
JP4829768B2 (en) * 2006-12-19 2011-12-07 キヤノン株式会社 Image forming apparatus, control method for image forming apparatus, management apparatus for managing image forming apparatus, and control method for management apparatus for managing image forming apparatus
WO2008085203A2 (en) 2006-12-29 2008-07-17 Prodea Systems, Inc. Presence status notification from digital endpoint devices through a multi-services gateway device at the user premises
JP4952384B2 (en) * 2007-05-31 2012-06-13 ソニー株式会社 Communication system, controlled device, information processing method, and program
KR101415033B1 (en) 2007-07-06 2014-07-07 삼성전자주식회사 Mobile communication device, printing control system and printing control method using mobile communication device
US7870044B2 (en) 2008-10-02 2011-01-11 Verizon Patent And Licensing Inc. Methods, systems and computer program products for a cloud computing spot market platform
US8732236B2 (en) 2008-12-05 2014-05-20 Social Communications Company Managing network communications between network nodes and stream transport protocol
US8935436B2 (en) 2009-02-18 2015-01-13 Qualcomm Incorporated Wakeup trigger to support multiple user interfaces, environments, and/or virtual machines
US8578076B2 (en) 2009-05-01 2013-11-05 Citrix Systems, Inc. Systems and methods for establishing a cloud bridge between virtual storage resources
EP2553901B1 (en) 2010-03-26 2016-04-27 Citrix Systems, Inc. System and method for link load balancing on a multi-core device
US9019532B2 (en) 2010-04-07 2015-04-28 Hewlett-Packard Development Company Device messaging
WO2012006595A2 (en) 2010-07-09 2012-01-12 Nicolas Girard Transparent proxy architecture for multi-path data connections
US9451383B2 (en) 2011-10-21 2016-09-20 Nokia Technologies Oy Method and apparatus for maintaining one or more communication sessions

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1638333A (en) * 2004-01-02 2005-07-13 三星电子株式会社 Data-security printing method and system using authentication protocol in network printer
CN101677319A (en) * 2008-09-19 2010-03-24 华为技术有限公司 Method, apparatus and system for service access on the basis of XMPP protocol

Also Published As

Publication number Publication date
EP2556480A4 (en) 2014-05-28
US9019532B2 (en) 2015-04-28
US20130010333A1 (en) 2013-01-10
WO2011126479A1 (en) 2011-10-13
US20150212779A1 (en) 2015-07-30
EP2556480A1 (en) 2013-02-13
US9921790B2 (en) 2018-03-20
CN103477600A (en) 2013-12-25

Similar Documents

Publication Publication Date Title
US9483217B2 (en) Printing system and printer
US9069503B2 (en) Apparatus, system, and method of output distribution, and recording medium storing output distribution control program
US8970876B2 (en) Printing system, cloud computing system, printing system control method, and storage medium
US8861010B2 (en) Notifying a print client of an end of an image process on print data
US7145678B2 (en) Configurable web-based imaging service that prevents time consuming jobs from printing
EP0969653B1 (en) Device control apparatus and method of determining device
EP1278153B1 (en) Printing apparatus and its resource data update procedure
CN103823645B (en) Communication relay method, information processor and image processing apparatus
US9323483B2 (en) Location-based print notifications
US6373585B1 (en) Load balancing for processing a queue of print jobs
US7593125B2 (en) Print job spooling and distribution system
TWI225337B (en) A system for processing print jobs
JP5995525B2 (en) System, image forming apparatus, server, and control method thereof
US7613845B2 (en) Centralized queue in network printing systems
JP4194532B2 (en) Information processing apparatus and job transfer control method
US8654379B2 (en) Data processing apparatus and recording medium
EP2494437B1 (en) Information processing system, print system, and method and program for controlling information processing system
US8330980B2 (en) System, method, and apparatus for networked print management
CN1525305B (en) Network system and client representation method of printing document
US20020089692A1 (en) Methods and systems for printing error recovery
US7936469B2 (en) System and method for distributed printer processing
US20070165265A1 (en) System using services, image handling apparatus, external processing apparatus, information processing apparatus, and state change sending method
JP2006099789A (en) Graphical user interface and printing method
US20060192997A1 (en) Print status monitor control for printing devices on network
JP5565346B2 (en) Printer

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant