public static Configuration config () { return shared().config; }
public void addLoginInfoData (String key, Object value) { SharedPreferences.Editor keyValuesEditor = ChatSDK.shared().getPreferences().edit(); if (value instanceof Integer) { keyValuesEditor.putInt(key, (Integer) value); } else if (value instanceof String) { keyValuesEditor.putString(key, (String) value); } keyValuesEditor.apply(); }
public Map<String, ?> getLoginInfo() { return ChatSDK.shared().getPreferences().getAll(); }
public void removeLoginInfo (String key) { SharedPreferences.Editor keyValuesEditor = ChatSDK.shared().getPreferences().edit(); keyValuesEditor.remove(key); keyValuesEditor.apply(); }
public Tab (int titleResource, int icon, Fragment fragment) { this.fragment = fragment; this.title = ChatSDK.shared().context().getString(titleResource); this.icon = icon; }
@Override public String displayName(Message message) { return ChatSDK.shared().context().getString(R.string.location_message); }
@Override public String displayName(Message message) { return ChatSDK.shared().context().getString(R.string.image_message); }
/** * Currently supporting only string and integers. Long and other values can be added later on. */ public void setLoginInfo(Map<String, Object> values) { SharedPreferences.Editor keyValuesEditor = ChatSDK.shared().getPreferences().edit(); for (String s : values.keySet()) { if (values.get(s) instanceof Integer) keyValuesEditor.putInt(s, (Integer) values.get(s)); else if (values.get(s) instanceof String) keyValuesEditor.putString(s, (String) values.get(s)); else if (values.get(s) instanceof Boolean) keyValuesEditor.putBoolean(s, (Boolean) values.get(s)); } keyValuesEditor.apply(); }
public void startTakePhotoActivity (Activity activity, Result resultHandler) throws Exception { this.resultHandler = resultHandler; Context context = ChatSDK.shared().context(); Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); File destination = ImageUtils.createEmptyFileInCacheDirectory(context, "CAPTURE", ".jpg"); fileUri = PhotoProvider.getPhotoUri(destination, context); intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); if (intent.resolveActivity(activity.getPackageManager()) != null) { activity.startActivityForResult(intent, TAKE_PHOTO); } else { resultHandler.result(null); } }
public static String t (int resId) { return t(ChatSDK.shared().context(), resId); }
public boolean recordPermissionGranted() { return ContextCompat.checkSelfPermission(ChatSDK.shared().context(), Manifest.permission.RECORD_AUDIO) != PERMISSION_DENIED; }
public static ChatSDK initialize (Configuration config, BaseNetworkAdapter networkAdapter, InterfaceAdapter interfaceAdapter) throws ChatSDKException { shared().setContext(config.context.get()); shared().config = config; DaoCore.init(shared().context()); if(interfaceAdapter != null) { InterfaceManager.shared().a = interfaceAdapter; } else { shared().activateModule("UserInterfaceModule", "activate", new MethodArgument(Context.class, shared().context())); } if (networkAdapter != null) { NetworkManager.shared().a = networkAdapter; } else { shared().activateModule("FirebaseModule", "activate"); } shared().handleLocalNotifications(); // Monitor the app so if it goes into the background we know AppBackgroundMonitor.shared().setEnabled(true); if (config().debug) { Timber.plant(new Timber.DebugTree()); } return shared(); }
public void createMessageNotification(Message message) { Context context = ChatSDK.shared().context(); String threadID = message.getThread().getEntityID(); Intent openChatIntent = new Intent(context, ChatSDK.ui().getChatActivity()); openChatIntent.putExtra(InterfaceManager.THREAD_ENTITY_ID, threadID); openChatIntent.setAction(threadID); openChatIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); createMessageNotification(context, openChatIntent, message.getSender().getEntityID(), message.getSender().getName(), message.getText()); }
ToastHelper.show(ChatSDK.shared().context(), "Error: bitmap is null"); e.onComplete();
e.onNext(new MessageSendProgress(message)); File compress = new Compressor(ChatSDK.shared().context()) .setMaxHeight(ChatSDK.config().imageMaxHeight) .setMaxWidth(ChatSDK.config().imageMaxWidth) e.onError(new Throwable(ChatSDK.shared().context().getString(R.string.unable_to_save_image_to_disk))); return;
File compress = new Compressor(ChatSDK.shared().context()) .setMaxHeight(ChatSDK.config().imageMaxThumbnailDimension) .setMaxWidth(ChatSDK.config().imageMaxThumbnailDimension) File file = ImageUtils.compressImageToFile(ChatSDK.shared().context(), bitmap, ChatSDK.currentUser().getEntityID(), ".png");
public Completable send() { return Completable.create(e -> { if(model.getThread() != null) { push().concatWith(new ThreadWrapper(model.getThread()).pushLastMessage(lastMessageData())).subscribe(() -> { FirebaseEntity.pushThreadMessagesUpdated(model.getThread().getEntityID()); model.setMessageStatus(MessageSendStatus.Sent); model.update(); e.onComplete(); }, e::onError); } else { e.onError(new Throwable(ChatSDK.shared().context().getString(R.string.message_doesnt_have_a_thread))); } }).subscribeOn(Schedulers.single()); }