ejabberd

[ANN] ejabberd 16.04

Mailing list - Fri, 2016-04-29 10:57
This new ejabberd release includes bugfixes, and also two major source code refactorings: one for ejabberd commands, and other for database specific code in many modules. This version is doing lot of under the scene changes to prepare further improvements and refactoring. For consistency, modules configured to use an SQL RDBMS are named sql instead of the more confusing odbc. You are not required to modify your configuration file, old style 'odbc' keyword works, but you may want to update it and replace 'odbc' with 'sql'. Erlang/OTP 18.3 is now used in all official installers and packages available in the download area. ## Changes ### API Commands - Add API versionning - Changed error handling, based on exception - ejabberd Command bugfixes - Accept commands: add_commands syntax (along commands: - add_commands) - Fix mod_muc_admin:get_room_options and set_room_affiliation - mod_http_api: support 'open' ejabberd commands ### Databases - Split modules DB specific code into separate modules - Rename "odbc" to "sql" everywhere - Rename "internal" auth to "mnesia" - Improve detection of databases supported by modules - Switch to varchar(64) in mysql user.server/salt as text can't have default values - 'serverkey' and 'salt' should have empty string as default ### XMPP - Drop headline messages sent to offline resources - Don't omit bounces for messages of type "result" - Match namespace when checking for chat states - Fix check for standalone chat state notifications - Disable TLS compression for s2s by default - Make sure that ejabberd_sm sid are unique - Send stream trailer at the very end of the processing - Generate shorter jid for anonymous connections - Fix anonymous SASL auth ### ejabberdctl - Add option to migration script to delete data from a table after they have been successfully moved to SQL database: `ejabberdctl delete_mnesia example.org` - Remove useless variable and quote EPMD and SPOOL_DIR - Fix node ping command - Use UUID for ctl node name - Remove --auth in ejabberd_ctl.erl as it's useless, still useful for mod_rest - Force ERL_PATH for Elixir console ### Pubsub - Fix use of pubsub node plugin when configured with default_node_config - Set default value for pubsub#itemreply option - Add subscribe/unsubscribe hooks ### Internal - Add mod_mam header file - Replace ?ERR_* macros with ?ERRT_* - change mod_ping Timers using maps instead of dict ### Dependencies - Update p1_utils to 1.0.4: Adds p1_time_compat:unique_timestamp() - Uptate fast_tls to 1.0.3: Prevent buffer overflows and allocation failures - Uptate stringprep to 1.0.3: Fix compilation on Windows and error message - Uptate stun to 1.0.3: Use fast_tls 1.0.3 - Uptate esip to 1.0.4: Use fast_tls 1.0.3 ## Feedback As usual, the release is tagged in the Git source code repository on Github: https://github.com/processone/ejabberd.git The source package and binary installers are available at https://www.process-one.net/en/ejabberd/downloads/ If you suspect that you've found a bug, please search or fill a bug report on Github: https://github.com/processone/ejabberd/issues
Categories: ejabberd

Re: XyBot - a XMPP bot that allows users to interactwith Asterisk

Mailing list - Tue, 2016-04-26 07:23
Hello, Thank you for letting us know about the project :) On Thu, Apr 21, 2016 at 12:57 PM Marcelo Terres <mhterres< at >gmail.com> wrote: _______________________________________________ ejabberd mailing list ejabberd< at >jabber.ru http://lists.jabber.ru/mailman/listinfo/ejabberd
Categories: ejabberd

XyBot - a XMPP bot that allows users to interact withAsterisk

Mailing list - Thu, 2016-04-21 08:57
Hi. I'm here to invite you all to test another PoC that I developed and that uses Asterisk and XMPP, called XyBot. XyBot is a XMPP bot written in python and its main goal is to enable users to interact with asterisk directly from their XMPP client. Xybot was built to provide a expandable structure of plugins and monitoring agents that allows system administrators to develop their own features. You can find more informations (including source code for download) in my blog at https://www.mundoopensource.com.br/xybot-xmpp-bot-that-allows-users-to-interact-with-asterisk/. Any doubts or suggestions are welcomed. Regards, Marcelo H. Terres <mhterres< at >gmail.com> IM: mhterres< at >jabber.mundoopensource.com.br https://www.mundoopensource.com.br https://twitter.com/mhterres https://linkedin.com/in/marceloterres
Categories: ejabberd

Fw: new message

Mailing list - Thu, 2016-04-21 05:30
Hey! Open message <http://cn.rinhoo.com/walk.php?enn> gerbra< at >gotadsl.co.uk _______________________________________________ ejabberd mailing list ejabberd< at >jabber.ru http://lists.jabber.ru/mailman/listinfo/ejabberd
Categories: ejabberd

Re: ubuntu cripto

Mailing list - Mon, 2016-04-18 06:23
and the hostname was the problem. thanks for catching it. randy
Categories: ejabberd

Re: ubuntu cripto

Mailing list - Mon, 2016-04-18 06:16
that was the result of the conversion from erlang where it was %% Hostname {hosts, ["localhost", "xmpp", "xmpp.rg.net"]}.
Categories: ejabberd

Re: ubuntu cripto

Mailing list - Mon, 2016-04-18 06:09
* Randy Bush <randy< at >psg.com> [2016-04-18 12:06]: Did you just change this to "localhost" to hide the real host name on the mailing list, or are you actually using that name? Holger
Categories: ejabberd

Re: ubuntu cripto

