Advertisement
Guest User

Untitled

a guest
Mar 3rd, 2017
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.74 KB | None | 0 0
  1. # messages_controller.rb
  2. require 'zendesk'
  3.  
  4. class MessagesController < ApplicationController
  5. layout "application"
  6.  
  7. # /suport/contact-us
  8. def contact_us
  9. zendesk = MyApp::Zendesk.new
  10. zendesk.delay.create_support_ticket(params[:message])
  11.  
  12. # render page
  13. respond_to do |format|
  14. flash[:notice] = "Email sent successfully!" if @sent
  15. format.html { render "pages/support/contact-us" }
  16. end
  17. end
  18. end
  19.  
  20. # zendesk.rb
  21. require 'zendesk_api'
  22.  
  23. module MyApp
  24. class Zendesk
  25. attr_accessor :client
  26.  
  27. def initialize(*args)
  28. @client = create_client
  29. end
  30.  
  31. # contact-us ticket methods
  32. def create_support_ticket(params={})
  33. unless params.blank? || @client.blank?
  34. # get or create user_id for submitter
  35. params[:requester_id] = check_user_exists(params)
  36.  
  37. begin
  38. ticket = @client.tickets.create(
  39. subject: "Support Ticket",
  40. comment: { value: params[:message] },
  41. submitter_id: params[:requester_id],
  42. requester_id: params[:requester_id],
  43. assignee_id: 201578811,
  44. status: "new",
  45. fields: [
  46. {id: 20887016, value: "Support"},
  47. {id: 20966436, value: "New"}])
  48. return ticket
  49. rescue => e
  50. Airbrake.notify e
  51. end
  52. else
  53. return false
  54. end
  55. end
  56. end
  57. end
  58.  
  59. Delayed::DeserializationError: Job failed to load: undefined class/module MyApp::. Handler: "--- !ruby/object:Delayed::PerformableMethodnobject: !ruby/object:MyApp::Zendeskn client: !ruby/object:ZendeskAPI::Clientn config: !ruby/object:ZendeskAPI::Configurationn client_options: {}n cache: !ruby/object:ZendeskAPI::LRUCachen size: 1000n store: {}n lru: []n url: https://REDACTED/api/v2n username: REDACTEDn password: REDACTED retry: truen logger: !ruby/object:Loggern progname: n level: 0n default_formatter: !ruby/object:Logger::Formattern datetime_format: n formatter: n logdev: !ruby/object:Logger::LogDevicen shift_size: n shift_age: n filename: n dev: !ruby/object:IO {}n mutex: !ruby/object:Logger::LogDevice::LogDeviceMutexn mon_owner: n mon_count: 0n mon_mutex: !ruby/object:Mutex {}n callbacks:n - !ruby/object:Proc {}n resource_cache: {}nmethod_name: :create_support_ticketnargs:n- !ruby/hash:ActionController::Parametersn name: benn email: myemail@aol.comn reason: Generaln message: testn"
  60. from /vendor/bundler/gems/delayed_job-4.0.0/lib/delayed/backend/base.rb:97:in `rescue in payload_object'
  61.  
  62. def create_support_ticket(params={})
  63. @client = create_client
  64. unless params.blank? || @client.blank?
  65. ...
  66. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement