1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-01-02 03:38:55 +02:00

Преобразование OPI -> OInt (workflow)

This commit is contained in:
Vitaly the Alpaca 2024-07-14 20:02:51 +00:00 committed by Vitaly the Alpaca (bot)
parent 43dba15efa
commit eef4f58ef8
13 changed files with 4512 additions and 4462 deletions

File diff suppressed because it is too large Load Diff

View File

@ -31,6 +31,7 @@
// BSLLS:IncorrectLineBreak-off
// BSLLS:NumberOfOptionalParams-off
// BSLLS:UsingServiceTag-off
// BSLLS:LineLength-off
//@skip-check module-structure-top-region
//@skip-check module-structure-method-in-regions
@ -511,7 +512,6 @@ EndFunction
// Method at API documentation: [tasks.task.files.attach](@dev.1c-bitrix.ru/rest_help/tasks/task/tasks/tasks_task_files_attach.php)
//
// Parameters:
// Parameters:
// URL - String - URL of webhook or a Bitrix24 domain, when token used - url
// TaskID - Number, String - Task ID - task
// FileID - Number, String - File ID - fileid
@ -1042,15 +1042,17 @@ EndFunction
// Map Of KeyAndValue - serialized JSON of answer from Bitrix24 API
Function AddTasksChecklistElement(Val URL, Val TaskID, Val Text, Val Completed = False, Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.checklistitem.add");
Fields = New Structure;
MakeBoolean(Completed);
OPI_Tools.AddField("TITLE" , Text , "String", Fields);
OPI_Tools.AddField("IS_COMPLETE", Completed, "String", Fields);
OPI_Tools.AddField("TITLE" , Text , String_, Fields);
OPI_Tools.AddField("IS_COMPLETE", Completed, String_, Fields);
OPI_Tools.AddField("TASKID", TaskID, "String" , Parameters);
OPI_Tools.AddField("TASKID", TaskID, String_ , Parameters);
OPI_Tools.AddField("FIELDS", Fields , "Collection", Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -1076,13 +1078,15 @@ EndFunction
// Map Of KeyAndValue - serialized JSON of answer from Bitrix24 API
Function UpdateTasksChecklistElement(Val URL, Val TaskID, Val ElementID, Val Text, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.checklistitem.update");
Fields = New Structure;
OPI_Tools.AddField("TITLE", Text, "String", Fields);
OPI_Tools.AddField("TITLE", Text, String_, Fields);
OPI_Tools.AddField("TASKID", TaskID , "String" , Parameters);
OPI_Tools.AddField("ITEMID", ElementID, "String" , Parameters);
OPI_Tools.AddField("TASKID", TaskID , String_ , Parameters);
OPI_Tools.AddField("ITEMID", ElementID, String_ , Parameters);
OPI_Tools.AddField("FIELDS", Fields , "Collection", Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -1301,13 +1305,15 @@ EndFunction
// Map Of KeyAndValue - serialized JSON of answer from Bitrix24 API
Function UpdateTaskComment(Val URL, Val TaskID, Val CommentID, Val Text, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.commentitem.update");
Comment = New Structure;
OPI_Tools.AddField("POST_MESSAGE", Text, "String", Comment);
OPI_Tools.AddField("TASKID", TaskID , "String" , Parameters);
OPI_Tools.AddField("ITEMID", CommentID, "String" , Parameters);
OPI_Tools.AddField("TASKID", TaskID , String_ , Parameters);
OPI_Tools.AddField("ITEMID", CommentID, String_ , Parameters);
OPI_Tools.AddField("FIELDS", Comment , "Collection", Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -1473,16 +1479,18 @@ Function AddKanbanStage(Val URL
, Val AsAdmin = False
, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.stages.add");
Fields = New Structure;
MakeBoolean(AsAdmin);
OPI_Tools.AddField("TITLE" , Name , "String", Fields);
OPI_Tools.AddField("COLOR" , Color , "String", Fields);
OPI_Tools.AddField("AFTER_ID" , PrevStageID , "String", Fields);
OPI_Tools.AddField("ENTITY_ID", EntityID , "String", Fields);
OPI_Tools.AddField("isAdmin" , AsAdmin, "String", Fields);
OPI_Tools.AddField("TITLE" , Name , String_, Fields);
OPI_Tools.AddField("COLOR" , Color , String_, Fields);
OPI_Tools.AddField("AFTER_ID" , PrevStageID , String_, Fields);
OPI_Tools.AddField("ENTITY_ID", EntityID , String_, Fields);
OPI_Tools.AddField("isAdmin" , AsAdmin, String_, Fields);
Parameters.Insert("fields", Fields);
@ -1517,15 +1525,17 @@ Function UpdateKanbansStage(Val URL
, Val AsAdmin = False
, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.stages.update");
Fields = New Structure;
OPI_Tools.AddField("TITLE" , Name , "String", Fields);
OPI_Tools.AddField("COLOR" , Color , "String", Fields);
OPI_Tools.AddField("AFTER_ID" , PrevStageID , "String", Fields);
OPI_Tools.AddField("TITLE" , Name , String_, Fields);
OPI_Tools.AddField("COLOR" , Color , String_, Fields);
OPI_Tools.AddField("AFTER_ID" , PrevStageID , String_, Fields);
OPI_Tools.AddField("isAdmin" , AsAdmin, "Boolean", Fields);
OPI_Tools.AddField("id" , StageID, "String" , Parameters);
OPI_Tools.AddField("id" , StageID, String_ , Parameters);
OPI_Tools.AddField("fields", Fields , "Collection", Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -1616,20 +1626,21 @@ Function MoveTaskToKanbanStage(Val URL
, Val After = 0
, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.stages.movetask");
OPI_Tools.AddField("id" , TaskID, "String", Parameters);
OPI_Tools.AddField("stageId", StageID, "String", Parameters);
OPI_Tools.AddField("id" , TaskID, String_, Parameters);
OPI_Tools.AddField("stageId", StageID, String_, Parameters);
If ValueIsFilled(Prev) Then
OPI_Tools.AddField("before", Prev, "String", Parameters);
OPI_Tools.AddField("before", Prev, String_, Parameters);
Else
OPI_TypeConversion.GetLine(After);
OPI_Tools.AddField("after", After, "String", Parameters);
OPI_Tools.AddField("after", After, String_, Parameters);
EndIf;
@ -1668,15 +1679,17 @@ Function AddTaskTimeAccounting(Val URL
, Val SetupDate = ""
, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.elapseditem.add");
Fields = New Structure;
OPI_Tools.AddField("SECONDS" , Time , "String" , Fields);
OPI_Tools.AddField("COMMENT_TEXT", Text , "String" , Fields);
OPI_Tools.AddField("USER_ID" , UserID, "String" , Fields);
OPI_Tools.AddField("SECONDS" , Time , String_ , Fields);
OPI_Tools.AddField("COMMENT_TEXT", Text , String_ , Fields);
OPI_Tools.AddField("USER_ID" , UserID, String_ , Fields);
OPI_Tools.AddField("CREATED_DATE", SetupDate , "DateISO", Fields);
OPI_Tools.AddField("TASKID" , TaskID, "String" , Parameters);
OPI_Tools.AddField("TASKID" , TaskID, String_ , Parameters);
OPI_Tools.AddField("ARFIELDS", Fields , "Collection", Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -1788,16 +1801,18 @@ Function UpdateTaskTimeAccounting(Val URL
, Val Text = ""
, Val SetupDate = ""
, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.elapseditem.update");
Fields = New Structure;
OPI_Tools.AddField("SECONDS" , Time , "String" , Fields);
OPI_Tools.AddField("COMMENT_TEXT", Text , "String" , Fields);
OPI_Tools.AddField("SECONDS" , Time , String_ , Fields);
OPI_Tools.AddField("COMMENT_TEXT", Text , String_ , Fields);
OPI_Tools.AddField("CREATED_DATE", SetupDate , "DateISO", Fields);
OPI_Tools.AddField("TASKID" , TaskID, "String" , Parameters);
OPI_Tools.AddField("ITEMID" , RecordID, "String" , Parameters);
OPI_Tools.AddField("TASKID" , TaskID, String_ , Parameters);
OPI_Tools.AddField("ITEMID" , RecordID, String_ , Parameters);
OPI_Tools.AddField("ARFIELDS", Fields , "Collection", Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -2301,7 +2316,6 @@ EndFunction
// Map Of KeyAndValue - serialized JSON of answer from Bitrix24 API
Function UploadFileToFolder(Val URL, Val Name, Val File, Val FolderID, Val Token = "") Export
OPI_TypeConversion.GetLine(Name);
OPI_TypeConversion.GetBinaryData(File);
@ -2329,8 +2343,7 @@ Function UploadFileToFolder(Val URL, Val Name, Val File, Val FolderID, Val Token
EndIf;
EndIf;
EndIf;
Return Response;
@ -2824,14 +2837,16 @@ Function GetChatMessagesList(Val URL
, Val FirstID = ""
, Val Token = "") Export
String_ = "String";
OPI_TypeConversion.GetLine(LastID);
OPI_TypeConversion.GetLine(FirstID);
Parameters = NormalizeAuth(URL, Token, "im.dialog.messages.get");
OPI_Tools.AddField("DIALOG_ID", ChatID , "String", Parameters);
OPI_Tools.AddField("LAST_ID" , LastID, "String", Parameters);
OPI_Tools.AddField("FIRST_ID" , FirstID , "String", Parameters);
OPI_Tools.AddField("DIALOG_ID", ChatID , String_, Parameters);
OPI_Tools.AddField("LAST_ID" , LastID, String_, Parameters);
OPI_Tools.AddField("FIRST_ID" , FirstID , String_, Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -3117,11 +3132,13 @@ EndFunction
// Map Of KeyAndValue - serialized JSON of answer from Bitrix24 API
Function SendFile(Val URL, Val ChatID, Val FileID, Val Description = "", Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "im.disk.file.commit");
OPI_Tools.AddField("CHAT_ID" , ChatID , "String", Parameters);
OPI_Tools.AddField("UPLOAD_ID", FileID , "String", Parameters);
OPI_Tools.AddField("MESSAGE" , Description, "String", Parameters);
OPI_Tools.AddField("CHAT_ID" , ChatID , String_, Parameters);
OPI_Tools.AddField("UPLOAD_ID", FileID , String_, Parameters);
OPI_Tools.AddField("MESSAGE" , Description, String_, Parameters);
Response = OPI_Tools.Post(URL, Parameters);

View File

@ -1,4 +1,4 @@
Описание.Имя("oint")
Описание.Имя("oint")
.Версия("1.11.0")
.Автор("bayselonarrend")
.АдресАвтора("bayselonarrend@gmail.com")

View File

@ -8013,7 +8013,7 @@ Procedure Bitrix24_UpdateTaskComment(FunctionParameters)
OPI_TestDataRetrieval.WriteLog(Result, "UpdateTaskComment (wh)", "Bitrix24");
Check_BitrixTrue(Result); // SKIP
Check_BitrixTrue(Result); // SKIP
URL = FunctionParameters["Bitrix24_Domain"];
Token = FunctionParameters["Bitrix24_Token"];
@ -8184,7 +8184,7 @@ Procedure Bitrix24_MoveTaskToKanbanStage(FunctionParameters)
Check_BitrixTrue(Result);
OPI_Bitrix24.MoveTaskToKanbanStage(URL, TaskID, 2, , , Token)
OPI_Bitrix24.MoveTaskToKanbanStage(URL, TaskID, 2, , , Token);
EndProcedure
@ -8944,12 +8944,11 @@ Procedure Bitrix24_GetChatMessagesList(FunctionParameters)
OPI_TestDataRetrieval.WriteParameter("Bitrix24_ChatMessageID", MessageID); // SKIP
FunctionParameters.Insert("Bitrix24_ChatMessageID", MessageID); // SKIP
URL = FunctionParameters["Bitrix24_Domain"];
Token = FunctionParameters["Bitrix24_Token"];
UserID = 10;
Result = OPI_Bitrix24.GetChatMessagesList(URL, UserID, , 0,Token);
Result = OPI_Bitrix24.GetChatMessagesList(URL, UserID, , 0, Token);
// END
@ -8980,7 +8979,7 @@ Procedure Bitrix24_MarkMessageAsReaded(FunctionParameters)
UserID = 10;
MessageID = FunctionParameters["Bitrix24_UserMessageID"];
Result = OPI_Bitrix24.MarkMessageAsReaded(URL, UserID, MessageID,Token);
Result = OPI_Bitrix24.MarkMessageAsReaded(URL, UserID, MessageID, Token);
// END

View File

@ -826,8 +826,9 @@ Function SplitFileKey(Val FileData, Val ContentType)
DotReplacement = "___";
FileName = StrReplace(FileData, DotReplacement, ".");
NameParts = StrSplit(FileName, "|", False);
NameParts = 2;
If NameParts.Count() = 2 Then
If NameParts.Count() = NameParts Then
FieldName = NameParts[0];
FileName = NameParts[1];
Else

View File

@ -1,4 +1,3 @@
Manifest-Version: 1.0
Runtime-Version: 8.3.15
Base-Project: OpenIntegrations_Eng
Manifest-Version: 1.0
Base-Project: OpenIntegrations_ENG

View File

@ -31,6 +31,7 @@
// BSLLS:IncorrectLineBreak-off
// BSLLS:NumberOfOptionalParams-off
// BSLLS:UsingServiceTag-off
// BSLLS:LineLength-off
//@skip-check module-structure-top-region
//@skip-check module-structure-method-in-regions
@ -511,7 +512,6 @@ EndFunction
// Method at API documentation: [tasks.task.files.attach](@dev.1c-bitrix.ru/rest_help/tasks/task/tasks/tasks_task_files_attach.php)
//
// Parameters:
// Parameters:
// URL - String - URL of webhook or a Bitrix24 domain, when token used - url
// TaskID - Number, String - Task ID - task
// FileID - Number, String - File ID - fileid
@ -1042,15 +1042,17 @@ EndFunction
// Map Of KeyAndValue - serialized JSON of answer from Bitrix24 API
Function AddTasksChecklistElement(Val URL, Val TaskID, Val Text, Val Completed = False, Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.checklistitem.add");
Fields = New Structure;
MakeBoolean(Completed);
OPI_Tools.AddField("TITLE" , Text , "String", Fields);
OPI_Tools.AddField("IS_COMPLETE", Completed, "String", Fields);
OPI_Tools.AddField("TITLE" , Text , String_, Fields);
OPI_Tools.AddField("IS_COMPLETE", Completed, String_, Fields);
OPI_Tools.AddField("TASKID", TaskID, "String" , Parameters);
OPI_Tools.AddField("TASKID", TaskID, String_ , Parameters);
OPI_Tools.AddField("FIELDS", Fields , "Collection", Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -1076,13 +1078,15 @@ EndFunction
// Map Of KeyAndValue - serialized JSON of answer from Bitrix24 API
Function UpdateTasksChecklistElement(Val URL, Val TaskID, Val ElementID, Val Text, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.checklistitem.update");
Fields = New Structure;
OPI_Tools.AddField("TITLE", Text, "String", Fields);
OPI_Tools.AddField("TITLE", Text, String_, Fields);
OPI_Tools.AddField("TASKID", TaskID , "String" , Parameters);
OPI_Tools.AddField("ITEMID", ElementID, "String" , Parameters);
OPI_Tools.AddField("TASKID", TaskID , String_ , Parameters);
OPI_Tools.AddField("ITEMID", ElementID, String_ , Parameters);
OPI_Tools.AddField("FIELDS", Fields , "Collection", Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -1301,13 +1305,15 @@ EndFunction
// Map Of KeyAndValue - serialized JSON of answer from Bitrix24 API
Function UpdateTaskComment(Val URL, Val TaskID, Val CommentID, Val Text, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.commentitem.update");
Comment = New Structure;
OPI_Tools.AddField("POST_MESSAGE", Text, "String", Comment);
OPI_Tools.AddField("TASKID", TaskID , "String" , Parameters);
OPI_Tools.AddField("ITEMID", CommentID, "String" , Parameters);
OPI_Tools.AddField("TASKID", TaskID , String_ , Parameters);
OPI_Tools.AddField("ITEMID", CommentID, String_ , Parameters);
OPI_Tools.AddField("FIELDS", Comment , "Collection", Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -1473,16 +1479,18 @@ Function AddKanbanStage(Val URL
, Val AsAdmin = False
, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.stages.add");
Fields = New Structure;
MakeBoolean(AsAdmin);
OPI_Tools.AddField("TITLE" , Name , "String", Fields);
OPI_Tools.AddField("COLOR" , Color , "String", Fields);
OPI_Tools.AddField("AFTER_ID" , PrevStageID , "String", Fields);
OPI_Tools.AddField("ENTITY_ID", EntityID , "String", Fields);
OPI_Tools.AddField("isAdmin" , AsAdmin, "String", Fields);
OPI_Tools.AddField("TITLE" , Name , String_, Fields);
OPI_Tools.AddField("COLOR" , Color , String_, Fields);
OPI_Tools.AddField("AFTER_ID" , PrevStageID , String_, Fields);
OPI_Tools.AddField("ENTITY_ID", EntityID , String_, Fields);
OPI_Tools.AddField("isAdmin" , AsAdmin, String_, Fields);
Parameters.Insert("fields", Fields);
@ -1517,15 +1525,17 @@ Function UpdateKanbansStage(Val URL
, Val AsAdmin = False
, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.stages.update");
Fields = New Structure;
OPI_Tools.AddField("TITLE" , Name , "String", Fields);
OPI_Tools.AddField("COLOR" , Color , "String", Fields);
OPI_Tools.AddField("AFTER_ID" , PrevStageID , "String", Fields);
OPI_Tools.AddField("TITLE" , Name , String_, Fields);
OPI_Tools.AddField("COLOR" , Color , String_, Fields);
OPI_Tools.AddField("AFTER_ID" , PrevStageID , String_, Fields);
OPI_Tools.AddField("isAdmin" , AsAdmin, "Boolean", Fields);
OPI_Tools.AddField("id" , StageID, "String" , Parameters);
OPI_Tools.AddField("id" , StageID, String_ , Parameters);
OPI_Tools.AddField("fields", Fields , "Collection", Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -1616,20 +1626,21 @@ Function MoveTaskToKanbanStage(Val URL
, Val After = 0
, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.stages.movetask");
OPI_Tools.AddField("id" , TaskID, "String", Parameters);
OPI_Tools.AddField("stageId", StageID, "String", Parameters);
OPI_Tools.AddField("id" , TaskID, String_, Parameters);
OPI_Tools.AddField("stageId", StageID, String_, Parameters);
If ValueIsFilled(Prev) Then
OPI_Tools.AddField("before", Prev, "String", Parameters);
OPI_Tools.AddField("before", Prev, String_, Parameters);
Else
OPI_TypeConversion.GetLine(After);
OPI_Tools.AddField("after", After, "String", Parameters);
OPI_Tools.AddField("after", After, String_, Parameters);
EndIf;
@ -1668,15 +1679,17 @@ Function AddTaskTimeAccounting(Val URL
, Val SetupDate = ""
, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.elapseditem.add");
Fields = New Structure;
OPI_Tools.AddField("SECONDS" , Time , "String" , Fields);
OPI_Tools.AddField("COMMENT_TEXT", Text , "String" , Fields);
OPI_Tools.AddField("USER_ID" , UserID, "String" , Fields);
OPI_Tools.AddField("SECONDS" , Time , String_ , Fields);
OPI_Tools.AddField("COMMENT_TEXT", Text , String_ , Fields);
OPI_Tools.AddField("USER_ID" , UserID, String_ , Fields);
OPI_Tools.AddField("CREATED_DATE", SetupDate , "DateISO", Fields);
OPI_Tools.AddField("TASKID" , TaskID, "String" , Parameters);
OPI_Tools.AddField("TASKID" , TaskID, String_ , Parameters);
OPI_Tools.AddField("ARFIELDS", Fields , "Collection", Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -1788,16 +1801,18 @@ Function UpdateTaskTimeAccounting(Val URL
, Val Text = ""
, Val SetupDate = ""
, Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "task.elapseditem.update");
Fields = New Structure;
OPI_Tools.AddField("SECONDS" , Time , "String" , Fields);
OPI_Tools.AddField("COMMENT_TEXT", Text , "String" , Fields);
OPI_Tools.AddField("SECONDS" , Time , String_ , Fields);
OPI_Tools.AddField("COMMENT_TEXT", Text , String_ , Fields);
OPI_Tools.AddField("CREATED_DATE", SetupDate , "DateISO", Fields);
OPI_Tools.AddField("TASKID" , TaskID, "String" , Parameters);
OPI_Tools.AddField("ITEMID" , RecordID, "String" , Parameters);
OPI_Tools.AddField("TASKID" , TaskID, String_ , Parameters);
OPI_Tools.AddField("ITEMID" , RecordID, String_ , Parameters);
OPI_Tools.AddField("ARFIELDS", Fields , "Collection", Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -2301,7 +2316,6 @@ EndFunction
// Map Of KeyAndValue - serialized JSON of answer from Bitrix24 API
Function UploadFileToFolder(Val URL, Val Name, Val File, Val FolderID, Val Token = "") Export
OPI_TypeConversion.GetLine(Name);
OPI_TypeConversion.GetBinaryData(File);
@ -2329,8 +2343,7 @@ Function UploadFileToFolder(Val URL, Val Name, Val File, Val FolderID, Val Token
EndIf;
EndIf;
EndIf;
Return Response;
@ -2824,14 +2837,16 @@ Function GetChatMessagesList(Val URL
, Val FirstID = ""
, Val Token = "") Export
String_ = "String";
OPI_TypeConversion.GetLine(LastID);
OPI_TypeConversion.GetLine(FirstID);
Parameters = NormalizeAuth(URL, Token, "im.dialog.messages.get");
OPI_Tools.AddField("DIALOG_ID", ChatID , "String", Parameters);
OPI_Tools.AddField("LAST_ID" , LastID, "String", Parameters);
OPI_Tools.AddField("FIRST_ID" , FirstID , "String", Parameters);
OPI_Tools.AddField("DIALOG_ID", ChatID , String_, Parameters);
OPI_Tools.AddField("LAST_ID" , LastID, String_, Parameters);
OPI_Tools.AddField("FIRST_ID" , FirstID , String_, Parameters);
Response = OPI_Tools.Post(URL, Parameters);
@ -3117,11 +3132,13 @@ EndFunction
// Map Of KeyAndValue - serialized JSON of answer from Bitrix24 API
Function SendFile(Val URL, Val ChatID, Val FileID, Val Description = "", Val Token = "") Export
String_ = "String";
Parameters = NormalizeAuth(URL, Token, "im.disk.file.commit");
OPI_Tools.AddField("CHAT_ID" , ChatID , "String", Parameters);
OPI_Tools.AddField("UPLOAD_ID", FileID , "String", Parameters);
OPI_Tools.AddField("MESSAGE" , Description, "String", Parameters);
OPI_Tools.AddField("CHAT_ID" , ChatID , String_, Parameters);
OPI_Tools.AddField("UPLOAD_ID", FileID , String_, Parameters);
OPI_Tools.AddField("MESSAGE" , Description, String_, Parameters);
Response = OPI_Tools.Post(URL, Parameters);

View File

@ -8013,7 +8013,7 @@ Procedure Bitrix24_UpdateTaskComment(FunctionParameters)
// !OInt OPI_TestDataRetrieval.WriteLog(Result, "EditCommentTasks (хуto)", "Bitrix24");
Check_BitrixTrue(Result); // SKIP
Check_BitrixTrue(Result); // SKIP
URL = FunctionParameters["Bitrix24_Domain"];
Token = FunctionParameters["Bitrix24_Token"];
@ -8184,7 +8184,7 @@ Procedure Bitrix24_MoveTaskToKanbanStage(FunctionParameters)
Check_BitrixTrue(Result);
OPI_Bitrix24.MoveTaskToKanbanStage(URL, TaskID, 2, , , Token)
OPI_Bitrix24.MoveTaskToKanbanStage(URL, TaskID, 2, , , Token);
EndProcedure
@ -8944,12 +8944,11 @@ Procedure Bitrix24_GetChatMessagesList(FunctionParameters)
OPI_TestDataRetrieval.WriteParameter("Bitrix24_ChatMessageID", MessageID); // SKIP
FunctionParameters.Insert("Bitrix24_ChatMessageID", MessageID); // SKIP
URL = FunctionParameters["Bitrix24_Domain"];
Token = FunctionParameters["Bitrix24_Token"];
UserID = 10;
Result = OPI_Bitrix24.GetChatMessagesList(URL, UserID, , 0,Token);
Result = OPI_Bitrix24.GetChatMessagesList(URL, UserID, , 0, Token);
// END
@ -8980,7 +8979,7 @@ Procedure Bitrix24_MarkMessageAsReaded(FunctionParameters)
UserID = 10;
MessageID = FunctionParameters["Bitrix24_UserMessageID"];
Result = OPI_Bitrix24.MarkMessageAsReaded(URL, UserID, MessageID,Token);
Result = OPI_Bitrix24.MarkMessageAsReaded(URL, UserID, MessageID, Token);
// END

View File

@ -826,8 +826,9 @@ Function SplitFileKey(Val FileData, Val ContentType)
DotReplacement = "___";
FileName = StrReplace(FileData, DotReplacement, ".");
NameParts = StrSplit(FileName, "|", False);
NameParts = 2;
If NameParts.Count() = 2 Then
If NameParts.Count() = NameParts Then
FieldName = NameParts[0];
FileName = NameParts[1];
Else

View File

@ -31,6 +31,7 @@
// BSLLS:IncorrectLineBreak-off
// BSLLS:NumberOfOptionalParams-off
// BSLLS:UsingServiceTag-off
// BSLLS:LineLength-off
//@skip-check module-structure-top-region
//@skip-check module-structure-method-in-regions
@ -511,7 +512,6 @@
// Метод в документации API: [tasks.task.files.attach](@dev.1c-bitrix.ru/rest_help/tasks/task/tasks/tasks_task_files_attach.php)
//
// Параметры:
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЗадачи - Число, Строка - ID задачи - task
// IDФайла - Число, Строка - ID Файла - fileid
@ -1042,15 +1042,17 @@
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ДобавитьЭлементЧеклистаЗадачи(Знач URL, Знач IDЗадачи, Знач Текст, Знач Выполнен = Ложь, Токен = "") Экспорт
Строка_ = "Строка";
Параметры = НормализоватьАвторизацию(URL, Токен, "task.checklistitem.add");
Поля = Новый Структура;
ПривестиБулево(Выполнен);
OPI_Инструменты.ДобавитьПоле("TITLE" , Текст , "Строка", Поля);
OPI_Инструменты.ДобавитьПоле("IS_COMPLETE", Выполнен, "Строка", Поля);
OPI_Инструменты.ДобавитьПоле("TITLE" , Текст , Строка_, Поля);
OPI_Инструменты.ДобавитьПоле("IS_COMPLETE", Выполнен, Строка_, Поля);
OPI_Инструменты.ДобавитьПоле("TASKID", IDЗадачи, "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("TASKID", IDЗадачи, Строка_ , Параметры);
OPI_Инструменты.ДобавитьПоле("FIELDS", Поля , "Коллекция", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
@ -1076,13 +1078,15 @@
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ИзменитьЭлементЧеклистаЗадачи(Знач URL, Знач IDЗадачи, Знач IDЭлемента, Знач Текст, Знач Токен = "") Экспорт
Строка_ = "Строка";
Параметры = НормализоватьАвторизацию(URL, Токен, "task.checklistitem.update");
Поля = Новый Структура;
OPI_Инструменты.ДобавитьПоле("TITLE", Текст, "Строка", Поля);
OPI_Инструменты.ДобавитьПоле("TITLE", Текст, Строка_, Поля);
OPI_Инструменты.ДобавитьПоле("TASKID", IDЗадачи , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("ITEMID", IDЭлемента, "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("TASKID", IDЗадачи , Строка_ , Параметры);
OPI_Инструменты.ДобавитьПоле("ITEMID", IDЭлемента, Строка_ , Параметры);
OPI_Инструменты.ДобавитьПоле("FIELDS", Поля , "Коллекция", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
@ -1301,13 +1305,15 @@
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ИзменитьКомментарийЗадачи(Знач URL, Знач IDЗадачи, Знач IDКомментария, Знач Текст, Знач Токен = "") Экспорт
Строка_ = "Строка";
Параметры = НормализоватьАвторизацию(URL, Токен, "task.commentitem.update");
Комментарий = Новый Структура;
OPI_Инструменты.ДобавитьПоле("POST_MESSAGE", Текст, "Строка", Комментарий);
OPI_Инструменты.ДобавитьПоле("TASKID", IDЗадачи , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("ITEMID", IDКомментария, "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("TASKID", IDЗадачи , Строка_ , Параметры);
OPI_Инструменты.ДобавитьПоле("ITEMID", IDКомментария, Строка_ , Параметры);
OPI_Инструменты.ДобавитьПоле("FIELDS", Комментарий , "Коллекция", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
@ -1473,16 +1479,18 @@
, Знач КакАдминистратор = Ложь
, Знач Токен = "") Экспорт
Строка_ = "Строка";
Параметры = НормализоватьАвторизацию(URL, Токен, "task.stages.add");
Поля = Новый Структура;
ПривестиБулево(КакАдминистратор);
OPI_Инструменты.ДобавитьПоле("TITLE" , Наименование , "Строка", Поля);
OPI_Инструменты.ДобавитьПоле("COLOR" , Цвет , "Строка", Поля);
OPI_Инструменты.ДобавитьПоле("AFTER_ID" , IDПредыдущей , "Строка", Поля);
OPI_Инструменты.ДобавитьПоле("ENTITY_ID", IDСущности , "Строка", Поля);
OPI_Инструменты.ДобавитьПоле("isAdmin" , КакАдминистратор, "Строка", Поля);
OPI_Инструменты.ДобавитьПоле("TITLE" , Наименование , Строка_, Поля);
OPI_Инструменты.ДобавитьПоле("COLOR" , Цвет , Строка_, Поля);
OPI_Инструменты.ДобавитьПоле("AFTER_ID" , IDПредыдущей , Строка_, Поля);
OPI_Инструменты.ДобавитьПоле("ENTITY_ID", IDСущности , Строка_, Поля);
OPI_Инструменты.ДобавитьПоле("isAdmin" , КакАдминистратор, Строка_, Поля);
Параметры.Вставить("fields", Поля);
@ -1517,15 +1525,17 @@
, Знач КакАдминистратор = Ложь
, Знач Токен = "") Экспорт
Строка_ = "Строка";
Параметры = НормализоватьАвторизацию(URL, Токен, "task.stages.update");
Поля = Новый Структура;
OPI_Инструменты.ДобавитьПоле("TITLE" , Наименование , "Строка", Поля);
OPI_Инструменты.ДобавитьПоле("COLOR" , Цвет , "Строка", Поля);
OPI_Инструменты.ДобавитьПоле("AFTER_ID" , IDПредыдущей , "Строка", Поля);
OPI_Инструменты.ДобавитьПоле("TITLE" , Наименование , Строка_, Поля);
OPI_Инструменты.ДобавитьПоле("COLOR" , Цвет , Строка_, Поля);
OPI_Инструменты.ДобавитьПоле("AFTER_ID" , IDПредыдущей , Строка_, Поля);
OPI_Инструменты.ДобавитьПоле("isAdmin" , КакАдминистратор, "Булево", Поля);
OPI_Инструменты.ДобавитьПоле("id" , IDСтадии, "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("id" , IDСтадии, Строка_ , Параметры);
OPI_Инструменты.ДобавитьПоле("fields", Поля , "Коллекция", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
@ -1616,20 +1626,21 @@
, Знач После = 0
, Знач Токен = "") Экспорт
Строка_ = "Строка";
Параметры = НормализоватьАвторизацию(URL, Токен, "task.stages.movetask");
Параметры = НормализоватьАвторизацию(URL, Токен, "task.stages.movetask");
OPI_Инструменты.ДобавитьПоле("id" , IDЗадачи, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("stageId", IDСтадии, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("id" , IDЗадачи, Строка_, Параметры);
OPI_Инструменты.ДобавитьПоле("stageId", IDСтадии, Строка_, Параметры);
Если ЗначениеЗаполнено(Перед) Тогда
OPI_Инструменты.ДобавитьПоле("before", Перед, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("before", Перед, Строка_, Параметры);
Иначе
OPI_ПреобразованиеТипов.ПолучитьСтроку(После);
OPI_Инструменты.ДобавитьПоле("after", После, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("after", После, Строка_, Параметры);
КонецЕсли;
@ -1668,15 +1679,17 @@
, Знач ДатаУстановки = ""
, Знач Токен = "") Экспорт
Строка_ = "Строка";
Параметры = НормализоватьАвторизацию(URL, Токен, "task.elapseditem.add");
Поля = Новый Структура;
OPI_Инструменты.ДобавитьПоле("SECONDS" , Время , "Строка" , Поля);
OPI_Инструменты.ДобавитьПоле("COMMENT_TEXT", Текст , "Строка" , Поля);
OPI_Инструменты.ДобавитьПоле("USER_ID" , IDПользователя, "Строка" , Поля);
OPI_Инструменты.ДобавитьПоле("SECONDS" , Время , Строка_ , Поля);
OPI_Инструменты.ДобавитьПоле("COMMENT_TEXT", Текст , Строка_ , Поля);
OPI_Инструменты.ДобавитьПоле("USER_ID" , IDПользователя, Строка_ , Поля);
OPI_Инструменты.ДобавитьПоле("CREATED_DATE", ДатаУстановки , "ДатаISO", Поля);
OPI_Инструменты.ДобавитьПоле("TASKID" , IDЗадачи, "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("TASKID" , IDЗадачи, Строка_ , Параметры);
OPI_Инструменты.ДобавитьПоле("ARFIELDS", Поля , "Коллекция", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
@ -1788,16 +1801,18 @@
, Знач Текст = ""
, Знач ДатаУстановки = ""
, Знач Токен = "") Экспорт
Строка_ = "Строка";
Параметры = НормализоватьАвторизацию(URL, Токен, "task.elapseditem.update");
Поля = Новый Структура;
OPI_Инструменты.ДобавитьПоле("SECONDS" , Время , "Строка" , Поля);
OPI_Инструменты.ДобавитьПоле("COMMENT_TEXT", Текст , "Строка" , Поля);
OPI_Инструменты.ДобавитьПоле("SECONDS" , Время , Строка_ , Поля);
OPI_Инструменты.ДобавитьПоле("COMMENT_TEXT", Текст , Строка_ , Поля);
OPI_Инструменты.ДобавитьПоле("CREATED_DATE", ДатаУстановки , "ДатаISO", Поля);
OPI_Инструменты.ДобавитьПоле("TASKID" , IDЗадачи, "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("ITEMID" , IDЗаписи, "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("TASKID" , IDЗадачи, Строка_ , Параметры);
OPI_Инструменты.ДобавитьПоле("ITEMID" , IDЗаписи, Строка_ , Параметры);
OPI_Инструменты.ДобавитьПоле("ARFIELDS", Поля , "Коллекция", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
@ -2301,7 +2316,6 @@
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ЗагрузитьФайлВКаталог(Знач URL, Знач Наименование, Знач Файл, Знач IDКаталога, Знач Токен = "") Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(Наименование);
OPI_ПреобразованиеТипов.ПолучитьДвоичныеДанные(Файл);
@ -2329,8 +2343,7 @@
КонецЕсли;
КонецЕсли;
КонецЕсли;
Возврат Ответ;
@ -2824,14 +2837,16 @@
, Знач IDПервого = ""
, Знач Токен = "") Экспорт
Строка_ = "Строка";
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDПоследнего);
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDПервого);
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.messages.get");
OPI_Инструменты.ДобавитьПоле("DIALOG_ID", IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("LAST_ID" , IDПоследнего, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("FIRST_ID" , IDПервого , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("DIALOG_ID", IDЧата , Строка_, Параметры);
OPI_Инструменты.ДобавитьПоле("LAST_ID" , IDПоследнего, Строка_, Параметры);
OPI_Инструменты.ДобавитьПоле("FIRST_ID" , IDПервого , Строка_, Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
@ -3117,11 +3132,13 @@
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ОтправитьФайл(Знач URL, Знач IDЧата, Знач IDФайла, Знач Описание = "", Знач Токен = "") Экспорт
Строка_ = "Строка";
Параметры = НормализоватьАвторизацию(URL, Токен, "im.disk.file.commit");
OPI_Инструменты.ДобавитьПоле("CHAT_ID" , IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("UPLOAD_ID", IDФайла , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("MESSAGE" , Описание, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("CHAT_ID" , IDЧата , Строка_, Параметры);
OPI_Инструменты.ДобавитьПоле("UPLOAD_ID", IDФайла , Строка_, Параметры);
OPI_Инструменты.ДобавитьПоле("MESSAGE" , Описание, Строка_, Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);

View File

@ -1,21 +1,21 @@
<package-def>
<module name="OPI_Airtable" file="core/Modules/OPI_Airtable.os"/>
<module name="OPI_Bitrix24" file="core/Modules/OPI_Bitrix24.os"/>
<module name="OPI_Dropbox" file="core/Modules/OPI_Dropbox.os"/>
<module name="OPI_GoogleCalendar" file="core/Modules/OPI_GoogleCalendar.os"/>
<module name="OPI_GoogleDrive" file="core/Modules/OPI_GoogleDrive.os"/>
<module name="OPI_GoogleSheets" file="core/Modules/OPI_GoogleSheets.os"/>
<module name="OPI_GoogleWorkspace" file="core/Modules/OPI_GoogleWorkspace.os"/>
<module name="OPI_Notion" file="core/Modules/OPI_Notion.os"/>
<module name="OPI_Slack" file="core/Modules/OPI_Slack.os"/>
<module name="OPI_Telegram" file="core/Modules/OPI_Telegram.os"/>
<module name="OPI_Twitter" file="core/Modules/OPI_Twitter.os"/>
<module name="OPI_Viber" file="core/Modules/OPI_Viber.os"/>
<module name="OPI_VK" file="core/Modules/OPI_VK.os"/>
<module name="OPI_YandexDisk" file="core/Modules/OPI_YandexDisk.os"/>
<module name="OPI_YandexID" file="core/Modules/OPI_YandexID.os"/>
<module name="OPI_Инструменты" file="tools/Modules/internal/Modules/OPI_Инструменты.os"/>
<module name="OPI_Криптография" file="tools/Modules/internal/Modules/OPI_Криптография.os"/>
<module name="OPI_ПолучениеДанныхТестов" file="tools/Modules/OPI_ПолучениеДанныхТестов.os"/>
<module name="OPI_Инструменты" file="tools/Modules/internal/Modules/OPI_Инструменты.os"/>
<module name="OPI_GoogleDrive" file="core/Modules/OPI_GoogleDrive.os"/>
<module name="OPI_Twitter" file="core/Modules/OPI_Twitter.os"/>
<module name="OPI_YandexID" file="core/Modules/OPI_YandexID.os"/>
<module name="OPI_Dropbox" file="core/Modules/OPI_Dropbox.os"/>
<module name="OPI_GoogleWorkspace" file="core/Modules/OPI_GoogleWorkspace.os"/>
<module name="OPI_Bitrix24" file="core/Modules/OPI_Bitrix24.os"/>
<module name="OPI_Viber" file="core/Modules/OPI_Viber.os"/>
<module name="OPI_GoogleCalendar" file="core/Modules/OPI_GoogleCalendar.os"/>
<module name="OPI_Telegram" file="core/Modules/OPI_Telegram.os"/>
<module name="OPI_Airtable" file="core/Modules/OPI_Airtable.os"/>
<module name="OPI_Slack" file="core/Modules/OPI_Slack.os"/>
<module name="OPI_Notion" file="core/Modules/OPI_Notion.os"/>
<module name="OPI_GoogleSheets" file="core/Modules/OPI_GoogleSheets.os"/>
<module name="OPI_YandexDisk" file="core/Modules/OPI_YandexDisk.os"/>
<module name="OPI_ПреобразованиеТипов" file="tools/Modules/OPI_ПреобразованиеТипов.os"/>
<module name="OPI_VK" file="core/Modules/OPI_VK.os"/>
<module name="OPI_ПолучениеДанныхТестов" file="tools/Modules/OPI_ПолучениеДанныхТестов.os"/>
</package-def>

View File

@ -8013,7 +8013,7 @@
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьКомментарийЗадачи (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
@ -8184,7 +8184,7 @@
Проверка_БитриксИстина(Результат);
OPI_Bitrix24.ПеренестиЗадачуВСтадиюКанбана(URL, IDЗадачи, 2, , , Токен)
OPI_Bitrix24.ПеренестиЗадачуВСтадиюКанбана(URL, IDЗадачи, 2, , , Токен);
КонецПроцедуры
@ -8944,12 +8944,11 @@
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_ChatMessageID", IDСообщения); // SKIP
ПараметрыФункции.Вставить("Bitrix24_ChatMessageID", IDСообщения); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDПользователя = 10;
Результат = OPI_Bitrix24.ПолучитьСписокСообщенийЧата(URL, IDПользователя, , 0,Токен);
Результат = OPI_Bitrix24.ПолучитьСписокСообщенийЧата(URL, IDПользователя, , 0, Токен);
// END
@ -8980,7 +8979,7 @@
IDПользователя = 10;
IDСообщения = ПараметрыФункции["Bitrix24_UserMessageID"];
Результат = OPI_Bitrix24.ОтметитьСообщениеКакПрочитанное(URL, IDПользователя, IDСообщения,Токен);
Результат = OPI_Bitrix24.ОтметитьСообщениеКакПрочитанное(URL, IDПользователя, IDСообщения, Токен);
// END

View File

@ -826,8 +826,9 @@
ЗаменаТочки = "___";
ИмяФайла = СтрЗаменить(ДанныеФайла, ЗаменаТочки, ".");
МассивИмени = СтрРазделить(ИмяФайла, "|", Ложь);
ЧастейИмени = 2;
Если МассивИмени.Количество() = 2 Тогда
Если МассивИмени.Количество() = ЧастейИмени Тогда
ИмяПоля = МассивИмени[0];
ИмяФайла = МассивИмени[1];
Иначе