using Lskj.Push.Push.Mode; using Lskj.Push.Push.Notification; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Lskj.Push { /// /// JPush Api 常用方法,特殊的单独参考文档(http://docs.jpush.io/server/csharp_sdk/) /// public class JPushApi { #region Android相关API /// /// 发送所有人(Android终端) /// /// 发送内容 /// public static PushPayload PushObject_Android_All_Content(string content) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.all(); pushPayload.notification = new Notification().setAlert(content); return pushPayload; } /// /// 发送所有人(Android终端) /// /// 发送内容 /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_All_Content(string content, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.all(); pushPayload.notification = new Notification().setAlert(content); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送所有人(Android终端) /// /// 发送标题 /// 发送内容 /// public static PushPayload PushObject_Android_All_TitleWithContent(string title,string content) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.all(); pushPayload.notification = Notification.android(content, title); return pushPayload; } /// /// 发送所有人(Android终端) /// /// 发送标题 /// 发送内容 /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_All_TitleWithContent(string title, string content, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.all(); pushPayload.notification = Notification.android(content, title); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送消息 /// /// 发送内容(必填,不能为空) /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Message(string content, string alias, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.message = Message.content(content); foreach (var item in extras) { pushPayload.message.AddExtras(item.Key, item.Value); } return pushPayload; } /// /// 发送指定终端(Android终端) /// /// 发送内容 /// 指定终端,现为操作员ID /// public static PushPayload PushObject_Android_Alias_Content(string content, string alias) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = new Notification().setAlert(content); return pushPayload; } /// /// 发送指定终端(Android终端) /// /// 发送内容 /// 指定多个终端,现为操作员ID /// public static PushPayload PushObject_Android_Alias_Content(string content, string[] alias) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = new Notification().setAlert(content); return pushPayload; } /// /// 发送指定终端(Android终端) /// /// 发送内容 /// 终端HashSet /// public static PushPayload PushObject_Android_Alias_Content(string content, HashSet alias) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = new Notification().setAlert(content); return pushPayload; } /// /// 发送指定终端(Android终端) /// /// 发送内容 /// 指定多个终端,现为操作员ID /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Alias_Content(string content, string alias, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = new Notification().setAlert(content); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送指定终端(Android终端) /// /// 发送内容 /// 指定多个终端,现为操作员ID /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Alias_Content(string content, string[] alias, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = new Notification().setAlert(content); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送指定终端(Android终端) /// /// 发送内容 /// 终端HashSet /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Alias_Content(string content, HashSet alias, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = new Notification().setAlert(content); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送指定终端(Android终端) /// /// 发送标题 /// 发送内容 /// 指定终端,现为操作员ID /// public static PushPayload PushObject_Android_Alias_TitleWithContent(string title, string content, string alias) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = Notification.android(content, title); return pushPayload; } /// /// 发送指定终端(Android终端) /// /// 发送标题 /// 发送内容 /// 指定终端,现为操作员ID /// public static PushPayload PushObject_Android_Alias_TitleWithContent(string title, string content, string[] alias) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = Notification.android(content, title); return pushPayload; } /// /// 发送指定终端(Android终端) /// /// 发送标题 /// 发送内容 /// 指定终端,现为操作员ID /// public static PushPayload PushObject_Android_Alias_TitleWithContent(string title, string content, HashSet alias) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = Notification.android(content, title); return pushPayload; } /// /// 发送指定终端(Android终端) /// /// 发送标题 /// 发送内容 /// 指定终端,现为操作员ID /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Alias_TitleWithContent(string title, string content, string alias, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = Notification.android(content, title); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送指定终端(Android终端) /// /// 发送标题 /// 发送内容 /// 指定终端,现为操作员ID /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Alias_TitleWithContent(string title, string content, string[] alias, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = Notification.android(content, title); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送指定终端(Android终端) /// /// 发送标题 /// 发送内容 /// 指定终端,现为操作员ID /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Alias_TitleWithContent(string title, string content, HashSet alias, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = Notification.android(content, title); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送消息 /// /// 发送内容(必填,不能为空) /// 附加信息(object:只支持基本类型) /// 指定终端,现为操作员ID /// public static PushPayload PushObject_Android_Alias_Message(string content, Dictionary extras, params string[] alias) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_alias(alias); pushPayload.message = Message.content(content); foreach (var item in extras) { pushPayload.message.AddExtras(item.Key, item.Value); } return pushPayload; } /// /// 发送指定群组(Android终端) /// /// 发送内容 /// 群组标签 /// public static PushPayload PushObject_Android_Tags_Title(string content, string tags) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(tags); pushPayload.notification = new Notification().setAlert(content); return pushPayload; } /// /// 发送指定群组(Android终端) /// /// 发送内容 /// 群组标签 /// public static PushPayload PushObject_Android_Tags_Title(string content, string[] tags) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(tags); pushPayload.notification = new Notification().setAlert(content); return pushPayload; } /// /// 发送指定群组(Android终端) /// /// 发送内容 /// 群组标签 /// public static PushPayload PushObject_Android_Tags_Title(string content, HashSet tags) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(tags); pushPayload.notification = new Notification().setAlert(content); return pushPayload; } /// /// 发送指定群组(Android终端) /// /// 发送内容 /// 群组标签 /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Tags_Title(string content, string tags, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(tags); pushPayload.notification = new Notification().setAlert(content); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送指定群组(Android终端) /// /// 发送内容 /// 群组标签 /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Tags_Title(string content, string[] tags, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(tags); pushPayload.notification = new Notification().setAlert(content); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送指定群组(Android终端) /// /// 发送内容 /// 群组标签 /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Tags_Title(string content, HashSet tags, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(tags); pushPayload.notification = new Notification().setAlert(content); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送指定群组(Android终端) /// /// 发送标题 /// 发送内容 /// 群组标签 /// public static PushPayload PushObject_Android_Tags_TileWithContent(string title, string content, string tags) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(tags); pushPayload.notification = Notification.android(content, title); return pushPayload; } /// /// 发送指定群组(Android终端) /// /// 发送标题 /// 发送内容 /// 群组标签数组 /// public static PushPayload PushObject_Android_Tags_TileWithContent(string title, string content, string[] tags) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(tags); pushPayload.notification = Notification.android(content, title); return pushPayload; } /// /// 发送指定群组(Android终端) /// /// 发送标题 /// 发送内容 /// 群组标签集合 /// public static PushPayload PushObject_Android_Tags_TileWithContent(string title, string content, HashSet tags) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(tags); pushPayload.notification = Notification.android(content, title); return pushPayload; } /// /// 发送指定群组(Android终端) /// /// 发送标题 /// 发送内容 /// 群组标签 /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Tags_TileWithContent(string title, string content, string tags, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(tags); pushPayload.notification = Notification.android(content, title); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送指定群组(Android终端) /// /// 发送标题 /// 发送内容 /// 群组标签数组 /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Tags_TileWithContent(string title, string content, string[] tags, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(tags); pushPayload.notification = Notification.android(content, title); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送指定群组(Android终端) /// /// 发送标题 /// 发送内容 /// 群组标签集合 /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Android_Tags_TileWithContent(string title, string content, HashSet tags, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(tags); pushPayload.notification = Notification.android(content, title); foreach (var item in extras) { pushPayload.notification.AndroidNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送消息 /// /// 发送内容(必填,不能为空) /// 附加信息(object:只支持基本类型) /// 指定终端,现为操作员ID /// public static PushPayload PushObject_Android_Tags_Message(string content, Dictionary extras, params string[] alias) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android(); pushPayload.audience = Audience.s_tag(alias); pushPayload.message = Message.content(content); foreach (var item in extras) { pushPayload.message.AddExtras(item.Key, item.Value); } return pushPayload; } /// /// 设置标签别名 /// /// public static Audience PushObject_Android_SetAlias(string[] alias) { return Audience.s_alias(alias); } /// /// 设置标签 /// /// /// public static Audience PushObject_Android_SetTag(string[] tag) { return Audience.s_tag(tag); } #endregion #region Ios 推送相关 public static PushPayload PushObject_Ios_Alias_TitleWithContent(string title, string content, string alias, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.android_ios(); pushPayload.audience = Audience.s_alias(alias); pushPayload.notification = Notification.ios(content); foreach (var item in extras) { pushPayload.notification.IosNotification.AddExtra(item.Key, item.Value); } return pushPayload; } /// /// 发送消息 /// /// 发送内容(必填,不能为空) /// 附加信息(object:只支持基本类型) /// public static PushPayload PushObject_Ios_Message(string content, string alias, Dictionary extras) { PushPayload pushPayload = new PushPayload(); pushPayload.platform = Platform.ios(); pushPayload.audience = Audience.s_alias(alias); pushPayload.message = Message.content(content); foreach (var item in extras) { pushPayload.message.AddExtras(item.Key, item.Value); } return pushPayload; } #endregion } }