Я пытаюсь создать приложение, которое принимает SMS-сообщение через Twilio, а затем создает транзакцию регистрации/вывода, привязанную к моделям сотрудников и моделей товаров. Простой SMS-оповещение о контроле/отслеживании товаров. У меня есть приложение twilio, подключенное для прослушивания на tooler.herokuapp.com/twilio/twilio_create, но когда я отправляю сообщения на номер, ничего не происходит, и я получаю ошибку 404 в журналах twilio. Не уверен, что происходит, надеялся, что кто-то сможет помочь. В этом случае я беру FROM из twilio и помещаю его в employee_id, а BODY - из twilio и помещая его в item_id. Почему он не создает новые транзакции?Получение сообщений об ошибках Twilio 404 Получение SMS
дб/schema.rb
ActiveRecord::Schema.define(:version => 20130516162824) do
create_table "employees", :force => true do |t|
t.string "phone"
t.string "name"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "items", :force => true do |t|
t.string "description"
t.string "assettag"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "transactions", :force => true do |t|
t.boolean "status"
t.integer "item_id"
t.integer "employee_id"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
add_index "transactions", ["employee_id"], :name => "index_transactions_on_employee_id"
add_index "transactions", ["item_id"], :name => "index_transactions_on_item_id"
create_table "users", :force => true do |t|
t.string "email", :default => "", :null => false
t.string "encrypted_password", :default => "", :null => false
t.string "reset_password_token"
t.datetime "reset_password_sent_at"
t.datetime "remember_created_at"
t.integer "sign_in_count", :default => 0
t.datetime "current_sign_in_at"
t.datetime "last_sign_in_at"
t.string "current_sign_in_ip"
t.string "last_sign_in_ip"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
add_index "users", ["email"], :name => "index_users_on_email", :unique => true
add_index "users", ["reset_password_token"], :name => "index_users_on_reset_password_token", :unique => true
end
приложение/контроллеры/twilio_controller.rb
class TwilioController < ApplicationController
def process_sms
@city = params[:FromCity].capitalize
@state = params[:FromState]
render 'process_sms.xml.erb', :content_type => 'text/xml'
end
def twilio_create
@transaction = Transaction.new(:item_id => params[:Body], :employee_id => params[:From])
@transaction.save
end
end
приложение/просмотров/Twilio/twilio_create.xml.erb
<Response>
<Sms>Received. You checked out <%= @body %>, <%= @from %> you lucky bastard.</Sms>
</Response>
Я уже заставил его работать с страницей process_sms, поэтому я знаю, что это что-то с функцией twilio_create. Что я делаю не так?
Пробовал это ... это то, что я получил: Ошибка восстановления HTTP-кода ERROR вернула код состояния HTTP 500. AccountSid \t AC403799e6989feb71259aff925d6d6b17 ApiVersion \t 2010-04-01 тела \t Huh От \t +17177564437 FromCity \t HARRISBURG FromCountry \t США FromState \t PA FromZip SmsMessageSid \t SMaa17fbe4cc6a1afb29bff8c5921e4867 SmsSid \t SMaa17fbe4cc6a1afb29bff8c5921e4867 SmsStatus \t получил К \t +17177395006 ToCity \t SPRING GROVE ToCountry \t США ToState \t PA ToZip
Это из журналы в Twilio, раздел отладчика. Пробовал то, что вы рекомендовали, и оно не вышло. Рейк-маршруты выглядят хорошо, у меня есть запись POST для/twilio, которая заканчивается twilio # create. Раньше я получал 404, теперь они 500. – momchenr
И теперь я не могу создавать нормальные транзакции через веб-интерфейс - я создал исходную модель транзакций, просто чтобы убедиться, что я правильно понял отношения ... теперь, когда я пытаюсь создать один за другим через веб-приложение, ошибки. – momchenr