[go: up one dir, main page]

WO2025017661A1 - System and method for creating a dynamic uniform resource locator (url) - Google Patents

System and method for creating a dynamic uniform resource locator (url) Download PDF

Info

Publication number
WO2025017661A1
WO2025017661A1 PCT/IN2024/051220 IN2024051220W WO2025017661A1 WO 2025017661 A1 WO2025017661 A1 WO 2025017661A1 IN 2024051220 W IN2024051220 W IN 2024051220W WO 2025017661 A1 WO2025017661 A1 WO 2025017661A1
Authority
WO
WIPO (PCT)
Prior art keywords
url
node
dynamic
request
creating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
PCT/IN2024/051220
Other languages
French (fr)
Inventor
Aayush Bhatnagar
Ankit Murarka
Rizwan Ahmad
Kapil Gill
Rahul Verma
Arpit Jain
Shashank Bhushan
Kamal Malik
Chaitanya V MALI
Supriya De
Kumar Debashish
Tilala Mehul
Kothagundla Vinay Kumar
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jio Platforms Ltd
Original Assignee
Jio Platforms Ltd
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 Jio Platforms Ltd filed Critical Jio Platforms Ltd
Publication of WO2025017661A1 publication Critical patent/WO2025017661A1/en
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams

Definitions

  • the present subject matter relates to the field of data communication in networks, and more particularly, the invention pertains to method and system for creating dynamic uniform resource locator (URL) context for an interface.
  • URL uniform resource locator
  • API context is the end point of the interface lands, where a request lands.
  • an end point of an API is: “https://10.32.123.234.8080/ createsubscriber,’ then the context of the API is createsubscriber. This context remains same for most APIs. However, if we have a requirement, that the context also changes. For example, if we need to create a subscriber for a mobile number, and the mobile number is required in the context itself, then the context changes as follows: https://10.32.123.234.8080/ createsubscriber/ 123456789 If the mobile number changes, then the context will again change. For effecting the change, we need to make changes in the code.
  • One or more embodiments of the present disclosure provide a system and method for creating a dynamic uniform resource locator (URL).
  • URL uniform resource locator
  • a system for creating a dynamic URL includes a first user interface for receiving a request from a first node.
  • the system further includes a workflow unit configured to obtain workflow details corresponding to the request.
  • the system further includes a URL creating unit for creating a dynamic uniform resource locator (URL) for said first node by adding an attribute to the URL based on a context of the request corresponding to the first node.
  • the system further includes a transmitting unit configured to transmit the dynamic URL to a second node via a second interface.
  • the system receives the workflow details from a distributed data base.
  • the system further comprises a dynamic activator configured to check the context for parameters needed in order to create the dynamic URL.
  • a method for creating a dynamic URL includes the step of receiving a request from a first node.
  • the method further includes obtaining workflow details corresponding to the request.
  • the method further includes executing the workflow for creating a dynamic uniform resource locator (URL) for said first node by adding an attribute to the URL based on a context of the request corresponding to the first node.
  • the method further includes transmitting the dynamic URL to a second node.
  • URL uniform resource locator
  • the step of receiving the request comprises receiving the request via a first interface corresponding to the first node.
  • the step of transmitting the dynamic URL comprises transmitting the dynamic URL on a second interface corresponding to the second node.
  • FIG. 1 illustrates an environment including a system for creating a dynamic Uniform Resource Locator (URL), according to one or more embodiments of the present disclosure
  • FIG. 2 illustrates a block diagram of the system for creating a dynamic URL, according to various embodiments of the present system
  • FIG. 3 illustrates a block diagram of the environment including the system for creating dynamic URLs, according to various embodiments of the present system
  • FIG. 4 illustrates a timing diagram showing steps performed for creating a dynamic URL, according to one or more embodiments of the present disclosure
  • FIG. 5 illustrates a flow chart of a method for creating a dynamic URLs, according to one or more embodiments of the present disclosure.
  • Various embodiments of the invention address the aforementioned challenges by providing a system and method for supporting creation of dynamic uniform resource locator (URL) context for an interface.
  • the system also knows as the fulfilment management system (FMS), can provide any attribute level information as part of the URL context to a southbound node.
  • FMS fulfilment management system
  • the FMS facilitates adding attributes to the context of an application programming interface (API) without making any code changes or integration.
  • API application programming interface
  • As addition of attributes is made configurable via a user interface of the FMS, a lot of development, integration efforts and time get reduced.
  • FIG. 1 illustrates an environment 100 including a system for creating a dynamic URL.
  • the environment 100 comprises a plurality of nodes 102-1, 102- 2, ,102-n. At least one of the plurality of nodes 102-1 through 102-n may be configured to connect to a server 105.
  • the plurality of nodes 102-1 through 102-n is referred as a node 102.
  • the node 102 may be a User Equipment (UE).
  • UE User Equipment
  • the second node 102-2 is a UE.
  • the node 102 may comprise a memory such as a volatile memory (e.g., RAM), a non-volatile memory (e.g., disk memory, FLASH memory, EPROMs, etc.), an unalterable memory, and/or other types of memory.
  • a volatile memory e.g., RAM
  • a non-volatile memory e.g., disk memory, FLASH memory, EPROMs, etc.
  • an unalterable memory e.g., RAM
  • the memory might be configured or designed to store data.
  • the node 102 may be configured to connect with the server 105 through a communication network 110 for enabling a recovery procedure.
  • the communication network 110 may use one or more communication interfaces/protocols such as, for example, VoIP, 802.11 (Wi-Fi), 802.15 (including BluetoothTM), 802.16 (Wi-Max), 802.22, Cellular standards such as CDMA, CDMA2000, WCDMA, Radio Frequency (e.g., RFID), Infrared, laser, Near Field Magnetics, etc.
  • VoIP Voice over IP
  • Wi-Fi Wi-Fi
  • 802.15 including BluetoothTM
  • 802.16 Wi-Max
  • 802.22 Cellular standards such as CDMA, CDMA2000, WCDMA, Radio Frequency (e.g., RFID), Infrared, laser, Near Field Magnetics, etc.
  • RFID Radio Frequency
  • the server 105 may include by way of example but not limitation, one or more of a standalone server, a server blade, a server rack, a bank of servers, a business telephony application server (BTAS), a server farm, hardware supporting a part of a cloud service or system, a home server, hardware running a virtualized server, one or more processors executing code to function as a server, one or more machines performing server-side functionality as described herein, at least a portion of any of the above, some combination thereof.
  • the entity may include, but is not limited to, a vendor, a network operator, a company, an organization, a university, a lab facility, a business enterprise, a defence facility, or any other facility that provides content.
  • the server 105 may be communicably connected to a system 125, via the communication network 110.
  • the system 125 may be configured to access services subscribed by enterprises, and additional services as mentioned above.
  • the system 125 is connected with a distributed data lake 150.
  • the distributed data lake 150 is a data repository providing storage and computing for structured and unstructured data, such as for machine learning, streaming, or data science.
  • the distributed data lake 150 allows users and/or organizations to ingest and manage large volumes of data in an aggregated storage solution for business intelligence or data products.
  • the distributed data lake 150 may be implemented and utilize different technologies. For example, in one implementation, Hadoop may be deployed with the Spark processing engine and HBase, a NoSQL database that runs on top of Hadoop Distributed File System (HDFS). In another implementation, Spark may be used against data stored in Amazon Simple Storage Service (S3).
  • HDFS Hadoop Distributed File System
  • S3 Amazon Simple Storage Service
  • the node 102 or wireless device may include, but are not limited to, a handheld wireless communication device (e.g., a mobile phone, a smart phone, a phablet device, and so on), a wearable computer device (e.g., a head-mounted display computer device, a head-mounted camera device, a wristwatch computer device, and so on), a Global Positioning System (GPS) device, a laptop computer, a tablet computer, or another type of portable computer, a media playing device, a portable gaming system, and/or any other type of computer device with wireless communication capabilities, and the like.
  • the node 102 may communicate with the system 125 via set of executable instructions residing on any operating system.
  • the node 102 may include, but are not limited to, any electrical, electronic, electro-mechanical or an equipment or a combination of one or more of the above devices such as virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general -purpose computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other computing device, wherein the computing device may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as camera, audio aid, a microphone, a keyboard, input devices for receiving input from a user such as touch pad, touch enabled screen, electronic pen and the like. It may be appreciated that the node 102 may not be restricted to the mentioned devices and various other devices may be used.
  • the communication network 110 includes, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet- switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof.
  • PSTN Public-Switched Telephone Network
  • the communication network 110 may include, but is not limited to, a Third Generation (3G), a Fourth Generation (4G), a Fifth Generation (5G), a Sixth Generation (6G), a New Radio (NR), a Narrow Band Internet of Things (NB-IoT), an Open Radio Access Network (O-RAN), and the like.
  • 3G Third Generation
  • 4G Fourth Generation
  • 5G Fifth Generation
  • 6G Sixth Generation
  • NR New Radio
  • NB-IoT Narrow Band Internet of Things
  • OF-RAN Open Radio Access Network
  • the communication network 110 may also include, by way of example but not limitation, at least a portion of one or more networks having one or more nodes that transmit, receive, forward, generate, buffer, store, route, switch, process, or a combination thereof, etc. one or more messages, packets, signals, waves, voltage or current levels, some combination thereof, or so forth.
  • the network may also include, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet- switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, a VOIP or some combination thereof.
  • PSTN Public-Switched Telephone Network
  • the system 125 (alternatively referred as a Fulfilment Management System (FMS) 125) is communicably coupled to the server 105 and each of the first node 102- 1, the second node 102-2, and the third node 102-n via the communication network 110.
  • FMS Fulfilment Management System
  • the system 125 is configured to create dynamic URL for the node 102.
  • the system 125 is adapted to be embedded within the server 105 or is embedded as an individual entity. However, for the purpose of description, the system 125 is described as an integral part of the server 105, without deviating from the scope of the present disclosure.
  • the system 125 may be generic in nature and may be integrated with any application including a System Management Facility (SMF), an Access and Mobility Management Function (AMF), a Business Telephony Application Server (BTAS), a Converged Telephony Application Server (CTAS), any SIP (Session Initiation Protocol) Application Server which interacts with core Internet Protocol Multimedia Subsystem (IMS) on Industrial Control System (ISC) interface as defined by Third Generation Partnership Project (3GPP) to host a wide array of cloud telephony enterprise services, a System Information Blocks (SIB)/ and a Mobility Management Entity (MME).
  • SIF System Management Facility
  • AMF Access and Mobility Management Function
  • BTAS Business Telephony Application Server
  • CAS Converged Telephony Application Server
  • IMS Internet Protocol Multimedia Subsystem
  • ISC Industrial Control System
  • 3GPP Third Generation Partnership Project
  • SIB System Information Blocks
  • MME Mobility Management Entity
  • Session Management Function is a control function that manages user sessions including establishment, modification and release of sessions, and allocates IP addresses for IP PDU sessions.
  • the SMF communicates indirectly with the UE through the AMF that relays session-related messages between the devices and the SMF.
  • Access and Mobility Management Function is a key component in 5G mobile networks, responsible for managing access to the network and handling mobility-related functions for user equipment (UE), such as smartphones, tablets, and loT devices.
  • AMF works closely with other network functions to facilitate seamless connectivity, mobility, and quality of service for mobile users.
  • BTAS Business Telephony Application Server
  • IVR interactive voice response
  • CTAS Converged Telephony Application Server
  • SIP (Session Initiation Protocol) application server is a server -based system that facilitates the establishment, management, and termination of communication sessions using the SIP protocol.
  • SIP application servers play a central role in IP -based telecommunications networks, enabling a wide range of real-time communication services, including voice calls, video calls, instant messaging, presence, and multimedia conferencing.
  • IMS Internet Protocol Multimedia Subsystem
  • Cloud telephony enterprise services refer to communication solutions delivered over the cloud that cater specifically to the needs of businesses and organizations. These services leverage cloud technology to provide scalable, flexible, and cost-effective communication solutions, including voice calls, messaging, collaboration tools, and contact center capabilities.
  • SIBs System Information Blocks
  • a base station eNodeB in LTE, NodeB in UMTS, or eNB in 5G
  • SIBs contain network-related information necessary for UEs to access and operate within the network efficiently. These blocks are periodically transmitted over broadcast channels, allowing UEs to receive and decode them even when they are not actively engaged in communication.
  • the Mobility Management Entity is a key network element responsible for managing mobility-related functions for user equipment (UE) or mobile devices.
  • the MME is part of the Evolved Packet Core (EPC) network in LTE and the 5G Core (5GC) network in 5G, serving as a control plane entity that handles signaling and control procedures for mobility management.
  • EPC Evolved Packet Core
  • 5GC 5G Core
  • FIG. 2 illustrates a block diagram of the system 125 for creating a dynamic URL, according to one or more embodiments of the present disclosure.
  • the system 125 includes one or more processors 205, a memory 210, and an input/output interface unit 215.
  • the one or more processors 205 hereinafter referred to as the processor 205, may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, single board computers, and/or any devices that manipulate signals based on operational instructions.
  • the system 125 includes the processor 205.
  • the system 125 may include multiple processors as per the requirement and without deviating from the scope of the present disclosure.
  • the processor 205 is configured to fetch and execute computer-readable instructions stored in the memory 210.
  • the memory 210 may be configured to store one or more computer-readable instructions or routines in a non- transitory computer-readable storage medium, which may be fetched and executed to create or share data packets over a network service.
  • the memory 210 may include any non-transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as EPROM, flash memory, and the like.
  • the input/output (I/O) interface unit 215 includes a variety of interfaces, for example, interfaces for data input and output devices, referred to as Input/Output (I/O) devices, storage devices, and the like.
  • the I/O interface unit 215 facilitates communication of the system 125.
  • the I/O interface unit 215 provides a communication pathway for one or more components of the system 125. Examples of such components include, but are not limited to, the node 102, a database 220, and a distributed cache 225.
  • the database 220 is one of, but is not limited to, a centralized database, a cloud-based database, a commercial database, an open-source database, a distributed database, an end-user database, a graphical database, a No-Structured Query Language (NoSQL) database, an object-oriented database, a personal database, an in-memory database, a document-based database, a time series database, a wide column database, a key value database, a search database, a cache database, and so forth.
  • NoStructured Query Language (NoSQL) database No-Structured Query Language
  • object-oriented database a personal database
  • an in-memory database a document-based database
  • a time series database a time series database
  • a wide column database a key value database
  • search database a cache database, and so forth.
  • the foregoing examples of the database 220 types are non-limiting and may not be mutually exclusive e.g.,
  • the distributed cache 225 is a pool of Random- Access Memory (RAM) of multiple networked computers into a single in-memory data store for use as a data cache to provide fast access to data.
  • RAM Random- Access Memory
  • the distributed cache 225 is essential for applications that need to scale across multiple servers or are distributed geographically.
  • the distributed cache 225 ensures that data is available close to where it’s needed, even if the original data source is remote or under heavy load.
  • the processor 205 may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processor 205.
  • programming for the processor 205 may be processor-executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processor 205 may comprise a processing resource (for example, one or more processors), to execute such instructions.
  • the memory 210 may store instructions that, when executed by the processing resource, implement the processor 205.
  • the system 125 may comprise the memory 210 storing the instructions and the processing resource to execute the instructions, or the memory 210 may be separate but accessible to the system 125 and the processing resource.
  • the processor 205 may be implemented by electronic circuitry.
  • the processor 205 includes a first user interface 230 communicably coupled to a first node 102. Although shown separately, it must be understood that the first user interface 230 may be a part of the input/output interface unit 215.
  • the first user interface 230 receives a request for creating a dynamic URL, from the first node 102. In one case, the request may be a provisioning order request.
  • the processor 205 further includes a workflow unit 235 communicably coupled to the first user interface 230 for obtaining workflow details corresponding to the request. The workflow details are received from the database 220 or distributed cache 225.
  • the processor 205 further includes a URL creating unit 240 communicably coupled to the workflow unit 235 for creating a dynamic uniform resource locator (URL) for said first node by adding an attribute to the URL based on a context of the request corresponding to the node 102.
  • the processor 205 further includes a transmitting unit 245 communicably coupled to the URL creating unit 240 for transmitting the dynamic URL to another node via a second interface.
  • the processor 205 further includes a dynamic activator 250 communicably coupled to the transmitting unit 245 for checking the context for parameters needed in order to create the dynamic URL.
  • FIG. 3 illustrating a block diagram of the environment 100 including the system 125 for creating dynamic URLs, a preferred embodiment of the system 125 is described.
  • the system 125 includes an operation and management module 302, a queuing engine 304 including a message broker 306, a graph database 220a, the workflow unit 235, an execution engine 308 including the dynamic activator 250, the first user interface 230, a dynamic routing manager 310, a Command Line Interface (CLI) 312, a distributed database 314 (similar to the database 220) including the distributed data lake 150, the distributed cache 225, and a load balancer 318.
  • a queuing engine 304 including a message broker 306, a graph database 220a, the workflow unit 235, an execution engine 308 including the dynamic activator 250, the first user interface 230, a dynamic routing manager 310, a Command Line Interface (CLI) 312, a distributed database 314 (similar to the database 220) including the distributed data lake 150, the distributed cache 225, and a load balancer 318.
  • CLI Command Line Interface
  • a user creates a workflow by accessing the the first user interface 230.
  • the workflow defines the content that is required to be sent in an Application Programming Interface (API) context along with an identity of a node to whom such content is required to be sent.
  • API Application Programming Interface
  • the user may define that context 1 is required to be sent to the first node 102-1 and context! is required to be sent to the second node 102- 2.
  • Workflow details are stored in the distributed data lake 150 and the distributed cache 225.
  • the workflow manager 118 receives an order
  • the workflow details are fetched and the dynamic activator 250 executes the order.
  • the dynamic activator 250 checks in the context which parameter needs to be sent. Based on the checking, the dynamic activator 250 adds identified parameters to a URL for creating a dynamic URL and sends the dynamic URL to respective node.
  • the FMS 125 may receive a request from a Northbound user interface (NB interface).
  • NB interface refers to an interface or communication channel through which a higher-level system or application communicates with a lower-level system or component.
  • the request may include an International Mobile Subscriber Identity (IMSI), for example “283839472932000”, where IMSI is part of the request, while execution of the FMS 125 sets the workflow.
  • IMSI International Mobile Subscriber Identity
  • the FMS 125 sends the request to a node 102.
  • the FMS 125 may use any attribute to send the NB interface to a southbound interface as a part of the request.
  • the request may include the IMSI in a particular format, such as http://ip.port/subscriber/[id]/[imsi]/event.
  • the node 102 may communicate a success code (for example 200 OK) to the FMS 125.
  • a success code for example 200 OK
  • FIG. 4 illustrates a timing diagram showing steps performed for creating a dynamic URL, according to one or more embodiments of the present disclosure. The steps have been described henceforth with reference to the communication occurring between a Northbound (NB) interface 402, the system/FMS 125, the distributed cache 225, and a node 102.
  • NB Northbound
  • the NB interface 402 sends a request to the FMS 125.
  • the request may be towards an order for International Mobile Subscriber Identity (IMSI) having a mobile number, for example 981XXX5678.
  • IMSI International Mobile Subscriber Identity
  • the FMS 125 retrieves workflow details present in the distributed cache 225.
  • the workflow defines the content that is required to be sent in an Application Programming Interface (API) context along with an identity of a node to whom such content is required to be sent.
  • API Application Programming Interface
  • the user may define that context 1 is required to be sent to the first node 102-1 and context! is required to be sent to the second node 102-2.
  • step 430 upon receiving the workflow details, the FMS 125 starts execution of the workflow.
  • the FMS 125 sends a request to the node 102 with the IMSI in the context of the API, for example as https://10.32.145.123.8080/subscriber/981XXX5678.
  • the workflow details fetched by the FMS 125 are used to instruct the dynamic activator 250 to execute the workflow.
  • a dynamic uniform resource locator URL is creating for by adding an attribute to the URL based on a context of the request corresponding to the node 102.
  • the attributes required to be sent in the context can be pre-configured.
  • the dynamic activator 250 sends the dynamic URL to the node 102.
  • FIG. 5 illustrates a flow chart of a method 500 of creating dynamic URLs, according to one or more embodiments of the present disclosure.
  • the method 500 is described with the embodiments as illustrated in FIGS. 1 and 4 and should nowhere be construed as limiting the scope of the present disclosure.
  • a person of ordinary skill in the art will readily ascertain that the illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
  • the method 500 includes the step of receiving a request for creating a dynamic URL, from a first node.
  • the method 500 includes the step of obtaining workflow details corresponding to the request.
  • the method 500 includes the step of executing the workflow for creating a dynamic uniform resource locator (URL) for said first node by adding an attribute to the URL based on a context of the request corresponding to the first node.
  • URL uniform resource locator
  • the method 500 includes the step of transmitting the dynamic URL to a second node.
  • the present invention further discloses a non-transitory computer-readable medium having stored thereon computer-readable instructions.
  • the computer- readable instructions are executed by the processor 205.
  • the processor 205 is configured to receive a request, from a first node, for creating a dynamic URL.
  • the processor 205 is further configured to obtain workflow details corresponding to the request.
  • the processor 205 is further configured to execute the workflow for creating a dynamic uniform resource locator (URL) for said first node by adding an attribute to the URL based on a context of the request corresponding to the first node.
  • the processor 205 is further configured to transmit the dynamic URL to a second node.
  • URL uniform resource locator
  • the present invention further discloses a User Equipment (UE) 102-2 comprising a processor coupled with a memory.
  • the memory stores instructions which when executed by the processor causes the UE 102-2 to provide a request for creating a dynamic URL, via a first user interface 230, to the system 125. Successively, the system 125 creates the dynamic URL in the manner described above.
  • UE User Equipment
  • the above described techniques (of creating dynamic URLs) of the present invention provide multiple advantages, including sending dynamic attributes at run time, a lot of development effort, integration time is saved. Further, the need to make code changes within the system for dynamic attribute updation within the context of the API is eliminated. Another advantage is the request and/or response can be dynamically framed along with the API context at runtime based on the request and/or response of previous nodes or previous API calls. The rules are not written in advance and are created and applied on the fly. Code level changes are not required for creation of such rules, and for applying the same while framing the request and/or the response.
  • the present invention offers multiple advantages over the prior art and the above listed are a few examples to emphasize on some of the advantageous features.
  • the listed advantages are to be read in a non-limiting manner.
  • a server may include or comprise, by way of example but not limitation, one or more of a standalone server, a server blade, a server rack, a bank of servers, a server farm, hardware supporting a part of a cloud service or system, a home server, hardware running a virtualized server, one or more processors executing code to function as a server, one or more machines performing server-side functionality as described herein, at least a portion of any of the above, some combination thereof.
  • the entity may include, but is not limited to, a vendor, a network operator, a company, an organization, a university, a lab facility, a business enterprise, a defence facility, or any other facility that provides content.
  • a network may include, by way of example but not limitation, at least a portion of one or more networks having one or more nodes that transmit, receive, forward, generate, buffer, store, route, switch, process, or a combination thereof, etc. one or more messages, packets, signals, waves, voltage or current levels, some combination thereof, or so forth.
  • the network may also include, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet-switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public- Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof.
  • PSTN Public- Switched Telephone Network
  • a wireless device or a user equipment may include, but are not limited to, a handheld wireless communication device (e.g., a mobile phone, a smart phone, a phablet device, and so on), a wearable computer device (e.g., a head-mounted display computer device, a head-mounted camera device, a wristwatch computer device, and so on), a Global Positioning System (GPS) device, a
  • a handheld wireless communication device e.g., a mobile phone, a smart phone, a phablet device, and so on
  • a wearable computer device e.g., a head-mounted display computer device, a head-mounted camera device, a wristwatch computer device, and so on
  • GPS Global Positioning System
  • the UEs may communicate with the system via set of executable instructions residing on any operating system.
  • the UEs may include, but are not limited to, any electrical, electronic, electro-mechanical or an equipment or a combination of one or more of the above devices such as virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other computing device, wherein the computing device may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as camera, audio aid, a microphone, a keyboard, input devices for receiving input from a user such as touch pad, touch enabled screen, electronic pen and the like. It may be appreciated that the UEs may not be restricted to the mentioned devices and various other devices may be used.
  • VR virtual reality
  • AR augmented reality
  • laptop a general-purpose computer
  • desktop personal digital assistant
  • tablet computer tablet computer
  • mainframe computer mainframe computer
  • the computing device may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as camera, audio aid, a
  • a system may include one or more processors coupled with a memory, wherein the memory may store instructions which when executed by the one or more processors may cause the system to perform offloading/onloading of broadcasting or multicasting content in networks.
  • the system may include one or more processor(s).
  • the one or more processor(s) may be implemented as one or more microprocessors, microcomputers, microcontrollers, edge or fog microcontrollers, digital signal processors, central processing units, logic circuitries, and/or any devices that process data based on operational instructions.
  • the one or more processor(s) may be configured to fetch and execute computer-readable instructions stored in a memory of the system.
  • the memory may be configured to store one or more computer-readable instructions or routines in a non- transitory computer readable storage medium, which may be fetched and executed to create or share data packets over a network service.
  • the memory may comprise any non-transitory storage device including, for example, volatile memory such as Random-Access Memory (RAM), or non-volatile memory such as Electrically Erasable Programmable Read-only Memory (EPROM), flash memory, and the like.
  • the system may include an interface(s).
  • the interface(s) may comprise a variety of interfaces, for example, interfaces for data input and output devices, referred to as input/output (I/O) devices, storage devices, and the like.
  • the interface(s) may facilitate communication for the system.
  • the interface(s) may also provide a communication pathway for one or more components of the system. Examples of such components include, but are not limited to, processing unit/engine(s) and a database.
  • the processing unit/engine(s) may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processing engine(s). In examples described herein, such combinations of hardware and programming may be implemented in several different ways.
  • the programming for the processing engine(s) may be processor executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processing engine(s) may comprise a processing resource (for example, one or more processors), to execute such instructions.
  • the machine-readable storage medium may store instructions that, when executed by the processing resource, implement the processing engine(s).
  • the system may include the machine -readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine- readable storage medium may be separate but accessible to the system and the processing resource.
  • the processing engine(s) may be implemented by electronic circuitry.
  • the database may comprise data that may be either stored or generated as a result of functionalities implemented by any of the components of the processor or the processing engines.
  • a computer system may include an external storage device, a bus, a main memory, a read-only memory, a mass storage device, communication port(s), and a processor.
  • the communication port(s) may be any of an RS-232 port for use with a modem-based dialup connection, a 10/100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports.
  • the communication port(s) may be chosen depending on a network, such a Local Area Network (LAN), Wide Area Network (WAN), or any network to which the computer system connects.
  • LAN Local Area Network
  • WAN Wide Area Network
  • the main memory may be random access memory (RAM), or any other dynamic storage device commonly known in the art.
  • the read-only memory may be any static storage device(s) including, but not limited to, a Programmable Read Only Memory (PROM) chips for storing static information e.g., start-up or basic input/output system (BIOS) instructions for the processor.
  • the mass storage device may be any current or future mass storage solution, which may be used to store information and/or instructions.
  • the bus communicatively couples the processor with the other memory, storage, and communication blocks.
  • the bus can be, e.g.
  • PCI Peripheral Component Interconnect
  • PCLX PCI Extended
  • SCSI Small Computer System Interface
  • USB universal serial bus
  • operator and administrative interfaces e.g. a display, keyboard, and a cursor control device, may also be coupled to the bus to support direct operator interaction with the computer system.
  • Other operator and administrative interfaces may be provided through network connections connected through the communication port(s).
  • One or more processors -205 are included in the central processing unit -204;

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

