GENERATOR AND METHOD FOR PRODUCEING SECONDARY PROCESSES, AND DEVICE FOR PROVIDING SERVICES THAT USES THESE
Patent Information
- Application Number
- DE602022029113
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-06-29
- Filing Date
- 2022-06-29
- Publication Date
- 2026-01-28
- Estimated Expiration
- 2042-06-29
AI Technical Summary
Existing service generation tools, such as IFTTT and Cisco Spark, are complex and prone to automation errors, making it difficult for novice users to create and implement new services for connected devices, especially in the smart home environment.
A second processing generator system that uses independently selectable first and second cards, each associated with logical connectors and electronic devices, to simplify the creation of complex service scenarios through a user interface, reducing the risk of command errors.
Facilitates the generation of complex service scenarios by allowing users to easily select and order cards, thereby minimizing errors and enhancing the usability for novice users.
Description
technical field
[0001] The invention relates to the generation of new services, in particular second processing providing second services from existing first services and / or connected objects. State of the art
[0002] Originally, service generation or composition, also known as "mashup," referred to combining data and / or processes from multiple sources, such as websites, applications, etc., to create a completely new service from the collected elements. More broadly, service generation refers to the ability to mix and chain several actions to produce a new service.
[0003] In recent years, service generation has found a favorable ecosystem in the development of application programming interfaces (APIs) and the ability to interconnect services. For the user, this translates into tangible gains in efficiency and time, made possible by the chaining and automation of actions from different services and applications.
[0004] Offered in the B2B (Business to Business) market, meaning e-commerce between companies, this capability is either offered as a standalone product or integrated into business solutions, particularly software suites such as Cisco Spark. The application programming interfaces (APIs) are then designed for advanced users. The possible mashups address business process applications, information and data management, and, more recently, applications related to connected devices.
[0005] In the B2C (Business to Consumer) market—that is, e-commerce connecting businesses directly with consumers—the best-known player remains IFTTT™, a web service that allows users to create chains of instructions from a catalog of APIs, although major hardware manufacturers have since integrated similar orchestration functions into their applications. While IFTTT's solution is relatively easy to use, its target audience remains users with a sophisticated tech profile, as they need to be familiar with this type of functionality.
[0006] With the rise of connected devices, and more specifically connected devices for the smart home, the ability to create services integrated into applications for managing their connected equipment and devices is also becoming available to users. For example, Apple offers an appHome™ API for creating automation scenarios for connected home automation devices. More recently, Samsung released a SmartThings™ application that allows users to create events and scenarios through personalized automation.
[0007] However, all these programming interfaces allow scenarios to be created using text or visual lists. Yet, creating lists and adding elements to them is not necessarily easy for novice users to grasp. Furthermore, their complexity means that even experienced users risk making composition errors that can lead to automation errors when implementing the new service.
[0008] WO 2017 / 189638 A1 describes a workflow designer user interface viewed within a browser. Specifically, a workflow logic generator uses workflow steps selected and configured by the developer to generate logic that will subsequently be invoked for execution. This logic can invoke an operation from one or more local or network applications associated with workflow steps. Additionally, a step selector allows workflow steps to be selected independently and then ordered into a given sequence. Description of the invention
[0009] One of the aims of the present invention is to provide improvements over the prior art.
[0010] An object of the invention is a generator of second processes providing second services, the second process comprising at least one command to an electronic device, the command triggering one of the following actions of the electronic device: an execution of a step in a primary processing procedure providing a first service, a control of the electronic device, the second processing generator comprising a command generator based on several first cards and several second cards selected independently respectively from a set of first cards and a set of second cards, each first card being associated with a logical connector capable of being executed during the execution of a second processing and each second card being associated with one of the following elements: a first service and an electronic device connected to a controller capable of implementing the second processing, the command generator generating at least one command based on an order in which the selected first and second cards are positioned.
[0011] Thus, since the generation of the second processing is simplified by the use of selected cards, the risk of command errors is reduced and more complex second processing can be generated.
[0012] Advantageously, the second processing generator includes a user interface, the user interface being able to display the set of first cards and the set of second cards, being able to receive an instruction to select first cards and second cards according to an action of a user.
[0013] Thus, card selection is facilitated, reducing erroneous commands: commands of the wrong parameters, command of the wrong connected object, command of the wrong service, etc., or even erroneous triggering of commands: triggering of the wrong command or triggering under inappropriate conditions.
[0014] Advantageously, the user interface includes an instruction receiver for ordering the first and second cards selected.
[0015] Advantageously, the user interface includes at least a first display area for some of the first and second selected cards and a second display area for the rest of the first and second selected cards, the first display area being associated with a trigger and the second display area with a controller activated by the trigger.
[0016] Advantageously, the first and second cards are virtual cards available in a card database.
[0017] Advantageously, the first and second cards are physical cards and the second processing generator is connected to an identifier of the selected first and second cards.
[0018] Advantageously, the second processing generator includes a card position analyzer connected to a card sensor, the analyzer being able to provide the order of the first and second cards selected.
[0019] An object of the invention is also a service provisioning device comprising: a processing base comprising at least some initial processing steps; a processor capable of implementing at least one initial processing step; characterized in that the service delivery system also includes: a second processing generator providing second services, the second processing comprising at least one command to an electronic device, the command triggering an action of the electronic device from among the following actions: + execution of a step of a first processing method providing a first service, + control of the electronic device, the second processing generator comprising a command generator based on several first cards and several second cards selected independently respectively from a set of first cards and a set of second cards, each first card being associated with a logic connector capable of being executed during the execution of a second processing and each second card being associated with one of the following elements: a first service and an electronic device connected to a controller capable of implementing the second processing,The second generated process being capable of being implemented by the processor, the command generator generates at least one command based on the order in which the first and second selected cards are positioned.
[0020] Advantageously, the service delivery device includes a recorder capable of storing the second generated treatment in the treatment database.
[0021] An object of the invention is further a method for generating a second process providing second services, the second process comprising at least one command to an electronic device, the command triggering one of the following actions of the electronic device: an execution of a step in a primary processing procedure providing a first service, a control of the electronic device, the generation of second processing comprising a generation of commands based on several first cards and several second cards selected independently respectively from a set of first cards and a set of second cards, each first card being associated with a logical connector capable of being executed during the execution of a second processing and each second card being associated with one of the following elements: a first service and an electronic device connected to a controller capable of implementing the second processing, the generation of commands generating at least one command based on an order in which the selected first and second cards are positioned.
[0022] Thus, since the generation of the second processing step is simplified by using selected cards, the risk of command errors is reduced, and more complex second processing steps can be generated. A more complex second processing step is understood to mean a sequence with a greater number of commands and / or more complex command triggers, that is, triggers with a greater number of triggering conditions and / or more nested triggering conditions.
[0023] Advantageously, the generation of second processing involves several selections of first cards from the set of first cards and, independently of the selections of first cards, several selections of second cards from the set of second cards, a selection being a function of at least one selection instruction.
[0024] Advantageously, the generation of second processing involves scheduling the first and second cards selected according to at least one scheduling instruction.
[0025] Advantageously, the instruction is a function of a user action.
[0026] Advantageously, the generation process includes a display by means of a user interface of a first display area of a portion of the independently selected first and second cards and a second display area of the remainder of the independently selected first and second cards, the first display area being associated with a trigger and the second display area with a controller activated by the trigger.
[0027] Advantageously, according to one implementation of the invention, the various steps of the process according to the invention are implemented by a software or computer program, this software comprising software instructions intended to be executed by a data processor of a device forming part of a processing generator or a service delivery device and being designed to control the execution of the various steps of this process.
[0028] The invention therefore also relates to a program comprising program code instructions for the execution of the steps of the process of generating second treatments when said program is executed by a processor.
[0029] This program can use any programming language and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form or in any other desirable form. Brief description of the drawings
[0030] The features and advantages of the invention will become clearer upon reading the description, given by way of example, and the related figures which represent: Figure 1 , a simplified diagram of a secondary processing generator according to the invention; Figure 2 , a simplified diagram of a service delivery device according to the invention; Figure 3 , a simplified architectural diagram implementing a second processing generator according to the invention; Figure 4 , a simplified diagram of a method for generating second treatments according to the invention; Figure 5, a simplified user interface diagram of a second processing generator according to the invention, the user interface comprising a first display area and a second display area; Figure 6 , a simplified user interface diagram of a second processing generator in which a second card is added; Figure 7a , a simplified user interface diagram of a second processing generator in which a first card and at least one second card are added in the first area illustrated by the figure 5 ; Figure 7b , a simplified user interface diagram of a second processing generator in which a first card and at least one second card are added in the second area illustrated by the figure 5 ; Figure 8 , a simplified user interface diagram of a second processing generator according to the invention in the case of a second processing called "complex". Description of the implementation methods
[0031] There figure 1 illustrates a simplified diagram of a secondary processing generator according to the invention.
[0032] Secondary processes tt2 provide secondary services. A second process tt2 includes at least one cmd command from an electronic device 9, the cmd command triggering one of the following actions from the electronic device 9: an execution of a step of a first processing tt1 providing a first service, a control of the electronic device.
[0033] The second processing generator 4 includes a command generator 45 based on several first cards {CS 1 l<} l and several second cards {cs 2 k<} k selected independently respectively from a set of first cards {c 1 i<} i and a set of second cards {c 2 j<} j , each first card being associated with a logical connector suitable for execution during the execution of a second processing and each second card being associated with one of the following: a first service and an electronic device connected to a controller suitable for implementing the second processing tt2.
[0034] In particular, the second cards are associated with a value of a parameter that can be associated with a first service or an electronic device.
[0035] In particular, the second processing generator 4 includes a user interface 43 capable of receiving a selection instruction is First and second cards are determined by a user's action (U). A selection instruction is indicates a first or second card selected regardless of the first and / or second card(s) previously selected. Thus, the first and second cards are selected independently. User interface 43 is capable of displaying the set of first cards {c 1 i<} i and the set of second cards {c 2 j<} j .
[0036] In particular, command generator 45 generates at least one cmd command based on an order io in which the first and second selected cards are positioned.
[0037] In particular, user interface 43 is capable of receiving a scheduling instruction io of the first and second cards selected.
[0038] Optionally, the scheduling instruction is a positioning instruction associated with a card selection instruction. For example, the selection instruction is It includes a list of identifiers of selected cards, and optionally the scheduling instruction is a list of positions of the selected cards. Thus, the selected card corresponding to the nth identifier in the list will be associated with the nth position in the list of positions.
[0039] In an alternative embodiment, the selection instructions and scheduling instructions are coupled, the user interface then provides pairs of instructions, each pair corresponding to a selected card and including an identifier and a position of the selected card.
[0040] In particular, the user interface 43 includes at least a first display area 31 of some of the first and second cards selected and a second display area 32 of the remainder of the first and second cards selected, the first display area 31 being associated with a trigger and the second display area 32 with a controller 58 activated by the trigger.
[0041] In particular, the first and second cards are virtual cards available in a card base of 11, 12.
[0042] Especially : the first and second cards are physical cards; and the second processing generator 43 is connected to an identifier 33 of the first and second selected cards.
[0043] In particular, the secondary processing generator 43 includes a card position analyzer 34 connected to a card sensor 33, the analyzer 34 being capable of providing the order io of the first and second cards selected.
[0044] In particular, prior to using command generator 45, first and second cards are generated. The first cards are associated with logical connectors, for example, "if", "or if", "then", "then after", "or", "and", "else", etc. The second cards are associated with actions from among the following: execution of a step in a primary processing procedure providing a primary service, control of an electronic device, in particular connected equipment, such as a connected object (light bulb(s), speaker(s), etc.), home automation equipment (shutter, door, window, automatic watering, alarms...), etc.
[0045] In particular, the logic connectors associated with first cards are stored in a connector base 2‴, and the actions associated with second cards are stored in one or more action bases 2", 2"a, 2"b, in particular in a base containing both first processes and electronic device control interfaces 2"a or specific bases (not shown) containing respectively first processes or electronic device control interfaces.
[0046] Note that a second processing generated at time t0 by the second processing generator 4 and stored in a second processing base 2"b can become, at a later time t1=t0+T(T>0) for the second processing generator a first processing from which a second card can be generated (especially in real time, when the cards are virtual cards, i.e. from the recording of the second processing at time t0, and used to generate a new second processing.
[0047] In particular, the first and second cards thus generated are recorded in at least one storage device such as a database, for example a card database, or respectively a first card database 11 and a second card database 12.
[0048] In particular, a card generator 10 generates the first and / or second cards and saves them in a storage device 11, 12. Optionally, the second processing generator includes the card generator 10 and, in particular, the storage device for the generated cards 11, 12.
[0049] When the first and second cards are physical cards respectively 1 1 ...1 I and 2 1 ...2 J, the card generator 10 associates with at least one identifier of the first physical card, respectively of the second physical card, logical connectors, for example "if", "or if", "then", "then after", "or", "and", "else", etc., and actions from among the following: execution of a step in a primary processing procedure providing a primary service, control of an electronic device, in particular connected equipment, such as a connected object (light bulb(s), speaker(s), etc.), home automation equipment (shutter, door, window, automatic watering, alarms...), etc.
[0050] User U performs an action to select first and second cards, virtual or physical.
[0051] In the case of physical cards, it places the selected cards on a flat surface 30, for example the screen of a communication terminal or an electronic tray 3 or a simple table 0. A card identifier 33 is capable of detecting the selected cards: Either because the selected cards contain an electronic identifier: RFID chip, NFC chip, etc. In this case, the identifier includes an electronic reader, for example, an RFID or NFC reader, etc., or because an identifier such as a barcode, or more simply an image or text (word or set of words), associated respectively with the connector, the first service provided by the first processing step, and the electronic device, is printed either directly on the selected cards or on a label affixed to them. In this case, the identifier 33 includes a camera that captures the identifier and an analyzer capable of determining the connector, the first processing step, the electronic device associated with the card, and, where applicable, of recognizing the printed image or text prior to this determination.
[0052] In particular, either the second processing generator 4, or the communication terminal 3 (connected to or including the second processing generator 4) includes the identifier 33.
[0053] In the case of virtual cards, the user performs the selection action as on a communication terminal 3 (connected to or containing the secondary processing generator 4).
[0054] In particular, user U orders ao The selected cards. For example, it arranges in order (either from left to right, or from top to bottom, etc.) a first card associated with a first connector, a second card associated, in particular, with a first connected object, another first card associated with a second connector, and yet another second card associated, in particular, with a first service. In particular, the reading direction of the cards by the position analyzer 34 is predetermined.
[0055] In particular, user U places the first and second cards in two separate zones 31 and 32 of a zone 30. The first zone 31 is associated with a trigger, and the second zone 32 is associated with a controller. In the case of an electronic screen or tray 30 on which the physical cards are arranged, or a screen 30, respectively, of a communication terminal 3 connected to the secondary processing generator 4, or of a user interface 430 of a secondary processing generator 430 on which the selected virtual cards are displayed, the screen or tray 30 is divided into two zones 31 and 32, referred to in particular as display zones in the case of the screen 30. In the case of a simple table 0, the selection zone 30 on which the selected cards are arranged is then divided into two zones 31 and 32.
[0056] In our example above, in the first zone 31, there is a first card associated with a first connector, a second card associated with another connector, and in the second zone 32, another first card associated with a second connector and yet another second card associated, in particular, with a first service. Optionally, these can be arranged in an ordered manner in each of the two zones.
[0057] In the case of both zones, the position analyzer 34 is not only able to detect the order in which the selected cards are arranged but also in which zone they are positioned.
[0058] When the identifier 33, respectively the position analyzer 34, are not implemented in the second processing generator 4 but in a separate device 3, such as a communication terminal or an electronic board, the separate device 3 includes a transmitter 35 capable of transmitting to the second processing generator the identifiers of the first and second cards identified by the identifier 33 and, where appropriate, their positions / orders determined by the position analyzer 34, in particular in the form of a selection instruction is, respectively a scheduling instruction io.
[0059] In the case of virtual maps, the transmitter 35 is possibly capable of receiving from the user interface 43 multimedia data representing the virtual maps capable of being reproduced by the screen 30 and, possibly, multimedia data representing the first zone 31 and the second zone 32.
[0060] In particular, the second processing generator 4 includes the selector 44 capable of retrieving from the card database(s) 11, 12 the first and second cards selected according to the selection instructions is provided by user interface 430, in particular by identifier 33 and to transmit them to command generator 45.
[0061] Optionally, in the case of virtual cards, the selector 44 provides multimedia data representing the selected virtual cards to the user interface which triggers the reproduction on the screen 30 of the selected cards.
[0062] In particular, the user interface also provides the command generator 45 with the order of the selected cards oc.
[0063] The command generator 45 develops, based on the data received: selected cards and order of the cards, at least one command or a series of commands.
[0064] In cases where the card order involves associating some of the selected cards with a first zone and the remaining selected cards with a second zone, the command `cmd` generated by command generator 45 includes a trigger command intended to be executed by a trigger and a control command intended to be implemented by a controller. A processing unit executes the second processing unit, which includes both the trigger and the controller. The trigger is capable of initiating the execution of the control command by the controller based on the outcome of the trigger command's execution.
[0065] In particular, the second processing generator 4 includes a second processing recorder 46 allowing the second processing to be written into a storage device in particular a 2" processing base or even a 2"b second processing base.
[0066] There figure 2 illustrates a simplified diagram of a service delivery device according to the invention.
[0067] Service delivery arrangement 5 includes: a processing base 52" comprising at least first processing tt1; a processor 58 capable of implementing at least one first processing; a generator 54 of second processing tt2 providing second services, the second processing tt2 comprising at least one command cmd of an electronic device 5, 9 1 ... 9 M, the command cmd triggering an action of the electronic device 5, 9 1 ... 9 M among the following actions: + an execution of a step of a first processing tt1 providing a first service, + a control of the electronic device 5, 9 1 ... 9 M.
[0068] The second processing generator 54 comprises a command generator 545 based on several first cards {cs1l<}l and several second cards {cs2k<}k selected independently from a set of first cards {c1i<}i and a set of second cards {c2j<}j, each first card being associated with a logical connector capable of being executed during the execution of a second processing operation, and each second card being associated with one of the following: a first service and an electronic device 91...9M connected to a controller capable of implementing the second processing tt2
[0069] In particular, the service delivery device 5 includes a recorder 545 capable of storing the second generated processing tt2 in the processing database, including a second processing database 52.
[0070] In particular, the second processing generator 54 includes a selector 544 of first cards, notably in a base of first cards (not illustrated), and of second cards, notably in a base of second cards (not illustrated).
[0071] The second map base is established in particular from the first processing of the processing base, in particular from a first processing base tt1 and, possibly, from the second processing already generated and recorded in a second processing base tt2 which become for the second processing being generated the first processing.
[0072] The selector 544 provides the command generator 545 with the first and second cards selected {cs 1 l<} l , {cs 2 k<} k .
[0073] In particular, in the case where the service delivery device 5 is connected to a communication terminal 3 by means of which the user U selects the cards, the service delivery device 5 and / or the second processing generator 5 includes a user interface 545 which receives a selection instruction is and, where appropriate, a scheduling instruction io.
[0074] In particular, the communication terminal 3 has a screen 30 on which the cards are displayed when they are virtual, the screen 30 is notably a touch screen allowing the user to perform a selection action as or even a scheduling action ao directly on the displayed cards.
[0075] In particular, the communication terminal 3 includes a card identifier 33 for cards selected based on the cards selected on the screen 30 or on physical cards positioned on the terminal or on a flat surface. The identifier 33 provides selection instructions is to selector 544, in particular via user interface 543.
[0076] In particular, the communication terminal 3 includes a position analyzer 34 for cards selected based on the cards selected on the screen 30 or on physical cards positioned on the terminal or on a flat surface. The position analyzer 34 provides scheduling instructions io to the command generator 545, in particular via the user interface 543.
[0077] The command generator 545 then generates at least one cmd command, or even a series of Σ commands n cmd ndepending on the selected cards {cs 1 l<} l , {cs 2 k<} k and, where applicable, the scheduling instruction io (possibly each position of the scheduling instruction is coupled to a selected card and provided by the 544 selector).
[0078] In particular, user U can request, by means of the communication terminal 3, the execution of the second processing tt2 thus generated by the service provisioning device 5.
[0079] The service delivery device 5 includes in particular a processor 58 capable of executing the command(s) of the second processing and, where appropriate, of reading these commands in the processing database 52.
[0080] In particular, the service delivery device 5 includes at least one controller 59 1 ...59 M of at least one electronic device 9 1 ...9 M connected to the service delivery device 5. Thus, when the second process tt2 includes electronic device control commands, the processor 58 is capable of triggering at least one controller 59 1 ...59 M which sends a control signal cnt, {cnt m} m to at least one electronic device 9 1 ... 9 M. In particular, the control signal is a function of the execution of the process by the processor 58 r=exe(tt2).
[0081] In particular, the processor 58 consists of or includes a controller trigger 59 1 ...59 M. In particular, the trigger 58 triggers a controller 59 1 ...59 M depending on the result of the execution of the processing by the processor 58 r=exe(tt2).
[0082] In particular, the communication terminal 3 is connected to the service delivery device 5 via a communication network 7.
[0083] In particular, the service delivery device 5 is connected to at least one electronic device 9 1 ...9 M either directly or via a communication network identical or not to the communication network connecting the communication terminal 3 to the service delivery device 5.
[0084] There figure 3 illustrates a simplified architectural diagram implementing a second processing generator according to the invention.
[0085] The second processing generator 4 includes a command generator capable of generating at least one command based on the first cards cs 1 1< , cs 1 2< ... and second cards selected cs 2 1< ... cs 2 K< .
[0086] The first selected cards cs 1 1< , cs 1 2< ... are associated with CN1, CN2 connectors, and the second selected cards cs 2 1< ... cs 2 K< are associated with electronic devices, such as Internet of Things connected objects, O1, or with first services S1.
[0087] In particular, at least one command generated by command generator 45 is provided in the form of an instruction set, for example by means of source code such as the following source code: IF <object 1><condition 1> AND <object 2><condition 2> THEN <object 3><action 3> AND <object 4><action 4>
[0088] In particular, a selected card identifier 33 and, optionally, a selected card position analyzer 34 transmits selection instructions is and, where applicable, scheduling instructions io to the second processing generator 4 based on selection actions as and, where applicable, scheduling ao of the user on the first and second cards.
[0089] In particular, the second processing generator 4 includes the selected card identifier 33 and, optionally, a position analyzer 34.
[0090] In particular, a connected object management device 5, for example an Internet of Things or "loT" platform, executes the second processing thus generated tt2. The connected object management device 5 controls, according to the execution of the second processing tt2, at least one electronic device 9 1, such as a connected object.
[0091] In particular, the connected object management device 5 includes electronic device control interfaces 591 ... 59M. The control interface 591, or controller, controls the connected object 91 based on the result of the execution by the management device 5 of the second generated process tt2. Specifically, the control interface 591 is triggered by the management device 5 based on the execution of the second process tt2.
[0092] In the case of virtual cards, a user manipulates a set of virtual cards on a graphical interface 30. This set comprises a set of first cards and a set of second cards. Optionally, the user adjusts the relative positions of the selected cards. The selected first and second cards allow the command generator 45 to determine, based on the logical connectors, the associated electronic devices or first services, and, where applicable, their relative positions, a second processing step, notably in the form of a "mashup" or scenario.
[0093] The first and second maps are previously modeled, possibly using a computer program.
[0094] In particular, after each card move, the placed cards are analyzed by selected card identifier 33 and, possibly, a position analyzer 34.
[0095] In particular, a suitability analyzer is capable of verifying the suitability between a location and the card one wishes to place there. For example, when the screen is divided into two zones, the first zone associated with a trigger and the second zone associated with a controller, the suitability analyzer checks whether the first card positioned in the first zone is associated with a conditional logic connector, such as IF, OR IF..., or whether the first card positioned in the second zone is associated with an action logic connector, such as THEN, THEN AFTER, ELSE... Optionally, the selected card identifier 33 and, where applicable, the position analyzer 34 provide the suitability analyzer with the identifiers of the selected cards and, where applicable, their positions.
[0096] Optionally, the selected card identifier 33 and, where applicable, the position analyzer 34 provide the selected card identifiers and, where applicable, their positions to the second processing generator 4 which calculates and produces a second processing consisting of one or more commands or sequence of commands to be implemented to execute the second processing, i.e. to test the conditions and execute the actions if the conditions are met.
[0097] In particular, the second tt2 processing is executed by the loT 5 platform equipped with 59 1 ...59 M connectors capable of querying and operating / controlling connected objects 9 1 ... For example, the conditions provided for by the second tt2 processing are checked by querying one or more connected objects and the controller commands the implementation of an action predefined by the second processing if the condition is met.
[0098] There figure 4 illustrates a simplified diagram of a method for generating second treatments according to the invention.
[0099] The method for generating a second process providing second services, the second process tt2 comprising at least one cmd command of an electronic device, the cmd command triggering one of the following actions of the electronic device: an execution of a step in a primary processing procedure providing a first service, a control of the electronic device, the generation of second TT2_GN processes including the generation of CMD_GN commands based on several first maps {cs 1 L } L and several second cards {cs 2 k } k independently selected respectively from a set of first cards {c 1 i } i and a set of second cards {c 2 j } j , each first card being associated with a logical connector capable of being executed during the execution of a second processing and each second card being associated with one of the following elements: a first service and an electronic device connected to a controller capable of implementing the second processing tt2.
[0100] In particular, the generation of second TT2_GN processes includes several CSLCT selections of first cards from the set of first cards and, independently of the first card selections, several selections of second cards from the set of second cards, a CSLCT selection being a function of at least one is selection instruction.
[0101] In particular, CSLCT selection selects the first and second cards in a storage device, such as a BDC card database, or respectively a BDC1 first card database and a BDC2 second card database.
[0102] In particular, the generation of second TT2_GN processes includes a CORD scheduling of the first and second cards selected according to at least one io scheduling instruction.
[0103] In particular, the instruction i, in particular the selection instruction is, where applicable the scheduling instruction io, is a function of an action a of a user U, in particular a selection action a, respectively a scheduling action ao.
[0104] In particular, the TT2_GN generation process includes an IRCV reception of a user action as, ao providing respectively a selection instruction is, a scheduling instruction io.
[0105] In particular, the TT2_GN generation process includes a display by means of a user interface of a first display area of a part of the first and second independently selected cards and a second display area of the remainder of the first and second independently selected cards, the first display area being associated with a trigger and the second display area with a controller activated by the trigger.
[0106] In particular, user U performs a selection action as of a first card received IRCV by the generation of second TT2_GN processing. The IRCV reception transmits the selection instruction is to the CSLCT selection which provides at least one selected card cs=cs, cs 2 depending on the selection instruction is.
[0107] Following this CSLCT selection, the generation of second TT2_GN processes checks SSTP? if the IRCV receiver has received a new selection action as from user U that provides a new selection instruction is. If the SSTP? check detects a new selection instruction is So [Y] the SSTP check? transmits the new selection instruction is to the CSLCT selection. Otherwise [N], the SSTP check? transmits to the CMD_GN command generation the set of cards selected {cs 1 l<} l , {cs 2 k<} k by the CSLCT selection.
[0108] In particular, when user U orders the selected cards, the IRCV reception provides a scheduling instruction. io based on their positions to a CORD card scheduling which provides the order of the oc cards to the CMD_GN command generation.
[0109] The CMD_GN command generator calculates and generates, based on the selected cards {cs 1 l<} l , {cs 2 k<} k and possibly their order oc, at least one cmd command, or even a series of Σ commands n cmd n constituting the second treatment tt2.
[0110] In particular, the generation of second TT2_GN processes includes modeling CMOD cards based on the second generated tt2 process. The card(s) modeled from the second generated tt2 process are optionally stored, for example, in a BDC card database, specifically a second BDC2 card database.
[0111] A particular embodiment of the second processing generation method is a program comprising program code instructions for executing the steps of the second processing generation method when said program is executed by a processor.
[0112] There figure 5 illustrates a simplified user interface diagram of a second processing generator according to the invention, the user interface comprising a first display area and a second display area.
[0113] In the case where user U selects four cards: two first cards and two second cards and places them in two zones: a first zone 31 and a second zone 32. The first zone allows to form a block TB of trigger cards, and the second zone allows to form a block AB of action cards.
[0114] For example, the cards are arranged in a line. Optionally, other lines of cards can be arranged by the user U to define a second, more complex process (i.e., one involving several conditions and / or several actions).
[0115] Optionally, the first and second cards have a dedicated location where they can be placed by user U. For example, first cards are placed on first card areas and / or first cards associated with a condition connector are placed on the first area or condition area 31 and / or first cards associated with an action connector are placed on the second area or action area 32 and / or second cards are placed on second card areas (where appropriate, in the first and second areas).
[0116] In the example of the figure 5 The first selected card, cs 1 1<, corresponds, for example, to a condition connector such as "IF" and is placed in the first position on the line in the first display area to form the condition block TB. The second selected card, cs 2 k1<, corresponds, for example, to a first service or a connected object and is placed in the second position on the line in the first display area to form the condition block TB.
[0117] Thus, the second tt2 process thus generated will check a condition relating to the first service or the connected object associated with the second selected card cs 2 k1< of the condition block TB during its execution.
[0118] Another first selected card, cs 1 2<, corresponds, for example, to an action connector such as "THEN" and is placed in the third position on the line in the second display area to form the action block AB. Another second selected card, cs 2 k2<, corresponds, for example, to a first service or connected object, whether or not it is distinct from the first service or connected object of the condition block TB, and is placed in the fourth position on the line in the second display area to form the action block AB.
[0119] Thus, if the condition is met, the second tt2 process thus generated will trigger the control of the action planned by the other second selected card cs 2 k2< .
[0120] There figure 6 illustrates a simplified user interface diagram of a second processing generator in which a second card is added.
[0121] Additional second cards can be added by user U to the basic layout provided by the figure 5 This addition can be made before, after, or between other cards already placed in the row. figure 6 illustrates the addition of cards before or after they have already been laid out.
[0122] When a second card is added by user U on a line and in a block already containing a second card, the command generation creates an "AND" operator between the new second card and the second card(s) already placed in the block TB, AB.
[0123] Thus, all conditions generated from the second cards of the condition block TB are linked by the "AND" operator and must be validated within the condition block to trigger the execution of the action block AB. For example, if the condition block contains a first card associated with the "IF" logic connector and second cards associated respectively with a temperature >30°, an open window position, and 21:00, the implementation of the second process involves querying a connected thermometer of the window and the clock to verify if all conditions are true and, if so, triggering the action block AB.
[0124] Thus, all actions generated from the second cards of the action block AB are linked by the "AND" operator and will be executed either successively or simultaneously, regardless of whether one of the actions fails or finishes at a different time. For example, if the condition block has a first card associated with the logical connector "THEN" and second cards associated respectively with an SMS and an automatic watering system, if the condition is met by the implementation of the second process, it triggers both a command to send the SMS via a communication terminal and a command to activate the automatic watering system.
[0125] There figure 7a illustrates a simplified user interface diagram of a second processing generator in which a first card and at least one second card are added in the first area shown by the figure 5 .
[0126] User U can create or modify a new condition subblock TB2 in addition to the condition subblock TB1 (cs 1 l1<, cs 2 k1<, cs 2 k2<). Specifically, the user initiates a new row or a new TB2 subblock with a first card cs 1 l2<, such as a first card connected to the "OR IF" logic connector. The user adds a second card cs 2 k3< to this first card cs 1 l2<.
[0127] If the new row is a new condition block TB2, independent of the preceding or subsequent condition blocks TB1, it can be tested in order to execute the action block AB. In other words, in the example above, the second processing generation will execute the actions only if all the conditions in the first row TB1 are tested and validated, or if all the conditions in the additional row TB2 are tested and validated.
[0128] The user can add as many condition lines as they wish.
[0129] There figure 7b illustrates a simplified user interface diagram of a second processing generator in which a first card and at least one second card are added in the second area shown by the figure 5 .
[0130] User U can create or modify a new AB2 action subblock in addition to the AB1 action subblock (cs 1 l3<, cs 2 k4<, cs 2 k5<). Specifically, the user initiates a new line or a new AB2 subblock with a first card cs 1 l4<, such as a first card connected to the "THEN AFTER" logic connector. The user adds a second card cs 2 k6< to this first cs 1 l4< card.
[0131] A line started by the "THEN" or "THEN AFTER" operator initiates a new action block AB2 which will be executed after the previous action block AB1. In other words, in the example above, the generation of the second processing will only execute a sub-action block AB2 if the execution of the previous action block AB1 has been launched beforehand, regardless of the result of that execution.
[0132] The user can add as many action lines as they wish.
[0133] There figure 8 illustrates a simplified user interface diagram of a second processing generator according to the invention in the case of a second processing called "complex".
[0134] If the user selects cards such as in the example of the figure 8 To generate a second complex process, the second processing generation will generate commands in the following order: The first sub-block or condition block TB1 contains a first card cs 1 l1< and three second cards cs 2 k1<, cs 2 k2<, cs 2 k3<. The generation of second processing generates a condition command in which three conditions associated with the three second cards cs 2 k1<, cs 2 k2<, cs 2 k3< must be tested. If the execution of the command generated from the first condition block TB1 validates all the conditions, then the command generated from the first action block AB1 containing the second card cs 2 k4< is executed. Otherwise, the condition command generated from the second condition block TB2 is tested. the second subblock or condition block TB2 has a first card cs 1 l3< and a second card cs 2 k5<, the generation of second processing generates a condition command in which the condition associated with the second card cs 2 k5< must be tested.If the execution of the command generated from the second condition block TB2 validates this condition, then the command generated from the first action block AB1, which includes the second card cs 2 k4<, is executed. Otherwise, the condition command generated from the third condition block TB3 is tested. The third sub-block, or condition block TB3, contains a first card cs 1 l5< and two second cards cs 2 k8< and cs 2 kµ9<. The generation of second processes generates a condition command in which two conditions associated with the three second cards cs 2 k8< and cs 2 k9< must be tested. Otherwise, the commands generated from action blocks AB1 and AB2 are not executed.If the command generated from the first action block AB1 is executed, then the command(s) generated from the second action block AB2, containing the two second cards cs 2 k6< , cs 2 k7<, are executed after the execution of the command generated from the first action block AB1. Thus, the commands generated from the first action block AB1 can be executed even if the commands generated from the second action block AB2 cannot be, but the commands generated from the second action block AB2 cannot be executed if the commands generated from the first action block AB1 cannot be.
[0135] The invention also relates to a storage medium. The information storage medium can be any entity or device capable of storing the program. For example, the medium can include a storage means, such as a ROM, for example a CD-ROM or a microelectronic circuit ROM, or a magnetic recording means, for example a floppy disk or a hard disk drive.
[0136] On the other hand, the information medium can be a transmissible medium such as an electrical or optical signal that can be transmitted via an electrical or optical cable, by radio, or by other means. The program according to the invention can, in particular, be downloaded onto a network, notably the Internet.
[0137] Alternatively, the information carrier may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the process in question.
[0138] In another implementation, the invention is implemented using software and / or hardware components. In this context, the term "module" can refer to either a software component or a hardware component. A software component corresponds to one or more computer programs, one or more subroutines of a program, or more generally, any element of a program or software capable of implementing a function or set of functions as described above. A hardware component corresponds to any element of a hardware assembly capable of implementing a function or set of functions.< / object> < / object> < / object> < / object>
Claims
1. Generator of second processing operations providing second services, the second processing operation comprising at least one command for an electronic device, the command triggering an action from the electronic device from among the following actions: - execution of a step of a method for a first processing operation providing a first service, - control of the electronic device, the generator of second processing operations comprising a generator of commands as a function of multiple first cards and of multiple second cards selected independently from among a set of first cards and a set of second cards, respectively, each first card being associated with a logic connector able to be executed during the execution of a second processing operation and each second card being associated with one element from among the following elements: a first service and an electronic device connected to a controller able to implement the second processing operation, the command generator generating at least one command as a function of an order in which the selected first cards and second cards are positioned.
2. Generator of second processing operations according to the preceding claim, the generator of second processing operations comprising a user interface, the user interface being able to display the set of first cards and the set of second cards, being able to receive an instruction for selecting first cards and second cards as a function of an action from a user.
3. Generator of second processing operations according to Claims 2 and 3, in which the user interface is able to receive a command for scheduling the selected first cards and second cards.
4. Generator of second processing operations according to any one of Claims 2 to 4, in which the user interface comprises at least one first region for displaying a portion of the selected first cards and second cards and a second region for displaying the rest of the selected first cards and second cards, the first display region being associated with a trigger and the second display region with a controller activated by the trigger.
5. Generator of second processing operations according to any one of the preceding claims, in which the first cards and second cards are virtual cards available in a card base.
6. Generator of second processing operations according to any one of Claims 1 to 5, in which: - the first cards and second cards are physical cards; - the generator of second processing operations is connected to an identifier of the selected first and second cards.
7. Generator of second processing operations according to the preceding claim, the generator of second processing operations comprising a position analyzer for analyzing the position of the cards which is connected to a card sensor, the analyzer being able to provide the order of the selected first cards and second cards.
8. Service provision device comprising: - a processing operation base comprising at least first processing operations; - a processor able to implement at least one first processing operation; characterized in that the service provision device further comprises: - a generator of second processing operations providing second services, the second processing operation comprising at least one command for an electronic device, the command triggering an action from the electronic device from among the following actions: + execution of a step of a method for a first processing operation providing a first service, + control of the electronic device, the generator of second processing operations comprising a generator of commands as a function of multiple first cards and of multiple second cards selected independently from among a set of first cards and a set of second cards, respectively, each first card being associated with a logic connector able to be executed during the execution of a second processing operation and each second card being associated with one element from among the following elements: a first service and an electronic device connected to a controller able to implement the second processing operation, the generated second processing operation being able to be implemented by the processor, the command generator generating at least one command as a function of an order in which the selected first cards and second cards are positioned.
9. Service provision device according to the preceding claim, the service provision device comprising a recorder able to store the generated second processing operation in the processing operation base.
10. Method for generating a second processing operation providing second services, the second processing operation comprising at least one command for an electronic device, the command triggering an action from the electronic device from among the following actions: - execution of a step of a method for a first processing operation providing a first service, - control of the electronic device, the generation of second processing operations comprising a generation of commands as a function of multiple first cards and of multiple second cards selected independently from among a set of first cards and a set of second cards, respectively, each first card being associated with a logic connector able to be executed during the execution of a second processing operation and each second card being associated with one element from among the following elements: a first service and an electronic device connected to a controller able to implement the second processing operation, the command generation generating at least one command as a function of an order in which the selected first cards and second cards are positioned.
11. Method for generating a second processing operation according to the preceding claim, in which the generation of second processing operations comprises multiple selections of first cards from among the set of first cards and, independently of the selections of first cards, multiple selections of second cards from among the set of second cards, a selection being a function of at least one selection instruction.
12. Method for generating a second processing operation according to either of Claims 11 and 12, in which the generation of second processing operations comprises scheduling of the selected first cards and second cards as a function of at least one scheduling instruction.
13. Method for generating a second processing operation according to either of Claims 12 and 13, in which the instruction is a function of an action from a user.
14. Method for generating a second processing operation according to any one of Claims 11 to 14, in which the generating method comprises displaying, by means of a user interface, a first region for displaying a portion of the independently selected first cards and second cards and a second region for displaying the rest of the independently selected first cards and second cards, the first display region being associated with a trigger and the second display region with a controller activated by the trigger.
15. Program comprising program code instructions for executing the steps of the method for generating second processing operations according to any one of Claims 10 to 14 when said program is executed by a processor.