chatbox.js 934 B

1234567891011121314151617181920212223242526
  1. import { _converse } from '@converse/headless/core';
  2. const ChatBox = {
  3. async sendMessage (text, spoiler_hint) {
  4. if (this.get('omemo_active') && text) {
  5. const attrs = this.getOutgoingMessageAttributes(text, spoiler_hint);
  6. attrs['is_encrypted'] = true;
  7. attrs['plaintext'] = attrs.message;
  8. let message, stanza;
  9. try {
  10. const devices = await _converse.getBundlesAndBuildSessions(this);
  11. message = await this.createMessage(attrs);
  12. stanza = await _converse.createOMEMOMessageStanza(this, message, devices);
  13. } catch (e) {
  14. this.handleMessageSendError(e);
  15. return null;
  16. }
  17. _converse.api.send(stanza);
  18. return message;
  19. } else {
  20. return this.__super__.sendMessage.apply(this, arguments);
  21. }
  22. }
  23. }
  24. export default ChatBox;