A system (125) and a method for creating dynamic URL is described The method comprises receiving a request from a first node (102-1). The method further comprises obtaining workflow details corresponding to the request. The method further comprises executing the workflow for creating a dynamic URL for said first node (102-1) by adding an attribute to the URL based on a context of the request corresponding to the first node (102-1). The method further comprises transmitting the dynamic URL to a second node (102-2).

Description

SYSTEM AND METHOD FOR CREATING A DYNAMIC UNIFORM
RESOURCE LOCATOR (URL)
FIELD OF THE INVENTION
[0001] The present subject matter relates to the field of data communication in networks, and more particularly, the invention pertains to method and system for creating dynamic uniform resource locator (URL) context for an interface.
BACKGROUND OF THE INVENTION
[0002] Most of the time the context of any API remains the same for any number of APIs. But in case the context of the API changes, we need to send dynamic attributes. When values of dynamic attributes change, such values are usually sent in the request body or header. API context is the end point of the interface lands, where a request lands.
[0003] For example, if an end point of an API is: “https://10.32.123.234.8080/ createsubscriber,’ then the context of the API is createsubscriber. This context remains same for most APIs. However, if we have a requirement, that the context also changes. For example, if we need to create a subscriber for a mobile number, and the mobile number is required in the context itself, then the context changes as follows: https://10.32.123.234.8080/ createsubscriber/ 123456789 If the mobile number changes, then the context will again change. For effecting the change, we need to make changes in the code.
[0004] There is a need to send dynamic attributes in the context of an application programming interface (API), without having to undergo any change in code. Hence, there is a need for a method and system that can facilitate changes in the dynamic attributes of an API.
[0005] Thus, there is a need for a solution which addresses the above mentioned shortcomings. SUMMARY OF THE INVENTION
[0006] One or more embodiments of the present disclosure provide a system and method for creating a dynamic uniform resource locator (URL).
[0007] In one aspect of the present invention, a system for creating a dynamic URL is disclosed. The system includes a first user interface for receiving a request from a first node. The system further includes a workflow unit configured to obtain workflow details corresponding to the request. The system further includes a URL creating unit for creating a dynamic uniform resource locator (URL) for said first node by adding an attribute to the URL based on a context of the request corresponding to the first node. The system further includes a transmitting unit configured to transmit the dynamic URL to a second node via a second interface.
[0008] In one aspect, the system receives the workflow details from a distributed data base. The system further comprises a dynamic activator configured to check the context for parameters needed in order to create the dynamic URL.
[0009] In another aspect of the present invention, a method for creating a dynamic URL is disclosed. The method includes the step of receiving a request from a first node. The method further includes obtaining workflow details corresponding to the request. The method further includes executing the workflow for creating a dynamic uniform resource locator (URL) for said first node by adding an attribute to the URL based on a context of the request corresponding to the first node. The method further includes transmitting the dynamic URL to a second node.
[0010] In one aspect, the step of receiving the request comprises receiving the request via a first interface corresponding to the first node. The step of transmitting the dynamic URL comprises transmitting the dynamic URL on a second interface corresponding to the second node.
[0011] Other features and aspects of this invention will be apparent from the following description and the accompanying drawings. The features and advantages described in this summary and in the following detailed description are not all- inclusive, and particularly, many additional features and advantages will be apparent to one of ordinary skill in the relevant art, in view of the drawings, specification, and claims hereof. Moreover, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes and may not have been selected to delineate or circumscribe the inventive subject matter, resort to the claims being necessary to determine such inventive subject matter.
BRIEF DESCRIPTION OF THE DRAWINGS
[0012] The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems in which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Some drawings may indicate the components using block diagrams and may not represent the internal circuitry of each component. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components, electronic components or circuitry commonly used to implement such components.
[0013] FIG. 1 illustrates an environment including a system for creating a dynamic Uniform Resource Locator (URL), according to one or more embodiments of the present disclosure;
[0014] FIG. 2 illustrates a block diagram of the system for creating a dynamic URL, according to various embodiments of the present system;
[0015] FIG. 3 illustrates a block diagram of the environment including the system for creating dynamic URLs, according to various embodiments of the present system;
[0016] FIG. 4 illustrates a timing diagram showing steps performed for creating a dynamic URL, according to one or more embodiments of the present disclosure; and [0017] FIG. 5 illustrates a flow chart of a method for creating a dynamic URLs, according to one or more embodiments of the present disclosure.
[0018] The foregoing shall be more apparent from the following detailed description of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[0019] Some embodiments of the present disclosure, illustrating all its features, will now be discussed in detail. It must also be noted that as used herein and in the appended claims, the singular forms "a", "an" and "the" include plural references unless the context clearly dictates otherwise.
[0020] Various modifications to the embodiment will be readily apparent to those skilled in the art and the generic principles herein may be applied to other embodiments. However, one of ordinary skill in the art will readily recognize that the present disclosure including the definitions listed here below are not intended to be limited to the embodiments illustrated but is to be accorded the widest scope consistent with the principles and features described herein.
[0021] A person of ordinary skill in the art will readily ascertain that the illustrated steps detailed in the figures and here below are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments. [0022] Various embodiments of the invention address the aforementioned challenges by providing a system and method for supporting creation of dynamic uniform resource locator (URL) context for an interface. The system also knows as the fulfilment management system (FMS), can provide any attribute level information as part of the URL context to a southbound node. The FMS facilitates adding attributes to the context of an application programming interface (API) without making any code changes or integration. As addition of attributes is made configurable via a user interface of the FMS, a lot of development, integration efforts and time get reduced.
[0023] FIG. 1 illustrates an environment 100 including a system for creating a dynamic URL. The environment 100 comprises a plurality of nodes 102-1, 102- 2, ,102-n. At least one of the plurality of nodes 102-1 through 102-n may be configured to connect to a server 105. For ease of disclosure, the plurality of nodes 102-1 through 102-n is referred as a node 102. In different implementations, the node 102 may be a User Equipment (UE). For example, the second node 102-2 is a UE.
[0024] The node 102 may comprise a memory such as a volatile memory (e.g., RAM), a non-volatile memory (e.g., disk memory, FLASH memory, EPROMs, etc.), an unalterable memory, and/or other types of memory. In one implementation, the memory might be configured or designed to store data. The node 102 may be configured to connect with the server 105 through a communication network 110 for enabling a recovery procedure. The communication network 110 may use one or more communication interfaces/protocols such as, for example, VoIP, 802.11 (Wi-Fi), 802.15 (including Bluetooth™), 802.16 (Wi-Max), 802.22, Cellular standards such as CDMA, CDMA2000, WCDMA, Radio Frequency (e.g., RFID), Infrared, laser, Near Field Magnetics, etc.
[0025] The server 105 may include by way of example but not limitation, one or more of a standalone server, a server blade, a server rack, a bank of servers, a business telephony application server (BTAS), a server farm, hardware supporting a part of a cloud service or system, a home server, hardware running a virtualized server, one or more processors executing code to function as a server, one or more machines performing server-side functionality as described herein, at least a portion of any of the above, some combination thereof. In an embodiment, the entity may include, but is not limited to, a vendor, a network operator, a company, an organization, a university, a lab facility, a business enterprise, a defence facility, or any other facility that provides content.
[0026] Further, the server 105 may be communicably connected to a system 125, via the communication network 110. The system 125 may be configured to access services subscribed by enterprises, and additional services as mentioned above.
[0027] The system 125 is connected with a distributed data lake 150. The distributed data lake 150 is a data repository providing storage and computing for structured and unstructured data, such as for machine learning, streaming, or data science. The distributed data lake 150 allows users and/or organizations to ingest and manage large volumes of data in an aggregated storage solution for business intelligence or data products. The distributed data lake 150 may be implemented and utilize different technologies. For example, in one implementation, Hadoop may be deployed with the Spark processing engine and HBase, a NoSQL database that runs on top of Hadoop Distributed File System (HDFS). In another implementation, Spark may be used against data stored in Amazon Simple Storage Service (S3).
[0028] The node 102 or wireless device may include, but are not limited to, a handheld wireless communication device (e.g., a mobile phone, a smart phone, a phablet device, and so on), a wearable computer device (e.g., a head-mounted display computer device, a head-mounted camera device, a wristwatch computer device, and so on), a Global Positioning System (GPS) device, a laptop computer, a tablet computer, or another type of portable computer, a media playing device, a portable gaming system, and/or any other type of computer device with wireless communication capabilities, and the like. In an embodiment, the node 102 may communicate with the system 125 via set of executable instructions residing on any operating system. In an embodiment, the node 102 may include, but are not limited to, any electrical, electronic, electro-mechanical or an equipment or a combination of one or more of the above devices such as virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general -purpose computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other computing device, wherein the computing device may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as camera, audio aid, a microphone, a keyboard, input devices for receiving input from a user such as touch pad, touch enabled screen, electronic pen and the like. It may be appreciated that the node 102 may not be restricted to the mentioned devices and various other devices may be used.
[0029] The communication network 110 includes, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet- switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof. The communication network 110 may include, but is not limited to, a Third Generation (3G), a Fourth Generation (4G), a Fifth Generation (5G), a Sixth Generation (6G), a New Radio (NR), a Narrow Band Internet of Things (NB-IoT), an Open Radio Access Network (O-RAN), and the like.
[0030] The communication network 110 may also include, by way of example but not limitation, at least a portion of one or more networks having one or more nodes that transmit, receive, forward, generate, buffer, store, route, switch, process, or a combination thereof, etc. one or more messages, packets, signals, waves, voltage or current levels, some combination thereof, or so forth. The network may also include, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet- switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, a VOIP or some combination thereof. [0031] The system 125 (alternatively referred as a Fulfilment Management System (FMS) 125) is communicably coupled to the server 105 and each of the first node 102- 1, the second node 102-2, and the third node 102-n via the communication network 110. The system 125 is configured to create dynamic URL for the node 102. The system 125 is adapted to be embedded within the server 105 or is embedded as an individual entity. However, for the purpose of description, the system 125 is described as an integral part of the server 105, without deviating from the scope of the present disclosure.
[0032] In various embodiments, the system 125 may be generic in nature and may be integrated with any application including a System Management Facility (SMF), an Access and Mobility Management Function (AMF), a Business Telephony Application Server (BTAS), a Converged Telephony Application Server (CTAS), any SIP (Session Initiation Protocol) Application Server which interacts with core Internet Protocol Multimedia Subsystem (IMS) on Industrial Control System (ISC) interface as defined by Third Generation Partnership Project (3GPP) to host a wide array of cloud telephony enterprise services, a System Information Blocks (SIB)/ and a Mobility Management Entity (MME).
[0033] Session Management Function (SMF) is a control function that manages user sessions including establishment, modification and release of sessions, and allocates IP addresses for IP PDU sessions. The SMF communicates indirectly with the UE through the AMF that relays session-related messages between the devices and the SMF.
[0034] Access and Mobility Management Function (AMF) is a key component in 5G mobile networks, responsible for managing access to the network and handling mobility-related functions for user equipment (UE), such as smartphones, tablets, and loT devices. AMF works closely with other network functions to facilitate seamless connectivity, mobility, and quality of service for mobile users.
[0035] Business Telephony Application Server (BTAS) is a server-based system that provides telephony services and applications for businesses. It serves as a central platform for managing and delivering various voice communication services, such as voice calls, voicemail, conferencing, and interactive voice response (IVR) systems.
[0036] Converged Telephony Application Server (CTAS) is a server-based system that integrates various telephony and communication services into a single platform, enabling businesses to streamline their communication infrastructure and offer a wide range of communication features. CTAS combines traditional telephony services with advanced IP-based communication capabilities to provide a unified and cohesive communication experience.
[0037] SIP (Session Initiation Protocol) application server is a server -based system that facilitates the establishment, management, and termination of communication sessions using the SIP protocol. SIP application servers play a central role in IP -based telecommunications networks, enabling a wide range of real-time communication services, including voice calls, video calls, instant messaging, presence, and multimedia conferencing.
[0038] Internet Protocol Multimedia Subsystem (IMS) is a standardized architecture that enables the delivery of multimedia communication services over IP networks, including voice, video, messaging, and presence services. IMS is designed to provide a framework for delivering real-time communication services in a flexible, scalable, and interoperable manner.
[0039] Cloud telephony enterprise services refer to communication solutions delivered over the cloud that cater specifically to the needs of businesses and organizations. These services leverage cloud technology to provide scalable, flexible, and cost-effective communication solutions, including voice calls, messaging, collaboration tools, and contact center capabilities.
[0040] System Information Blocks (SIBs) are messages broadcast by a base station (eNodeB in LTE, NodeB in UMTS, or eNB in 5G) to provide essential information to mobile devices (UEs) in a cellular network. SIBs contain network-related information necessary for UEs to access and operate within the network efficiently. These blocks are periodically transmitted over broadcast channels, allowing UEs to receive and decode them even when they are not actively engaged in communication.
[0041] In the context of mobile networks, specifically in the LTE (Long-Term Evolution) and 5G architectures, the Mobility Management Entity (MME) is a key network element responsible for managing mobility-related functions for user equipment (UE) or mobile devices. The MME is part of the Evolved Packet Core (EPC) network in LTE and the 5G Core (5GC) network in 5G, serving as a control plane entity that handles signaling and control procedures for mobility management.
[0042] Operational and construction features of the system 125 will be explained in detail successively with respect to different figures. FIG. 2 illustrates a block diagram of the system 125 for creating a dynamic URL, according to one or more embodiments of the present disclosure.
[0043] As per the illustrated embodiment, the system 125 includes one or more processors 205, a memory 210, and an input/output interface unit 215. The one or more processors 205, hereinafter referred to as the processor 205, may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, single board computers, and/or any devices that manipulate signals based on operational instructions. As per the illustrated embodiment, the system 125 includes the processor 205. However, it is to be noted that the system 125 may include multiple processors as per the requirement and without deviating from the scope of the present disclosure. Among other capabilities, the processor 205 is configured to fetch and execute computer-readable instructions stored in the memory 210. The memory 210 may be configured to store one or more computer-readable instructions or routines in a non- transitory computer-readable storage medium, which may be fetched and executed to create or share data packets over a network service. The memory 210 may include any non-transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as EPROM, flash memory, and the like. [0044] In an embodiment, the input/output (I/O) interface unit 215 includes a variety of interfaces, for example, interfaces for data input and output devices, referred to as Input/Output (I/O) devices, storage devices, and the like. The I/O interface unit 215 facilitates communication of the system 125. In one embodiment, the I/O interface unit 215 provides a communication pathway for one or more components of the system 125. Examples of such components include, but are not limited to, the node 102, a database 220, and a distributed cache 225.
[0045] The database 220 is one of, but is not limited to, a centralized database, a cloud-based database, a commercial database, an open-source database, a distributed database, an end-user database, a graphical database, a No-Structured Query Language (NoSQL) database, an object-oriented database, a personal database, an in-memory database, a document-based database, a time series database, a wide column database, a key value database, a search database, a cache database, and so forth. The foregoing examples of the database 220 types are non-limiting and may not be mutually exclusive e.g., a database can be both commercial and cloud-based, or both relational and open-source, etc.
[0046] The distributed cache 225 is a pool of Random- Access Memory (RAM) of multiple networked computers into a single in-memory data store for use as a data cache to provide fast access to data. The distributed cache 225 is essential for applications that need to scale across multiple servers or are distributed geographically. The distributed cache 225 ensures that data is available close to where it’s needed, even if the original data source is remote or under heavy load.
[0047] Further, the processor 205, in an embodiment, may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processor 205. In the examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processor 205 may be processor-executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processor 205 may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the memory 210 may store instructions that, when executed by the processing resource, implement the processor 205. In such examples, the system 125 may comprise the memory 210 storing the instructions and the processing resource to execute the instructions, or the memory 210 may be separate but accessible to the system 125 and the processing resource. In other examples, the processor 205 may be implemented by electronic circuitry.
For the system 125 to create a dynamic URL, the processor 205 includes a first user interface 230 communicably coupled to a first node 102. Although shown separately, it must be understood that the first user interface 230 may be a part of the input/output interface unit 215. The first user interface 230 receives a request for creating a dynamic URL, from the first node 102. In one case, the request may be a provisioning order request. The processor 205 further includes a workflow unit 235 communicably coupled to the first user interface 230 for obtaining workflow details corresponding to the request. The workflow details are received from the database 220 or distributed cache 225. The processor 205 further includes a URL creating unit 240 communicably coupled to the workflow unit 235 for creating a dynamic uniform resource locator (URL) for said first node by adding an attribute to the URL based on a context of the request corresponding to the node 102. The processor 205 further includes a transmitting unit 245 communicably coupled to the URL creating unit 240 for transmitting the dynamic URL to another node via a second interface. The processor 205 further includes a dynamic activator 250 communicably coupled to the transmitting unit 245 for checking the context for parameters needed in order to create the dynamic URL.
[0048] Referring to FIG. 3 illustrating a block diagram of the environment 100 including the system 125 for creating dynamic URLs, a preferred embodiment of the system 125 is described.
[0049] The system 125 includes an operation and management module 302, a queuing engine 304 including a message broker 306, a graph database 220a, the workflow unit 235, an execution engine 308 including the dynamic activator 250, the first user interface 230, a dynamic routing manager 310, a Command Line Interface (CLI) 312, a distributed database 314 (similar to the database 220) including the distributed data lake 150, the distributed cache 225, and a load balancer 318.
[0050] A user creates a workflow by accessing the the first user interface 230. The workflow defines the content that is required to be sent in an Application Programming Interface (API) context along with an identity of a node to whom such content is required to be sent. For example, the user may define that context 1 is required to be sent to the first node 102-1 and context! is required to be sent to the second node 102- 2. Workflow details are stored in the distributed data lake 150 and the distributed cache 225.
[0051] Successfully, when the workflow manager 118 receives an order, the workflow details are fetched and the dynamic activator 250 executes the order. To execute the order, the dynamic activator 250 checks in the context which parameter needs to be sent. Based on the checking, the dynamic activator 250 adds identified parameters to a URL for creating a dynamic URL and sends the dynamic URL to respective node.
[0052] In one implementation, the FMS 125 may receive a request from a Northbound user interface (NB interface). The NB interface refers to an interface or communication channel through which a higher-level system or application communicates with a lower-level system or component. The request may include an International Mobile Subscriber Identity (IMSI), for example “283839472932000”, where IMSI is part of the request, while execution of the FMS 125 sets the workflow. [0053] Successively, the FMS 125 sends the request to a node 102. The FMS 125 may use any attribute to send the NB interface to a southbound interface as a part of the request. In an example, the request may include the IMSI in a particular format, such as http://ip.port/subscriber/[id]/[imsi]/event. In case the process occurs successfully, the node 102 may communicate a success code (for example 200 OK) to the FMS 125. [0054] A detailed explanation of the workflow is provided successively with reference to FIG. 4 and FIG. 5.
[0055] FIG. 4 illustrates a timing diagram showing steps performed for creating a dynamic URL, according to one or more embodiments of the present disclosure. The steps have been described henceforth with reference to the communication occurring between a Northbound (NB) interface 402, the system/FMS 125, the distributed cache 225, and a node 102.
[0056] At step 410, the NB interface 402 sends a request to the FMS 125. In an example, the request may be towards an order for International Mobile Subscriber Identity (IMSI) having a mobile number, for example 981XXX5678.
[0057] At step 420, the FMS 125 retrieves workflow details present in the distributed cache 225. The workflow defines the content that is required to be sent in an Application Programming Interface (API) context along with an identity of a node to whom such content is required to be sent. For example, the user may define that context 1 is required to be sent to the first node 102-1 and context! is required to be sent to the second node 102-2.
[0058] At step 430, upon receiving the workflow details, the FMS 125 starts execution of the workflow.
[0059] At step 440, the FMS 125 sends a request to the node 102 with the IMSI in the context of the API, for example as https://10.32.145.123.8080/subscriber/981XXX5678. Typically, the workflow details fetched by the FMS 125 are used to instruct the dynamic activator 250 to execute the workflow. By executing the workflow, a dynamic uniform resource locator (URL) is creating for by adding an attribute to the URL based on a context of the request corresponding to the node 102. The attributes required to be sent in the context, can be pre-configured. The dynamic activator 250 sends the dynamic URL to the node 102.
[0060] FIG. 5 illustrates a flow chart of a method 500 of creating dynamic URLs, according to one or more embodiments of the present disclosure. For the purpose of description, the method 500 is described with the embodiments as illustrated in FIGS. 1 and 4 and should nowhere be construed as limiting the scope of the present disclosure. A person of ordinary skill in the art will readily ascertain that the illustrated steps are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
[0061] At step 505, the method 500 includes the step of receiving a request for creating a dynamic URL, from a first node.
[0062] At step 510, the method 500 includes the step of obtaining workflow details corresponding to the request.
[0063] At step 515, the method 500 includes the step of executing the workflow for creating a dynamic uniform resource locator (URL) for said first node by adding an attribute to the URL based on a context of the request corresponding to the first node.
[0064] At step 520, the method 500 includes the step of transmitting the dynamic URL to a second node.
[0065] The present invention further discloses a non-transitory computer-readable medium having stored thereon computer-readable instructions. The computer- readable instructions are executed by the processor 205. The processor 205 is configured to receive a request, from a first node, for creating a dynamic URL. The processor 205 is further configured to obtain workflow details corresponding to the request. The processor 205 is further configured to execute the workflow for creating a dynamic uniform resource locator (URL) for said first node by adding an attribute to the URL based on a context of the request corresponding to the first node. The processor 205 is further configured to transmit the dynamic URL to a second node.
[0066] The present invention further discloses a User Equipment (UE) 102-2 comprising a processor coupled with a memory. The memory stores instructions which when executed by the processor causes the UE 102-2 to provide a request for creating a dynamic URL, via a first user interface 230, to the system 125. Successively, the system 125 creates the dynamic URL in the manner described above.
[0067] A person of ordinary skill in the art will readily ascertain that the illustrated embodiments and steps in description and drawings (FIGS.1-5) are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
[0068] The above described techniques (of creating dynamic URLs) of the present invention provide multiple advantages, including sending dynamic attributes at run time, a lot of development effort, integration time is saved. Further, the need to make code changes within the system for dynamic attribute updation within the context of the API is eliminated. Another advantage is the request and/or response can be dynamically framed along with the API context at runtime based on the request and/or response of previous nodes or previous API calls. The rules are not written in advance and are created and applied on the fly. Code level changes are not required for creation of such rules, and for applying the same while framing the request and/or the response.
[0069] The present invention offers multiple advantages over the prior art and the above listed are a few examples to emphasize on some of the advantageous features. The listed advantages are to be read in a non-limiting manner.
[0070] Server: A server may include or comprise, by way of example but not limitation, one or more of a standalone server, a server blade, a server rack, a bank of servers, a server farm, hardware supporting a part of a cloud service or system, a home server, hardware running a virtualized server, one or more processors executing code to function as a server, one or more machines performing server-side functionality as described herein, at least a portion of any of the above, some combination thereof. In an embodiment, the entity may include, but is not limited to, a vendor, a network operator, a company, an organization, a university, a lab facility, a business enterprise, a defence facility, or any other facility that provides content.
[0071] Network: A network may include, by way of example but not limitation, at least a portion of one or more networks having one or more nodes that transmit, receive, forward, generate, buffer, store, route, switch, process, or a combination thereof, etc. one or more messages, packets, signals, waves, voltage or current levels, some combination thereof, or so forth. The network may also include, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet-switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public- Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof.
[0072] UE/ Wireless Device: A wireless device or a user equipment (UE) may include, but are not limited to, a handheld wireless communication device (e.g., a mobile phone, a smart phone, a phablet device, and so on), a wearable computer device (e.g., a head-mounted display computer device, a head-mounted camera device, a wristwatch computer device, and so on), a Global Positioning System (GPS) device, a
Y1 laptop computer, a tablet computer, or another type of portable computer, a media playing device, a portable gaming system, and/or any other type of computer device with wireless communication capabilities, and the like. In an embodiment, the UEs may communicate with the system via set of executable instructions residing on any operating system. In an embodiment, the UEs may include, but are not limited to, any electrical, electronic, electro-mechanical or an equipment or a combination of one or more of the above devices such as virtual reality (VR) devices, augmented reality (AR) devices, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other computing device, wherein the computing device may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as camera, audio aid, a microphone, a keyboard, input devices for receiving input from a user such as touch pad, touch enabled screen, electronic pen and the like. It may be appreciated that the UEs may not be restricted to the mentioned devices and various other devices may be used.
[0073] System (for example, computing system): A system may include one or more processors coupled with a memory, wherein the memory may store instructions which when executed by the one or more processors may cause the system to perform offloading/onloading of broadcasting or multicasting content in networks. An exemplary representation of the system for such purpose, in accordance with embodiments of the present disclosure. In an embodiment, the system may include one or more processor(s). The one or more processor(s) may be implemented as one or more microprocessors, microcomputers, microcontrollers, edge or fog microcontrollers, digital signal processors, central processing units, logic circuitries, and/or any devices that process data based on operational instructions. Among other capabilities, the one or more processor(s) may be configured to fetch and execute computer-readable instructions stored in a memory of the system. The memory may be configured to store one or more computer-readable instructions or routines in a non- transitory computer readable storage medium, which may be fetched and executed to create or share data packets over a network service. The memory may comprise any non-transitory storage device including, for example, volatile memory such as Random-Access Memory (RAM), or non-volatile memory such as Electrically Erasable Programmable Read-only Memory (EPROM), flash memory, and the like. In an embodiment, the system may include an interface(s). The interface(s) may comprise a variety of interfaces, for example, interfaces for data input and output devices, referred to as input/output (I/O) devices, storage devices, and the like. The interface(s) may facilitate communication for the system. The interface(s) may also provide a communication pathway for one or more components of the system. Examples of such components include, but are not limited to, processing unit/engine(s) and a database. The processing unit/engine(s) may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processing engine(s). In examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the programming for the processing engine(s) may be processor executable instructions stored on a non-transitory machine-readable storage medium and the hardware for the processing engine(s) may comprise a processing resource (for example, one or more processors), to execute such instructions. In the present examples, the machine-readable storage medium may store instructions that, when executed by the processing resource, implement the processing engine(s). In such examples, the system may include the machine -readable storage medium storing the instructions and the processing resource to execute the instructions, or the machine- readable storage medium may be separate but accessible to the system and the processing resource. In other examples, the processing engine(s) may be implemented by electronic circuitry. In an aspect, the database may comprise data that may be either stored or generated as a result of functionalities implemented by any of the components of the processor or the processing engines.
[0074] Computer System: A computer system may include an external storage device, a bus, a main memory, a read-only memory, a mass storage device, communication port(s), and a processor. A person skilled in the art will appreciate that the computer system may include more than one processor and communication ports. The communication port(s) may be any of an RS-232 port for use with a modem-based dialup connection, a 10/100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports. The communication port(s) may be chosen depending on a network, such a Local Area Network (LAN), Wide Area Network (WAN), or any network to which the computer system connects. The main memory may be random access memory (RAM), or any other dynamic storage device commonly known in the art. The read-only memory may be any static storage device(s) including, but not limited to, a Programmable Read Only Memory (PROM) chips for storing static information e.g., start-up or basic input/output system (BIOS) instructions for the processor. The mass storage device may be any current or future mass storage solution, which may be used to store information and/or instructions. The bus communicatively couples the processor with the other memory, storage, and communication blocks. The bus can be, e.g. a Peripheral Component Interconnect (PCI) / PCI Extended (PCLX) bus, Small Computer System Interface (SCSI), universal serial bus (USB), or the like, for connecting expansion cards, drives, and other subsystems as well as other buses, such a front side bus (FSB), which connects the processor to the computer system. Optionally, operator and administrative interfaces, e.g. a display, keyboard, and a cursor control device, may also be coupled to the bus to support direct operator interaction with the computer system. Other operator and administrative interfaces may be provided through network connections connected through the communication port(s). In no way should the aforementioned exemplary computer system limit the scope of the present disclosure.
REFERENCE NUMERALS
[0075] Environment - 100;
[0076] Node - 102;
[0077] User Equipment - 102-2;
[0078] Server - 105; [0079] Communication network - 110;
[0080] FMS/System - 125;
[0081] Distributed data lake - 150;
[0082] One or more processors -205;
[0083] Memory - 210;
[0084] Input/output interface unit - 215;
[0085] Database - 220;
[0086] Graph database - 220a;
[0087] Distributed cache - 225;
[0088] First user interface - 230;
[0089] Workflow unit - 235;
[0090] URL Creating unit- 240;
[0091] Transmitting unit- 245;
[0092] Dynamic activator - 250;
[0093] Operation and management module - 302;
[0094] Queuing engine - 304;
[0095] Message broker - 306;
[0096] Execution engine - 308;
[0097] Dynamic routing manager - 310;
[0098] Command Line Interface - 312;
[0099] Distributed database - 314;
[00100] Load balancer - 318; and
[00101] Northbound (NB) interface - 402.

