Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # messages_controller.rb
- require 'zendesk'
- class MessagesController < ApplicationController
- layout "application"
- # /suport/contact-us
- def contact_us
- zendesk = MyApp::Zendesk.new
- zendesk.delay.create_support_ticket(params[:message])
- # render page
- respond_to do |format|
- flash[:notice] = "Email sent successfully!" if @sent
- format.html { render "pages/support/contact-us" }
- end
- end
- end
- # zendesk.rb
- require 'zendesk_api'
- module MyApp
- class Zendesk
- attr_accessor :client
- def initialize(*args)
- @client = create_client
- end
- # contact-us ticket methods
- def create_support_ticket(params={})
- unless params.blank? || @client.blank?
- # get or create user_id for submitter
- params[:requester_id] = check_user_exists(params)
- begin
- ticket = @client.tickets.create(
- subject: "Support Ticket",
- comment: { value: params[:message] },
- submitter_id: params[:requester_id],
- requester_id: params[:requester_id],
- assignee_id: 201578811,
- status: "new",
- fields: [
- {id: 20887016, value: "Support"},
- {id: 20966436, value: "New"}])
- return ticket
- rescue => e
- Airbrake.notify e
- end
- else
- return false
- end
- end
- end
- end
- 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"
- from /vendor/bundler/gems/delayed_job-4.0.0/lib/delayed/backend/base.rb:97:in `rescue in payload_object'
- def create_support_ticket(params={})
- @client = create_client
- unless params.blank? || @client.blank?
- ...
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement