0.6.18 • Published 10 years ago

teleport-client v0.6.18

Weekly downloads
2
License
MIT
Repository
github
Last release
10 years ago

TeleportClient

TeleportServer

npm install teleport-client --save
bower install teleport-client --save
  • browserify, node.js:
var TeleportClient = require('teleport-client');

var teleportClient = new TeleportClient({
	serverAddress: "ws://localhost:8000",
	autoReconnect: 3000,
	authFunc: function(callback) {
		callback(null, 'example project');
	}
});
  • classic style:
	...
	<script type="text/javascript" src="https://rawgit.com/nskazki/web-TeleportClient/master/dist/TeleportClient.js"></script>
</head>
<body>
	<script type="text/javascript">
		var teleportClient = new TeleportClient({
			serverAddress: "ws://localhost:8000",
			autoReconnect: 3000,
			authFunc: function(callback) {
				callback(null, 'example project');
			}
		});
	</script>
	...
		objects.ipBox
			.getIps(someCallback)
			.on('newIps', someHandler);
});

teleportClient.applyDependences(function(logBox) { logBox.getLogs(someCallback); })

teleportClient.applyDependences('blackBox', function(box) { box.getColor(someCallback); });

... someObj.someFunc.dependences = 'ipBox';

teleportClient.applyDependences(someObj.someFunc, someObj);

<h5>Параметры принимаемые конструктором:</h5>
 * `serverAddress` - адрес и порт TeleportServer.
 * `autoReconnect` - время задержки в миллисекундах перед переподключением к серверу, после разрыва соединения.
 * `authFunc` - функция генерирующая авторизационные данные для подключения к серверу, будет вызвана только один раз.

<h5>Публичные методы:</h5>
 * `destroy` - метод прекращающий работу объекта.
 * `applyDependences` - метод разрешающий зависимости переданной в него функции. Просто взял у angularjs.
 <br>Принимает на вход :
    * функцию или массив содержищий имена зависимостей и функцию.
    * опционально вторым аргументом принимает контекст с которым будет вызванна функция. 

<h5>Events:</h5>
Эти события отражают текущее состояние TeleportClient.
<br>Выбрасываются без аргументов, если не указанно иное.

 * `ready` - признак успешного соединения с сервром и регистрации всех телепортируемых объектов.
 	<br>Выбрасывается с двумя аргументами:
 	<br>Первый содержит свойства телепортированных объектов.
 	<br>Второй непосредственно телепортированные объекты.
 * `destroyed` - признак успешного разрушения объекта вызовом метода `destroy`, 
 	<br>содинение с сервером разорванно, все каллбеки ожидающие результат вызваны с ошибкой.
 * `alreadyDestroyed` - будут выброшено если ранее метод `destroy` уже выполнялся.
 * `error` - ошибки ядра (socket.io-client). В качестве аргумента подписчики получат ошибку.
 <br><br>
 * `reconnecting` - признак разрыва соединения, через время указанное в поле `autoReconnect` будет предпринята попытка переподключения.
 * `reconnect` - признак успешного переподключения к серверу.
 * `reconnectOnOldTerms` - соединение востановленно, сервер не перезапущен, время ожидания переподключения сервером не истекло.
 	<br>Выбрасывается вместе с `reconnected`. 
 * `reconnectAndReinit` - признак успешного переподключения к перезапущенному.
 	<br>Или если истекло время ожидания сервером переподключения этого клиента, и поэтому клиент заново зарегистрировался на сервере.
 	<br>Ожидающие результат выполнения каллбеки будут вызванны с ошибкой, команды ожидавшие переподключения так же отправленны не будут, так как это новый экземпляр сервера.
 	<br>Выбрасывается вмете с `reconnected`.

<h5>How to debug:</h5>

DEBUG=TeleportClient* npm test

<h5>Запоздалый ChangeLog: </h5>
* 0.6.10 - теперь callback принимает неограниченное количество аргументов.
* 0.6.9 - исправленна ошибка, из за которой `ready` выбрасывался без второго аргумента содержащего телепортированные объекты.
0.6.18

10 years ago

0.6.17

10 years ago

0.6.16

10 years ago

0.6.15

10 years ago

0.6.14

10 years ago

0.6.13

10 years ago

0.6.11

10 years ago

0.6.10

10 years ago

0.6.9

10 years ago

0.6.5

10 years ago

0.6.4

10 years ago

0.6.3

10 years ago

0.6.2

10 years ago

0.6.1

10 years ago

0.6.0

10 years ago

0.5.0

10 years ago

0.4.1

10 years ago

0.4.0

10 years ago

0.3.19

10 years ago

0.3.18

10 years ago

0.3.17

10 years ago

0.3.16

10 years ago

0.3.15

10 years ago

0.3.13

10 years ago

0.3.9

10 years ago

0.3.7

10 years ago

0.3.6

10 years ago