Claims

We Claim:
1. A method of creating a dynamic uniform resource locator (URL), the method comprising the steps of: receiving, by a processor (205), a request, from a first node (102-1), for creating the dynamic URL; obtaining, by the processor (205), workflow details corresponding to the request; executing, by the processor (205), the workflow for creating a dynamic uniform resource locator (URL) for said first node (102-1) by adding an attribute to the URL based on a context of the request corresponding to the first node (102-1); and transmitting, by the processor (205), the dynamic URL to a second node (102- 2).
2. The method as claimed in claim 1 , the step of receiving the request comprising receiving the request via a first user interface (230) corresponding to the first node (102-1).
3. The method as claimed in claim 1 , the step of transmitting the dynamic URL comprises transmitting the dynamic URL on a second interface corresponding to the second node (102-2).
4. A system (125) for creating a dynamic uniform resource locator (URL), the system (125) comprising: a first user interface (230) for receiving a request from a first node (102-1); a workflow unit (235) configured to obtain workflow details corresponding to the request; a URL creating unit (240) for creating a dynamic uniform resource locator (URL) for said first node (102-1) by adding an attribute to the URL based on a context of the request corresponding to the first node (102-1); and a transmitting unit (245) configured to transmit the dynamic URL to a second node (102-2) via a second interface.
5. The system (125) as claimed in claim 4, wherein the system (125) receives the workflow details from a distributed database (314).
6. The system as claimed in claim 4, comprises a dynamic activator (250) configured to check the context for parameters needed in order to create the dynamic URL.
7. A non-transitory computer-readable medium having stored thereon computer- readable instructions that, when executed by a processor (205), causes the processor (205) to: receive a request from a first node (102-1); obtain workflow details corresponding to the request; execute the workflow for creating a dynamic uniform resource locator (URL) for said first node (102-1) by adding an attribute to the URL based on a context of the request corresponding to the first node (102-1); transmit the dynamic URL to a second node (102-2).
8. A User Equipment (UE) (102-2) comprising: a processor coupled with a memory, wherein said memory stores instructions which when executed by the processor causes the UE (102-2) to: provide a request for creating a dynamic URL, wherein the processor is configured to perform the steps as claimed in claim 1.
PCT/IN2024/051220 2023-07-14 2024-07-13 System and method for creating a dynamic uniform resource locator (url) Pending WO2025017661A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN202321047708 2023-07-14
IN202321047708 2023-07-14

