We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.
Already on GitHub? Sign in to your account
no_previous_session_for_smid
MongooseIM version: 6.2.1 Installed from: image Erlang/OTP version: 26
Hey 馃憢馃徎
I'm trying to implement stream resumption, and even though it works most of the time, there are cases where I receive this element:
<failed xmlns='urn:xmpp:sm:3'> <item-not-found xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/> </failed>
This is because MongooseIM cannot find the SMID, but it's not clear the reason.
Example in the logs:
mongooseim-2 mongooseim when=2024-05-17T16:35:44.108910+00:00 level=warning what=resumption_error reason=no_previous_session_for_smid pid=<0.2231.0> at=mod_stream_management:do_handle_resume/5:591 smid=HD/9Rp5MZlPejuwIcw7WFqRd0UGq c2s_state="{c2s_data,<<\"localhost\">>,<<\"localhost\">>,<<\"en\">>,{1715963743730432,<0.2231.0>},<<\"d8a579a8baaf99d3\">>,{jid,<<\"dd316d53-89d7-4657-9630-d9683e755190_guest\">>,<<\"localhost\">>,<<>>},{c2s_socket,mod_websockets,{websocket,<0.2229.0>,{{10,66,8,73},54366},undefined}},{parser,#Ref<0.3472383861.1803419649.72374>,[]},none,#{access => all,port => 5280,hibernate_after => 0,shaper => none,max_stanza_size => 0,ip_tuple => {0,0,0,0},c2s_state_timeout => 15000,backwards_compatible_session => true,proto => tcp,xml_socket => true},#{},#{auth_module => mod_auth_token}}" mongooseim-1 mongooseim when=2024-05-17T16:37:58.450467+00:00 level=warning what=resumption_error reason=no_previous_session_for_smid pid=<0.2246.0> at=mod_stream_management:do_handle_resume/5:591 smid=nOrlBYZqRRHna2SFTnlBdxmcK3JP c2s_state="{c2s_data,<<\"localhost\">>,<<\"localhost\">>,<<\"en\">>,{1715963877592039,<0.2246.0>},<<\"4aa3e96abff09c09\">>,{jid,<<\"65e71aa6c872d621528016d4\">>,<<\"localhost\">>,<<>>},{c2s_socket,mod_websockets,{websocket,<0.2244.0>,{{10,66,11,16},57094},undefined}},{parser,#Ref<0.2465983669.3682467841.139461>,[]},none,#{access => all,port => 5280,hibernate_after => 0,shaper => none,max_stanza_size => 0,ip_tuple => {0,0,0,0},c2s_state_timeout => 15000,backwards_compatible_session => true,proto => tcp,xml_socket => true},#{},#{auth_module => mod_auth_token}}"
Example in the socket:
# https://esl.github.io/MongooseDocs/latest/configuration/general [general] loglevel = "debug" language = "en" hosts = ["localhost"] default_server_domain = "localhost" registration_timeout = "infinity" rdbms_server_type = "pgsql" sm_backend = "redis" max_fsm_queue = 1000 # https://esl.github.io/MongooseDocs/latest/configuration/listen/ # BOSH (Bidirectional-streams Over Synchronous HTTP | HTTP long-polling) and WebSockets [[listen.http]] ip_address = "0.0.0.0" port = 5280 transport.num_acceptors = 10 transport.max_connections = 1024 [[listen.http.handlers.mod_bosh]] host = "_" path = "/http-bind" [[listen.http.handlers.mod_websockets]] host = "_" path = "/ws-xmpp" # REST client port: https://esl.github.io/MongooseDocs/latest/rest-api/Client-frontend/ [[listen.http]] ip_address = "0.0.0.0" port = 8088 transport.num_acceptors = 10 transport.max_connections = 1024 protocol.compress = true [[listen.http.handlers.mongoose_client_api]] host = "_" path = "/api" [[listen.http.handlers.mongoose_graphql_handler]] host = "_" path = "/api/graphql" schema_endpoint = "user" # REST admin port: https://esl.github.io/MongooseDocs/latest/rest-api/Administration-backend/ [[listen.http]] ip_address = "0.0.0.0" port = 8089 transport.num_acceptors = 10 transport.max_connections = 1024 protocol.compress = true [[listen.http.handlers.mod_websockets]] host = "_" path = "/ws-xmpp" [[listen.http.handlers.mongoose_admin_api]] host = "_" path = "/api" username = "${MONGOOSEIM_USER}" password = "${MONGOOSEIM_PASSWORD}" [[listen.http.handlers.mongoose_graphql_handler]] host = "_" path = "/api/graphql" schema_endpoint = "admin" username = "${MONGOOSEIM_USER}" password = "${MONGOOSEIM_PASSWORD}" # Client-to-server connections [[listen.c2s]] port = 5222 access = "c2s" shaper = "c2s_shaper" max_stanza_size = 65536 [auth] methods = ["rdbms"] sasl_external = ["standard"] [auth.rdbms] users_number_estimate = true [outgoing_pools.redis.default] scope = "global" [outgoing_pools.redis.default.connection] host = "${REDIS_HOST}" port = 6379 database = 0 [outgoing_pools.rdbms.default] scope = "global" [outgoing_pools.rdbms.default.connection] driver = "pgsql" host = "${POSTGRES_HOST}" port = ${POSTGRES_PORT} database = "${POSTGRES_DB_NAME}" username = "${POSTGRES_USER}" password = "${POSTGRES_PASSWORD}" [modules.mod_adhoc] [modules.mod_disco] users_can_see_hidden_services = false [modules.mod_cache_users] [modules.mod_ping] [modules.mod_muc] host = "conference.@HOST@" access = "muc" access_create = "muc_create" backend = "rdbms" default_room.allow_multiple_sessions = true default_room.persistent = true [modules.mod_presence] [modules.mod_mam] muc.backend = "rdbms" backend = "rdbms" no_stanzaid_element = true pm.user_prefs_store = "rdbms" archive_chat_markers = true max_result_limit = 1000 pm.archive_groupchats = true [modules.mod_inbox] backend = "rdbms_async" reset_markers = ["displayed"] groupchat = ["muc"] [modules.mod_muc_log] [modules.mod_muc_light] backend = "rdbms" [modules.mod_stream_management] [modules.mod_last] backend = "rdbms" [modules.mod_roster] backend = "rdbms" [modules.mod_private] backend = "rdbms" [modules.mod_caps] cache_size = 2000 cache_life_time = 10_000 [modules.mod_event_pusher.rabbit] presence_exchange.name = "presence" presence_exchange.type = "topic" chat_msg_exchange.name = "chat_msg" chat_msg_exchange.sent_topic = "mongooseim_chat_msg_sent" chat_msg_exchange.recv_topic = "mongooseim_chat_msg_recv" groupchat_msg_exchange.name = "groupchat_msg" groupchat_msg_exchange.sent_topic = "mongooseim_groupchat_msg_sent" groupchat_msg_exchange.recv_topic = "mongooseim_groupchat_msg_recv" [outgoing_pools.rabbit.event_pusher.connection] host = "${RABBITMQ_HOST}" port = 5672 username = "${RABBITMQ_DEFAULT_USER}" password = "${RABBITMQ_DEFAULT_PASSWORD}" confirms_enabled = false max_worker_queue_len = 1000 [modules.mod_offline_stub] [modules.mod_sic] [modules.mod_vcard] host = "vjud.@HOST@" backend = "rdbms" [modules.mod_auth_token] backend = "rdbms" iqdisc.type = "queues" iqdisc.workers = 20 validity_period.access = {value = 1, unit = "hours"} validity_period.refresh = {value = 25, unit = "days"} [modules.mod_keystore] keys = [{name = "token_secret", type = "ram"}] [shaper.normal] max_rate = 1000 [shaper.fast] max_rate = 50_000 [shaper.mam_shaper] max_rate = 1 [shaper.mam_global_shaper] max_rate = 1000 [acl] local = [{}] [access] max_user_sessions = [ {acl = "all", value = 10} ] max_user_offline_messages = [ {acl = "admin", value = 5000}, {acl = "all", value = 100} ] local = [ {acl = "local", value = "allow"} ] c2s = [ {acl = "blocked", value = "deny"}, {acl = "all", value = "allow"} ] c2s_shaper = [ {acl = "admin", value = "none"}, {acl = "all", value = "normal"} ] muc_admin = [ {acl = "admin", value = "allow"} ] muc_create = [ {acl = "local", value = "allow"} ] muc = [ {acl = "all", value = "allow"} ] mam_set_prefs = [ {acl = "all", value = "default"} ] mam_get_prefs = [ {acl = "all", value = "default"} ] mam_lookup_messages = [ {acl = "all", value = "default"} ] mam_set_prefs_shaper = [ {acl = "all", value = "mam_shaper"} ] mam_get_prefs_shaper = [ {acl = "all", value = "mam_shaper"} ] mam_lookup_messages_shaper = [ {acl = "all", value = "mam_shaper"} ] mam_set_prefs_global_shaper = [ {acl = "all", value = "mam_global_shaper"} ] mam_get_prefs_global_shaper = [ {acl = "all", value = "mam_global_shaper"} ] mam_lookup_messages_global_shaper = [ {acl = "all", value = "mam_global_shaper"} ] [[host_config]] host = "anonymous.localhost" [host_config.auth.anonymous] allow_multiple_connections = true protocol = "both"
Sharing these files in case they can help:
Not sure if I'm missing something here. Any help will be appreciated! Thanks. 馃檹馃徎
The text was updated successfully, but these errors were encountered:
No branches or pull requests
MongooseIM version: 6.2.1
Installed from: image
Erlang/OTP version: 26
Hey 馃憢馃徎
I'm trying to implement stream resumption, and even though it works most of the time, there are cases where I receive this element:
This is because MongooseIM cannot find the SMID, but it's not clear the reason.
Example in the logs:
Example in the socket:
mongooseim.toml
Sharing these files in case they can help:
Not sure if I'm missing something here. Any help will be appreciated! Thanks. 馃檹馃徎
The text was updated successfully, but these errors were encountered: