systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices. The systems and methods employ at least one decentralized revision control system as a data repository for storing data, such as configuration data, and at least one data provisioning component as an interface for accessing the configuration data stored in the data repository. By employing the decentralized revision control system in conjunction with the data provisioning component, the systems and methods can provide a data storage and runtime configuration provisioning framework that is data agnostic, application agnostic, and user agnostic, while further providing at least the capability of tracking and maintaining the version history of the configuration data.
|
1. A system for provisioning data storage and runtime configuration in a telecommunications system or device, comprising:
a telecommunications platform including a decentralized revision control system, a data provisioning component communicably connected to the decentralized revision control system, and a client-server interface communicably connected to the data provisioning component, the client-server interface being communicably connectable to a user device,
wherein the decentralized revision control system includes a data repository operative to store, as one or more data objects, at least configuration data including real-time configuration data for the telecommunications system or device,
wherein the data provisioning component is operative to receive, from the user device via the client-server interface, at least one subscription message for subscribing to at least one of the data objects in the data repository of the decentralized revision control system, and
wherein the data provisioning component is further operative without being dependent upon network access:
to determine whether at least one characteristic of the at least one subscribed data object in the data repository of the decentralized revision control system has changed;
having determined that at least one characteristic of the at least one subscribed data object has changed, to generate at least one notification of the at least one changed characteristic of the at least one subscribed data object; and
to send the at least one notification of the at least one changed characteristic of the at least one subscribed data object to the client-user interface for notifying a user at the user device.
5. A method of provisioning data storage and runtime configuration in a telecommunications system or device, comprising:
providing a telecommunications platform including a decentralized revision control system, a data provisioning component communicably connected to the decentralized revision control system, and a client-server interface communicably connected to the data provisioning component, the decentralized revision control system including a data repository, the client-server interface being communicably connectable to a user device;
storing at least configuration data including real-time configuration data for the telecommunications system or device as one or more data objects in the data repository of the decentralized revision control system;
receiving, at the data provisioning component from the user device via the client-server interface, at least one subscription message for subscribing to at least one of the data objects in the data repository of the decentralized revision control system;
in a determining step, determining, by the data provisioning component, whether at least one characteristic of the at least one subscribed data object in the data repository of the decentralized revision control system has changed;
having determined that at least one characteristic of the at least one subscribed data object has changed, generating, by the data provisioning component, at least one notification of the at least one changed characteristic of the at least one subscribed data object; and
sending, by the data provisioning component, the at least one notification of the at least one changed characteristic of the at least one subscribed data object to the client-user interface for notifying a user at the user device,
wherein the determining step, the generating of the at least one notification, and the sending of the at least one notification are performed without being dependent upon network access.
2. The system of
3. The system of
one or more application program components, at least one of the application program components being operative to register, with the data provisioning component, at least one application entity that requires access to the data objects stored in the data repository of the decentralized revision control system.
4. The system of
6. The method of
registering, by one or more application program components with the data provisioning component, at least one application entity that requires access to the data objects stored in the data repository of the decentralized revision control system.
7. The method of
|
Not applicable
Not applicable
The present application relates generally to telecommunications systems and devices, and more specifically to systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices.
Telecommunications systems and devices, such as access systems, network management systems, media switching centers, cross-connects, session border controllers, etc., can be adapted via configuration data to provide specific functionality for a target application. Based on such configuration data, control software within the telecommunications systems and devices can control the respective systems and devices to satisfy the requirements of the target application. For example, such configuration data can be specified for a session border controller to satisfy the requirements of access and interconnect applications within mobile and/or fixed voice-over-Internet protocol (such voice-over-Internet protocol is also referred to herein as “VoIP”) networks. By adapting the session border controller using such configuration data, the session border controller can be effectively controlled to provide security for the interconnect and access network infrastructure, thereby assuring that VoIP services are made continuously available while maintaining a high level of system performance.
In typical telecommunications systems and devices, large amounts of complex configuration data must generally be stored and managed. Further, within a typical target application, such configuration data generally has to be accessed in a controlled manner, and the history of any changes made to the configuration data has to be tracked and maintained. Moreover, users of such telecommunications systems and devices generally require the capabilities of rolling back such changes to the configuration data, as required and/or as desired, and successfully synchronizing the configuration data across other telecommunications systems and/or devices over a network. However, prior attempts to provide such functionality in telecommunications systems and devices have generally not been suited for use in real-time applications that require fast, dynamic access to configuration data.
It would therefore be desirable to have improved systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices that better address the issues relating to the storage and management of data, such as configuration data, in real-time applications.
In accordance with the present application, improved systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices are disclosed. The presently disclosed systems and methods employ at least one decentralized revision control system as a data repository for storing data, such as configuration data, and at least one data provisioning component as an interface for accessing the configuration data stored in the data repository. By employing the decentralized revision control system in conjunction with the data provisioning component, the presently disclosed systems and methods can beneficially provide a data storage and runtime configuration provisioning framework that is data agnostic, application agnostic, and user agnostic, while further providing at least the capability of tracking and maintaining the version history of the configuration data.
In accordance with a first aspect, an exemplary system for provisioning data storage and runtime configuration in telecommunications systems and devices (such an exemplary system is also referred to herein as a/the “data provisioning and runtime configuration system”) includes the decentralized revision control system, and one or more functional components including at least the data provisioning component. For example, the decentralized revision control system can be implemented using the Git revision control system, or any other suitable decentralized revision control system. The functional components can further include a view manager component, as well as one or more predetermined application program components in support of the functionality provided by the data provisioning and runtime configuration system. In accordance with a first exemplary aspect, a user can access the data provisioning and runtime configuration system over a network via any suitable client, including, but not limited to, a web client, which is communicably coupleable to the view manager component via a network connection. The view manager component can be implemented as any suitable server interface, including, but not limited to, a web server interface, for providing an overall view of the current state of the system configuration. Using the web client, the user can access the view manager component over the network via a web browser, which is communicably coupleable to the web server interface of the view manager component via the network connection. The view manager component is communicably coupled to the data provisioning component, which, in turn, is communicably coupled to the decentralized revision control system. In further accordance with the first exemplary aspect, data, such as configuration data, including but not limited to real-time data, can be stored in the data repository of the decentralized revision control system as objects (such objects are also referred to herein as “data objects”). Using the web browser, the user can communicate with the view manager component over the network connection to request access to, additions to, updates to, and/or deletions of specific data objects stored in the data repository. The view manager component is operative to communicate with the data provisioning component to implement such access to, additions to, updates to, and/or deletions of such data objects, as requested by the user. In accordance with a second exemplary aspect, the data provisioning component is operative to send commands, e.g., system calls, to the data repository over a source code management (SCM) interface of the decentralized revision control system, thereby implementing the requested access to, additions to, updates to, and/or deletions of such data objects stored in the data repository. In further accordance with the second exemplary aspect, the user can communicate with the data provisioning component to subscribe, via at least one subscription message, to specific data objects stored in the data repository, e.g., for the purpose of being notified whenever certain characteristics of such data objects change, as determined by the data provisioning component. In the event the data provisioning component determines that such certain characteristics of the data objects have, in fact, changed, the data provisioning component can notify the subscribing user of the change(s). In accordance with a third exemplary aspect, one or more of the predetermined application program components can register, with the data provisioning component, one or more application entities that may require access to the data objects stored in the data repository. The registered application entities are each operative to communicate with the data provisioning component to request access to specific data objects stored in the data repository. Further, the data provisioning component is operative to implement such access to such data objects, as requested by the respective application entities. The registered application entities are each further operative to communicate with the data provisioning component to subscribe to specific data objects, e.g., for the purpose of being notified whenever certain characteristics of such data objects change, as determined by the data provisioning component. In the event the data provisioning component determines that such certain characteristics of the data objects have, in fact, changed, the data provisioning component notifies the respective application entities, as appropriate.
In accordance with a second aspect, two or more data provisioning and runtime configuration systems can be implemented as peer systems. Each of the peer systems can include a respective decentralized revision control system, and a respective data provisioning component. Each of the peer systems can further include a view manager component, as well as one or more predetermined application program components. The decentralized revision control systems, the data provisioning components, the view manager component(s), and the predetermined application program component(s) included in the respective peer systems are each configured to operate as described above with reference to the first aspect of the data provisioning and runtime configuration system. The data provisioning components included in the respective peer systems are further operative to communicate with one another over at least one messaging interface via a first network connection. Moreover, the decentralized revision control systems included in the respective peer systems are further operative to communicate with one another via a second network connection, in accordance with a predetermined version control communication protocol. In the event one of the data provisioning components included in the respective peer systems determines that certain characteristics of specific data objects stored in the data repository of the decentralized revision control system coupled thereto have changed, the data provisioning component can send, over the messaging interface via the first network connection, a notification of the changes to the data provisioning component included in the other peer system. Further, the data provisioning components included in the peer systems can send commands, e.g., system calls, to the respective decentralized revision control systems coupled thereto, thereby causing the respective decentralized revision control systems to synchronize the changes to the data objects stored therein via the second network connection, in accordance with the predetermined version control communication protocol.
By employing the decentralized revision control system in conjunction with the data provisioning component, the data provisioning and runtime configuration system can beneficially provide a data storage and runtime configuration provisioning framework that is data agnostic, application agnostic, and user agnostic, while further providing at least the capability of tracking and maintaining the version history of data, such as configuration data, including but not limited to real-time data. Further, by implementing two or more such data provisioning and runtime configuration systems as peer systems, any changes to the data objects stored in the data repositories of the respective peer systems can be beneficially synchronized using a predetermined version control communication protocol, thereby assuring that none of the data are lost in the event of a failover.
Other features, functions, and aspects of the invention will be evident from the Drawings and/or the Detailed Description of the Invention that follow.
The invention will be more fully understood with reference to the following Detailed
Description of the Invention in conjunction with the drawings of which:
Systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices are disclosed. The presently disclosed systems and methods employ at least one decentralized revision control system as a data repository for storing data, such as configuration data, and at least one data provisioning component as an interface for accessing the configuration data stored in the data repository. By employing the decentralized revision control system in conjunction with the data provisioning component, the presently disclosed systems and methods can beneficially provide a data storage and runtime configuration provisioning framework that is data agnostic, application agnostic, and user agnostic, while further providing at least the capability of tracking and maintaining the version history of the configuration data.
In accordance with the illustrative embodiment of
As shown in
In accordance with an exemplary mode of operation of the data provisioning and runtime configuration system 101b within telecommunications platform 104, the user client 106 communicates, using the web browser, with the view manager component 120 over the network connection 136 to request access to, and/or one or more manipulations of, specific data objects stored in the data repository of the decentralized revision control system 114. For example, such manipulations of data objects can include one or more additions to, updates to, and/or deletions of the respective data objects. Further, the user client 106 can communicate with the view manager component 120 over the network connection 136 using the hypertext transfer protocol (HTTP), or any other suitable communications protocol. The view manager component 120 is operative to communicate with the data provisioning component 118 over a connection 134 to implement such access to, additions to, updates to, and/or deletions of the specific data objects contained in the decentralized revision control system 114, as requested by the user client 106. Moreover, the data provisioning component 118 is operative to send commands, e.g., system calls, to the decentralized revision control system 114 over an interface 132 of the decentralized revision control system 114, thereby implementing the requested access to, additions to, updates to, and/or deletions of the specific data objects stored in the data repository of the decentralized revision control system 114. For example, the interface 132 can be implemented as a source code management (SCM) interface of the decentralized revision control system 114, or any other suitable interface. In further accordance with this exemplary mode of operation of the data provisioning and runtime configuration system 101b, the user client 106 can communicate with the data provisioning component 118 to subscribe, via at least one subscription message, to the specific data objects stored in the data repository of the decentralized revision control system 114. For example, the user client 106 can subscribe to the specific data objects for the purpose of being notified whenever certain characteristics of such data objects change, as determined by the data provisioning component 118. In the event the data provisioning component 118 determines that such certain characteristics of the data objects have, in fact, changed, the data provisioning component 118 generates and sends at least one notification of the changes to the view manager component 120 over the connection 134, and the view manager component 120, in turn, notifies the user client 106 of the changes over the network connection 136, for example, via the web browser.
In accordance with an exemplary mode of operation of the data provisioning and runtime configuration system 101a within telecommunications platform 102, each of the predetermined application program components 108, 110 can register, with the data provisioning component 116, one or more application entities that may require access to the data objects stored in the data repository of the decentralized revision control system 112. For example, the predetermined application program components 108, 110 can each register one or more application entities. The application entities registered by the application program components 108, 110 are operative to communicate with the data provisioning component 116 over connections 122, 124, respectively, to request access to, additions to, updates to, and/or deletions of specific data objects stored in the data repository of the decentralized revision control system 112. Further, the data provisioning component 116 is operative to implement such access to, additions to, updates to, and/or deletions of such data objects, as requested, on behalf of the respective application entities. The registered application entities are each further operative to communicate with the data provisioning component 116 to subscribe to specific data objects stored in the data repository of the decentralized revision control system 112. For example, each registered application entity can subscribe to the specific data objects for the purpose of being notified whenever certain characteristics of such data objects change, as determined by the data provisioning component 116. In the event the data provisioning component 116 determines that such certain characteristics of the data objects have, in fact, changed, the data provisioning component 116 can notify the respective application entities over the connections 122, 124, as appropriate.
In further accordance with the illustrative embodiment of
In accordance with an exemplary mode of operation of the data provisioning and runtime configuration systems 101a, 101b implemented as peer systems, in the event the data provisioning component 118 included in the data provisioning and runtime configuration system 101b determines that certain characteristics of data objects stored in the data repository of the decentralized revision control system 114 coupled thereto have changed, the data provisioning component 118 sends, over the messaging interface 128, a notification of the changes to the data provisioning component 116. Further, the data provisioning components 116, 118 send commands, e.g., system calls, to the decentralized revision control systems 112, 114, respectively, thereby causing the decentralized revision control systems 112, 114 to synchronize the changes to the data objects stored therein via the network connection 130, in accordance with the predetermined version control communication protocol. For example, each of the data repositories of the respective decentralized revision control systems 112, 114 may contain configuration data. Further, the data repository of one of the decentralized revision control systems 112, 114 may contain at least a portion of the configuration data stored in the other one of the decentralized revision control systems 112, 114. Moreover, each of the decentralized revision control systems 112, 114 can synchronize the changes to the configuration data in the data objects stored therein by fetching such changes to the data objects over the network connection 130, using HTTP or any other suitable communications protocol. In addition, the data provisioning component 116 can notify the registered application entities of the changes to the data objects over the connections 122, 124, as appropriate. By implementing the data provisioning and runtime configuration systems 101a, 101b as peer systems, a high availability deployment can be achieved that assures that none of the data stored in the data repositories of the decentralized revision control systems 112, 114 are lost in the event of a failover.
An exemplary method of operating a data provisioning and runtime configuration system within the architecture 100 is described below with reference to
It is noted that the operations depicted and/or described herein are purely exemplary, and imply no particular order. Further, the operations can be used in any sequence, when appropriate, and/or can be partially used. With the above illustrative embodiments in mind, it should be understood that such illustrative embodiments can employ various computer-implemented operations involving data transferred or stored in computer systems. Such operations are those requiring physical manipulation of physical quantities. Typically, though not necessarily, such quantities take the form of electrical, magnetic, and/or optical signals capable of being stored, transferred, combined, compared, and/or otherwise manipulated.
Further, any of the operations depicted and/or described herein that form part of the illustrative embodiments are useful machine operations. The illustrative embodiments also relate to a device or an apparatus for performing such operations. The apparatus can be specially constructed for the required purpose, or can be a general-purpose computer selectively activated or configured by a computer program stored in the computer. In particular, various general-purpose machines employing one or more processors coupled to one or more computer readable media can be used with computer programs written in accordance with the teachings disclosed herein, or it may be more convenient to construct a more specialized apparatus to perform the required operations.
The presently disclosed systems and methods can also be embodied as computer readable code on a computer readable medium. The computer readable medium is any data storage device that can store data, which can thereafter be read by a computer system. Examples of such computer readable media include hard drives, read-only memory (ROM), random-access memory (RAM), CD-ROMs, CD-Rs, CD-RWs, magnetic tapes, and/or any other suitable optical or non-optical data storage devices. The computer readable media can also be distributed over a network-coupled computer system, so that the computer readable code can be stored and/or executed in a distributed fashion.
The foregoing description has been directed to particular illustrative embodiments of this disclosure. It will be apparent, however, that other variations and modifications may be made to the described embodiments, with the attainment of some or all of their associated advantages. Moreover, the procedures, processes, and/or modules described herein may be implemented in hardware, software, embodied as a computer-readable medium having program instructions, firmware, or a combination thereof. For example, the functions described herein may be performed by a processor executing program instructions out of a memory or other storage device.
It will be appreciated by those skilled in the art that modifications to and variations of the above-described systems and methods may be made without departing from the inventive concepts disclosed herein. Accordingly, the disclosure should not be viewed as limited except as by the scope and spirit of the appended claims.
Nguyen, Thien, Raffo, Romolo, Patil, Kamlakar N.
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
7383271, | Apr 06 2004 | Microsoft Technology Licensing, LLC | Centralized configuration data management for distributed clients |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Jan 27 2012 | NGUYEN, THIEN | DIALOGIC INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 027643 | /0189 | |
Jan 27 2012 | PATIL, KAMLAKAR N | DIALOGIC INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 027643 | /0189 | |
Jan 27 2012 | RAFFO, ROMOLO | DIALOGIC INC | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 027643 | /0189 | |
Feb 02 2012 | Dialogic Inc. | (assignment on the face of the patent) | / | |||
Mar 22 2012 | DIALOGIC INC | OBSIDIAN, LLC, AS COLLATERAL AGENT | SUPPLEMENTAL INTELLECTUAL PROPERTY SECURITY AGREEMENT | 027931 | /0001 | |
Mar 22 2012 | DIALOGIC NETWORKS ISRAEL LTD | OBSIDIAN, LLC, AS COLLATERAL AGENT | SUPPLEMENTAL INTELLECTUAL PROPERTY SECURITY AGREEMENT | 027931 | /0001 | |
Jan 30 2013 | DIALOGIC INC | OBSIDIAN, LLC | SUPPLEMENTAL PATENT INTELLECTUAL PROPERTY SECURITY AGREEMENT | 029734 | /0863 | |
Jan 30 2013 | DIALOGIC NETWORKS ISRAEL LTD | OBSIDIAN, LLC | SUPPLEMENTAL PATENT INTELLECTUAL PROPERTY SECURITY AGREEMENT | 029734 | /0863 | |
Nov 24 2014 | OBSIDIAN, LLC | DIALOGIC DISTRIBUTION LIMITED, F K A EICON NETWORKS DISTRIBUTION LIMITED | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | BROOKTROUT TECHNOLOGY, INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | DIALOGIC US INC , F K A DIALOGIC INC AND F K A EICON NETWORKS INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | BROOKTROUT SECURITIES CORPORATION | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | SNOWSHORE NETWORKS, INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | DIALOGIC INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | DIALOGIC CORPORATION, F K A EICON NETWORKS CORPORATION | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | BROOKTROUT NETWORKS GROUP, INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | CANTATA TECHNOLOGY INTERNATIONAL, INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | EXCEL SECURITIES CORPORATION | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | DIALOGIC JAPAN, INC , F K A CANTATA JAPAN, INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | DIALOGIC RESEARCH INC , F K A EICON NETWORKS RESEARCH INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | DIALOGIC US HOLDINGS INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | CANTATA TECHNOLOGY, INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | DIALOGIC MANUFACTURING LIMITED, F K A EICON NETWORKS MANUFACTURING LIMITED | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | EAS GROUP, INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | SHIVA US NETWORK CORPORATION | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Nov 24 2014 | OBSIDIAN, LLC | Excel Switching Corporation | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 034468 | /0654 | |
Jun 29 2015 | DIALOGIC GROUP INC | Silicon Valley Bank | SECURITY AGREEMENT | 036037 | /0165 | |
Jun 29 2015 | DIALOGIC MANUFACTURING LIMITED | Silicon Valley Bank | SECURITY AGREEMENT | 036037 | /0165 | |
Jun 29 2015 | DIALOGIC DISTRIBUTION LIMITED | Silicon Valley Bank | SECURITY AGREEMENT | 036037 | /0165 | |
Jun 29 2015 | DIALOGIC US HOLDINGS INC | Silicon Valley Bank | SECURITY AGREEMENT | 036037 | /0165 | |
Jun 29 2015 | DIALOGIC INC | Silicon Valley Bank | SECURITY AGREEMENT | 036037 | /0165 | |
Jun 29 2015 | DIALOGIC US INC | Silicon Valley Bank | SECURITY AGREEMENT | 036037 | /0165 | |
Oct 31 2016 | DIALOGIC GROUP INC | Silicon Valley Bank | FIRST SUPPLEMENT TO INTELLECTUAL PROPERTY SECURITY AGREEMENT | 040542 | /0297 | |
Oct 31 2016 | DIALOGIC MANUFACTURING LIMITED | Silicon Valley Bank | FIRST SUPPLEMENT TO INTELLECTUAL PROPERTY SECURITY AGREEMENT | 040542 | /0297 | |
Oct 31 2016 | DIALOGIC DISTRIBUTION LIMITED | Silicon Valley Bank | FIRST SUPPLEMENT TO INTELLECTUAL PROPERTY SECURITY AGREEMENT | 040542 | /0297 | |
Oct 31 2016 | DIALOGIC US HOLDINGS INC | Silicon Valley Bank | FIRST SUPPLEMENT TO INTELLECTUAL PROPERTY SECURITY AGREEMENT | 040542 | /0297 | |
Oct 31 2016 | DIALOGIC US INC | Silicon Valley Bank | FIRST SUPPLEMENT TO INTELLECTUAL PROPERTY SECURITY AGREEMENT | 040542 | /0297 | |
Oct 31 2016 | DIALOGIC INC | Silicon Valley Bank | FIRST SUPPLEMENT TO INTELLECTUAL PROPERTY SECURITY AGREEMENT | 040542 | /0297 |
Date | Maintenance Fee Events |
Jul 07 2017 | LTOS: Pat Holder Claims Small Entity Status. |
Aug 08 2019 | M2551: Payment of Maintenance Fee, 4th Yr, Small Entity. |
Feb 25 2020 | BIG: Entity status set to Undiscounted (note the period is included in the code). |
Aug 23 2023 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Date | Maintenance Schedule |
Feb 23 2019 | 4 years fee payment window open |
Aug 23 2019 | 6 months grace period start (w surcharge) |
Feb 23 2020 | patent expiry (for year 4) |
Feb 23 2022 | 2 years to revive unintentionally abandoned end. (for year 4) |
Feb 23 2023 | 8 years fee payment window open |
Aug 23 2023 | 6 months grace period start (w surcharge) |
Feb 23 2024 | patent expiry (for year 8) |
Feb 23 2026 | 2 years to revive unintentionally abandoned end. (for year 8) |
Feb 23 2027 | 12 years fee payment window open |
Aug 23 2027 | 6 months grace period start (w surcharge) |
Feb 23 2028 | patent expiry (for year 12) |
Feb 23 2030 | 2 years to revive unintentionally abandoned end. (for year 12) |