mirror of
https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.Wechat.git
synced 2025-07-15 23:13:32 +08:00
feat(work): 新增会议 Rooms 管理相关接口
This commit is contained in:
parent
67cac022e0
commit
d835b701a8
@ -741,5 +741,247 @@ namespace SKIT.FlurlHttpClient.Wechat.Work
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRecordDeleteFileResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Rooms
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/rooms/book 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98791 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingRoomsBookResponse> ExecuteCgibinMeetingRoomsBookAsync(this WechatWorkClient client, Models.CgibinMeetingRoomsBookRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "rooms", "book")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRoomsBookResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/rooms/release 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98792 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingRoomsReleaseResponse> ExecuteCgibinMeetingRoomsReleaseAsync(this WechatWorkClient client, Models.CgibinMeetingRoomsReleaseRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "rooms", "release")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRoomsReleaseResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/rooms/list 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98795 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingRoomsListResponse> ExecuteCgibinMeetingRoomsListAsync(this WechatWorkClient client, Models.CgibinMeetingRoomsListRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "rooms", "list")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRoomsListResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/rooms/get_info 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98793 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingRoomsGetInfoResponse> ExecuteCgibinMeetingRoomsGetInfoAsync(this WechatWorkClient client, Models.CgibinMeetingRoomsGetInfoRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "rooms", "get_info")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRoomsGetInfoResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/rooms/get_config 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98802 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingRoomsGetConfigResponse> ExecuteCgibinMeetingRoomsGetConfigAsync(this WechatWorkClient client, Models.CgibinMeetingRoomsGetConfigRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "rooms", "get_config")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRoomsGetConfigResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/rooms/list_meetings 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98796 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingRoomsListMeetingsResponse> ExecuteCgibinMeetingRoomsListMeetingsAsync(this WechatWorkClient client, Models.CgibinMeetingRoomsListMeetingsRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "rooms", "list_meetings")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRoomsListMeetingsResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/rooms/list_devices 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98798 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingRoomsListDevicesResponse> ExecuteCgibinMeetingRoomsListDevicesAsync(this WechatWorkClient client, Models.CgibinMeetingRoomsListDevicesRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "rooms", "list_devices")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRoomsListDevicesResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/rooms/list_controllers 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98799 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingRoomsListControllersResponse> ExecuteCgibinMeetingRoomsListControllersAsync(this WechatWorkClient client, Models.CgibinMeetingRoomsListControllersRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "rooms", "list_controllers")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRoomsListControllersResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/rooms/get_inventory 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98809 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingRoomsGetInventoryResponse> ExecuteCgibinMeetingRoomsGetInventoryAsync(this WechatWorkClient client, Models.CgibinMeetingRoomsGetInventoryRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "rooms", "get_inventory")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRoomsGetInventoryResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/rooms/call 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98804 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingRoomsCallResponse> ExecuteCgibinMeetingRoomsCallAsync(this WechatWorkClient client, Models.CgibinMeetingRoomsCallRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "rooms", "call")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRoomsCallResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/rooms/cancel_call 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98805 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingRoomsCancelCallResponse> ExecuteCgibinMeetingRoomsCancelCallAsync(this WechatWorkClient client, Models.CgibinMeetingRoomsCancelCallRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "rooms", "cancel_call")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRoomsCancelCallResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <para>异步调用 [POST] /cgi-bin/meeting/rooms/get_response_status 接口。</para>
|
||||
/// <para>REF: https://developer.work.weixin.qq.com/document/path/98806 </para>
|
||||
/// </summary>
|
||||
/// <param name="client"></param>
|
||||
/// <param name="request"></param>
|
||||
/// <param name="cancellationToken"></param>
|
||||
/// <returns></returns>
|
||||
public static async Task<Models.CgibinMeetingRoomsGetResponseStatusResponse> ExecuteCgibinMeetingRoomsGetResponseStatusAsync(this WechatWorkClient client, Models.CgibinMeetingRoomsGetResponseStatusRequest request, CancellationToken cancellationToken = default)
|
||||
{
|
||||
if (client is null) throw new ArgumentNullException(nameof(client));
|
||||
if (request is null) throw new ArgumentNullException(nameof(request));
|
||||
|
||||
IFlurlRequest flurlReq = client
|
||||
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "meeting", "rooms", "get_response_status")
|
||||
.SetQueryParam("access_token", request.AccessToken);
|
||||
|
||||
return await client.SendRequestWithJsonAsync<Models.CgibinMeetingRoomsGetResponseStatusResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
@ -17,6 +17,6 @@ namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("sub_meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("sub_meetingid")]
|
||||
public string? SubMeetingId { get; set; } = string.Empty;
|
||||
public string? SubMeetingId { get; set; }
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,31 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/book 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsBookRequest : WechatWorkRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室 ID 列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_id_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_id_list")]
|
||||
public IList<string> MeetingRoomIdList { get; set; } = new List<string>();
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否显示会议主题。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("subject_visible")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("subject_visible")]
|
||||
public bool? IsSubjectVisible { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,42 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/book 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsBookResponse : WechatWorkResponse
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class MeetingRoom
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议室 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_id")]
|
||||
public string MeetingRoomId { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室名称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_name")]
|
||||
public string MeetingRoomName { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室地址。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_location")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_location")]
|
||||
public string MeetingRoomLocation { get; set; } = default!;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_list")]
|
||||
public Types.MeetingRoom[] MeetingRoomList { get; set; } = default!;
|
||||
}
|
||||
}
|
@ -0,0 +1,49 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/call 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsCallRequest : WechatWorkRequest
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class MRA
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置信令协议。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("protocol")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("protocol")]
|
||||
public int Protocol { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置信令。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("dial_string")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("dial_string")]
|
||||
public string DialogString { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室 ID。与字段 <see cref="MRA"/> 二选一。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_id")]
|
||||
public string? MeetingRoomId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 MRA 信息。与字段 <see cref="MeetingRoomId"/> 二选一。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("mra_address")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("mra_address")]
|
||||
public Types.MRA? MRA { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/call 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsCallResponse : WechatWorkResponse
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置呼叫 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("invite_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("invite_id")]
|
||||
public string InviteId { get; set; } = default!;
|
||||
}
|
||||
}
|
@ -0,0 +1,43 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/cancel_call 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsCancelCallRequest : WechatWorkRequest
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class MRA : CgibinMeetingRoomsCallRequest.Types.MRA
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置呼叫 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("invite_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("invite_id")]
|
||||
public string InviteId { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室 ID。与字段 <see cref="MRA"/> 二选一。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_id")]
|
||||
public string? MeetingRoomId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 MRA 信息。与字段 <see cref="MeetingRoomId"/> 二选一。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("mra_address")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("mra_address")]
|
||||
public Types.MRA? MRA { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/cancel_call 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsCancelCallResponse : WechatWorkResponse
|
||||
{
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/get_config 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsGetConfigRequest : WechatWorkRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议室 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_id")]
|
||||
public string MeetingRoomId { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
@ -0,0 +1,80 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/get_config 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsGetConfigResponse : WechatWorkResponse
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class MeetingSettings
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置水印状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("water_mark")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("water_mark")]
|
||||
public int WatermarkStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置自动接听状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("auto_response")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("auto_response")]
|
||||
public int AutoResponseStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否开启字幕。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("caption")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("caption")]
|
||||
public bool EnableCaption { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否开启专属 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("room_pmi")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("room_pmi")]
|
||||
public bool EnableRoomPMI { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否展示消息通知。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("room_notification")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("room_notification")]
|
||||
public bool EnableRoomNotification { get; set; }
|
||||
}
|
||||
|
||||
public class RecordSettings
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置分享云录制状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("share_record")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("share_record")]
|
||||
public int ShareRecordStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否允许下载云录制。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("download_record")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("download_record")]
|
||||
public bool AllowDownload { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议配置信息。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_settings")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_settings")]
|
||||
public Types.MeetingSettings MeetingSettings { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置录制配置信息。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("record_settings")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("record_settings")]
|
||||
public Types.RecordSettings RecordSettings { get; set; } = default!;
|
||||
}
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/get_info 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsGetInfoRequest : WechatWorkRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议室 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_id")]
|
||||
public string MeetingRoomId { get; set; } = string.Empty;
|
||||
}
|
||||
}
|
@ -0,0 +1,311 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/get_info 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsGetInfoResponse : WechatWorkResponse
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class BasicInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置 Rooms ID 列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("rooms_id_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("rooms_id_list")]
|
||||
public string[] RoomsIdList { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室名称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_name")]
|
||||
public string MeetingRoomName { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置城市。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("city")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("city")]
|
||||
public string City { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置建筑。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("building")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("building")]
|
||||
public string Building { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置楼层。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("floor")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("floor")]
|
||||
public string Floor { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置容纳人数。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("participant_number")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("participant_number")]
|
||||
public int ParticipantNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室设备。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("device")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("device")]
|
||||
public string? Device { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置描述。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("desc")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("desc")]
|
||||
public string? Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置管理员密码。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("password")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("password")]
|
||||
public string? Password { get; set; }
|
||||
}
|
||||
|
||||
public class AccountInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置账号类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("account_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("account_type")]
|
||||
public int AccountType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置有效期限字符串。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("valid_period")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("valid_period")]
|
||||
public string ValidPeriodString { get; set; } = default!;
|
||||
}
|
||||
|
||||
public class HardwareInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置厂家。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("factory")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("factory")]
|
||||
public string Factory { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置设备型号。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("device_model")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("device_model")]
|
||||
public string DeviceModel { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置设备序列号。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("sn")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("sn")]
|
||||
public string SerialNumber { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 IP 地址。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("ip")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("ip")]
|
||||
public string IpAddress { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 MAC 地址。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("mac")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("mac")]
|
||||
public string MacAddress { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 Rooms 版本。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("rooms_version")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("rooms_version")]
|
||||
public string RoomsVersion { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置固件版本。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("firmware_version")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("firmware_version")]
|
||||
public string FirmwareVersion { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置健康状况。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("health_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("health_status")]
|
||||
public string HealthStatus { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置设备系统。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("system_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("system_type")]
|
||||
public string SystemType { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_status")]
|
||||
public int MeetingRoomStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置激活时间字符串(格式:yyyy-MM-dd HH:mm:ss)。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("active_time")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("active_time")]
|
||||
public string ActiveTimeString { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 CPU 信息。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("cpu_info")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("cpu_info")]
|
||||
public string CPUInfo { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 CPU 占用。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("cpu_usage")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("cpu_usage")]
|
||||
public string CPUUsage { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 GPU 信息。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("gpu_info")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("gpu_info")]
|
||||
public string GPUInfo { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置网络类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("net_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("net_type")]
|
||||
public string NetworkType { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置内存信息。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("memory_info")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("memory_info")]
|
||||
public string MemoryInfo { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置显示器刷新率。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("monitor_frequency")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("monitor_frequency")]
|
||||
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.NumericalStringReadOnlyConverter))]
|
||||
public string MonitorFrequency { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置摄像头型号。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("camera_model")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("camera_model")]
|
||||
public string CameraModel { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否开启视频镜像。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("enable_video_mirror")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("enable_video_mirror")]
|
||||
public bool EnableVideoMirror { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置麦克风信息。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("microphone_info")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("microphone_info")]
|
||||
public string MicrophoneInfo { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置扬声器信息。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("speaker_info")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("speaker_info")]
|
||||
public string SpeakerInfo { get; set; } = default!;
|
||||
}
|
||||
|
||||
public class PMIInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置专属 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("pmi_code")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("pmi_code")]
|
||||
public string PMICode { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置入会密码。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("pmi_pwd")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("pmi_pwd")]
|
||||
public string PMIPassword { get; set; } = default!;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置基本信息。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("basic_info")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("basic_info")]
|
||||
public Types.BasicInfo BasicInfo { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置帐号信息。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("account_info")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("account_info")]
|
||||
public Types.AccountInfo AccountInfo { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置硬件信息。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("hardware_info")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("hardware_info")]
|
||||
public Types.HardwareInfo HardwareInfo { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 PMI 信息。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("pmi_info")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("pmi_info")]
|
||||
public Types.PMIInfo PMIInfo { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置告警通知状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("monitor_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("monitor_status")]
|
||||
public int MonitorStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置预定状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("scheduled_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("scheduled_status")]
|
||||
public int ScheduledStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否允许被呼叫。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("is_allow_call")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("is_allow_call")]
|
||||
public bool IsAllowCall { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/get_inventory 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsGetInventoryRequest : WechatWorkRequest
|
||||
{
|
||||
}
|
||||
}
|
@ -0,0 +1,50 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/get_inventory 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsGetInventoryResponse : WechatWorkResponse
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置普通设备数。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("normal_count")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("normal_count")]
|
||||
public int NormalCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置专款设备数。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("special_count")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("special_count")]
|
||||
public int SpecialCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置普通设备使用数。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("normal_used_count")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("normal_used_count")]
|
||||
public int NormalUsedCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置专款设备使用数。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("special_used_count")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("special_used_count")]
|
||||
public int SpecialUsedCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置普通设备过期数。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("normal_expired_count")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("normal_expired_count")]
|
||||
public int NormalExpiredCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置专款设备过期数。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("special_expired_count")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("special_expired_count")]
|
||||
public int SpecialExpiredCount { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,36 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/get_response_status 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsGetResponseStatusRequest : WechatWorkRequest
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class MRA : CgibinMeetingRoomsCallRequest.Types.MRA
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室 ID。与字段 <see cref="MRA"/> 二选一。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_id")]
|
||||
public string? MeetingRoomId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 MRA 信息。与字段 <see cref="MeetingRoomId"/> 二选一。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("mra_address")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("mra_address")]
|
||||
public Types.MRA? MRA { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,22 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/get_response_status 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsGetResponseStatusResponse : WechatWorkResponse
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置应答状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("status")]
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置最近一次应答时间字符串(格式:yyyy/MM/dd HH:mm:ss)。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("response_time")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("response_time")]
|
||||
public string LastResponseTimeString { get; set; } = default!;
|
||||
}
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/list_controllers 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsListControllersRequest : WechatWorkRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置控制器名称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("controller_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("controller_name")]
|
||||
public string? ControllerName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置翻页标记。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("cursor")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("cursor")]
|
||||
public string? Cursor { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置分页每页数量。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("limit")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("limit")]
|
||||
public int? Limit { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,168 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/list_controllers 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsListControllersResponse : WechatWorkResponse
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Controller
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class MonitorInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置摄像头状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("camera_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("camera_status")]
|
||||
public bool CameraStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置麦克风状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("microphone_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("microphone_status")]
|
||||
public bool MicrophoneStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置扬声器状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("speaker_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("speaker_status")]
|
||||
public bool SpeakerStatus { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 Rooms ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("rooms_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("rooms_id")]
|
||||
public string RoomsId { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室名称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_name")]
|
||||
public string MeetingRoomName { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室地址。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_location")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_location")]
|
||||
public string MeetingRoomLocation { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置厂商名称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("manufacture_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("manufacture_name")]
|
||||
public string ManufactureName { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置控制器名称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("controller_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("controller_name")]
|
||||
public string ControllerName { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置控制器型号。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("controller_model")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("controller_model")]
|
||||
public string ControllerModel { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置应用版本。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("app_version")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("app_version")]
|
||||
public string AppVersion { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置固件版本。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("framework_version")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("framework_version")]
|
||||
public string FrameworkVersion { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置设备状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("status")]
|
||||
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.NumericalStringReadOnlyConverter))]
|
||||
public string ControllerStatus { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 IP 地址。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("ip_address")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("ip_address")]
|
||||
public string IpAddress { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 MAC 地址。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("mac_address")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("mac_address")]
|
||||
public string MacAddress { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 CPU 类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("cpu_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("cpu_type")]
|
||||
public string CPUType { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 CPU 占用。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("cpu_usage")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("cpu_usage")]
|
||||
public string CPUUsage { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置网络类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("network_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("network_type")]
|
||||
public string NetworkType { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置内存占用。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("mem_usage")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("mem_usage")]
|
||||
public string MemoryUsage { get; set; } = default!;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置控制器列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("controller_info_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("controller_info_list")]
|
||||
public Types.Controller[] ControllerList { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否还有更多。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("has_more")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("has_more")]
|
||||
public bool HasMore { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置翻页标记。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("next_cursor")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("next_cursor")]
|
||||
public string? NextCursor { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/list_devices 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsListDevicesRequest : WechatWorkRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议室名称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_name")]
|
||||
public string? MeetingRoomName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置翻页标记。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("cursor")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("cursor")]
|
||||
public string? Cursor { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置分页每页数量。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("limit")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("limit")]
|
||||
public int? Limit { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,118 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/list_devices 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsListDevicesResponse : WechatWorkResponse
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Device
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class MonitorInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置摄像头状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("camera_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("camera_status")]
|
||||
public bool CameraStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置麦克风状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("microphone_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("microphone_status")]
|
||||
public bool MicrophoneStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置扬声器状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("speaker_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("speaker_status")]
|
||||
public bool SpeakerStatus { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 Rooms ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("rooms_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("rooms_id")]
|
||||
public string RoomsId { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_id")]
|
||||
public string MeetingRoomId { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室名称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_name")]
|
||||
public string MeetingRoomName { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室地址。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_location")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_location")]
|
||||
public string MeetingRoomLocation { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置设备型号。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("device_model")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("device_model")]
|
||||
public string DeviceModel { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置应用版本。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("app_version")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("app_version")]
|
||||
public string AppVersion { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_status")]
|
||||
public int MeetingRoomStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置设备健康信息。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("device_monitor_info")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("device_monitor_info")]
|
||||
public Types.MonitorInfo MonitorInfo { get; set; } = default!;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置设备列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("device_info_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("device_info_list")]
|
||||
public Types.Device[] DeviceList { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否还有更多。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("has_more")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("has_more")]
|
||||
public bool HasMore { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置翻页标记。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("next_cursor")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("next_cursor")]
|
||||
public string? NextCursor { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,50 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/list_meetings 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsListMeetingsRequest : WechatWorkRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议室 ID。与字段 <see cref="RoomsId"/> 二选一。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_id")]
|
||||
public string? MeetingRoomId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置 Rooms ID。与字段 <see cref="MeetingRoomId"/> 二选一。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("rooms_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("rooms_id")]
|
||||
public string? RoomsId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置查询起始时间戳。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("start_time")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("start_time")]
|
||||
public long? StartTimestamp { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置查询结束时间戳。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("end_time")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("end_time")]
|
||||
public long? EndTimestamp { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置翻页标记。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("cursor")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("cursor")]
|
||||
public string? Cursor { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置分页每页数量。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("limit")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("limit")]
|
||||
public int? Limit { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,84 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/list_meetings 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsListMeetingsResponse : WechatWorkResponse
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class Meeting
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置入会码。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_code")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_code")]
|
||||
public string MeetingCode { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议主题。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("subject")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("subject")]
|
||||
public string Subject { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_type")]
|
||||
public int MeetingType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("status")]
|
||||
public string Status { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议开始时间戳。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("start_time")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("start_time")]
|
||||
public long StartTimestamp { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议结束时间戳。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("end_time")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("end_time")]
|
||||
public long EndTimestamp { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_info_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_info_list")]
|
||||
public Types.Meeting[] MeetingList { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否还有更多。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("has_more")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("has_more")]
|
||||
public bool HasMore { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置翻页标记。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("next_cursor")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("next_cursor")]
|
||||
public string? NextCursor { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/list 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsListRequest : WechatWorkRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议室名称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_name")]
|
||||
public string? MeetingRoomName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置翻页标记。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("cursor")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("cursor")]
|
||||
public string? Cursor { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置分页每页数量。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("limit")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("limit")]
|
||||
public int? Limit { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,98 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/list 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsListResponse : WechatWorkResponse
|
||||
{
|
||||
public static class Types
|
||||
{
|
||||
public class MeetingRoom
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议室 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_id")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_id")]
|
||||
public string MeetingRoomId { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室名称。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_name")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_name")]
|
||||
public string MeetingRoomName { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室地址。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_location")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_location")]
|
||||
public string MeetingRoomLocation { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置账号类型。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("account_type")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("account_type")]
|
||||
public int AccountType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置激活码。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("active_code")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("active_code")]
|
||||
public string ActiveCode { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置容纳人数。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("participant_number")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("participant_number")]
|
||||
public int ParticipantNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_status")]
|
||||
public int Status { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置预定状态。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("scheduled_status")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("scheduled_status")]
|
||||
public int ScheduledStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否允许被呼叫。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("is_allow_call")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("is_allow_call")]
|
||||
public bool IsAllowCall { get; set; }
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_list")]
|
||||
public Types.MeetingRoom[] MeetingRoomList { get; set; } = default!;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置是否还有更多。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("has_more")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("has_more")]
|
||||
public bool HasMore { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置翻页标记。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("next_cursor")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("next_cursor")]
|
||||
public string? NextCursor { get; set; }
|
||||
}
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/release 接口的请求。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsReleaseRequest : WechatWorkRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// 获取或设置会议 ID。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meetingid")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meetingid")]
|
||||
public string MeetingId { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 获取或设置会议室 ID 列表。
|
||||
/// </summary>
|
||||
[Newtonsoft.Json.JsonProperty("meeting_room_id_list")]
|
||||
[System.Text.Json.Serialization.JsonPropertyName("meeting_room_id_list")]
|
||||
public IList<string> MeetingRoomIdList { get; set; } = new List<string>();
|
||||
}
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
|
||||
{
|
||||
/// <summary>
|
||||
/// <para>表示 [POST] /cgi-bin/meeting/rooms/release 接口的响应。</para>
|
||||
/// </summary>
|
||||
public class CgibinMeetingRoomsReleaseResponse : WechatWorkResponse
|
||||
{
|
||||
}
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
{
|
||||
"meetingid": "MEETINGID",
|
||||
"meeting_room_id_list": [ "RoomId001", "RoomId002" ],
|
||||
"subject_visible": true
|
||||
}
|
@ -0,0 +1,16 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"meeting_room_list": [
|
||||
{
|
||||
"meeting_room_id": "100001",
|
||||
"meeting_room_name": "会议室测试1",
|
||||
"meeting_room_location": "广州-大厦-10"
|
||||
},
|
||||
{
|
||||
"meeting_room_id": "100002",
|
||||
"meeting_room_name": "会议室测试2",
|
||||
"meeting_room_location": "广州-大厦-11"
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
{
|
||||
"meetingid": "MEETINGID",
|
||||
"meeting_room_id": "ROOMID",
|
||||
"mra_address": {
|
||||
"protocol": 2,
|
||||
"dial_string": "xxx"
|
||||
}
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"invite_id": "INVITEID"
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
{
|
||||
"meetingid": "MEETINGID",
|
||||
"invite_id": "INVITEID",
|
||||
"meeting_room_id": "ROOMID",
|
||||
"mra_address": {
|
||||
"protocol": 2,
|
||||
"dial_string": "xxx"
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
{
|
||||
"meeting_room_id": "ROOMID"
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"meeting_settings": {
|
||||
"water_mark": 2,
|
||||
"auto_response": 1,
|
||||
"caption": true,
|
||||
"room_pmi": true,
|
||||
"room_notification": true
|
||||
},
|
||||
"record_settings": {
|
||||
"share_record": 0,
|
||||
"download_record": true
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
{
|
||||
"meeting_room_id": "RoomId001"
|
||||
}
|
@ -0,0 +1,51 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"basic_info": {
|
||||
"rooms_id_list": [
|
||||
"200115200039985708"
|
||||
],
|
||||
"meeting_room_name": "会议室测试1",
|
||||
"city": "广州",
|
||||
"building": "大厦",
|
||||
"floor": "10",
|
||||
"participant_number": 3,
|
||||
"device": "ROOMS",
|
||||
"desc": "aGVsbG8=",
|
||||
"password": "MzMz"
|
||||
},
|
||||
"account_info": {
|
||||
"account_type": 0,
|
||||
"valid_period": "-"
|
||||
},
|
||||
"hardware_info": {
|
||||
"factory": "",
|
||||
"device_model": "",
|
||||
"sn": "",
|
||||
"ip": "10.10.10.69",
|
||||
"mac": "a1:ee:27:c1:8a:1a",
|
||||
"rooms_version": "2.7.2.420",
|
||||
"firmware_version": "",
|
||||
"health_status": "ERROR",
|
||||
"system_type": "10.13.6",
|
||||
"meeting_room_status": 1,
|
||||
"active_time": "2021-03-23 15:37:34",
|
||||
"cpu_info": "Intel(R) Core(TM) i7-7700K",
|
||||
"cpu_usage": "",
|
||||
"gpu_info": "",
|
||||
"net_type": "ethernet",
|
||||
"memory_info": "",
|
||||
"monitor_frequency": 0,
|
||||
"camera_model": "FaceTime 高清摄像头(内建)",
|
||||
"enable_video_mirror": true,
|
||||
"microphone_info": "内建麦克风 ",
|
||||
"speaker_info": "内建输出"
|
||||
},
|
||||
"pmi_info": {
|
||||
"pmi_code": "12345678",
|
||||
"pmi_pwd": "XXXXXXX"
|
||||
},
|
||||
"monitor_status": 0,
|
||||
"is_allow_call": true,
|
||||
"scheduled_status": 1
|
||||
}
|
@ -0,0 +1,10 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"normal_count": 10,
|
||||
"special_count": 2,
|
||||
"normal_used_count": 2,
|
||||
"special_used_count": 1,
|
||||
"normal_expired_count": 0,
|
||||
"special_expired_count": 0
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
{
|
||||
"meetingid": "MEETINGID",
|
||||
"meeting_room_id": "ROOMID",
|
||||
"mra_address": {
|
||||
"protocol": 2,
|
||||
"dial_string": "xxx"
|
||||
}
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"status": 2,
|
||||
"response_time": "2022/11/22 14:35:26"
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
{
|
||||
"controller_name": "NAME",
|
||||
"cursor": "CURSOR",
|
||||
"limit": 20
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"has_more": true,
|
||||
"next_cursor": "CURSOR",
|
||||
"controller_info_list": [
|
||||
{
|
||||
"rooms_id": "12356",
|
||||
"meeting_room_name": "会议室测试1",
|
||||
"meeting_room_location": "广州-大厦-10",
|
||||
"controller_name": "nxxxxxxeng-test123",
|
||||
"manufacture_name": "Apple",
|
||||
"controller_model": "Apple",
|
||||
"app_version": "x.x.x.x",
|
||||
"status": "0",
|
||||
"framework_version": "iOS 15.2.1",
|
||||
"ip_address": "x.x.x.x",
|
||||
"mac_address": "x:x:x:x:x:x",
|
||||
"cpu_type": "ARM64",
|
||||
"cpu_usage": "1.7",
|
||||
"network_type": "wifi",
|
||||
"mem_usage": "3.6GB"
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
{
|
||||
"meeting_room_name": "ROOMNAME",
|
||||
"cursor": "CURSOR",
|
||||
"limit": 50
|
||||
}
|
@ -0,0 +1,22 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"has_more": true,
|
||||
"next_cursor": "CURSOR",
|
||||
"device_info_list": [
|
||||
{
|
||||
"meeting_room_id": "100001",
|
||||
"rooms_id": "45613",
|
||||
"meeting_room_name": "会议室测试1",
|
||||
"meeting_room_location": "广州-大厦-10",
|
||||
"device_model": "TT-IP65T",
|
||||
"app_version": "4.1.6.0",
|
||||
"meeting_room_status": 1,
|
||||
"device_monitor_info": {
|
||||
"camera_status": true,
|
||||
"microphone_status": true,
|
||||
"speaker_status": true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
{
|
||||
"meeting_room_id": "MEETINGROOMID",
|
||||
"rooms_id": "ROOMSID",
|
||||
"start_time": 1679299200,
|
||||
"end_time": 1679558400,
|
||||
"cursor": "CURSOR",
|
||||
"limit": 20
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"has_more": true,
|
||||
"next_cursor": "CURSOR",
|
||||
"meeting_info_list": [
|
||||
{
|
||||
"meetingid": "100001",
|
||||
"meeting_code": "14512",
|
||||
"subject": "周会",
|
||||
"status": "MEETING_STATE_STARTED",
|
||||
"meeting_type": 0,
|
||||
"start_time": 1679313600,
|
||||
"end_time": 1679317200
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
{
|
||||
"meeting_room_name": "ROOMNAME",
|
||||
"cursor": "CURSOR",
|
||||
"limit": 50
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
{
|
||||
"errcode": 0,
|
||||
"errmsg": "ok",
|
||||
"has_more": true,
|
||||
"next_cursor": "CURSOR",
|
||||
"meeting_room_list": [
|
||||
{
|
||||
"meeting_room_id": "100001",
|
||||
"meeting_room_name": "会议室测试1",
|
||||
"meeting_room_location": "广州-大厦-10",
|
||||
"account_type": 1,
|
||||
"active_code": "69MS2PKC",
|
||||
"participant_number": 12,
|
||||
"meeting_room_status": 1,
|
||||
"scheduled_status": 0,
|
||||
"is_allow_call": true
|
||||
},
|
||||
{
|
||||
"meeting_room_id": "100002",
|
||||
"meeting_room_name": "会议室测试2",
|
||||
"meeting_room_location": "广州-大厦-11",
|
||||
"account_type": 1,
|
||||
"active_code": "69MS2PKC",
|
||||
"participant_number": 12,
|
||||
"meeting_room_status": 1,
|
||||
"scheduled_status": 0,
|
||||
"is_allow_call": true
|
||||
}
|
||||
]
|
||||
}
|
@ -0,0 +1,4 @@
|
||||
{
|
||||
"meetingid": "MEETINGID",
|
||||
"meeting_room_id_list": [ "RoomId001", "RoomId002" ]
|
||||
}
|
Loading…
Reference in New Issue
Block a user