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
}
}