Методы

МетодОписаниеПараметрыПримерВерсия
Client(phone)Возвращает экземпляр клиента (TelegramClient)phone - строка, номер телефона отправителя
 var client = Telegram.Client("02");
-

Comb(name)

Comb(name, args)

Comb(name, type, args)

Создает экземпляр комбинатора (Combinator)

name - строка, имя комбинатора

type - строка, имя generic типа. Актуально для vector

args - объект или массив объектов, аргументы комбинатора

var boolFalse = Telegram.Comb("boolFalse");
var contact = Telegram.Comb("inputPhoneContact", [ 1, $.user, "User", "Name" ]);
var vector = Telegram.Comb("vector", "InputContact", [ contact ]);
-
GetRandom()Возвращает случайное число 
var client = Telegram.Client($.phone);
client.Rpc("messages.sendMessage", [Telegram.Comb("inputPeerContact", $.userId), $.message, Telegram.GetRandom()]);
-

TelegramClient

Модуль взаимодействия с Telegram

Свойства

СвойствоТипОписаниеПримерВерсия
 Authorized логическийВозвращает true, если клиент успешно авторизован 
var client = Telegram.Client($.phone);
if(!client.Authorized)
	return Connect(client);		
-

Методы

МетодОписаниеПараметрыИсключенияПримерВерсия
Connect()Соединяет с сервисом Telegram. Возвращает true, если необходима авторизация по sms 

TlException

  • Непредвиденная ошибка

 

function Connect(client){
	if (!client.Connect())
		return "sms";
	return "connected";}
-
Authorize(smsCode)Производит авторизацию по sms кодуsmsCode - строка, код, переданный по sms

TlException

  • Непредвиденная ошибка
function authorize() {
	try {
		var client = Telegram.Client($.phone);
		client.Authorize($.sms);
		return "success";
	} catch (e) {
		return e.Message;
	}
}

-
Rpc(name,args)Выполняет rpc вызов соответствующего комбинатора

name - строка, имя комбинатора удаленной процедуры

args - объект или массив объектов, аргументы комбинатора

TlException

  • Непредвиденная ошибка
return lient.Rpc("auth.checkPhone", $.user);
-

GetUpdates()

GetDifferences()

Получает входящие комбинаторы (Updates или Differences). Возвращает список комбинаторов. 

TlException

  • Непредвиденная ошибка
function getUpdates(){
	try {
		var client = Telegram.Client($.phone);
		var updates = client.GetUpdates();
		var result = "";
		for (var update in updates) {
			result += GetInfo(update);
		}
		return result;		
	} catch (e) {
		return e.Message;
	}	
} 
-
SendMessage(phone, message)Отправляет сообщение

phone - телефон адресата

massage - текст сообщения

TlException

  • Непредвиденная ошибка
function send(){
	try {
		var client = Telegram.Client($.phone);
		client.SendMessage($.user, $.message);
		return "success";
	} catch (e) {
		return e.Message;
	}
}
-

Combinator

Экземпляр комбинатора

Свойства

СвойствоТипОписаниеПримерВерсия
 Name строкаВозвращает имя комбинатора
function GetInfo(combinator){
	return combinator.Name;
}
-
IsVectorлогическийВозвращает true, если данный комбинатор является вектором
function GetValue(combinator, index){
	if(combinator.IsVector)
		return combinator[index];
	return null;
}
-

Индексаторы

Индексатор
Описание
Параметры
Пример
Версия
[name]Возвращает значение аргумента комбинатораname - имя аргумента
function GetLangCode(combinator){
	return combinator["Lang"];
}
-
[index]*Возвращает значение элемента вектораindex - индекс элемента
function GetValue(combinator, index){
	if(combinator.IsVector)
		return combinator[index];
	return null;
}
 -

* - допустимо использовать комбинатор типа vector в итераторах, например for.

Пример

// Попытка соединения с сервисом Telegram
// Параметры:
//	 $.phone - номер телефона отправителя
// Возвращает:
// 	"success" - соединение успешно
// 	"sms" - необходима авторизация, sms сообщение было выслано на соответствующий номер телефона
// 	текст ошибки
function connect() {
	try {
		var client = Telegram.Client($.phone);
		if(!client.Authorized)
			if (!client.Connect())
				return "sms";
				
		return "success";
	} catch (e) {
		return e.Message;
	}
}
 
// Попытка авторизации по sms
// Параметры:
//	$.phone - номер телефона отправителя
// 	$.sms - смс код
// Возвращает:
// 	"success" - авторизация успешна
// 	текст ошибки
function authorize() {
	try {
		var client = Telegram.Client($.phone);
		client.Authorize($.sms);
		return "success";
	} catch (e) {
		return e.Message;
	}
}
 
// Попытка отправки сообщения
// Параметры:
//	$.phone - номер телефона отправителя
// 	$.user - телефон адресата
//	$.message - текст сообщения
// Возвращает:
// 	"success" - сообщение успешно отправлено
// 	текст ошибки
function send(){
	try {
		var client = Telegram.Client($.phone);
		if (client.Authorized) {
			client.SendMessage($.user, $.message);
			return "success";
		}
		return "not_authorized"
	} catch (e) {
		return e.Message;
	}
}

Версия

2.394

  • Нет меток

0 Комментариев

Вы не можете зарегистрироваться в системе. Любые изменения, которые Вы сделаете, будут помечены как сделанные анонимно. Вы можете Войти, если у Вас есть учётная запись.