清单
高级用户现在可以在任何聊天中创建协作清单,以跟踪任务和协调团队,或管理购物清单和待办事项清单。
待办事项清单
todoItem#cba9a52f id:int title:TextWithEntities = TodoItem; todoList#49b92a26 flags:# others_can_append:flags.0?true others_can_complete:flags.1?true title:TextWithEntities list:Vector<TodoItem> = TodoList;inputMediaTodo#9fc55fde todo:TodoList = InputMedia;messageMediaToDo#8a53b014 flags:# todo:TodoList completions:flags.0?Vector<TodoCompletion> = MessageMedia;messageActionTodoCompletions#cc7c5c89 completed:Vector<int> incompleted:Vector<int> = MessageAction; messageActionTodoAppendTasks#c7edbc83 list:Vector<TodoItem> = MessageAction;---functions---messages.sendMedia#ac55d9c1 flags:# silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true invert_media:flags.16?true allow_paid_floodskip:flags.19?true peer:InputPeer reply_to:flags.0?InputReplyTo media:InputMedia message:string random_id:long reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.10?int send_as:flags.13?InputPeer quick_reply_shortcut:flags.17?InputQuickReplyShortcut effect:flags.18?long allow_paid_stars:flags.21?long suggested_post:flags.22?SuggestedPost = Updates;messages.appendTodoList#21a61057 peer:InputPeer msg_id:int list:Vector<TodoItem> = Updates;messages.toggleTodoCompleted#d3e03124 peer:InputPeer msg_id:int completed:Vector<int> incompleted:Vector<int> = Updates;messages.editMessage#dfd14005 flags:# no_webpage:flags.1?true invert_media:flags.16?true peer:InputPeer id:int message:flags.11?string media:flags.14?InputMedia reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.15?int quick_reply_shortcut_id:flags.17?int = Updates;
使用messages.sendMedia和inputMediaTodo发布待办事项列表。
待办事项列表的标题最大长度等于todo_title_length_max »。
创建todoList时,others_can_append可以设置允许除您之外的其他用户调用messages.appendTodoList 将项目添加到列表中。还可以设置允许除您之外的其他用户使用 messages.toggleTodoCompleted将项目标记为(未)
完成。others_can_complete
传递的todoItem由标题(最大长度等于todo_item_length_max »)和正(非零)ID 组成,该 ID 在当前列表的上下文中是唯一的。
一个待办事项列表最多可以包含todo_items_max »个项目。
创建待办事项列表后,可以使用messages.appendTodoList 方法向其中添加项目:这将发出类型为messageActionTodoAppendTasks的服务消息。新添加的待办事项必须具有列表中尚未包含的 ID,否则将发出 RPC 错误。
TODO_ITEM_DUPLICATE
使用messages.toggleTodoCompleted可以根据 ID 将某些项目切换为已完成或未完成:这将发出类型为messageActionTodoCompletions的服务消息。
可以使用messages.editMessage从列表中删除任务,方法是将现有todoList的修改副本重新指定为inputMediaTodo:只要 ID 没有更改,以这种方式删除项目不会清除未删除项目的完成任务。
同样的方法也可以用于向列表中添加多个任务,而无需发出messageActionTodoAppendTasks服务消息。
回复特定任务
inputReplyToMessage#869fbe10 flags:# reply_to_msg_id:int top_msg_id:flags.0?int reply_to_peer_id:flags.1?InputPeer quote_text:flags.2?string quote_entities:flags.3?Vector<MessageEntity> quote_offset:flags.4?int monoforum_peer_id:flags.5?InputPeer todo_item_id:flags.6?int = InputReplyTo;messageReplyHeader#6917560b flags:# reply_to_scheduled:flags.2?true forum_topic:flags.3?true quote:flags.9?true reply_to_msg_id:flags.4?int reply_to_peer_id:flags.0?Peer reply_from:flags.5?MessageFwdHeader reply_media:flags.8?MessageMedia reply_to_top_id:flags.1?int quote_text:flags.6?string quote_entities:flags.7?Vector<MessageEntity> quote_offset:flags.10?int todo_item_id:flags.11?int = MessageReplyHeader;
客户可以通过在回复待办事项列表时设置的inputReplyToMessage和messageReplyHeadertodo_item_id字段,向待办事项列表中的特定项目发送回复消息。