hellostealth / stealth

An open source Ruby framework for text and voice chatbots. 🤖

Home Page:https://hellostealth.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NoMethodError: undefined method `process` for nil:NilClass in Stealth::Services::HandleMessageJob

Quintasan opened this issue · comments

I created a new Stealth bot and I'm getting a lot of backtraces from Sidekiq:

15:18:00 sidekiq.1 | 2019-02-10T14:18:00.993Z 4913 TID-gpw709sjp Stealth::Services::HandleMessageJob JID-3586b22d1f0575b6f23edd56 INFO: start
15:18:00 sidekiq.1 | 2019-02-10T14:18:00.994Z 4913 TID-gpw709sjp Stealth::Services::HandleMessageJob JID-3586b22d1f0575b6f23edd56 INFO: fail: 0.0 sec
15:18:00 sidekiq.1 | 2019-02-10T14:18:00.994Z 4913 TID-gpw709sjp WARN: {"context":"Job raised exception","job":{"class":"Stealth::Services::HandleMessageJob","args":["facebook",{"service":"facebook","object":"page","entry":[{"id":"1103733963098413","time":1549808280487,"messaging":[{"sender":{"id":"1984676038297605"},"recipient":{"id":"1103733963098413"},"timestamp":1549808280472,"delivery":{"mids":["x6joOPfsNCNBDd-AsCexeJe539sRJMeale4WGO0K5B1jfeLSOEnYigRLvjx801A7McvU4K4qANu07o60uvMxLQ"],"watermark":1549808279993,"seq":0}}]}]},{"SCRIPT_NAME":"","QUERY_STRING":"","SERVER_PROTOCOL":"HTTP/1.1","SERVER_SOFTWARE":"puma 3.12.0 Llamas in Pajamas","GATEWAY_INTERFACE":"CGI/1.2","REQUEST_METHOD":"POST","REQUEST_PATH":"/incoming/facebook","REQUEST_URI":"/incoming/facebook","HTTP_VERSION":"HTTP/1.1","HTTP_HOST":"7c829b2c.ngrok.io","HTTP_ACCEPT":"*/*","HTTP_ACCEPT_ENCODING":"deflate, gzip","HTTP_USER_AGENT":"facebookexternalua","CONTENT_TYPE":"application/json","HTTP_X_HUB_SIGNATURE":"sha1=d0e698d46asdasdasdasdasdab5972b365f4bae73","CONTENT_LENGTH":"334","HTTP_X_FORWARDED_PROTO":"https","HTTP_X_FORWARDED_FOR":"2a03:2880:30ff:e::face:b00c","SERVER_NAME":"7c829b2c.ngrok.io","SERVER_PORT":"443","PATH_INFO":"/incoming/facebook","REMOTE_ADDR":"127.0.0.1"}],"retry":false,"queue":"stealth_webhooks","jid":"3586basdasdas575b6f23edd56","created_at":1549808280.9932883,"enqueued_at":1549808280.993337},"jobstr":"{\"class\":\"Stealth::Services::HandleMessageJob\",\"args\":[\"facebook\",{\"service\":\"facebook\",\"object\":\"page\",\"entry\":[{\"id\":\"1103733963098413\",\"time\":1549808280487,\"messaging\":[{\"sender\":{\"id\":\"1984676038297605\"},\"recipient\":{\"id\":\"1103733963098413\"},\"timestamp\":1549808280472,\"delivery\":{\"mids\":[\"x6joOPfsNCNBDd-AsCexeJe539sRJMeale4WGO0K5B1jfeLSOEnYigRLvjx801A7McvU4K4qANu07o60uvMxLQ\"],\"watermark\":1549808279993,\"seq\":0}}]}]},{\"SCRIPT_NAME\":\"\",\"QUERY_STRING\":\"\",\"SERVER_PROTOCOL\":\"HTTP/1.1\",\"SERVER_SOFTWARE\":\"puma 3.12.0 Llamas in Pajamas\",\"GATEWAY_INTERFACE\":\"CGI/1.2\",\"REQUEST_METHOD\":\"POST\",\"REQUEST_PATH\":\"/incoming/facebook\",\"REQUEST_URI\":\"/incoming/facebook\",\"HTTP_VERSION\":\"HTTP/1.1\",\"HTTP_HOST\":\"7c829b2c.ngrok.io\",\"HTTP_ACCEPT\":\"*/*\",\"HTTP_ACCEPT_ENCODING\":\"deflate, gzip\",\"HTTP_USER_AGENT\":\"facebookexternalua\",\"CONTENT_TYPE\":\"application/json\",\"HTTP_X_HUB_SIGNATURE\":\"sha1=d0e698d46ae1b506327919c1b5972b365f4bae73\",\"CONTENT_LENGTH\":\"334\",\"HTTP_X_FORWARDED_PROTO\":\"https\",\"HTTP_X_FORWARDED_FOR\":\"2a03:2880:30ff:e::face:b00c\",\"SERVER_NAME\":\"7c829b2c.ngrok.io\",\"SERVER_PORT\":\"443\",\"PATH_INFO\":\"/incoming/facebook\",\"REMOTE_ADDR\":\"127.0.0.1\"}],\"retry\":false,\"queue\":\"stealth_webhooks\",\"jid\":\"3586b22d1f0575b6f23edd56\",\"created_at\":1549808280.9932883,\"enqueued_at\":1549808280.993337}"}
15:18:00 sidekiq.1 | 2019-02-10T14:18:00.994Z 4913 TID-gpw709sjp WARN: NoMethodError: undefined method `process' for nil:NilClass
15:18:00 sidekiq.1 | 2019-02-10T14:18:00.994Z 4913 TID-gpw709sjp WARN: /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/stealth-facebook-0.13.1/lib/stealth/services/facebook/message_handler.rb:88:in `process_facebook_event'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/stealth-facebook-0.13.1/lib/stealth/services/facebook/message_handler.rb:43:in `process'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/stealth-1.1.4/lib/stealth/dispatcher.rb:32:in `process'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/stealth-1.1.4/lib/stealth/services/jobs/handle_message_job.rb:17:in `perform'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:185:in `execute_job'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:167:in `block (2 levels) in process'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/middleware/chain.rb:128:in `block in invoke'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/middleware/chain.rb:133:in `invoke'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:166:in `block in process'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:137:in `block (6 levels) in dispatch'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/job_retry.rb:108:in `local'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:136:in `block (5 levels) in dispatch'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq.rb:37:in `block in <module:Sidekiq>'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:132:in `block (4 levels) in dispatch'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:243:in `stats'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:127:in `block (3 levels) in dispatch'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/job_logger.rb:8:in `call'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:126:in `block (2 levels) in dispatch'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/job_retry.rb:73:in `global'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:125:in `block in dispatch'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/logging.rb:48:in `with_context'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/logging.rb:42:in `with_job_hash_context'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:124:in `dispatch'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:165:in `process'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:83:in `process_one'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/processor.rb:71:in `run'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/util.rb:16:in `watchdog'
15:18:00 sidekiq.1 | /home/quintasan/.rbenv/versions/2.6.0/lib/ruby/gems/2.6.0/gems/sidekiq-5.2.5/lib/sidekiq/util.rb:25:in `block in safe_thread'

Not sure why is that.