1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2024-11-30 09:16:44 +02:00

VKT: Отправка файла

This commit is contained in:
Anton 2024-08-10 23:21:48 +03:00
parent 24363fa179
commit c081ddffa2
16 changed files with 5479 additions and 4375 deletions

View File

@ -1129,14 +1129,14 @@ jobs:
- name: Общие методы
if: ${{ cancelled() }} == false
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/ru/OInt/tests/Modules/internal/OPI_Тесты.os "ВКТ_ОбщиеМетоды"
- name: Отправка сообщений - name: Отправка сообщений
if: ${{ cancelled() }} == false if: ${{ cancelled() }} == false
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/ru/OInt/tests/Modules/internal/OPI_Тесты.os "ВКТ_ОтправкаСообщений" run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/ru/OInt/tests/Modules/internal/OPI_Тесты.os "ВКТ_ОтправкаСообщений"
- name: Общие методы
if: ${{ cancelled() }} == false
run: oscript /home/runner/.local/share/ovm/current/lib/1testrunner/src/main.os -run ./src/ru/OInt/tests/Modules/internal/OPI_Тесты.os "ВКТ_ОбщиеМетоды"
- name: Записать логи - name: Записать логи
if: ${{ cancelled() }} == false if: ${{ cancelled() }} == false
uses: actions/cache/save@v3 uses: actions/cache/save@v3

File diff suppressed because it is too large Load Diff

View File

@ -94,6 +94,31 @@ Function GetEvents(Val Token, Val LastID, Val Timeout = 0) Export
EndFunction EndFunction
// Get information about file
// Gets information about a file by ID
//
// Note
// Method at API documentation: [GET /files/getInfo](@teams.vk.com/botapi/#/files/get_files_getInfo)
//
// Parameters:
// Token - String - Bot token - token
// FileID - String, Number - File ID - fileid
//
// Returns:
// Map Of KeyAndValue - Serialized JSON response from VK Teams
Function GetFileInformation(Val Token, Val FileID) Export
URL = "/files/getInfo";
Parameters = NormalizeMain(URL, Token);
OPI_Tools.AddField("fileId", FileID , "String", Parameters);
Response = OPI_Tools.Get(URL, Parameters);
Return Response;
EndFunction
#EndRegion #EndRegion
#Region MessageSending #Region MessageSending
@ -137,6 +162,92 @@ Function SendTextMessage(Val Token
EndFunction EndFunction
// SendFile
// Sends the file to the chat
//
// Note
// Method at API documentation: [POST /messages/sendFile](@teams.vk.com/botapi/#/messages/post_messages_sendFile)
//
// Parameters:
// Token - String - Bot token - token
// ChatID - String, Number - Chat ID for sending - chatid
// File - BinaryData, String - File for sending - file
// Text - String - File caption - text
// FileName - String - Displayed file name - filename
// Markup - String - Markup type for message text: MarkdownV2 or HTML - parsemod
//
// Returns:
// Map Of KeyAndValue - Serialized JSON response from VK Teams
Function SendFile(Val Token
, Val ChatID
, Val File
, Val Text = ""
, Val FileName = ""
, Val Markup = "MarkdownV2") Export
URL = "/messages/sendFile";
Parameters = NormalizeMain(URL, Token);
OPI_Tools.AddField("chatId" , ChatID , "String" , Parameters);
OPI_Tools.AddField("caption" , Text , "String" , Parameters);
OPI_Tools.AddField("parseMode" , Markup , "String" , Parameters);
If TypeOf(File) = Type("String") Then
FileObject = New File(File);
DisplayedName = FileObject.Name;
Else
DisplayedName = "file";
EndIf;
OPI_TypeConversion.GetBinaryData(File);
DisplayedName = ?(ValueIsFilled(FileName), FileName, DisplayedName);
Files = New Map;
Files.Insert("file|" + DisplayedName, File);
Response = OPI_Tools.PostMultipart(URL, Parameters, Files, "");
Return Response;
EndFunction
// Resend file
// Sends a previously uploaded file by ID
//
// Note
// Method at API documentation: [GET /messages/sendFile](@teams.vk.com/botapi/#/messages/get_messages_sendFile)
//
// Parameters:
// Token - String - Bot token - token
// ChatID - String, Number - Chat ID for sending - chatid
// FileID - String, Number - File ID to send - fileid
// Text - String - File caption - text
// FileName - String - Displayed file name - filename
// Markup - String - Markup type for message text: MarkdownV2 or HTML - parsemod
//
// Returns:
// Map Of KeyAndValue - Serialized JSON response from VK Teams
Function ResendFile(Val Token
, Val ChatID
, Val FileID
, Val Text = ""
, Val FileName = ""
, Val Markup = "MarkdownV2") Export
URL = "/messages/sendFile";
Parameters = NormalizeMain(URL, Token);
OPI_Tools.AddField("chatId" , ChatID , "String", Parameters);
OPI_Tools.AddField("caption" , Text , "String", Parameters);
OPI_Tools.AddField("parseMode" , Markup , "String", Parameters);
OPI_Tools.AddField("fileId" , FileID , "String", Parameters);
Response = OPI_Tools.Get(URL, Parameters);
Return Response;
EndFunction
// Forward message // Forward message
// Forwards an existing message to the current dialog box // Forwards an existing message to the current dialog box
// //

View File

@ -3232,10 +3232,12 @@ EndProcedure
Procedure VKT_CommonMethods() Export Procedure VKT_CommonMethods() Export
TestParameters = New Structure; TestParameters = New Structure;
OPI_TestDataRetrieval.ParameterToCollection("VkTeams_Token", TestParameters); OPI_TestDataRetrieval.ParameterToCollection("VkTeams_Token" , TestParameters);
OPI_TestDataRetrieval.ParameterToCollection("VkTeams_FileID", TestParameters);
VkTeams_CheckToken(TestParameters); VkTeams_CheckToken(TestParameters);
VkTeams_GetEvents(TestParameters); VkTeams_GetEvents(TestParameters);
VKTeams_GetFileInformation(TestParameters);
EndProcedure EndProcedure
@ -3246,9 +3248,12 @@ Procedure VKT_MessagesSending() Export
OPI_TestDataRetrieval.ParameterToCollection("VkTeams_ChatID" , TestParameters); OPI_TestDataRetrieval.ParameterToCollection("VkTeams_ChatID" , TestParameters);
OPI_TestDataRetrieval.ParameterToCollection("VkTeams_ChatID2" , TestParameters); OPI_TestDataRetrieval.ParameterToCollection("VkTeams_ChatID2" , TestParameters);
OPI_TestDataRetrieval.ParameterToCollection("VkTeams_MessageID", TestParameters); OPI_TestDataRetrieval.ParameterToCollection("VkTeams_MessageID", TestParameters);
OPI_TestDataRetrieval.ParameterToCollection("Document" , TestParameters);
VkTeams_SendTextMessage(TestParameters); VkTeams_SendTextMessage(TestParameters);
VKTeams_ForwardMessage(TestParameters); VKTeams_ForwardMessage(TestParameters);
VKTeams_SendFile(TestParameters);
VKTeams_ResendFile(TestParameters);
EndProcedure EndProcedure
@ -3963,6 +3968,14 @@ Procedure Check_VKTMessage(Val Result)
EndProcedure EndProcedure
Procedure Check_VKTFile(Val Result)
OPI_TestDataRetrieval.ExpectsThat(Result["ok"]).Равно(True);
OPI_TestDataRetrieval.ExpectsThat(Result["type"]).Заполнено();
OPI_TestDataRetrieval.ExpectsThat(Result["size"]).Заполнено();
EndProcedure
#EndRegion #EndRegion
#Region AtomicTests #Region AtomicTests
@ -10334,6 +10347,81 @@ Procedure VKTeams_ForwardMessage(FunctionParameters)
EndProcedure EndProcedure
Procedure VKTeams_SendFile(FunctionParameters)
Token = FunctionParameters["VkTeams_Token"];
ChatID = FunctionParameters["VkTeams_ChatID"];
Text = "File caption";
File = FunctionParameters["Document"]; // URL
FilePath = GetTempFileName("docx"); // Path
CopyFile(File, FilePath);
FileBD = New BinaryData(FilePath); // Binary
Result = OPI_VKTeams.SendFile(Token, ChatID, File);
OPI_TestDataRetrieval.WriteLog(Result, "SendFile (URL)", "VkTeams");
Check_VKTMessage(Result); // SKIP
Result = OPI_VKTeams.SendFile(Token, ChatID, FilePath, Text);
OPI_TestDataRetrieval.WriteLog(Result, "SendFile (Path)", "VkTeams");
Check_VKTMessage(Result); // SKIP
Result = OPI_VKTeams.SendFile(Token, ChatID, File, Text, "ImportantDocument.docx");
// END
OPI_TestDataRetrieval.WriteLog(Result, "SendFile", "VkTeams");
Check_VKTMessage(Result);
DeleteFiles(FilePath);
FileID = Result["fileId"];
OPI_TestDataRetrieval.WriteParameter("VkTeams_FileID", FileID);
FunctionParameters.Insert("VkTeams_FileID", FileID);
OPI_Tools.Pause(5);
EndProcedure
Procedure VKTeams_ResendFile(FunctionParameters)
Token = FunctionParameters["VkTeams_Token"];
ChatID = FunctionParameters["VkTeams_ChatID"];
FileID = FunctionParameters["VkTeams_FileID"];
Text = "File caption";
Result = OPI_VKTeams.ResendFile(Token, ChatID, FileID, Text, "SameDoc.docx");
// END
OPI_TestDataRetrieval.WriteLog(Result, "ResendFile", "VkTeams");
Check_VKTMessage(Result);
EndProcedure
Procedure VKTeams_GetFileInformation(FunctionParameters)
Token = FunctionParameters["VkTeams_Token"];
FileID = FunctionParameters["VkTeams_FileID"];
Result = OPI_VKTeams.GetFileInformation(Token, FileID);
// END
OPI_TestDataRetrieval.WriteLog(Result, "GetFileInformation", "VkTeams");
Check_VKTFile(Result);
EndProcedure
#EndRegion #EndRegion
#EndRegion #EndRegion

View File

@ -237,8 +237,8 @@ Function GetTestTable() Export
NewTest(TestTable, "B24_DepartmentsManagment" , "Departments managment" , Bitrix); NewTest(TestTable, "B24_DepartmentsManagment" , "Departments managment" , Bitrix);
NewTest(TestTable, "B2_UsersManagment" , "Users managment" , Bitrix); NewTest(TestTable, "B2_UsersManagment" , "Users managment" , Bitrix);
NewTest(TestTable, "VKT_CommonMethods" , "Common methods" , VKT);
NewTest(TestTable, "VKT_MessagesSending" , "Messages sending" , VKT); NewTest(TestTable, "VKT_MessagesSending" , "Messages sending" , VKT);
NewTest(TestTable, "VKT_CommonMethods" , "Common methods" , VKT);
Return TestTable; Return TestTable;

View File

@ -237,8 +237,8 @@ Function GetTestTable() Export
NewTest(TestTable, "B24_DepartmentsManagment" , "Departments managment" , Bitrix); NewTest(TestTable, "B24_DepartmentsManagment" , "Departments managment" , Bitrix);
NewTest(TestTable, "B2_UsersManagment" , "Users managment" , Bitrix); NewTest(TestTable, "B2_UsersManagment" , "Users managment" , Bitrix);
NewTest(TestTable, "VKT_CommonMethods" , "Common methods" , VKT);
NewTest(TestTable, "VKT_MessagesSending" , "Messages sending" , VKT); NewTest(TestTable, "VKT_MessagesSending" , "Messages sending" , VKT);
NewTest(TestTable, "VKT_CommonMethods" , "Common methods" , VKT);
Return TestTable; Return TestTable;

View File

@ -3232,10 +3232,12 @@ EndProcedure
Procedure VKT_CommonMethods() Export Procedure VKT_CommonMethods() Export
TestParameters = New Structure; TestParameters = New Structure;
OPI_TestDataRetrieval.ParameterToCollection("VkTeams_Token", TestParameters); OPI_TestDataRetrieval.ParameterToCollection("VkTeams_Token" , TestParameters);
OPI_TestDataRetrieval.ParameterToCollection("VkTeams_FileID", TestParameters);
VkTeams_CheckToken(TestParameters); VkTeams_CheckToken(TestParameters);
VkTeams_GetEvents(TestParameters); VkTeams_GetEvents(TestParameters);
VKTeams_GetFileInformation(TestParameters);
EndProcedure EndProcedure
@ -3246,9 +3248,12 @@ Procedure VKT_MessagesSending() Export
OPI_TestDataRetrieval.ParameterToCollection("VkTeams_ChatID" , TestParameters); OPI_TestDataRetrieval.ParameterToCollection("VkTeams_ChatID" , TestParameters);
OPI_TestDataRetrieval.ParameterToCollection("VkTeams_ChatID2" , TestParameters); OPI_TestDataRetrieval.ParameterToCollection("VkTeams_ChatID2" , TestParameters);
OPI_TestDataRetrieval.ParameterToCollection("VkTeams_MessageID", TestParameters); OPI_TestDataRetrieval.ParameterToCollection("VkTeams_MessageID", TestParameters);
OPI_TestDataRetrieval.ParameterToCollection("Document" , TestParameters);
VkTeams_SendTextMessage(TestParameters); VkTeams_SendTextMessage(TestParameters);
VKTeams_ForwardMessage(TestParameters); VKTeams_ForwardMessage(TestParameters);
VKTeams_SendFile(TestParameters);
VKTeams_ResendFile(TestParameters);
EndProcedure EndProcedure
@ -3963,6 +3968,14 @@ Procedure Check_VKTMessage(Val Result)
EndProcedure EndProcedure
Procedure Check_VKTFile(Val Result)
OPI_TestDataRetrieval.ExpectsThat(Result["ok"]).Равно(True);
OPI_TestDataRetrieval.ExpectsThat(Result["type"]).Заполнено();
OPI_TestDataRetrieval.ExpectsThat(Result["size"]).Заполнено();
EndProcedure
#EndRegion #EndRegion
#Region AtomicTests #Region AtomicTests
@ -10334,6 +10347,81 @@ Procedure VKTeams_ForwardMessage(FunctionParameters)
EndProcedure EndProcedure
Procedure VKTeams_SendFile(FunctionParameters)
Token = FunctionParameters["VkTeams_Token"];
ChatID = FunctionParameters["VkTeams_ChatID"];
Text = "File caption";
File = FunctionParameters["Document"]; // URL
FilePath = GetTempFileName("docx"); // Path
FileCopy(File, FilePath);
FileBD = New BinaryData(FilePath); // Binary
Result = OPI_VKTeams.SendFile(Token, ChatID, File);
// !OInt OPI_TestDataRetrieval.WriteLog(Result, "SendFile (URL)", "VkTeams");
Check_VKTMessage(Result); // SKIP
Result = OPI_VKTeams.SendFile(Token, ChatID, FilePath, Text);
// !OInt OPI_TestDataRetrieval.WriteLog(Result, "SendFile (Path)", "VkTeams");
Check_VKTMessage(Result); // SKIP
Result = OPI_VKTeams.SendFile(Token, ChatID, File, Text, "ImportantDocument.docx");
// END
// !OInt OPI_TestDataRetrieval.WriteLog(Result, "SendFile", "VkTeams");
Check_VKTMessage(Result);
DeleteFiles(FilePath);
FileID = Result["fileId"];
OPI_TestDataRetrieval.WriteParameter("VkTeams_FileID", FileID);
FunctionParameters.Insert("VkTeams_FileID", FileID);
OPI_Tools.Pause(5);
EndProcedure
Procedure VKTeams_ResendFile(FunctionParameters)
Token = FunctionParameters["VkTeams_Token"];
ChatID = FunctionParameters["VkTeams_ChatID"];
FileID = FunctionParameters["VkTeams_FileID"];
Text = "File caption";
Result = OPI_VKTeams.ResendFile(Token, ChatID, FileID, Text, "SameDoc.docx");
// END
// !OInt OPI_TestDataRetrieval.WriteLog(Result, "ResendFile", "VkTeams");
Check_VKTMessage(Result);
EndProcedure
Procedure VKTeams_GetFileInformation(FunctionParameters)
Token = FunctionParameters["VkTeams_Token"];
FileID = FunctionParameters["VkTeams_FileID"];
Result = OPI_VKTeams.GetFileInformation(Token, FileID);
// END
// !OInt OPI_TestDataRetrieval.WriteLog(Result, "GetFileInformation", "VkTeams");
Check_VKTFile(Result);
EndProcedure
#EndRegion #EndRegion
#EndRegion #EndRegion

View File

@ -94,6 +94,31 @@ Function GetEvents(Val Token, Val LastID, Val Timeout = 0) Export
EndFunction EndFunction
// Get information about file
// Gets information about a file by ID
//
// Note
// Method at API documentation: [GET /files/getInfo](@teams.vk.com/botapi/#/files/get_files_getInfo)
//
// Parameters:
// Token - String - Bot token - token
// FileID - String, Number - File ID - fileid
//
// Returns:
// Map Of KeyAndValue - Serialized JSON response from VK Teams
Function GetFileInformation(Val Token, Val FileID) Export
URL = "/files/getInfo";
Parameters = NormalizeMain(URL, Token);
OPI_Tools.AddField("fileId", FileID , "String", Parameters);
Response = OPI_Tools.Get(URL, Parameters);
Return Response;
EndFunction
#EndRegion #EndRegion
#Region MessageSending #Region MessageSending
@ -137,6 +162,92 @@ Function SendTextMessage(Val Token
EndFunction EndFunction
// SendFile
// Sends the file to the chat
//
// Note
// Method at API documentation: [POST /messages/sendFile](@teams.vk.com/botapi/#/messages/post_messages_sendFile)
//
// Parameters:
// Token - String - Bot token - token
// ChatID - String, Number - Chat ID for sending - chatid
// File - BinaryData, String - File for sending - file
// Text - String - File caption - text
// FileName - String - Displayed file name - filename
// Markup - String - Markup type for message text: MarkdownV2 or HTML - parsemod
//
// Returns:
// Map Of KeyAndValue - Serialized JSON response from VK Teams
Function SendFile(Val Token
, Val ChatID
, Val File
, Val Text = ""
, Val FileName = ""
, Val Markup = "MarkdownV2") Export
URL = "/messages/sendFile";
Parameters = NormalizeMain(URL, Token);
OPI_Tools.AddField("chatId" , ChatID , "String" , Parameters);
OPI_Tools.AddField("caption" , Text , "String" , Parameters);
OPI_Tools.AddField("parseMode" , Markup , "String" , Parameters);
If TypeOf(File) = Type("String") Then
FileObject = New File(File);
DisplayedName = FileObject.Name;
Else
DisplayedName = "file";
EndIf;
OPI_TypeConversion.GetBinaryData(File);
DisplayedName = ?(ValueIsFilled(FileName), FileName, DisplayedName);
Files = New Map;
Files.Insert("file|" + DisplayedName, File);
Response = OPI_Tools.PostMultipart(URL, Parameters, Files, "");
Return Response;
EndFunction
// Resend file
// Sends a previously uploaded file by ID
//
// Note
// Method at API documentation: [GET /messages/sendFile](@teams.vk.com/botapi/#/messages/get_messages_sendFile)
//
// Parameters:
// Token - String - Bot token - token
// ChatID - String, Number - Chat ID for sending - chatid
// FileID - String, Number - File ID to send - fileid
// Text - String - File caption - text
// FileName - String - Displayed file name - filename
// Markup - String - Markup type for message text: MarkdownV2 or HTML - parsemod
//
// Returns:
// Map Of KeyAndValue - Serialized JSON response from VK Teams
Function ResendFile(Val Token
, Val ChatID
, Val FileID
, Val Text = ""
, Val FileName = ""
, Val Markup = "MarkdownV2") Export
URL = "/messages/sendFile";
Parameters = NormalizeMain(URL, Token);
OPI_Tools.AddField("chatId" , ChatID , "String", Parameters);
OPI_Tools.AddField("caption" , Text , "String", Parameters);
OPI_Tools.AddField("parseMode" , Markup , "String", Parameters);
OPI_Tools.AddField("fileId" , FileID , "String", Parameters);
Response = OPI_Tools.Get(URL, Parameters);
Return Response;
EndFunction
// Forward message // Forward message
// Forwards an existing message to the current dialog box // Forwards an existing message to the current dialog box
// //

View File

@ -52,6 +52,27 @@
NewLine.Область = "Common methods"; NewLine.Область = "Common methods";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "GetFileInformation";
NewLine.МетодПоиска = "GETFILEINFORMATION";
NewLine.Параметр = "--token";
NewLine.Описание = "Bot token";
NewLine.Область = "Common methods";
NewLine.ОписаниеМетода = "Gets information about a file by ID";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "GetFileInformation";
NewLine.МетодПоиска = "GETFILEINFORMATION";
NewLine.Параметр = "--fileid";
NewLine.Описание = "File ID";
NewLine.Область = "Common methods";
NewLine = CompositionTable.Add(); NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams"; NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams"; NewLine.Модуль = "OPI_VKTeams";
@ -113,6 +134,128 @@
NewLine.Область = "Message sending"; NewLine.Область = "Message sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "SendFile";
NewLine.МетодПоиска = "SENDFILE";
NewLine.Параметр = "--token";
NewLine.Описание = "Bot token";
NewLine.Область = "Message sending";
NewLine.ОписаниеМетода = "Sends the file to the chat";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "SendFile";
NewLine.МетодПоиска = "SENDFILE";
NewLine.Параметр = "--chatid";
NewLine.Описание = "Chat ID for sending";
NewLine.Область = "Message sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "SendFile";
NewLine.МетодПоиска = "SENDFILE";
NewLine.Параметр = "--file";
NewLine.Описание = "File for sending";
NewLine.Область = "Message sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "SendFile";
NewLine.МетодПоиска = "SENDFILE";
NewLine.Параметр = "--text";
NewLine.Описание = "File caption (optional, def. val. - Empty value)";
NewLine.Область = "Message sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "SendFile";
NewLine.МетодПоиска = "SENDFILE";
NewLine.Параметр = "--filename";
NewLine.Описание = "Displayed file name (optional, def. val. - Empty value)";
NewLine.Область = "Message sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "SendFile";
NewLine.МетодПоиска = "SENDFILE";
NewLine.Параметр = "--parsemod";
NewLine.Описание = "Markup type for message text: MarkdownV2 or HTML (optional, def. val. - MarkdownV2)";
NewLine.Область = "Message sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "ResendFile";
NewLine.МетодПоиска = "RESENDFILE";
NewLine.Параметр = "--token";
NewLine.Описание = "Bot token";
NewLine.Область = "Message sending";
NewLine.ОписаниеМетода = "Sends a previously uploaded file by ID";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "ResendFile";
NewLine.МетодПоиска = "RESENDFILE";
NewLine.Параметр = "--chatid";
NewLine.Описание = "Chat ID for sending";
NewLine.Область = "Message sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "ResendFile";
NewLine.МетодПоиска = "RESENDFILE";
NewLine.Параметр = "--fileid";
NewLine.Описание = "File ID to send";
NewLine.Область = "Message sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "ResendFile";
NewLine.МетодПоиска = "RESENDFILE";
NewLine.Параметр = "--text";
NewLine.Описание = "File caption (optional, def. val. - Empty value)";
NewLine.Область = "Message sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "ResendFile";
NewLine.МетодПоиска = "RESENDFILE";
NewLine.Параметр = "--filename";
NewLine.Описание = "Displayed file name (optional, def. val. - Empty value)";
NewLine.Область = "Message sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams";
NewLine.Метод = "ResendFile";
NewLine.МетодПоиска = "RESENDFILE";
NewLine.Параметр = "--parsemod";
NewLine.Описание = "Markup type for message text: MarkdownV2 or HTML (optional, def. val. - MarkdownV2)";
NewLine.Область = "Message sending";
NewLine = CompositionTable.Add(); NewLine = CompositionTable.Add();
NewLine.Библиотека = "vkteams"; NewLine.Библиотека = "vkteams";
NewLine.Модуль = "OPI_VKTeams"; NewLine.Модуль = "OPI_VKTeams";

View File

@ -94,6 +94,31 @@
КонецФункции КонецФункции
// Получить информацию о файле
// Получает информацию о файле по его ID
//
// Примечание:
// Метод в документации API: [GET /files/getInfo](@teams.vk.com/botapi/#/files/get_files_getInfo)
//
// Параметры:
// Токен - Строка - Токен бота - token
// IDФайла - Строка, Число - ID Файла - fileid
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от VK Teams
Функция ПолучитьИнформациюОФайле(Знач Токен, Знач IDФайла) Экспорт
URL = "/files/getInfo";
Параметры = НормализоватьОснову(URL, Токен);
OPI_Инструменты.ДобавитьПоле("fileId", IDФайла , "Строка", Параметры);
Ответ = OPI_Инструменты.Get(URL, Параметры);
Возврат Ответ;
КонецФункции
#КонецОбласти #КонецОбласти
#Область ОтправкаСообщений #Область ОтправкаСообщений
@ -137,6 +162,92 @@
КонецФункции КонецФункции
// Отправить файл
// Отправляет файл в чат
//
// Примечание:
// Метод в документации API: [POST /messages/sendFile](@teams.vk.com/botapi/#/messages/post_messages_sendFile)
//
// Параметры:
// Токен - Строка - Токен бота - token
// IDЧата - Строка, Число - ID чата для отправки файла - chatid
// Файл - ДвоичныеДанные, Строка - Файл для отправки - file
// Текст - Строка - Подпись к файлу - text
// ИмяФайла - Строка - Отображаемое имя файла - filename
// Разметка - Строка - Вид разметки для текста сообщения: MarkdownV2 или HTML - parsemod
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от VK Teams
Функция ОтправитьФайл(Знач Токен
, Знач IDЧата
, Знач Файл
, Знач Текст = ""
, Знач ИмяФайла = ""
, Знач Разметка = "MarkdownV2") Экспорт
URL = "/messages/sendFile";
Параметры = НормализоватьОснову(URL, Токен);
OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("caption" , Текст , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("parseMode" , Разметка , "Строка" , Параметры);
Если ТипЗнч(Файл) = Тип("Строка") Тогда
ФайлОбъект = Новый Файл(Файл);
ИспользуемоеИмя = ФайлОбъект.Имя;
Иначе
ИспользуемоеИмя = "file";
КонецЕсли;
OPI_ПреобразованиеТипов.ПолучитьДвоичныеДанные(Файл);
ИспользуемоеИмя = ?(ЗначениеЗаполнено(ИмяФайла), ИмяФайла, ИспользуемоеИмя);
Файлы = Новый Соответствие;
Файлы.Вставить("file|" + ИспользуемоеИмя, Файл);
Ответ = OPI_Инструменты.PostMultipart(URL, Параметры, Файлы, "");
Возврат Ответ;
КонецФункции
// Переслать файл
// Отправляет ранее загруженный файл по его ID
//
// Примечание:
// Метод в документации API: [GET /messages/sendFile](@teams.vk.com/botapi/#/messages/get_messages_sendFile)
//
// Параметры:
// Токен - Строка - Токен бота - token
// IDЧата - Строка, Число - ID чата для отправки файла - chatid
// IDФайла - Строка, Число - ID Файла для отправки - fileid
// Текст - Строка - Подпись к файлу - text
// ИмяФайла - Строка - Отображаемое имя файла - filename
// Разметка - Строка - Вид разметки для текста сообщения: MarkdownV2 или HTML - parsemod
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от VK Teams
Функция ПереслатьФайл(Знач Токен
, Знач IDЧата
, Знач IDФайла
, Знач Текст = ""
, Знач ИмяФайла = ""
, Знач Разметка = "MarkdownV2") Экспорт
URL = "/messages/sendFile";
Параметры = НормализоватьОснову(URL, Токен);
OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("caption" , Текст , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("parseMode" , Разметка, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("fileId" , IDФайла , "Строка", Параметры);
Ответ = OPI_Инструменты.Get(URL, Параметры);
Возврат Ответ;
КонецФункции
// Переслать сообщение // Переслать сообщение
// Переслыает существующее сообщение в текущий диалог // Переслыает существующее сообщение в текущий диалог
// //

View File

@ -3232,10 +3232,12 @@
Процедура ВКТ_ОбщиеМетоды() Экспорт Процедура ВКТ_ОбщиеМетоды() Экспорт
ПараметрыТеста = Новый Структура; ПараметрыТеста = Новый Структура;
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_Token", ПараметрыТеста); OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_Token" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_FileID", ПараметрыТеста);
VkTeams_ПроверитьТокен(ПараметрыТеста); VkTeams_ПроверитьТокен(ПараметрыТеста);
VkTeams_ПолучитьСобытия(ПараметрыТеста); VkTeams_ПолучитьСобытия(ПараметрыТеста);
VKTeams_ПолучитьИнформациюОФайле(ПараметрыТеста);
КонецПроцедуры КонецПроцедуры
@ -3246,9 +3248,12 @@
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_ChatID" , ПараметрыТеста); OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_ChatID" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_ChatID2" , ПараметрыТеста); OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_ChatID2" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_MessageID", ПараметрыТеста); OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_MessageID", ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Document" , ПараметрыТеста);
VkTeams_ОтправитьТекстовоеСообщение(ПараметрыТеста); VkTeams_ОтправитьТекстовоеСообщение(ПараметрыТеста);
VKTeams_ПереслатьСообщение(ПараметрыТеста); VKTeams_ПереслатьСообщение(ПараметрыТеста);
VKTeams_ОтправитьФайл(ПараметрыТеста);
VKTeams_ПереслатьФайл(ПараметрыТеста);
КонецПроцедуры КонецПроцедуры
@ -3963,6 +3968,14 @@
КонецПроцедуры КонецПроцедуры
Процедура Проверка_ВКТФайл(Знач Результат)
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["ok"]).Равно(Истина);
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["type"]).Заполнено();
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["size"]).Заполнено();
КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область АтомарныеТесты #Область АтомарныеТесты
@ -10334,6 +10347,81 @@
КонецПроцедуры КонецПроцедуры
Процедура VKTeams_ОтправитьФайл(ПараметрыФункции)
Токен = ПараметрыФункции["VkTeams_Token"];
IDЧата = ПараметрыФункции["VkTeams_ChatID"];
Текст = "Подпись к файлу";
Файл = ПараметрыФункции["Document"]; // URL
ФайлПуть = ПолучитьИмяВременногоФайла("docx"); // Путь
КопироватьФайл(Файл, ФайлПуть);
ФайлДД = Новый ДвоичныеДанные(ФайлПуть); // Двоичные
Результат = OPI_VKTeams.ОтправитьФайл(Токен, IDЧата, Файл);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайл (URL)", "VkTeams");
Проверка_ВКТСообщение(Результат); // SKIP
Результат = OPI_VKTeams.ОтправитьФайл(Токен, IDЧата, ФайлПуть, Текст);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайл (Путь)", "VkTeams");
Проверка_ВКТСообщение(Результат); // SKIP
Результат = OPI_VKTeams.ОтправитьФайл(Токен, IDЧата, Файл, Текст, "ВажныйДокумент.docx");
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайл", "VkTeams");
Проверка_ВКТСообщение(Результат);
УдалитьФайлы(ФайлПуть);
IDФайла = Результат["fileId"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("VkTeams_FileID", IDФайла);
ПараметрыФункции.Вставить("VkTeams_FileID", IDФайла);
OPI_Инструменты.Пауза(5);
КонецПроцедуры
Процедура VKTeams_ПереслатьФайл(ПараметрыФункции)
Токен = ПараметрыФункции["VkTeams_Token"];
IDЧата = ПараметрыФункции["VkTeams_ChatID"];
IDФайла = ПараметрыФункции["VkTeams_FileID"];
Текст = "Подпись к файлу";
Результат = OPI_VKTeams.ПереслатьФайл(Токен, IDЧата, IDФайла, Текст, "ТотЖеДокумент.docx");
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПереслатьФайл", "VkTeams");
Проверка_ВКТСообщение(Результат);
КонецПроцедуры
Процедура VKTeams_ПолучитьИнформациюОФайле(ПараметрыФункции)
Токен = ПараметрыФункции["VkTeams_Token"];
IDФайла = ПараметрыФункции["VkTeams_FileID"];
Результат = OPI_VKTeams.ПолучитьИнформациюОФайле(Токен, IDФайла);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьИнформациюОФайле", "VkTeams");
Проверка_ВКТФайл(Результат);
КонецПроцедуры
#КонецОбласти #КонецОбласти
#КонецОбласти #КонецОбласти

View File

@ -237,8 +237,8 @@
НовыйТест(ТаблицаТестов, "Б24_УправлениеПодразделениями" , "Управление подразделениями" , Битрикс); НовыйТест(ТаблицаТестов, "Б24_УправлениеПодразделениями" , "Управление подразделениями" , Битрикс);
НовыйТест(ТаблицаТестов, "Б24_УправлениеПользователями" , "Управление пользователями" , Битрикс); НовыйТест(ТаблицаТестов, "Б24_УправлениеПользователями" , "Управление пользователями" , Битрикс);
НовыйТест(ТаблицаТестов, "ВКТ_ОбщиеМетоды" , "Общие методы" , ВКТ);
НовыйТест(ТаблицаТестов, "ВКТ_ОтправкаСообщений" , "Отправка сообщений" , ВКТ); НовыйТест(ТаблицаТестов, "ВКТ_ОтправкаСообщений" , "Отправка сообщений" , ВКТ);
НовыйТест(ТаблицаТестов, "ВКТ_ОбщиеМетоды" , "Общие методы" , ВКТ);
Возврат ТаблицаТестов; Возврат ТаблицаТестов;

View File

@ -94,6 +94,31 @@
КонецФункции КонецФункции
// Получить информацию о файле
// Получает информацию о файле по его ID
//
// Примечание:
// Метод в документации API: [GET /files/getInfo](@teams.vk.com/botapi/#/files/get_files_getInfo)
//
// Параметры:
// Токен - Строка - Токен бота - token
// IDФайла - Строка, Число - ID Файла - fileid
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от VK Teams
Функция ПолучитьИнформациюОФайле(Знач Токен, Знач IDФайла) Экспорт
URL = "/files/getInfo";
Параметры = НормализоватьОснову(URL, Токен);
OPI_Инструменты.ДобавитьПоле("fileId", IDФайла , "Строка", Параметры);
Ответ = OPI_Инструменты.Get(URL, Параметры);
Возврат Ответ;
КонецФункции
#КонецОбласти #КонецОбласти
#Область ОтправкаСообщений #Область ОтправкаСообщений
@ -137,6 +162,92 @@
КонецФункции КонецФункции
// Отправить файл
// Отправляет файл в чат
//
// Примечание:
// Метод в документации API: [POST /messages/sendFile](@teams.vk.com/botapi/#/messages/post_messages_sendFile)
//
// Параметры:
// Токен - Строка - Токен бота - token
// IDЧата - Строка, Число - ID чата для отправки файла - chatid
// Файл - ДвоичныеДанные, Строка - Файл для отправки - file
// Текст - Строка - Подпись к файлу - text
// ИмяФайла - Строка - Отображаемое имя файла - filename
// Разметка - Строка - Вид разметки для текста сообщения: MarkdownV2 или HTML - parsemod
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от VK Teams
Функция ОтправитьФайл(Знач Токен
, Знач IDЧата
, Знач Файл
, Знач Текст = ""
, Знач ИмяФайла = ""
, Знач Разметка = "MarkdownV2") Экспорт
URL = "/messages/sendFile";
Параметры = НормализоватьОснову(URL, Токен);
OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("caption" , Текст , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("parseMode" , Разметка , "Строка" , Параметры);
Если ТипЗнч(Файл) = Тип("Строка") Тогда
ФайлОбъект = Новый Файл(Файл);
ИспользуемоеИмя = ФайлОбъект.Имя;
Иначе
ИспользуемоеИмя = "file";
КонецЕсли;
OPI_ПреобразованиеТипов.ПолучитьДвоичныеДанные(Файл);
ИспользуемоеИмя = ?(ЗначениеЗаполнено(ИмяФайла), ИмяФайла, ИспользуемоеИмя);
Файлы = Новый Соответствие;
Файлы.Вставить("file|" + ИспользуемоеИмя, Файл);
Ответ = OPI_Инструменты.PostMultipart(URL, Параметры, Файлы, "");
Возврат Ответ;
КонецФункции
// Переслать файл
// Отправляет ранее загруженный файл по его ID
//
// Примечание:
// Метод в документации API: [GET /messages/sendFile](@teams.vk.com/botapi/#/messages/get_messages_sendFile)
//
// Параметры:
// Токен - Строка - Токен бота - token
// IDЧата - Строка, Число - ID чата для отправки файла - chatid
// IDФайла - Строка, Число - ID Файла для отправки - fileid
// Текст - Строка - Подпись к файлу - text
// ИмяФайла - Строка - Отображаемое имя файла - filename
// Разметка - Строка - Вид разметки для текста сообщения: MarkdownV2 или HTML - parsemod
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от VK Teams
Функция ПереслатьФайл(Знач Токен
, Знач IDЧата
, Знач IDФайла
, Знач Текст = ""
, Знач ИмяФайла = ""
, Знач Разметка = "MarkdownV2") Экспорт
URL = "/messages/sendFile";
Параметры = НормализоватьОснову(URL, Токен);
OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("caption" , Текст , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("parseMode" , Разметка, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("fileId" , IDФайла , "Строка", Параметры);
Ответ = OPI_Инструменты.Get(URL, Параметры);
Возврат Ответ;
КонецФункции
// Переслать сообщение // Переслать сообщение
// Переслыает существующее сообщение в текущий диалог // Переслыает существующее сообщение в текущий диалог
// //

View File

@ -237,8 +237,8 @@
НовыйТест(ТаблицаТестов, "Б24_УправлениеПодразделениями" , "Управление подразделениями" , Битрикс); НовыйТест(ТаблицаТестов, "Б24_УправлениеПодразделениями" , "Управление подразделениями" , Битрикс);
НовыйТест(ТаблицаТестов, "Б24_УправлениеПользователями" , "Управление пользователями" , Битрикс); НовыйТест(ТаблицаТестов, "Б24_УправлениеПользователями" , "Управление пользователями" , Битрикс);
НовыйТест(ТаблицаТестов, "ВКТ_ОбщиеМетоды" , "Общие методы" , ВКТ);
НовыйТест(ТаблицаТестов, "ВКТ_ОтправкаСообщений" , "Отправка сообщений" , ВКТ); НовыйТест(ТаблицаТестов, "ВКТ_ОтправкаСообщений" , "Отправка сообщений" , ВКТ);
НовыйТест(ТаблицаТестов, "ВКТ_ОбщиеМетоды" , "Общие методы" , ВКТ);
Возврат ТаблицаТестов; Возврат ТаблицаТестов;

View File

@ -3232,10 +3232,12 @@
Процедура ВКТ_ОбщиеМетоды() Экспорт Процедура ВКТ_ОбщиеМетоды() Экспорт
ПараметрыТеста = Новый Структура; ПараметрыТеста = Новый Структура;
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_Token", ПараметрыТеста); OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_Token" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_FileID", ПараметрыТеста);
VkTeams_ПроверитьТокен(ПараметрыТеста); VkTeams_ПроверитьТокен(ПараметрыТеста);
VkTeams_ПолучитьСобытия(ПараметрыТеста); VkTeams_ПолучитьСобытия(ПараметрыТеста);
VKTeams_ПолучитьИнформациюОФайле(ПараметрыТеста);
КонецПроцедуры КонецПроцедуры
@ -3246,9 +3248,12 @@
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_ChatID" , ПараметрыТеста); OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_ChatID" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_ChatID2" , ПараметрыТеста); OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_ChatID2" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_MessageID", ПараметрыТеста); OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_MessageID", ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Document" , ПараметрыТеста);
VkTeams_ОтправитьТекстовоеСообщение(ПараметрыТеста); VkTeams_ОтправитьТекстовоеСообщение(ПараметрыТеста);
VKTeams_ПереслатьСообщение(ПараметрыТеста); VKTeams_ПереслатьСообщение(ПараметрыТеста);
VKTeams_ОтправитьФайл(ПараметрыТеста);
VKTeams_ПереслатьФайл(ПараметрыТеста);
КонецПроцедуры КонецПроцедуры
@ -3963,6 +3968,14 @@
КонецПроцедуры КонецПроцедуры
Процедура Проверка_ВКТФайл(Знач Результат)
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["ok"]).Равно(Истина);
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["type"]).Заполнено();
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["size"]).Заполнено();
КонецПроцедуры
#КонецОбласти #КонецОбласти
#Область АтомарныеТесты #Область АтомарныеТесты
@ -10334,6 +10347,81 @@
КонецПроцедуры КонецПроцедуры
Процедура VKTeams_ОтправитьФайл(ПараметрыФункции)
Токен = ПараметрыФункции["VkTeams_Token"];
IDЧата = ПараметрыФункции["VkTeams_ChatID"];
Текст = "Подпись к файлу";
Файл = ПараметрыФункции["Document"]; // URL
ФайлПуть = ПолучитьИмяВременногоФайла("docx"); // Путь
КопироватьФайл(Файл, ФайлПуть);
ФайлДД = Новый ДвоичныеДанные(ФайлПуть); // Двоичные
Результат = OPI_VKTeams.ОтправитьФайл(Токен, IDЧата, Файл);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайл (URL)", "VkTeams");
Проверка_ВКТСообщение(Результат); // SKIP
Результат = OPI_VKTeams.ОтправитьФайл(Токен, IDЧата, ФайлПуть, Текст);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайл (Путь)", "VkTeams");
Проверка_ВКТСообщение(Результат); // SKIP
Результат = OPI_VKTeams.ОтправитьФайл(Токен, IDЧата, Файл, Текст, "ВажныйДокумент.docx");
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайл", "VkTeams");
Проверка_ВКТСообщение(Результат);
УдалитьФайлы(ФайлПуть);
IDФайла = Результат["fileId"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("VkTeams_FileID", IDФайла);
ПараметрыФункции.Вставить("VkTeams_FileID", IDФайла);
OPI_Инструменты.Пауза(5);
КонецПроцедуры
Процедура VKTeams_ПереслатьФайл(ПараметрыФункции)
Токен = ПараметрыФункции["VkTeams_Token"];
IDЧата = ПараметрыФункции["VkTeams_ChatID"];
IDФайла = ПараметрыФункции["VkTeams_FileID"];
Текст = "Подпись к файлу";
Результат = OPI_VKTeams.ПереслатьФайл(Токен, IDЧата, IDФайла, Текст, "ТотЖеДокумент.docx");
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПереслатьФайл", "VkTeams");
Проверка_ВКТСообщение(Результат);
КонецПроцедуры
Процедура VKTeams_ПолучитьИнформациюОФайле(ПараметрыФункции)
Токен = ПараметрыФункции["VkTeams_Token"];
IDФайла = ПараметрыФункции["VkTeams_FileID"];
Результат = OPI_VKTeams.ПолучитьИнформациюОФайле(Токен, IDФайла);
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьИнформациюОФайле", "VkTeams");
Проверка_ВКТФайл(Результат);
КонецПроцедуры
#КонецОбласти #КонецОбласти
#КонецОбласти #КонецОбласти

View File

@ -52,6 +52,27 @@
НоваяСтрока.Область = "Общие методы"; НоваяСтрока.Область = "Общие методы";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ПолучитьИнформациюОФайле";
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬИНФОРМАЦИЮОФАЙЛЕ";
НоваяСтрока.Параметр = "--token";
НоваяСтрока.Описание = "Токен бота";
НоваяСтрока.Область = "Общие методы";
НоваяСтрока.ОписаниеМетода = "Получает информацию о файле по его ID";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ПолучитьИнформациюОФайле";
НоваяСтрока.МетодПоиска = "ПОЛУЧИТЬИНФОРМАЦИЮОФАЙЛЕ";
НоваяСтрока.Параметр = "--fileid";
НоваяСтрока.Описание = "ID Файла";
НоваяСтрока.Область = "Общие методы";
НоваяСтрока = ТаблицаСостава.Добавить(); НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams"; НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams"; НоваяСтрока.Модуль = "OPI_VKTeams";
@ -117,6 +138,128 @@
НоваяСтрока.Область = "Отправка сообщений"; НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ОтправитьФайл";
НоваяСтрока.МетодПоиска = "ОТПРАВИТЬФАЙЛ";
НоваяСтрока.Параметр = "--token";
НоваяСтрока.Описание = "Токен бота";
НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока.ОписаниеМетода = "Отправляет файл в чат";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ОтправитьФайл";
НоваяСтрока.МетодПоиска = "ОТПРАВИТЬФАЙЛ";
НоваяСтрока.Параметр = "--chatid";
НоваяСтрока.Описание = "ID чата для отправки файла";
НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ОтправитьФайл";
НоваяСтрока.МетодПоиска = "ОТПРАВИТЬФАЙЛ";
НоваяСтрока.Параметр = "--file";
НоваяСтрока.Описание = "Файл для отправки";
НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ОтправитьФайл";
НоваяСтрока.МетодПоиска = "ОТПРАВИТЬФАЙЛ";
НоваяСтрока.Параметр = "--text";
НоваяСтрока.Описание = "Подпись к файлу (необяз. по ум. - Пустое значение)";
НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ОтправитьФайл";
НоваяСтрока.МетодПоиска = "ОТПРАВИТЬФАЙЛ";
НоваяСтрока.Параметр = "--filename";
НоваяСтрока.Описание = "Отображаемое имя файла (необяз. по ум. - Пустое значение)";
НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ОтправитьФайл";
НоваяСтрока.МетодПоиска = "ОТПРАВИТЬФАЙЛ";
НоваяСтрока.Параметр = "--parsemod";
НоваяСтрока.Описание = "Вид разметки для текста сообщения: MarkdownV2 или HTML (необяз. по ум. - MarkdownV2)";
НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ПереслатьФайл";
НоваяСтрока.МетодПоиска = "ПЕРЕСЛАТЬФАЙЛ";
НоваяСтрока.Параметр = "--token";
НоваяСтрока.Описание = "Токен бота";
НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока.ОписаниеМетода = "Отправляет ранее загруженный файл по его ID";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ПереслатьФайл";
НоваяСтрока.МетодПоиска = "ПЕРЕСЛАТЬФАЙЛ";
НоваяСтрока.Параметр = "--chatid";
НоваяСтрока.Описание = "ID чата для отправки файла";
НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ПереслатьФайл";
НоваяСтрока.МетодПоиска = "ПЕРЕСЛАТЬФАЙЛ";
НоваяСтрока.Параметр = "--fileid";
НоваяСтрока.Описание = "ID Файла для отправки";
НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ПереслатьФайл";
НоваяСтрока.МетодПоиска = "ПЕРЕСЛАТЬФАЙЛ";
НоваяСтрока.Параметр = "--text";
НоваяСтрока.Описание = "Подпись к файлу (необяз. по ум. - Пустое значение)";
НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ПереслатьФайл";
НоваяСтрока.МетодПоиска = "ПЕРЕСЛАТЬФАЙЛ";
НоваяСтрока.Параметр = "--filename";
НоваяСтрока.Описание = "Отображаемое имя файла (необяз. по ум. - Пустое значение)";
НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams";
НоваяСтрока.Метод = "ПереслатьФайл";
НоваяСтрока.МетодПоиска = "ПЕРЕСЛАТЬФАЙЛ";
НоваяСтрока.Параметр = "--parsemod";
НоваяСтрока.Описание = "Вид разметки для текста сообщения: MarkdownV2 или HTML (необяз. по ум. - MarkdownV2)";
НоваяСтрока.Область = "Отправка сообщений";
НоваяСтрока = ТаблицаСостава.Добавить(); НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "vkteams"; НоваяСтрока.Библиотека = "vkteams";
НоваяСтрока.Модуль = "OPI_VKTeams"; НоваяСтрока.Модуль = "OPI_VKTeams";