bulutfon_dashboard 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +66 -0
  4. data/Rakefile +36 -0
  5. data/app/assets/fonts/fontcustom_d9192ef5338659432e550700796cc26b.eot +0 -0
  6. data/app/assets/fonts/fontcustom_d9192ef5338659432e550700796cc26b.svg +164 -0
  7. data/app/assets/fonts/fontcustom_d9192ef5338659432e550700796cc26b.ttf +0 -0
  8. data/app/assets/fonts/fontcustom_d9192ef5338659432e550700796cc26b.woff +0 -0
  9. data/app/assets/images/bulutfon_dashboard/screenshot-step-1.png +0 -0
  10. data/app/assets/images/bulutfon_dashboard/screenshot-step-2.png +0 -0
  11. data/app/assets/images/bulutfon_dashboard/screenshot-step-3.png +0 -0
  12. data/app/assets/javascripts/bulutfon_dashboard/application.js +13 -0
  13. data/app/assets/javascripts/bulutfon_dashboard/audiojs/audiojs-player-graphics.gif +0 -0
  14. data/app/assets/javascripts/bulutfon_dashboard/audiojs/audiojs.js.erb +695 -0
  15. data/app/assets/javascripts/bulutfon_dashboard/audiojs/audiojs.swf +0 -0
  16. data/app/assets/javascripts/bulutfon_dashboard/cdrs.js +19 -0
  17. data/app/assets/stylesheets/bulutfon_dashboard/application.css +15 -0
  18. data/app/assets/stylesheets/bulutfon_dashboard/bulutfon-fonts.css.sass +114 -0
  19. data/app/controllers/bulutfon_dashboard/application_controller.rb +28 -0
  20. data/app/controllers/bulutfon_dashboard/base_controller.rb +4 -0
  21. data/app/controllers/bulutfon_dashboard/bulutfon_users_controller.rb +59 -0
  22. data/app/controllers/bulutfon_dashboard/cdrs_controller.rb +27 -0
  23. data/app/controllers/bulutfon_dashboard/dashboards_controller.rb +15 -0
  24. data/app/helpers/bulutfon_dashboard/application_helper.rb +4 -0
  25. data/app/helpers/bulutfon_dashboard/cdrs_helper.rb +145 -0
  26. data/app/models/bulutfon_dashboard/api_user.rb +19 -0
  27. data/app/models/bulutfon_dashboard/bulutfon_user.rb +21 -0
  28. data/app/models/bulutfon_dashboard/cdr.rb +54 -0
  29. data/app/views/bulutfon_dashboard/bulutfon_users/_form.html.haml +24 -0
  30. data/app/views/bulutfon_dashboard/bulutfon_users/edit.html.haml +3 -0
  31. data/app/views/bulutfon_dashboard/bulutfon_users/new.html.haml +3 -0
  32. data/app/views/bulutfon_dashboard/bulutfon_users/show.html.haml +93 -0
  33. data/app/views/bulutfon_dashboard/cdrs/_blank.html.haml +14 -0
  34. data/app/views/bulutfon_dashboard/cdrs/_cdr.html.haml +12 -0
  35. data/app/views/bulutfon_dashboard/cdrs/_list.html.haml +24 -0
  36. data/app/views/bulutfon_dashboard/cdrs/index.html.haml +5 -0
  37. data/app/views/bulutfon_dashboard/cdrs/show.html.haml +82 -0
  38. data/app/views/bulutfon_dashboard/dashboards/index.html.haml +53 -0
  39. data/app/views/layouts/bulutfon_dashboard/application.html.erb +14 -0
  40. data/config/initializers/simple_form.rb +165 -0
  41. data/config/initializers/simple_form_bootstrap.rb +149 -0
  42. data/config/locales/models.tr.yml +201 -0
  43. data/config/locales/simple_form.en.yml +31 -0
  44. data/config/routes.rb +5 -0
  45. data/lib/bulutfon_dashboard.rb +5 -0
  46. data/lib/bulutfon_dashboard/engine.rb +6 -0
  47. data/lib/bulutfon_dashboard/version.rb +3 -0
  48. data/lib/generators/bulutfon_dashboard/assets_generator.rb +57 -0
  49. data/lib/generators/bulutfon_dashboard/controllers_generator.rb +24 -0
  50. data/lib/generators/bulutfon_dashboard/helpers_generator.rb +24 -0
  51. data/lib/generators/bulutfon_dashboard/initializers_generator.rb +14 -0
  52. data/lib/generators/bulutfon_dashboard/install/install_generator.rb +17 -0
  53. data/lib/generators/bulutfon_dashboard/migrations_generator.rb +24 -0
  54. data/lib/generators/bulutfon_dashboard/views_generator.rb +55 -0
  55. data/lib/generators/templates/assets/fonts/fontcustom_d9192ef5338659432e550700796cc26b.eot +0 -0
  56. data/lib/generators/templates/assets/fonts/fontcustom_d9192ef5338659432e550700796cc26b.svg +164 -0
  57. data/lib/generators/templates/assets/fonts/fontcustom_d9192ef5338659432e550700796cc26b.ttf +0 -0
  58. data/lib/generators/templates/assets/fonts/fontcustom_d9192ef5338659432e550700796cc26b.woff +0 -0
  59. data/lib/generators/templates/assets/stylesheets/bulutfon-fonts.css.sass +114 -0
  60. data/lib/generators/templates/controllers/base_controller.rb +9 -0
  61. data/lib/generators/templates/helpers/application_helper.rb +5 -0
  62. data/lib/generators/templates/initializers/bulutfon_dashboard.rb +2 -0
  63. data/lib/generators/templates/migrations/create_bulutfon_dashboard_bulutfon_users.rb +14 -0
  64. data/lib/tasks/bulutfon_dashboard_tasks.rake +4 -0
  65. data/lib/templates/erb/scaffold/_form.html.erb +13 -0
  66. data/test/bulutfon_dashboard_test.rb +7 -0
  67. data/test/controllers/bulutfon_dashboard/bulutfon_users_controller_test.rb +13 -0
  68. data/test/controllers/bulutfon_dashboard/cdrs_controller_test.rb +13 -0
  69. data/test/controllers/bulutfon_dashboard/dashboards_controller_test.rb +13 -0
  70. data/test/dummy/README.rdoc +28 -0
  71. data/test/dummy/Rakefile +6 -0
  72. data/test/dummy/app/assets/javascripts/application.js +13 -0
  73. data/test/dummy/app/assets/stylesheets/application.css +15 -0
  74. data/test/dummy/app/controllers/application_controller.rb +5 -0
  75. data/test/dummy/app/helpers/application_helper.rb +2 -0
  76. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  77. data/test/dummy/bin/bundle +3 -0
  78. data/test/dummy/bin/rails +4 -0
  79. data/test/dummy/bin/rake +4 -0
  80. data/test/dummy/bin/setup +29 -0
  81. data/test/dummy/config.ru +4 -0
  82. data/test/dummy/config/application.rb +26 -0
  83. data/test/dummy/config/boot.rb +5 -0
  84. data/test/dummy/config/database.yml +25 -0
  85. data/test/dummy/config/environment.rb +5 -0
  86. data/test/dummy/config/environments/development.rb +41 -0
  87. data/test/dummy/config/environments/production.rb +79 -0
  88. data/test/dummy/config/environments/test.rb +42 -0
  89. data/test/dummy/config/initializers/assets.rb +11 -0
  90. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  91. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  92. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  93. data/test/dummy/config/initializers/inflections.rb +16 -0
  94. data/test/dummy/config/initializers/mime_types.rb +4 -0
  95. data/test/dummy/config/initializers/session_store.rb +3 -0
  96. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  97. data/test/dummy/config/locales/en.yml +23 -0
  98. data/test/dummy/config/routes.rb +4 -0
  99. data/test/dummy/config/secrets.yml +22 -0
  100. data/test/dummy/public/404.html +67 -0
  101. data/test/dummy/public/422.html +67 -0
  102. data/test/dummy/public/500.html +66 -0
  103. data/test/dummy/public/favicon.ico +0 -0
  104. data/test/fixtures/bulutfon_dashboard/bulutfon_users.yml +11 -0
  105. data/test/integration/navigation_test.rb +8 -0
  106. data/test/models/bulutfon_dashboard/bulutfon_user_test.rb +9 -0
  107. data/test/test_helper.rb +21 -0
  108. metadata +221 -0
