50 lines
2.1 KiB
JavaScript
50 lines
2.1 KiB
JavaScript
exports.newDesktopApp = function newDesktopApp() {
|
|
|
|
let thisObject = {
|
|
socialGraph: undefined,
|
|
p2pNetwork: undefined,
|
|
webSocketsClient: undefined,
|
|
webSocketsInterface: undefined,
|
|
run: run
|
|
}
|
|
|
|
DK.desktopApp = thisObject
|
|
|
|
return thisObject
|
|
|
|
async function run() {
|
|
/*
|
|
This is the Personal Social Graph for the user running this App.
|
|
*/
|
|
thisObject.socialGraph = DK.projects.socialTrading.modules.socialGraph.newSocialTradingModulesSocialGraph()
|
|
await thisObject.socialGraph.initialize()
|
|
/*
|
|
We can join now the P2P Network as a client app.
|
|
*/
|
|
thisObject.p2pNetwork = SA.projects.network.modules.p2pNetwork.newNetworkModulesP2PNetwork()
|
|
await thisObject.p2pNetwork.initialize('Network Client')
|
|
/*
|
|
Here we will pick a Network Node from all users profiles available that do have a Network Node running.
|
|
*/
|
|
let selectedNetworkNode = thisObject.p2pNetwork.p2pNodesToConnect[0]
|
|
/*
|
|
This is the Web Sockets client that interacts with the Superalgos Network.
|
|
*/
|
|
thisObject.webSocketsClient = SA.projects.network.modules.webSocketsNetworkClient.newNetworkModulesWebSocketsNetworkClient()
|
|
await thisObject.webSocketsClient.initialize('Network Client', selectedNetworkNode)
|
|
|
|
/*
|
|
These are the Network Interfaces by which the Web App interacts with this Desktop Client.
|
|
*/
|
|
thisObject.webSocketsInterface = DK.projects.socialTrading.modules.webSocketsInterface.newDesktopModulesWebSocketsInterface()
|
|
thisObject.webSocketsInterface.initialize()
|
|
console.log('Desktop Client Web Sockets Interface ....................................... Listening at port ' + global.env.DESKTOP_WEB_SOCKETS_INTERFACE_PORT)
|
|
|
|
|
|
thisObject.httpInterface = DK.projects.socialTrading.modules.httpInterface.newDesktopModulesHttpInterface()
|
|
thisObject.httpInterface.initialize()
|
|
console.log('Desktop Client Http Interface .............................................. Listening at port ' + global.env.DESKTOP_HTTP_INTERFACE_PORT)
|
|
|
|
}
|
|
}
|