# IPC manager hold records of which slot is connected to which signal. Maintain a list of these records along with metadata. Make available the connections along with the ability to change these connections to dbus api. Rough outline of the dbus api ``` register_signal (name, type_enum) -> Registers a signal for consumption ( no signal of same name can exist ) register_slot (name, type_enum) -> Registers a slot for consumption ( no other slot of the same name can exist ) get_all -> Returns a list of slot, signals and connections { signals: [ { name: "some_signal_name" type: "int" created_by: "dbus-user" created_at: "ISO TIMESTAMP" last_registered: "ISO TIMESTAMP" } ] slots: [ { name: "Some_slot_name" type: "int" created_by: "dbus-user" created_at: "ISO TIMESTAMP" last_registered: "ISO TIMESTAMP" last_modified: "ISO TIMESTAMP" modified_by: "dbus-user" connected_to: "slot_name" } ] } connect ( slot, signal ) -> Connect the slot to a signal disconnect ( slot ) -> Disconnect the slot from its signal ```