@@ -0,0 +1,165 @@
1
+ # Use this setup block to configure all options available in SimpleForm.
2
+ SimpleForm.setup do |config|
3
+ # Wrappers are used by the form builder to generate a
4
+ # complete input. You can remove any component from the
5
+ # wrapper, change the order or even add your own to the
6
+ # stack. The options given below are used to wrap the
7
+ # whole input.
8
+ config.wrappers :default, class: :input,
9
+ hint_class: :field_with_hint, error_class: :field_with_errors do |b|
10
+ ## Extensions enabled by default
11
+ # Any of these extensions can be disabled for a
12
+ # given input by passing: `f.input EXTENSION_NAME => false`.
13
+ # You can make any of these extensions optional by
14
+ # renaming `b.use` to `b.optional`.
15
+
16
+ # Determines whether to use HTML5 (:email, :url, ...)
17
+ # and required attributes
18
+ b.use :html5
19
+
20
+ # Calculates placeholders automatically from I18n
21
+ # You can also pass a string as f.input placeholder: "Placeholder"
22
+ b.use :placeholder
23
+
24
+ ## Optional extensions
25
+ # They are disabled unless you pass `f.input EXTENSION_NAME => true`
26
+ # to the input. If so, they will retrieve the values from the model
27
+ # if any exists. If you want to enable any of those
28
+ # extensions by default, you can change `b.optional` to `b.use`.
29
+
30
+ # Calculates maxlength from length validations for string inputs
31
+ b.optional :maxlength
32
+
33
+ # Calculates pattern from format validations for string inputs
34
+ b.optional :pattern
35
+
36
+ # Calculates min and max from length validations for numeric inputs
37
+ b.optional :min_max
38
+
39
+ # Calculates readonly automatically from readonly attributes
40
+ b.optional :readonly
41
+
42
+ ## Inputs
43
+ b.use :label_input
44
+ b.use :hint, wrap_with: { tag: :span, class: :hint }
45
+ b.use :error, wrap_with: { tag: :span, class: :error }
46
+
47
+ ## full_messages_for
48
+ # If you want to display the full error message for the attribute, you can
49
+ # use the component :full_error, like:
50
+ #
51
+ # b.use :full_error, wrap_with: { tag: :span, class: :error }
52
+ end
53
+
54
+ # The default wrapper to be used by the FormBuilder.
55
+ config.default_wrapper = :default
56
+
57
+ # Define the way to render check boxes / radio buttons with labels.
58
+ # Defaults to :nested for bootstrap config.
59
+ # inline: input + label
60
+ # nested: label > input
61
+ config.boolean_style = :nested
62
+
63
+ # Default class for buttons
64
+ config.button_class = 'btn'
65
+
66
+ # Method used to tidy up errors. Specify any Rails Array method.
67
+ # :first lists the first message for each field.
68
+ # Use :to_sentence to list all errors for each field.
69
+ # config.error_method = :first
70
+
71
+ # Default tag used for error notification helper.
72
+ config.error_notification_tag = :div
73
+
74
+ # CSS class to add for error notification helper.
75
+ config.error_notification_class = 'error_notification'
76
+
77
+ # ID to add for error notification helper.
78
+ # config.error_notification_id = nil
79
+
80
+ # Series of attempts to detect a default label method for collection.
81
+ # config.collection_label_methods = [ :to_label, :name, :title, :to_s ]
82
+
83
+ # Series of attempts to detect a default value method for collection.
84
+ # config.collection_value_methods = [ :id, :to_s ]
85
+
86
+ # You can wrap a collection of radio/check boxes in a pre-defined tag, defaulting to none.
87
+ # config.collection_wrapper_tag = nil
88
+
89
+ # You can define the class to use on all collection wrappers. Defaulting to none.
90
+ # config.collection_wrapper_class = nil
91
+
92
+ # You can wrap each item in a collection of radio/check boxes with a tag,
93
+ # defaulting to :span.
94
+ # config.item_wrapper_tag = :span
95
+
96
+ # You can define a class to use in all item wrappers. Defaulting to none.
97
+ # config.item_wrapper_class = nil
98
+
99
+ # How the label text should be generated altogether with the required text.
100
+ # config.label_text = lambda { |label, required, explicit_label| "#{required} #{label}" }
101
+
102
+ # You can define the class to use on all labels. Default is nil.
103
+ # config.label_class = nil
104
+
105
+ # You can define the default class to be used on forms. Can be overriden
106
+ # with `html: { :class }`. Defaulting to none.
107
+ # config.default_form_class = nil
108
+
109
+ # You can define which elements should obtain additional classes
110
+ # config.generate_additional_classes_for = [:wrapper, :label, :input]
111
+
112
+ # Whether attributes are required by default (or not). Default is true.
113
+ # config.required_by_default = true
114
+
115
+ # Tell browsers whether to use the native HTML5 validations (novalidate form option).
116
+ # These validations are enabled in SimpleForm's internal config but disabled by default
117
+ # in this configuration, which is recommended due to some quirks from different browsers.
118
+ # To stop SimpleForm from generating the novalidate option, enabling the HTML5 validations,
119
+ # change this configuration to true.
120
+ config.browser_validations = false
121
+
122
+ # Collection of methods to detect if a file type was given.
123
+ # config.file_methods = [ :mounted_as, :file?, :public_filename ]
124
+
125
+ # Custom mappings for input types. This should be a hash containing a regexp
126
+ # to match as key, and the input type that will be used when the field name
127
+ # matches the regexp as value.
128
+ # config.input_mappings = { /count/ => :integer }
129
+
130
+ # Custom wrappers for input types. This should be a hash containing an input
131
+ # type as key and the wrapper that will be used for all inputs with specified type.
132
+ # config.wrapper_mappings = { string: :prepend }
133
+
134
+ # Namespaces where SimpleForm should look for custom input classes that
135
+ # override default inputs.
136
+ # config.custom_inputs_namespaces << "CustomInputs"
137
+
138
+ # Default priority for time_zone inputs.
139
+ # config.time_zone_priority = nil
140
+
141
+ # Default priority for country inputs.
142
+ # config.country_priority = nil
143
+
144
+ # When false, do not use translations for labels.
145
+ # config.translate_labels = true
146
+
147
+ # Automatically discover new inputs in Rails' autoload path.
148
+ # config.inputs_discovery = true
149
+
150
+ # Cache SimpleForm inputs discovery
151
+ # config.cache_discovery = !Rails.env.development?
152
+
153
+ # Default class for inputs
154
+ # config.input_class = nil
155
+
156
+ # Define the default class of the input wrapper of the boolean input.
157
+ config.boolean_label_class = 'checkbox'
158
+
159
+ # Defines if the default input wrapper class should be included in radio
160
+ # collection wrappers.
161
+ # config.include_default_input_wrapper_class = true
162
+
163
+ # Defines which i18n scope will be used in Simple Form.
164
+ # config.i18n_scope = 'simple_form'
165
+ end
@@ -0,0 +1,149 @@
1
+ # Use this setup block to configure all options available in SimpleForm.
2
+ SimpleForm.setup do |config|
3
+ config.error_notification_class = 'alert alert-danger'
4
+ config.button_class = 'btn btn-default'
5
+ config.boolean_label_class = nil
6
+
7
+ config.wrappers :vertical_form, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
8
+ b.use :html5
9
+ b.use :placeholder
10
+ b.optional :maxlength
11
+ b.optional :pattern
12
+ b.optional :min_max
13
+ b.optional :readonly
14
+ b.use :label, class: 'control-label'
15
+
16
+ b.use :input, class: 'form-control'
17
+ b.use :error, wrap_with: { tag: 'span', class: 'help-block' }
18
+ b.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
19
+ end
20
+
21
+ config.wrappers :vertical_file_input, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
22
+ b.use :html5
23
+ b.use :placeholder
24
+ b.optional :maxlength
25
+ b.optional :readonly
26
+ b.use :label, class: 'control-label'
27
+
28
+ b.use :input
29
+ b.use :error, wrap_with: { tag: 'span', class: 'help-block' }
30
+ b.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
31
+ end
32
+
33
+ config.wrappers :vertical_boolean, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
34
+ b.use :html5
35
+ b.optional :readonly
36
+
37
+ b.wrapper tag: 'div', class: 'checkbox' do |ba|
38
+ ba.use :label_input
39
+ end
40
+
41
+ b.use :error, wrap_with: { tag: 'span', class: 'help-block' }
42
+ b.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
43
+ end
44
+
45
+ config.wrappers :vertical_radio_and_checkboxes, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
46
+ b.use :html5
47
+ b.optional :readonly
48
+ b.use :label, class: 'control-label'
49
+ b.use :input
50
+ b.use :error, wrap_with: { tag: 'span', class: 'help-block' }
51
+ b.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
52
+ end
53
+
54
+ config.wrappers :horizontal_form, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
55
+ b.use :html5
56
+ b.use :placeholder
57
+ b.optional :maxlength
58
+ b.optional :pattern
59
+ b.optional :min_max
60
+ b.optional :readonly
61
+ b.use :label, class: 'col-sm-3 control-label'
62
+
63
+ b.wrapper tag: 'div', class: 'col-sm-9' do |ba|
64
+ ba.use :input, class: 'form-control'
65
+ ba.use :error, wrap_with: { tag: 'span', class: 'help-block' }
66
+ ba.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
67
+ end
68
+ end
69
+
70
+ config.wrappers :horizontal_file_input, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
71
+ b.use :html5
72
+ b.use :placeholder
73
+ b.optional :maxlength
74
+ b.optional :readonly
75
+ b.use :label, class: 'col-sm-3 control-label'
76
+
77
+ b.wrapper tag: 'div', class: 'col-sm-9' do |ba|
78
+ ba.use :input
79
+ ba.use :error, wrap_with: { tag: 'span', class: 'help-block' }
80
+ ba.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
81
+ end
82
+ end
83
+
84
+ config.wrappers :horizontal_boolean, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
85
+ b.use :html5
86
+ b.optional :readonly
87
+
88
+ b.wrapper tag: 'div', class: 'col-sm-offset-3 col-sm-9' do |wr|
89
+ wr.wrapper tag: 'div', class: 'checkbox' do |ba|
90
+ ba.use :label_input
91
+ end
92
+
93
+ wr.use :error, wrap_with: { tag: 'span', class: 'help-block' }
94
+ wr.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
95
+ end
96
+ end
97
+
98
+ config.wrappers :horizontal_radio_and_checkboxes, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
99
+ b.use :html5
100
+ b.optional :readonly
101
+
102
+ b.use :label, class: 'col-sm-3 control-label'
103
+
104
+ b.wrapper tag: 'div', class: 'col-sm-9' do |ba|
105
+ ba.use :input
106
+ ba.use :error, wrap_with: { tag: 'span', class: 'help-block' }
107
+ ba.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
108
+ end
109
+ end
110
+
111
+ config.wrappers :inline_form, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
112
+ b.use :html5
113
+ b.use :placeholder
114
+ b.optional :maxlength
115
+ b.optional :pattern
116
+ b.optional :min_max
117
+ b.optional :readonly
118
+ b.use :label, class: 'sr-only'
119
+
120
+ b.use :input, class: 'form-control'
121
+ b.use :error, wrap_with: { tag: 'span', class: 'help-block' }
122
+ b.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
123
+ end
124
+
125
+ config.wrappers :multi_select, tag: 'div', class: 'form-group', error_class: 'has-error' do |b|
126
+ b.use :html5
127
+ b.optional :readonly
128
+ b.use :label, class: 'control-label'
129
+ b.wrapper tag: 'div', class: 'form-inline' do |ba|
130
+ ba.use :input, class: 'form-control'
131
+ ba.use :error, wrap_with: { tag: 'span', class: 'help-block' }
132
+ ba.use :hint, wrap_with: { tag: 'p', class: 'help-block' }
133
+ end
134
+ end
135
+ # Wrappers for forms and inputs using the Bootstrap toolkit.
136
+ # Check the Bootstrap docs (http://getbootstrap.com)
137
+ # to learn about the different styles for forms and inputs,
138
+ # buttons and other elements.
139
+ config.default_wrapper = :vertical_form
140
+ config.wrapper_mappings = {
141
+ check_boxes: :vertical_radio_and_checkboxes,
142
+ radio_buttons: :vertical_radio_and_checkboxes,
143
+ file: :vertical_file_input,
144
+ boolean: :vertical_boolean,
145
+ datetime: :multi_select,
146
+ date: :multi_select,
147
+ time: :multi_select
148
+ }
149
+ end
@@ -0,0 +1,201 @@
1
+ tr:
2
+ activerecord:
3
+ models:
4
+ cdr: Arama Kaydı
5
+ bulutfon_user: Bulutfon Entegrasyonu
6
+ 'bulutfon_dashboard/bulutfon_user': Bulutfon Entegrasyonu
7
+ attributes:
8
+ cdr:
9
+ direction: Arama Yönü
10
+ caller_id_name: Arayan Adı
11
+ caller_id_number: Arayan Numara
12
+ hangup_cause: Görüşme durumu
13
+ hangup_disposition: Çağrı Kapatma Bilgisi
14
+ start_time: Arama Zamanı
15
+ answer_time: Cevaplama Zamanı
16
+ hangup_time: Kapatma Zamanı
17
+ uuid: UUID
18
+ domain: Santral
19
+ numbers: Numaralar
20
+ states: Durumlar
21
+ times: Süreler
22
+ datas: Veriler
23
+ voice_record: Ses Kaydı
24
+ callflow: Arama Akışı
25
+ caller: Arayan Numara
26
+ callee: Aranan Numara
27
+ blank: Hiç arama kaydı bulunmuyor.
28
+ call_type: Arama Tipi
29
+ call_record: Arama Kaydı
30
+ call_record_exists?: Arama kaydı var mı?
31
+ nibble_total_billed: Kesilen Ücret
32
+ direction_detail:
33
+ in: Gelen Arama
34
+ out: Giden Arama
35
+ local: Santrail İçi Arama
36
+ call_type_detail:
37
+ fax: Faks
38
+ voice: Ses
39
+ 'bulutfon_dashboard/bulutfon_user':
40
+ api_token: API Anahtarı
41
+ sms_title: SMS Başlığı
42
+ bulutfon_user:
43
+ blank: Henüz oluşturulmamış lütfen oluşturun
44
+ dashboard:
45
+ user: Kullanıcı
46
+ pbx: Santral
47
+ credit: Kredi
48
+ name_surname: Ad Soyad
49
+ gsm: GSM
50
+ email: EMail
51
+ pbx_name: Santral Adı
52
+ customer_type: Müşteri Tipi
53
+ customer_types:
54
+ INVIDUAL: Bireysel
55
+ COMPANY: Kurumsal
56
+ state: Durum
57
+ package: Paket
58
+ balance: Konuşma Kredisi
59
+ sms_credit: SMS Kredisi
60
+ generic:
61
+ download: İndir
62
+ back_to_list: Listeye geri dön
63
+ view:
64
+ edit_api_token: API Anahtarını Değiştir
65
+ destroy_api_token: API Anahtarını Kaldır
66
+ update_api_token: API Anahtarını Güncelle
67
+ save_api_token: API Anahtarını Kaydet ve Entegrasyonu Tamamla
68
+ actions: İşlemler
69
+ cancel: İptal
70
+ edit: Düzenle
71
+ new: Yeni
72
+ destroy: Sil
73
+ create: Oluştur
74
+ url: Linkler
75
+ urls:
76
+ dashboard: Bulutfon Panel
77
+ bulutfon_user: Bulutfon Entegrasyonu
78
+ bulutfon_entegration: Bulutfon Entegrasyon Ayarları
79
+ cdrs: Arama Kayıtları
80
+ last_cdrs: "Son %{number} Arama Kaydı"
81
+
82
+ tt:
83
+ index: "%{resource_name} listesi"
84
+ edit: "%{resource_name} düzenle"
85
+ new: "Yeni %{resource_name}"
86
+ show: "%{resource_name} detay"
87
+ time:
88
+ formats:
89
+ default: "%d/%m/%Y - %H:%M"
90
+ cdr: "%d/%m/%Y - %H:%M:%S"
91
+ enumerates:
92
+ domain_state:
93
+ DRAFT: Taslak
94
+ RECANTED: Vazgeçildi
95
+ CONFIRMED: Onaylandı
96
+ CANCEL: İptal Edildi
97
+ SUSPENDED: Gelen aramalara kapalı
98
+ PRETERMINATED: Bütün aramalara kapalı
99
+ TERMINATED: Borçları nedeniyle kapatıldı
100
+ package:
101
+ SMALL: Giriş Paketi
102
+ MIDDLE: Kobi Paketi
103
+ COMMERCIAL: Ticari Paket
104
+ ENTERPRISE: Kurumsal Paket
105
+ APSIYON SITE: Apsiyon Site Paketi
106
+ APSIYON PRO: Apsiyon Pro Paketi
107
+ ISS: ISS
108
+ "Apsiyon Site Yönetimi Yıllık": Apsiyon Site Yönetimi Yıllık
109
+ "Apsiyon Profesyonel Yönetici Yıllık": Apsiyon Profesyonel Yönetici Yıllık
110
+ "0 - 249 Konut Apsiyon Aylık Paketi": 0 - 249 Konut Apsiyon Aylık Paketi
111
+ "250 - 499 Konut Apsiyon Aylık Paketi": 250 - 499 Konut Apsiyon Aylık Paketi
112
+ "500 - 749 Konut Apsiyon Aylık Paketi": 500 - 749 Konut Apsiyon Aylık Paketi
113
+ "750 ve üzeri Konut Apsiyon Aylık Paketi": 750 ve üzeri Konut Apsiyon Aylık Paketi
114
+ "0 - 249 Konut Apsiyon Yıllık Paketi": 0 - 249 Konut Apsiyon Yıllık Paketi
115
+ "250 - 499 Konut Apsiyon Yıllık Paketi": 250 - 499 Konut Apsiyon Yıllık Paketi
116
+ "500 - 749 Konut Apsiyon Yıllık Paketi": 500 - 749 Konut Apsiyon Yıllık Paketi
117
+ "750 ve üzeri Konut Apsiyon Yıllık Paketi": 750 ve üzeri Konut Apsiyon Yıllık Paketi
118
+ customer_type:
119
+ INVIDUAL: Bireysel Müşteri
120
+ CORPORATE: Kurumsal Müşteri
121
+ sip_hangup_disposition:
122
+ send_cancel: 'Aranan tarafından iptal edilen çağrı'
123
+ send_bye: 'Aranan tarafından sonlandırılan çağrı'
124
+ recv_refuse: 'Arayan tarafından reddedilen çağrı'
125
+ recv_cancel: 'Arayan tarafından iptal edilen çağrı'
126
+ send_refuse: 'Aranan tarafından reddedilen çağrı'
127
+ recv_bye: 'Arayan tarafından sonlandırılan çağrı'
128
+ blank: '-'
129
+ sip_hangup_disposition_hover:
130
+ send_cancel: 'Aranan tarafından görüşme cevaplanmadan iptal edildi'
131
+ send_bye: 'Görüşme başladıktan sonra aranan tarafından kapatıldı'
132
+ recv_refuse: 'Arayan kişinin yetkisi olmaması vb. nedenle arama reddedildi.'
133
+ recv_cancel: 'Arayan tarafından görüşme cevaplanmadan iptal edildi'
134
+ send_refuse: 'Aranan tarafından çağrı reddedildi'
135
+ recv_bye: 'Görüşme başladıktan sonra arayan tarafından kapatıldı'
136
+ blank: '-'
137
+ hangup_cause:
138
+ UNSPECIFIED: 'Tanımlanmamış sebep'
139
+ UNALLOCATED_NUMBER: 'Numara kullanılmamaktadır'
140
+ NO_ROUTE_TRANSIT_NET: 'NO_ROUTE_TRANSIT_NET'
141
+ NO_ROUTE_DESTINATION: 'Hedefe bağlantı yok'
142
+ CHANNEL_UNACCEPTABLE: 'Kanal kabul edilemez'
143
+ CALL_AWARDED_DELIVERED: 'CALL_AWARDED_DELIVERED'
144
+ NORMAL_CLEARING: 'Görüşme yapıldı'
145
+ USER_BUSY: 'Meşgul'
146
+ NO_USER_RESPONSE: 'Hiç bir kullanıcı cevap vermedi'
147
+ NO_ANSWER: 'Cevaplanmayan çağrı'
148
+ SUBSCRIBER_ABSENT: 'SUBSCRIBER_ABSENT'
149
+ CALL_REJECTED: 'Reddedilen çağrı'
150
+ NUMBER_CHANGED: 'Numara değişti'
151
+ REDIRECTION_TO_NEW_DESTINATION: 'Başka bir hedefe yönlendirildi'
152
+ EXCHANGE_ROUTING_ERROR: 'Yönlendirme hatası'
153
+ DESTINATION_OUT_OF_ORDER: 'Hedef kullanım dışı'
154
+ INVALID_NUMBER_FORMAT: 'Yanlış numara formatı'
155
+ FACILITY_REJECTED: 'FACILITY_REJECTED'
156
+ RESPONSE_TO_STATUS_ENQUIRY: 'Durumu soruşturma'
157
+ NORMAL_UNSPECIFIED: 'NORMAL_UNSPECIFIED'
158
+ NORMAL_CIRCUIT_CONGESTION: 'NORMAL_CIRCUIT_CONGESTION'
159
+ NETWORK_OUT_OF_ORDER: 'Ağ kullanım dışı'
160
+ NORMAL_TEMPORARY_FAILURE: 'Geçici hata'
161
+ SWITCH_CONGESTION: 'SWITCH_CONGESTION'
162
+ ACCESS_INFO_DISCARDED: 'ACCESS_INFO_DISCARDED'
163
+ REQUESTED_CHAN_UNAVAIL: 'Talep edilen kanala erişilemiyor'
164
+ PRE_EMPTED: 'PRE_EMPTED'
165
+ FACILITY_NOT_SUBSCRIBED: 'FACILITY_NOT_SUBSCRIBED'
166
+ OUTGOING_CALL_BARRED: 'Giden aramalara kapalı'
167
+ INCOMING_CALL_BARRED: 'Gelen aramalara kapalı'
168
+ BEARERCAPABILITY_NOTAUTH: 'BEARERCAPABILITY_NOTAUTH'
169
+ BEARERCAPABILITY_NOTAVAIL: 'BEARERCAPABILITY_NOTAVAIL'
170
+ SERVICE_UNAVAILABLE: 'Servis uygun değil'
171
+ BEARERCAPABILITY_NOTIMPL: 'BEARERCAPABILITY_NOTIMPL'
172
+ CHAN_NOT_IMPLEMENTED: 'Kanal uygulanamadı | sağlanamadı'
173
+ FACILITY_NOT_IMPLEMENTED: 'FACILITY_NOT_IMPLEMENTED'
174
+ SERVICE_NOT_IMPLEMENTED: 'Servis sağlanamadı'
175
+ INVALID_CALL_REFERENCE: 'INVALID_CALL_REFERENCE'
176
+ INCOMPATIBLE_DESTINATION: 'Uygun olmayan hedef'
177
+ INVALID_MSG_UNSPECIFIED: 'Geçersiz mesaj, tanımlanamadı'
178
+ MANDATORY_IE_MISSING: 'MANDATORY_IE_MISSING'
179
+ MESSAGE_TYPE_NONEXIST: 'Mesaj türü mevcut değil'
180
+ WRONG_MESSAGE: 'Hatalı mesaj'
181
+ IE_NONEXIST: 'Bilgilendirme (info) mevcut değil'
182
+ INVALID_IE_CONTENTS: 'Geçersiz bilgilendirme (info) içeriği'
183
+ WRONG_CALL_STATE: 'Yanlış çağrı durumu'
184
+ RECOVERY_ON_TIMER_EXPIRE: 'Yanıt alma süresi aşıldı'
185
+ MANDATORY_IE_LENGTH_ERROR: 'MANDATORY_IE_LENGTH_ERROR'
186
+ PROTOCOL_ERROR: 'Protokol hatası'
187
+ INTERWORKING: 'INTERWORKING'
188
+ ORIGINATOR_CANCEL: 'Çağrıyı başlatan tarafından iptal edildi'
189
+ CRASH: 'Durdu'
190
+ SYSTEM_SHUTDOWN: 'Sistem kapandı'
191
+ LOSE_RACE: 'Başkası cevapladı'
192
+ MANAGER_REQUEST: 'Api ile sonlandı'
193
+ BLIND_TRANSFER: 'Direk aktarma'
194
+ ATTENDED_TRANSFER: 'Koşullu aktarma'
195
+ ALLOTTED_TIMEOUT: 'ALLOTTED_TIMEOUT'
196
+ USER_CHALLENGE: 'USER_CHALLENGE'
197
+ MEDIA_TIMEOUT: 'Medya zaman aşımı'
198
+ PICKED_OFF: 'Çağrı çekildi'
199
+ USER_NOT_REGISTERED: 'Kullanıcı kayıtlı değil'
200
+ PROGRESS_TIMEOUT: 'İşlem zaman aşımına uğradı'
201
+ GATEWAY_DOWN: 'Ağ gecidi yanıt vermiyor'