/*
* InfluxDB OSS API Service
*
* The InfluxDB v2 API provides a programmatic interface for all interactions with InfluxDB. Access the InfluxDB API using the `/api/v2/` endpoint.
*
* OpenAPI spec version: 2.0.0
*
* Generated by: https://github.com/openapitools/openapi-generator.git
*/
using System;
using System.Linq;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Collections;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Runtime.Serialization;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using OpenAPIDateConverter = InfluxDB.Client.Api.Client.OpenAPIDateConverter;
namespace InfluxDB.Client.Api.Domain
{
///
/// TelegramNotificationRuleBase
///
[DataContract]
public partial class TelegramNotificationRuleBase : NotificationRule, IEquatable
{
///
/// The discriminator between other types of notification rules is \"telegram\".
///
/// The discriminator between other types of notification rules is \"telegram\".
[JsonConverter(typeof(StringEnumConverter))]
public enum TypeEnum
{
///
/// Enum Telegram for value: telegram
///
[EnumMember(Value = "telegram")] Telegram = 1
}
///
/// The discriminator between other types of notification rules is \"telegram\".
///
/// The discriminator between other types of notification rules is \"telegram\".
[DataMember(Name = "type", EmitDefaultValue = false)]
public TypeEnum Type { get; set; }
///
/// Parse mode of the message text per https://core.telegram.org/bots/api#formatting-options . Defaults to \"MarkdownV2\" .
///
/// Parse mode of the message text per https://core.telegram.org/bots/api#formatting-options . Defaults to \"MarkdownV2\" .
[JsonConverter(typeof(StringEnumConverter))]
public enum ParseModeEnum
{
///
/// Enum MarkdownV2 for value: MarkdownV2
///
[EnumMember(Value = "MarkdownV2")] MarkdownV2 = 1,
///
/// Enum HTML for value: HTML
///
[EnumMember(Value = "HTML")] HTML = 2,
///
/// Enum Markdown for value: Markdown
///
[EnumMember(Value = "Markdown")] Markdown = 3
}
///
/// Parse mode of the message text per https://core.telegram.org/bots/api#formatting-options . Defaults to \"MarkdownV2\" .
///
/// Parse mode of the message text per https://core.telegram.org/bots/api#formatting-options . Defaults to \"MarkdownV2\" .
[DataMember(Name = "parseMode", EmitDefaultValue = false)]
public ParseModeEnum? ParseMode { get; set; }
///
/// Initializes a new instance of the class.
///
[JsonConstructorAttribute]
protected TelegramNotificationRuleBase()
{
}
///
/// Initializes a new instance of the class.
///
/// The discriminator between other types of notification rules is \"telegram\". (required) (default to TypeEnum.Telegram).
/// The message template as a flux interpolated string. (required).
/// Parse mode of the message text per https://core.telegram.org/bots/api#formatting-options . Defaults to \"MarkdownV2\" ..
/// Disables preview of web links in the sent messages when \"true\". Defaults to \"false\" ..
public TelegramNotificationRuleBase(TypeEnum type = TypeEnum.Telegram, string messageTemplate = default,
ParseModeEnum? parseMode = default, bool? disableWebPagePreview = default, string endpointID = default,
string orgID = default, string taskID = default, TaskStatusType status = default, string name = default,
string sleepUntil = default, string every = default, string offset = default, string runbookLink = default,
int? limitEvery = default, int? limit = default, List tagRules = default,
string description = default, List statusRules = default, List