安裝環(huán)境
電腦,安卓 都行昧港。
作用
寫任何定制插件都可以實現(xiàn)發(fā)送qq消息和微信消息通知。
代碼
常量信息
public interface MsgTypeConstant {
String nickname = "nickname";
String extstr="extstr";
public final static String ACTION_MSG = "insert/msg";//表示這目錄下面所有
String AUTHORITY = "cn.qssq666.robot";
String AUTHORITY_CONTENT = "content://" + AUTHORITY;
public final static String ACTION_GAD = "insert/gad";//表示這目錄下面所有
public final static String ACTION_KICK = "insert/kick";
public final static String ERROR_JSON = "{'msg':'error',code:-1}";
String istroop = "istroop";
String version = "version";
String time = "time";
String senderuin = "senderuin";
String frienduin = "frienduin";
String selfuin = "selfuin";
String type = "type";
String code = "code";
String apptype="apptype";
String extrajson="extrajson";
String msg = "msg";
int MSG_TYPE_TEXT = -1000;
int MSG_TYPE_SHUOSHUO = -2015;
int MSG_TYPE_PIC = -2000;
int MSG_TYPE_PIC_WITH_TEXT = -1035;
int MSG_TYPE_REDPACKET = -2025;
int MSG_TYPE_REDPACKET_1 = -2500;
代碼
Uri uri = Uri.withAppendedPath(Uri.parse(MsgTypeConstant.AUTHORITY_CONTENT), “insert/msg”);
Log.w(TAG, "sendMsg:" + uri.toString());
ContentValues values = new ContentValues();
values.put(MsgTypeConstant.msg, message);//消息內(nèi)容
values.put(MsgTypeConstant.nickname, nickname);//昵稱
values.put(MsgTypeConstant.time, new Date().getTime() / 1000);
values.put(MsgTypeConstant.senderuin, senderuin);//qq號碼或者微信號碼
values.put(MsgTypeConstant.selfuin, selfuin);//機器人自身的QQ號碼娇掏,微信可以不填寫
values.put(MsgTypeConstant.frienduin, frienduin);//如果是群聊則是群號州刽,否則填寫QQ號碼
int MSG_TYPE_TEXT = -99999;//文本消息
int type=MSG_TYPE_TEXT ;
values.put(MsgTypeConstant.type, type);
values.put(MsgTypeConstant.apptype, "test");
values.put(MsgTypeConstant.time, new Date().getTime());
values.put(MsgTypeConstant.istroop, istroop);//istroop =1代表群消息空执,否則代表私聊消息
Uri insert = resolver.insert(uri, values);// 確保機器人已打開,正常情況下穗椅,回雙向守護不會輕易宕機
代碼
package cn.qssq666.main;
import android.content.ContentResolver;
import android.content.ContentValues;
import android.net.Uri;
import java.util.Date;
public class MsgHelper {
public static Uri sendQQMsg(ContentResolver contentResolver, String robotQQ, String qq, String message){
return sendMsg(contentResolver,"插件",robotQQ,robotQQ,qq,message,0);
}
/**
*
* @param contentResolver
* @param robotQQ
* @param qqgroup
* @param message
* @return
*/
public static Uri sendQQGroupMsg(ContentResolver contentResolver,String robotQQ,String qqgroup,String message){
/**
* 由于是機器人自己發(fā)送消息辨绊,所以senderuin 為 機器人自身。
*/
return sendMsg(contentResolver,"插件",robotQQ,robotQQ,qqgroup,message,1);
}
/**
* 仿造用戶收到了發(fā)消息匹表,讓機器人處理门坷。
* @param contentResolver
* @param nickname
* @param selfAccount
* @param account
* @param frienduin
* @param message
* @param istroop
* @return
*/
public static Uri sendMsg(ContentResolver contentResolver, String nickname, String selfAccount, String account, String frienduin, String message, int istroop){
Uri uri = Uri.withAppendedPath(Uri.parse(MsgTypeConstant.AUTHORITY_CONTENT), "insert/msg");
ContentValues values = new ContentValues();
values.put(MsgTypeConstant.msg, message);//消息內(nèi)容
values.put(MsgTypeConstant.nickname, nickname);//昵稱
values.put(MsgTypeConstant.time, new Date().getTime() / 1000);
values.put(MsgTypeConstant.senderuin, account);//qq號碼或者微信號碼
values.put(MsgTypeConstant.selfuin, selfAccount);//機器人自身的QQ號碼,微信可以不填寫
values.put(MsgTypeConstant.frienduin, frienduin);//如果是群聊則是群號袍镀,否則填寫QQ號碼
int MSG_TYPE_TEXT = -1000;//文本消息
int type=MSG_TYPE_TEXT ;
values.put(MsgTypeConstant.type, type);
values.put(MsgTypeConstant.apptype, "test");
// values.put(MsgTypeConstant.apptype, "proxy_send_msg");//這導(dǎo)致機器人會發(fā)重復(fù)的話拜鹤。這是控制機器人發(fā)話的,因此不能用這個流椒,
values.put(MsgTypeConstant.time, new Date().getTime());
values.put(MsgTypeConstant.istroop, istroop);//istroop =1代表群消息,否則代表私聊消息
Uri insert = contentResolver.insert(uri, values);// 確保機器人已打開明也,正常情況下宣虾,回雙向守護不會輕易宕機
return insert;
}
/**
* 讓機器人發(fā)消息。
* @param contentResolver
* @param nickname
* @param selfAccount
* @param account
* @param frienduin
* @param message
* @param istroop
* @return
*/
public static Uri robotSendMsg(ContentResolver contentResolver, String nickname, String selfAccount, String account, String frienduin, String message, int istroop){
Uri uri = Uri.withAppendedPath(Uri.parse(MsgTypeConstant.AUTHORITY_CONTENT), "insert/msg");
ContentValues values = new ContentValues();
values.put(MsgTypeConstant.msg, message);//消息內(nèi)容
values.put(MsgTypeConstant.nickname, nickname);//昵稱
values.put(MsgTypeConstant.time, new Date().getTime() / 1000);
values.put(MsgTypeConstant.senderuin, account);//qq號碼或者微信號碼
values.put(MsgTypeConstant.selfuin, account);//讓機器人自己發(fā)送消息温数,所以這里就是自己绣硝,全部填寫自己
values.put(MsgTypeConstant.frienduin, frienduin);//如果是群聊則是群號,否則填寫QQ號碼
int MSG_TYPE_TEXT = -1000;//文本消息
int type=MSG_TYPE_TEXT ;
values.put(MsgTypeConstant.type, type);
values.put(MsgTypeConstant.apptype, "proxy_send_msg");//這是控制機器人發(fā)話的撑刺,
values.put(MsgTypeConstant.time, new Date().getTime());
values.put(MsgTypeConstant.istroop, istroop);//istroop =1代表群消息鹉胖,否則代表私聊消息
Uri insert = contentResolver.insert(uri, values);// 確保機器人已打開,正常情況下够傍,回雙向守護不會輕易宕機
return insert;
}
}
,2.0.5理論上可以省略使用空字符串代替甫菠,而且必須使用此版本以及以上才支持。