Mailing list - Mon, 2016-04-18 05:37
ok, i killed the tls: true not really 2016-04-18 07:32:33.961 [info] <0.7.0> Application ejabberd started on node ejabberd< at >xmpp 2016-04-18 07:32:57.474 [info] <0.465.0>< at >ejabberd_listener:accept:299 (#Port<0.9382>) Accepted connection ::FFFF:178.39.154.249:17819 -> ::FFFF:147.28.0.6:5222 2016-04-18 07:33:11.279 [info] <0.465.0>< at >ejabberd_listener:accept:299 (#Port<0.9413>) Accepted connection ::FFFF:210.138.216.50:51529 -> ::FFFF:147.28.0.6:5222 2016-04-18 07:33:31.843 [info] <0.465.0>< at >ejabberd_listener:accept:299 (#Port<0.9415>) Accepted connection ::FFFF:210.138.216.50:51537 -> ::FFFF:147.28.0.6:5222 2016-04-18 07:33:36.555 [info] <0.466.0>< at >ejabberd_listener:accept:299 (#Port<0.9417>) Accepted connection ::FFFF:188.174.72.43:43181 -> ::FFFF:147.28.0.6:5269 2016-04-18 07:33:37.363 [info] <0.465.0>< at >ejabberd_listener:accept:299 (#Port<0.9421>) Accepted connection ::FFFF:210.138.216.50:51538 -> ::FFFF:147.28.0.6:5222 2016-04-18 07:33:37.629 [info] <0.478.0>< at >ejabberd_s2s_in:wait_for_feature_request:383 Accepted s2s EXTERNAL authentication for eggert.org (TLS=true) 2016-04-18 07:33:42.863 [info] <0.465.0>< at >ejabberd_listener:accept:299 (#Port<0.9528>) Accepted connection ::FFFF:210.138.216.50:51540 -> ::FFFF:147.28.0.6:5222 2016-04-18 07:33:43.843 [info] <0.466.0>< at >ejabberd_listener:accept:299 (#Port<0.9530>) Accepted connection ::FFFF:212.110.167.158:35522 -> ::FFFF:147.28.0.6:5269 2016-04-18 07:33:44.678 [info] <0.485.0>< at >ejabberd_s2s_in:wait_for_feature_request:383 Accepted s2s EXTERNAL authentication for jabber.isoc.org (TLS=true) 210.138.216.50 is my adium client failing and reporting Error: You require encryption, but it is not available on this server. and occasionally "host unknown" for some strange reason randy
Categories: ejabberd

Re: ubuntu cripto

Mailing list - Mon, 2016-04-18 05:16
* Randy Bush <randy< at >psg.com> [2016-04-18 12:57]: Yes, "tls: true" enables TLS-on-connect (as opposed to STARTTLS), so you don't want this here. Holger
Categories: ejabberd

Re: ubuntu cripto

Mailing list - Mon, 2016-04-18 05:16
* Randy Bush <randy< at >psg.com> [2016-04-18 12:06]: This is an HTTP connection on port 5280. Do you have any entries for port 5222? Do you have any [error] messages in the log? Holger
Categories: ejabberd

Re: ubuntu cripto

Mailing list - Mon, 2016-04-18 01:57
if i add tls: true ejabberd logs the following 2016-04-18 03:54:56.549 [error] <0.485.0>< at >ejabberd_receiver:handle_info:248 TLS error = SSL_do_handshake failed: error:140760FC:SSL routines:SSL23_GET_CLIENT_HELLO:unknown protocol i feel as if i am starting to throw <bleep> at the wall to see what will stick. time to stop, wait a bit for someone to hit me with a clue bat, and revert to old backup if not. randy
Categories: ejabberd

Re: ubuntu cripto

Mailing list - Mon, 2016-04-18 01:06
so i took the leap. and i converted to yaml, attached. but, adium tells me Error: you require encryption but it is not available on this server psi says Server does not support TLS encryption and the log gives no clue 2016-04-18 02:44:44.286 [info] <0.470.0>< at >ejabberd_listener:accept:299 (#Port<0.9573>) Accepted connection ::FFFF:210.138.216.50:60497 -> ::FFFF:147.28.0.6:5280 2016-04-18 02:44:44.286 [info] <0.538.0>< at >ejabberd_http:init:157 started: {gen_tcp,#Port<0.9573>} # egrep -v '(\#|^$)' /etc/ejabberd/ejabberd.yml loglevel: 4 log_rotate_size: 10485760 log_rotate_date: "" log_rotate_count: 1 log_rate_limit: 100 hosts: - "localhost" listen: - port: 5222 ip: "::" module: ejabberd_c2s certfile: "/etc/ejabberd/ejabberd.pem" starttls_required: true starttls: true ciphers: "HIGH:!3DES:!aNULL:!SSLv2:< at >STRENGTH" protocol_options: - "no_sslv2" - "no_sslv3" max_stanza_size: 65536 shaper: c2s_shaper access: c2s resend_on_timeout: if_offline - port: 5269 ip: "::" module: ejabberd_s2s_in - port: 5280 ip: "::" module: ejabberd_http request_handlers: "/websocket": ejabberd_http_ws web_admin: true http_bind: true captcha: true disable_sasl_mechanisms: "digest-md5" s2s_use_starttls: required s2s_certfile: "/etc/ejabberd/ejabberd.pem" s2s_protocol_options: - "no_sslv3" auth_method: internal auth_password_format: scram shaper: normal: 1000 fast: 50000 max_fsm_queue: 1000 acl: admin: user: - "": "localhost" local: user_regexp: "" loopback: ip: - "127.0.0.0/8" access: max_user_sessions: all: 10 max_user_offline_messages: admin: 5000 all: 100 local: local: allow c2s: blocked: deny all: allow c2s_shaper: admin: none all: normal s2s_shaper: all: fast announce: admin: allow configure: admin: allow muc_admin: admin: allow muc_create: local: allow muc: all: allow pubsub_createnode: local: allow register: all: allow trusted_network: loopback: allow language: "en" modules: mod_adhoc: {} mod_admin_extra: {} access: announce mod_caps: {} mod_carboncopy: {} mod_client_state: drop_chat_states: true queue_presence: true mod_disco: server_info: modules: all name: "abuse-addresses" urls: ["mailto:abuse< at >localhost"] mod_echo: {} mod_irc: default_encoding: "utf-8" mod_http_bind: max_inactivity: 60 mod_last: {} mod_muc: access: muc access_create: muc_create access_persistent: muc_create access_admin: muc_admin mod_muc_admin: {} mod_multicast: {} mod_offline: access_max_user_messages: max_user_offline_messages mod_ping: {} mod_pres_counter: count: 5 interval: 60 mod_privacy: {} mod_private: {} mod_pubsub: access_createnode: pubsub_createnode ignore_pep_from_offline: true last_item_cache: false plugins: - "flat" - "hometree" mod_register: captcha_protected: true welcome_message: subject: "Welcome!" body: |- Hi. Welcome to this XMPP server. ip_access: trusted_network access: register mod_roster: {} mod_shared_roster: {} mod_sic: {} mod_stats: {} mod_time: {} mod_vcard: {} mod_version: {} allow_contrib_modules: true
Categories: ejabberd

Re: ubuntu cripto

Mailing list - Sun, 2016-04-17 21:19
and, after backing up, i just apt-get update apt-get upgrade and it will magically work? it will pick up current accounts etc? and then i can convert my erlang conf to yaml? randy
Categories: ejabberd

Re: ubuntu cripto

Mailing list - Sun, 2016-04-17 12:23
* Randy Bush <randy< at >psg.com> [2016-04-17 13:02]: You can set {s2s_use_starttls, required}. The other things you mentioned don't work with ejabberd 2.x. Current unofficial ejabberd packages for Ubuntu 14.04 are available here: https://www.jabber.at/en/apt-repository Holger
Categories: ejabberd

ubuntu cripto

Mailing list - Sun, 2016-04-17 02:02
i am lazy/conservative and prefer to run default/vanilla versions. and ubuntu 14.04 comes whith a rather old ejabberd package :( i wanna do the equivalent of s2s_use_starttls: required s2s_ciphers: "HIGH:!3DES:!aNULL:!SSLv2:< at >STRENGTH" s2s_protocol_options: - "no_sslv2" - "no_sslv3" and module: ejabberd_c2s ciphers: "HIGH:!3DES:!aNULL:!SSLv2:< at >STRENGTH" protocol_options: - "no_sslv2" - "no_sslv3" except i am stuck in erlang # ejabberdctl convert_to_yaml ejabberd.cfg ejabberd.yml Error: command "convert_to_yaml" not known. clue bat appreciated randy
Categories: ejabberd

Delivering Asterisk IVR data to softwares using XMPP

Mailing list - Thu, 2016-04-14 06:44
Hello. I developed a little project (a PoC) to "integrate" Asterisk IVRs with "other softwares", allowing that data already entered in IVR can be used in other stages of a customer service, for example. The main goal is to provide more efficiency and interoperability between different solutions in a heterogeneous enterprise scenario. Despite the fact that I started this project to integrate Asterisk IVRs with customer service softwares, this is a multipurpose project that can be used with any kind of software that you want. The project uses the Asterisk's ARI API and XMPP (PubSub) to deliver the information. You can find more informations (including source code for download) in my blog at https://www.mundoopensource.com.br/delivering-asterisk-ivr-data-to-softwares-using-xmpp/. Any doubts or suggestions are welcomed. Regards, Marcelo H. Terres <mhterres< at >gmail.com> IM: mhterres< at >jabber.mundoopensource.com.br https://www.mundoopensource.com.br https://twitter.com/mhterres https://linkedin.com/in/marceloterres
Categories: ejabberd

Re: MySQL schema

Mailing list - Sat, 2016-04-09 16:56
Hi Edward, On Sun, Apr 3, 2016 at 9:16 PM, Edward Hibbert <edward< at >ehibbert.org.uk> wrote: developer some someone more knowledable about ejabberd should comment really. indeed the maxlength of a TEXT type in MySQL appers to be 64K. maybe the mysql schema was based on postgres where TEXT is unlimited. https://github.com/processone/ejabberd/blob/master/sql/mysql.sql#L287 I am not an expert in ejabberd but having looked at the MUC internals a little I would say that the reason for this is that the MySQL schema mirros the schema from the default internal format in ejabberd (which uses the mnesia database) where it would be pretty efficient to store a list of affiliations in the "opts" field. mnesia can store native erlang datastructures whereas to map that to a relationsal schema (one to one) necessitates serializing to (something like) JSON. for one MUC room. if this is a concern for you I would suggest that the default relationaal schema is not necessarily set in stone and if you wanted to make a muc_room_affiliations table (say) then that shouldn' tbe too hard to do. it would (in the first instance) mean forking the default muc I think this is the place at the opts are currentl serialized to ODBC: https://github.com/processone/ejabberd/blob/master/src/mod_muc.erl#L141 _______________________________________________ ejabberd mailing list ejabberd< at >jabber.ru http://lists.jabber.ru/mailman/listinfo/ejabberd
Categories: ejabberd

multiple hosts/passwords on external component

Mailing list - Sat, 2016-04-09 16:31
Hi, I'm trying to configure an external component (jitsi videobridge) and specifically to replicate a working confliguration from prosody, namely: Component "jitsi-videobridge.myhost.com" component_secret = "ABCDEF" Component "focus.myhost.com" component_secret = "QWERTY" based on the example here: https://github.com/processone/ejabberd/blob/master/ejabberd.yml.example#L142 I came up with: port: 5347 module: ejabberd_service access: all hosts: "jitsi-videobridge.myhost.com": password: "ABCDEF" "focus.myhost.com": password: "QWERTY" I had multiple problems with this config: * I couldn't auth the second component name (focus.myhost.com) with the associated password no matter what I tried (even using a standalone utility to check the auth only). I ended up having to use the same password for both to get auth to work. Having looked at the code for ejabberd_service.erl https://github.com/processone/ejabberd/blob/master/src/ejabberd_service.erl#L51 it looks like the state record has a list of hosts mapped to one password. so I'm not sure how that implementation fits with the example config I referenced ( https://github.com/processone/ejabberd/blob/master/ejabberd.yml.example#L142 ). i.e. there doesn't seem to be a "password per host" concept there. it just seems there is a "multi hosts to single pasword". am I (as I expect) just missing something obvious here? * with the config as above (but both hosts having the same password) I then had problems with the clients of the 2 distinct components (both with distinct TCP connections to port 5347) seeming to get "crossed wires" in their responses i.e. ping response from one stream seeming to go to the other stream. this reinforces my sense that I've just misunderstood / messed-up the config somehow. what I ended up doing to get it functional was to put the 2 hosts on distinct ports, i.e. port: 5347 module: ejabberd_service access: all hosts: "jitsi-videobridge.myhost.com": password: "ABCDEF" port: 5348 module: ejabberd_service access: all hosts: "focus.myhost.com": password: "QWERTY" while I don't see any particular downsides to this approach (but if you do then please enlighten me) is there a way I can do it as per the docs? Any clariifcation / help would be much appreciated. Thanks. _______________________________________________ ejabberd mailing list ejabberd< at >jabber.ru http://lists.jabber.ru/mailman/listinfo/ejabberd
Categories: ejabberd

PubSub RSM in ejabberd

Mailing list - Thu, 2016-04-07 06:46
Hey, We recently upgraded to 15.11 from 14.07. Our pubsub client implements XEP-0059 which worked just fine before the upgrade, but not afterwards. Is there something we are missing or is this a bug? Thanks in advance!
Categories: ejabberd
Syndicate content