本文整理汇总了Java中org.jivesoftware.smack.chat.ChatManager类的典型用法代码示例。如果您正苦于以下问题:Java ChatManager类的具体用法?Java ChatManager怎么用?Java ChatManager使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
ChatManager类属于org.jivesoftware.smack.chat包,在下文中一共展示了ChatManager类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: sendDisplayedReceipt
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
public void sendDisplayedReceipt(String receiverJid, String stanzaId, String dialog_id) {
Chat chat;
if ((chat = privateChats.get(receiverJid)) == null) {
chat = ChatManager.getInstanceFor(privateChatConnection).createChat(receiverJid, this);
privateChats.put(receiverJid, chat);
}
Message message = new Message(receiverJid);
Displayed read = new Displayed(stanzaId);
QuickbloxChatExtension extension = new QuickbloxChatExtension();
extension.setProperty("dialog_id", dialog_id);
message.setStanzaId(StanzaIdUtil.newStanzaId());
message.setType(Message.Type.chat);
message.addExtension(read);
message.addExtension(extension);
try {
chat.sendMessage(message);
} catch (SmackException.NotConnectedException ex) {
Logger.logExceptionToFabric(ex);
offlineMessages.add(message);
}
}
示例2: sendReceivedReceipt
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
public void sendReceivedReceipt(String receiverJid, String stanzaId, String dialog_id) {
Chat chat;
if ((chat = privateChats.get(receiverJid)) == null) {
chat = ChatManager.getInstanceFor(privateChatConnection).createChat(receiverJid, this);
privateChats.put(receiverJid, chat);
}
Message message = new Message(receiverJid);
Received delivered = new Received(stanzaId);
QuickbloxChatExtension extension = new QuickbloxChatExtension();
extension.setProperty("dialog_id", dialog_id);
message.setStanzaId(StanzaIdUtil.newStanzaId());
message.setType(Message.Type.chat);
message.addExtension(delivered);
message.addExtension(extension);
try {
chat.sendMessage(message);
} catch (SmackException.NotConnectedException ex) {
offlineMessages.add(message);
}
}
示例3: sendPrivateMessage
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
public void sendPrivateMessage(String body, String receiverJid, long timestamp, String stanzaId) {
Log.d(TAG, "Sending message to : " + receiverJid);
Chat chat;
if ((chat = privateChats.get(receiverJid)) == null) {
chat = ChatManager.getInstanceFor(privateChatConnection).createChat(receiverJid, this);
privateChats.put(receiverJid, chat);
}
QuickbloxChatExtension extension = new QuickbloxChatExtension();
extension.setProperty("date_sent", timestamp + "");
extension.setProperty("save_to_history", "1");
Message message = new Message(receiverJid);
message.setStanzaId(stanzaId);
message.setBody(body);
message.setType(Message.Type.chat);
message.addExtension(new Markable());
message.addExtension(extension);
try {
chat.sendMessage(message);
} catch (SmackException.NotConnectedException ex) {
offlineMessages.add(message);
}
}
示例4: onDestroy
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
@SuppressLint("NewApi")
@Override
protected void onDestroy() {
// XMPP.getInstance().getConnection(acitiviy).getRoster()
// .removeRosterListener(rosterListener);
Roster.getInstanceFor(XMPP.getInstance().getConnection(acitiviy)).removeRosterListener(rosterListener);
ChatManager.getInstanceFor(XMPP.getInstance().getConnection(acitiviy))
.removeChatListener(chatListener);
if (chat != null && messageListener != null) {
chat.removeMessageListener(messageListener);
}
if (popupWindow != null) {
popupWindow.dismiss();
}
if (emoticonsCover != null) {
emoticonsCover.setVisibility(View.GONE);
}
// actionBar.setIcon(R.drawable.ic_launcher);
super.onDestroy();
}
示例5: sendMessage
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
@Test
@BenchmarkOptions(benchmarkRounds = 10, warmupRounds = 0, concurrency = 10)
// round: 1.05 [+- 0.07], round.block: 0.74 [+- 0.25], round.gc: 0.00 [+-
// 0.00], GC.calls: 1, GC.time: 0.01, time.total: 1.08, time.warmup: 0.00,
// time.bench: 1.08
public void sendMessage() throws Exception {
XMPPConnection xmppConnection = xmppConnectionFactory.getXMPPConnection();
System.out.println(xmppConnection);
//
ChatManager chatManager = ChatManager.getInstanceFor(xmppConnection);
Chat chat = chatManager.createChat("[email protected]");
chat.sendMessage("test_123");
//
PoolableXmppConnection conn = (PoolableXmppConnection) xmppConnection;
conn.disconnect();
}
示例6: connect
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
public void connect(String hostname, int port, String username, String password) throws Exception {
purgeTask("reconnect");
this.hostname = hostname;
this.serviceName = hostname;
this.port = port;
this.username = username;
this.password = password;
Builder builder = XMPPTCPConnectionConfiguration.builder();
builder.setUsernameAndPassword(username, password);
builder.setServiceName(serviceName);
builder.setServiceName(hostname);
builder.setPort(port);
builder.setSecurityMode(SecurityMode.disabled);
builder.setDebuggerEnabled(true);
XMPPTCPConnectionConfiguration config = builder.build();
connection = new XMPPTCPConnection(config);
connection.connect().login();
roster = Roster.getInstanceFor(connection);
chatManager = ChatManager.getInstanceFor(connection);
roster.addRosterListener(this);
isConnected = true;
// not worth it - always empty right after connect
// getContactList();
broadcastState();
}
示例7: sendRaw
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
/**
* send the raw string as a message without wrapping it with xml attributes
* @param message the message to be sent
* @param buddyJID the buddy to send the message to
*/
public void sendRaw(String message, String buddyJID){
ChatManager chatManager = ChatManager.getInstanceFor(connection);
if (connection != null && connection.isConnected() && chatManager != null){
try{
Chat chat = chatManager.createChat(buddyJID);
chat.sendMessage(message);
}catch (Exception e){
e.printStackTrace();
}
}
}
示例8: sendTextMessage
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
/**
* sends a text message
*
* @param message the message text to send
* @param buddyJID the Buddy to receive the message
* @return true if sending was successful
*/
public boolean sendTextMessage(String message, String buddyJID, long id){
ChatManager chatManager = ChatManager.getInstanceFor(connection);
if (connection != null && connection.isConnected() && chatManager != null){
if (buddyJID.indexOf('@') == -1)
buddyJID += "@" + service;
Chat chat = chatManager.createChat(buddyJID);
try{
// wrap the message with all necessary xml attributes
Document doc = DocumentBuilderFactory.newInstance()
.newDocumentBuilder().newDocument();
Element msg = doc.createElement("message");
doc.appendChild(msg);
msg.setAttribute("type", MessageHistory.TYPE_TEXT);
msg.setAttribute("id", String.valueOf(id));
Element file = doc.createElement("content");
msg.appendChild(file);
file.setTextContent(message);
// transform everything to a string
Transformer t = TransformerFactory.newInstance().newTransformer();
StringWriter writer = new StringWriter();
StreamResult r = new StreamResult(writer);
t.transform(new DOMSource(doc), r);
message = writer.toString();
// send the message
chat.sendMessage(message);
Log.d("DEBUG", "Success: Sent message");
return true;
}catch (Exception e){
Log.e("ERROR", "Couldn't send message.");
Log.e("ERROR", e.toString());
return false;
}
}
Log.e("ERROR", "Sending failed: No connection.");
return false;
}
示例9: sendAcknowledgement
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
/**
* send an acknowledgement
* @param buddyId the buddyId to receive the acknowledgement
* @param othersId the id the buddy has sent the message with
* @param type the type of acknowledgement to send
* @return true if sending was successful
*/
public boolean sendAcknowledgement(String buddyId, long othersId, String type){
ChatManager chatManager = ChatManager.getInstanceFor(connection);
if (connection != null && connection.isConnected() && chatManager != null){
if (buddyId.indexOf('@') == -1)
buddyId += "@" + service;
Chat chat = chatManager.createChat(buddyId);
try{
// create the message structure
Document doc = DocumentBuilderFactory.newInstance()
.newDocumentBuilder().newDocument();
Element ack = doc.createElement("acknowledgement");
doc.appendChild(ack);
ack.setAttribute("id", String.valueOf(othersId));
ack.setAttribute("type", type);
// create the string representation of the message
Transformer t = TransformerFactory.newInstance().newTransformer();
StringWriter writer = new StringWriter();
StreamResult r = new StreamResult(writer);
t.transform(new DOMSource(doc), r);
String message = writer.toString();
// send the message
chat.sendMessage(message);
Log.d("DEBUG", "Success: Sent message");
return true;
}catch (Exception e){
Log.e("ERROR", "Couldn't send message.");
Log.e("ERROR", e.toString());
return false;
}
}
Log.e("ERROR", "Sending failed: No connection.");
return false;
}
示例10: initialize
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
private void initialize(){
try{
//initialize xmpp:
Log.d("SERVICE_DEBUG", "MessageService initializing");
if (xmppManager == null)
xmppManager = XmppManager.getInstance(getApplicationContext());
if (!xmppManager.isConnected()){
xmppManager.init();
xmppManager.performLogin(getUserName(), getPassword());
// OfflineMessageManager offlineMessageManager = new
// OfflineMessageManager(xmppManager.getConnection());
// if (offlineMessageManager.supportsFlexibleRetrieval())
// processMessages(offlineMessageManager.getMessages().toArray(new
// Message[offlineMessageManager.getMessageCount()]));
new Thread(reloadRoster).start();
}
ChatManager chatManager = ChatManager.getInstanceFor(xmppManager
.getConnection());
chatManager.addChatListener(new MyChatManagerListener());
xmppManager.setStatus(true, String.valueOf(getSharedPreferences(Constants
.PREFERENCES, 0).getLong(Constants.LAST_PRESENCE_SENT, 0)));
}catch (Exception e){
Log.e("SERVICE_ERROR", "An error while initializing the MessageService " +
"occurred.");
e.printStackTrace();
}
}
示例11: connect
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
public void connect() throws IOException, XMPPException, SmackException {
if (mConnection == null) {
createConnection();
}
if (!mConnection.isConnected()) {
Logger.info(TAG, "Connecting to " + mAccount.getHost() + ":" + mAccount.getPort());
mConnection.connect();
Roster roster = Roster.getInstanceFor(mConnection);
roster.removeRosterListener(this);
roster.addRosterListener(this);
roster.setSubscriptionMode(Roster.SubscriptionMode.accept_all);
roster.setRosterLoadedAtLogin(true);
}
if (!mConnection.isAuthenticated()) {
Logger.info(TAG, "Authenticating " + mAccount.getXmppJid());
mConnection.login();
PingManager.setDefaultPingInterval(XmppService.DEFAULT_PING_INTERVAL);
PingManager pingManager = PingManager.getInstanceFor(mConnection);
pingManager.registerPingFailedListener(this);
ChatManager chatManager = ChatManager.getInstanceFor(mConnection);
chatManager.removeChatListener(this);
chatManager.addChatListener(this);
DeliveryReceiptManager receipts = DeliveryReceiptManager.getInstanceFor(mConnection);
receipts.setAutoReceiptMode(DeliveryReceiptManager.AutoReceiptMode.always);
receipts.autoAddDeliveryReceiptRequests();
}
mOwnAvatar = getAvatarFor("");
}
示例12: ChatStateManager
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
private ChatStateManager(XMPPConnection connection) {
super(connection);
chatManager = ChatManager.getInstanceFor(connection);
chatManager.addOutgoingMessageInterceptor(outgoingInterceptor, filter);
chatManager.addChatListener(incomingInterceptor);
ServiceDiscoveryManager.getInstanceFor(connection).addFeature(NAMESPACE);
INSTANCES.put(connection, this);
}
示例13: sendMessage
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
@Override
public void sendMessage(TxMessage message) {
if(message.getDestination().getType().equals(Resource.Type.ROOM)){
Room room = getRoom(message.getDestination().getAddress());
if(room != null) {
room.sendMessage(message);
}
}else{
XmppRxMessage origin = (XmppRxMessage)message.getRequest();
Chat chat = ChatManager.getInstanceFor(connection).getThreadChat(origin.getThread());
if(chat == null){
logger.trace("chat was null, creating a new chat instance");
chat = ChatManager.getInstanceFor(connection).createChat(message.getDestination().getAddress(),origin.getThread(),null);
}else{
logger.trace("an existing chat was found for thread id {}", (origin.getThread()));
}
try {
Message msg = MessageHelper.createXmppMessage(message);
msg.addExtension(new DeliveryReceipt(origin.getId()));
chat.sendMessage(msg);
} catch (SmackException.NotConnectedException e) {
logger.warn("Trying to send a message on XMPP binding while connection is closed",e);
}
}
}
示例14: authenticated
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
@Override
public void authenticated(XMPPConnection xmppConnection, boolean b) {
Log.d(TAG, "Authenticated Successfully");
connected = true;
ChatManager.getInstanceFor(privateChatConnection).addChatListener(this);
}
示例15: getChatManager
import org.jivesoftware.smack.chat.ChatManager; //导入依赖的package包/类
public ChatManager getChatManager() {
return ChatManager.getInstanceFor(XMPPSession.getInstance().getXMPPConnection());
}