From d820bc739dfb068b00b620f7d7b675bfe16de425 Mon Sep 17 00:00:00 2001 From: pushplay Date: Wed, 19 Feb 2014 13:31:44 -0800 Subject: [PATCH] Added definitions for XSockets.net. --- xsockets/XSockets-tests.ts | 61 ++++++++++++++++++++++++++++ xsockets/XSockets-tests.ts.tscparams | 1 + xsockets/XSockets.d.ts | 38 +++++++++++++++++ xsockets/XSockets.d.ts.tscparams | 1 + 4 files changed, 101 insertions(+) create mode 100644 xsockets/XSockets-tests.ts create mode 100644 xsockets/XSockets-tests.ts.tscparams create mode 100644 xsockets/XSockets.d.ts create mode 100644 xsockets/XSockets.d.ts.tscparams diff --git a/xsockets/XSockets-tests.ts b/xsockets/XSockets-tests.ts new file mode 100644 index 0000000000..0b65bf9078 --- /dev/null +++ b/xsockets/XSockets-tests.ts @@ -0,0 +1,61 @@ +/// + +var conn = new XSockets.WebSocket('ws://localhost:4502/Generic'); + +conn.on(XSockets.Events.open,function (clientInfo) { + console.log('Open', clientInfo); +}); + +conn.on(XSockets.Events.onError, function (err) { + console.log('Error', err); +}); + +conn.on(XSockets.Events.close, function () { + console.log('Closed'); +}); + +conn.publish('foo', {text:'Hello Real-Time World'}); + +conn.on('foo', function(data) { + console.log('subscription to foo fired with data = ', data); +}); + +conn.unbind('foo'); + +conn.one('foo', function(data) { + console.log('subscription to foo fired with data = ', data); +}); + +conn.many('foo',4, function(data) { + console.log('subscription to foo fired with data = ', data); +}); + +conn.on('foo', function (data) { + console.log('subscription to foo fired with data = ', data); +}, function (confirmation) { + console.log('subscription confirmed',confirmation); + conn.publish('foo', { text: 'Hello Real-Time World' }); +}); + +conn.publish(XSockets.Events.storage.set, { + Key: "yourKey", + Value: { + Name: "John Doe", + Age: 40, + Likes: ["Beer", "Food", "Coffe"] + } +}); + +conn.publish(XSockets.Events.storage.remove, {Key: 'yourKey'}); + +conn.on(XSockets.Events.storage.getAll, function (data) { + data.forEach(function (item) { + console.log(item); + }); +}); + +conn.publish(XSockets.Events.storage.getAll, {}); + +conn.publish('set_MyProp',{value:'New Value'}); + +conn.on('get_MyProp',function(prop){console.log('Value Of MyProp',prop)}); \ No newline at end of file diff --git a/xsockets/XSockets-tests.ts.tscparams b/xsockets/XSockets-tests.ts.tscparams new file mode 100644 index 0000000000..3cc762b550 --- /dev/null +++ b/xsockets/XSockets-tests.ts.tscparams @@ -0,0 +1 @@ +"" \ No newline at end of file diff --git a/xsockets/XSockets.d.ts b/xsockets/XSockets.d.ts new file mode 100644 index 0000000000..b09e577a89 --- /dev/null +++ b/xsockets/XSockets.d.ts @@ -0,0 +1,38 @@ +// Type definitions for XSockets.NET 3.0 +// Project: http://xsockets.net/ +// Definitions by: Jeffery Grajkowski +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +declare module XSockets { + export class WebSocket { + id: string; + constructor(url: string, subprotocol?: string, settings?: any); + on(event: string, handler: (data: any) => void, confirmation?: (arg: ConfirmationArgument) => void): void; + one(event: string, handler: (data: any) => void, confirmation?: (arg: ConfirmationArgument) => void): void; + many(event: string, times: number, handler: (data: any) => void, confirmation?: (arg: ConfirmationArgument) => void): void; + unbind(event: string): void; + publish(topic: string, data: any): void; + } + export interface ConfirmationArgument { + event: string; + } + export module Events { + export var close: string; + export var onBlob: string; + export var onError: string; + export module bindings { + export var completed: string; + } + export var open: string; + export module pubSub { + export var subscribe: string; + export var unsubscribe: string; + } + export module storage { + export var get: string; + export var getAll: string; + export var remove: string; + export var set: string; + } + } +} diff --git a/xsockets/XSockets.d.ts.tscparams b/xsockets/XSockets.d.ts.tscparams new file mode 100644 index 0000000000..3cc762b550 --- /dev/null +++ b/xsockets/XSockets.d.ts.tscparams @@ -0,0 +1 @@ +"" \ No newline at end of file