Publications (1)

Publication Number Publication Date
WO2025017661A1 true WO2025017661A1 (en) 2025-01-23

Family

ID=94281545

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IN2024/051220 Pending WO2025017661A1 (en) 2023-07-14 2024-07-13 System and method for creating a dynamic uniform resource locator (url)

Country Status (1)

Country Link
WO (1) WO2025017661A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013098830A1 (en) * 2011-12-30 2013-07-04 Yogesh Chunical Rathod A system and method for dynamic, portable, customize, contextual, unified and integrated network(s).
US20180365034A1 (en) * 2017-06-19 2018-12-20 The Narrativ Company, Inc. Generating dynamic links for network-accessible content

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013098830A1 (en) * 2011-12-30 2013-07-04 Yogesh Chunical Rathod A system and method for dynamic, portable, customize, contextual, unified and integrated network(s).
US20180365034A1 (en) * 2017-06-19 2018-12-20 The Narrativ Company, Inc. Generating dynamic links for network-accessible content

Similar Documents

Publication Publication Date Title
US12250251B2 (en) In-line, in-call AI virtual assistant for teleconferencing
US10044597B2 (en) System and method for processing service requests using logical environments
US11379446B1 (en) Session-based data storage for chat-based communication sessions
US11763097B1 (en) Intelligent dialogue recovery for virtual assistant communication sessions
US12170741B2 (en) Authenticating a call recording using audio watermarks
US20240195776A1 (en) Capturing and utilizing context data in cross-channel conversation service application communication sessions
EP2974159B1 (en) Method, device and system for voice communication
US20250202880A1 (en) Call Recording Authentication Using A Transaction Identifier Stored In A Record Within A Distributed Transaction Ledger
US9516153B2 (en) Method and system for telecommunication session output integration
WO2025017661A1 (en) System and method for creating a dynamic uniform resource locator (url)
US12424198B2 (en) Word replacement during poor network connectivity or network congestion
US12388888B2 (en) Packet replacement during poor network connectivity or network congestion
US20250070995A1 (en) Systems and methods for efficient duplication and transmission of live audio data
WO2025017666A1 (en) Method and system for managing conference calls
US12363058B2 (en) Message capture in a multi channel communication environment
US20230344893A1 (en) Third Party Application Control Of A Client
US20250126348A1 (en) Generating An Image In A Video Conference
US20250126225A1 (en) Identifying A Video Frame For An Image In A Video Conference
WO2025013005A1 (en) System and method for ticket management of planned events in a network
WO2025094201A2 (en) System and method for managing service requests in a network
WO2025013013A1 (en) Method and system for handling short message service (sms)
WO2025008967A1 (en) System and method for handling a call request
WO2025052423A1 (en) System and method for managing processing of requests in a network environment
WO2025008946A1 (en) A system and method for network initiated de-registration process for a user equipment to enable recovery procedure
WO2025013004A1 (en) System and method for automated inter intra node domain alarm correlation

Legal Events

Date Code Title Description
DPE2 Request for preliminary examination filed before expiration of 19th month from priority date (pct application filed from 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 24842652

Country of ref document: EP

Kind code of ref document: A1