Class: Crisp::WebsiteResource
- Inherits:
-
Object
- Object
- Crisp::WebsiteResource
- Defined in:
- lib/resources/website.rb
Constant Summary collapse
- SEARCH_CONVERSATIONS_QUERY_PARAMETERS =
[ "search_query", "search_type", "search_operator", "include_empty", "filter_unread", "filter_resolved", "filter_not_resolved", "filter_mention", "filter_assigned", "filter_unassigned", "filter_date_start", "filter_date_end", "order_date_created", "order_date_updated", ]
- SEARCH_HELPDESK_ARTICLES_QUERY_PARAMETERS =
[ "order_visits", "search_title", "filter_category_id", "filter_section_id", "filter_status_published", "filter_status_draft", "filter_visibility_visible", "filter_visibility_hidden", "filter_date_start", "filter_date_end", ]
Instance Method Summary collapse
- #add_new_people_profile(website_id, data) ⇒ Object
- #add_people_event(website_id, people_id, data) ⇒ Object
- #assign_conversation_routing(website_id, session_id, data) ⇒ Object
- #batch_read_items(website_id, data) ⇒ Object
- #batch_remove_items(website_id, data) ⇒ Object
- #batch_resolve_items(website_id, data) ⇒ Object
- #block_incoming_messages_for_conversation(website_id, session_id, data) ⇒ Object
- #change_conversation_state(website_id, session_id, data) ⇒ Object
- #check_conversation_exists(website_id, session_id) ⇒ Object
- #check_people_profile_exists(website_id, people_id) ⇒ Object
- #compose_message_in_conversation(website_id, session_id, data) ⇒ Object
- #count_visitors(website_id) ⇒ Object
- #create_new_conversation(website_id) ⇒ Object
- #create_website(data) ⇒ Object
- #delete_website(website_id) ⇒ Object
- #find_people_profile_by_email(website_id, email) ⇒ Object
- #get_block_status_for_conversation(website_id, session_id) ⇒ Object
- #get_conversation(website_id, session_id) ⇒ Object
- #get_conversation_metas(website_id, session_id) ⇒ Object
- #get_conversation_routing_assign(website_id, session_id) ⇒ Object
- #get_conversation_state(website_id, session_id) ⇒ Object
- #get_messages_in_conversation(website_id, session_id, query) ⇒ Object
- #get_people_data(website_id, people_id) ⇒ Object
- #get_people_profile(website_id, people_id) ⇒ Object
- #get_people_statistics(website_id) ⇒ Object
- #get_people_subscription_status(website_id, people_id) ⇒ Object
- #get_session_id_by_token(website_id, token) ⇒ Object
- #get_website(website_id) ⇒ Object
- #get_website_availability_status(website_id) ⇒ Object
- #get_website_settings(website_id) ⇒ Object
-
#initialize(parent) ⇒ WebsiteResource
constructor
A new instance of WebsiteResource.
- #initiate_conversation_with_existing_session(website_id, session_id) ⇒ Object
- #list_conversation_events(website_id, session_id, page_number) ⇒ Object
- #list_conversation_files(website_id, session_id, page_number) ⇒ Object
- #list_conversation_pages(website_id, session_id, page_number) ⇒ Object
- #list_conversations(website_id, page_number = 1) ⇒ Object
- #list_helpdesk_articles(website_id, locale, page_number = 1) ⇒ Object
- #list_last_active_website_operators(website_id) ⇒ Object
- #list_people_conversations(website_id, people_id, page_number) ⇒ Object
- #list_people_events(website_id, people_id, page_number) ⇒ Object
- #list_people_profiles(website_id, page_number) ⇒ Object
- #list_people_segments(website_id, page_number) ⇒ Object
- #list_visitors(website_id, page_number) ⇒ Object
- #list_website_operators(website_id) ⇒ Object
- #mark_messages_delivered_in_conversation(website_id, session_id, data) ⇒ Object
- #mark_messages_read_in_conversation(website_id, session_id, data) ⇒ Object
- #remove_conversation(website_id, session_id) ⇒ Object
- #remove_people_profile(website_id, people_id) ⇒ Object
- #request_email_transcript_for_conversation(website_id, session_id, data) ⇒ Object
- #save_people_data(website_id, people_id, data) ⇒ Object
- #save_people_profile(website_id, people_id, data) ⇒ Object
- #search_conversations(website_id, page_number = 1, search_query = "", search_type = "", search_operator = "", include_empty = "", filter_unread = "", filter_resolved = "", filter_not_resolved = "", filter_mention = "", filter_assigned = "", filter_unassigned = "", filter_date_start = "", filter_date_end = "", order_date_created = "", order_date_updated = "") ⇒ Object
- #search_helpdesk_articles(website_id, locale, page_number = 1, order_visits = "", search_title = "", filter_category_id = "", filter_section_id = "", filter_status_published = "", filter_status_draft = "", filter_visibility_visible = "", filter_visibility_hidden = "", filter_date_start = "", filter_date_end = "") ⇒ Object
- #send_message_in_conversation(website_id, session_id, data) ⇒ Object
- #update_conversation_metas(website_id, session_id, data) ⇒ Object
- #update_message_in_conversation(website_id, session_id, fingerprint, data) ⇒ Object
- #update_people_data(website_id, people_id, data) ⇒ Object
- #update_people_profile(website_id, people_id, data) ⇒ Object
- #update_people_subscription_status(website_id, people_id, data) ⇒ Object
- #update_website_settings(website_id, data) ⇒ Object
Constructor Details
#initialize(parent) ⇒ WebsiteResource
Returns a new instance of WebsiteResource.
42 43 44 |
# File 'lib/resources/website.rb', line 42 def initialize(parent) @parent = parent end |
Instance Method Details
#add_new_people_profile(website_id, data) ⇒ Object
243 244 245 |
# File 'lib/resources/website.rb', line 243 def add_new_people_profile(website_id, data) return @parent.post(self._url_website(website_id, "/people/profile"), data: data) end |
#add_people_event(website_id, people_id, data) ⇒ Object
275 276 277 |
# File 'lib/resources/website.rb', line 275 def add_people_event(website_id, people_id, data) return @parent.post(self._url_people("events", website_id, people_id), data: data) end |
#assign_conversation_routing(website_id, session_id, data) ⇒ Object
187 188 189 |
# File 'lib/resources/website.rb', line 187 def assign_conversation_routing(website_id, session_id, data) return @parent.patch(self._url_conversation(website_id, session_id, "/routing"), data: data) end |
#batch_read_items(website_id, data) ⇒ Object
78 79 80 |
# File 'lib/resources/website.rb', line 78 def batch_read_items(website_id, data) return @parent.patch(self._url_website(website_id, "/batch/read"), data: data) end |
#batch_remove_items(website_id, data) ⇒ Object
82 83 84 |
# File 'lib/resources/website.rb', line 82 def batch_remove_items(website_id, data) return @parent.patch(self._url_website(website_id, "/batch/remove"), data: data) end |
#batch_resolve_items(website_id, data) ⇒ Object
74 75 76 |
# File 'lib/resources/website.rb', line 74 def batch_resolve_items(website_id, data) return @parent.patch(self._url_website(website_id, "/batch/resolve"), data: data) end |
#block_incoming_messages_for_conversation(website_id, session_id, data) ⇒ Object
223 224 225 |
# File 'lib/resources/website.rb', line 223 def (website_id, session_id, data) return @parent.patch(self._url_conversation(website_id, session_id, "/block"), data: data) end |
#change_conversation_state(website_id, session_id, data) ⇒ Object
215 216 217 |
# File 'lib/resources/website.rb', line 215 def change_conversation_state(website_id, session_id, data) return @parent.patch(self._url_conversation(website_id, session_id, "/state"), data: data) end |
#check_conversation_exists(website_id, session_id) ⇒ Object
143 144 145 |
# File 'lib/resources/website.rb', line 143 def check_conversation_exists(website_id, session_id) return @parent.head(self._url_conversation(website_id, session_id)) end |
#check_people_profile_exists(website_id, people_id) ⇒ Object
247 248 249 |
# File 'lib/resources/website.rb', line 247 def check_people_profile_exists(website_id, people_id) return @parent.head(self._url_people("profile", website_id, people_id)) end |
#compose_message_in_conversation(website_id, session_id, data) ⇒ Object
171 172 173 |
# File 'lib/resources/website.rb', line 171 def (website_id, session_id, data) return @parent.patch(self._url_conversation(website_id, session_id, "/compose"), data: data) end |
#count_visitors(website_id) ⇒ Object
106 107 108 |
# File 'lib/resources/website.rb', line 106 def count_visitors(website_id) return @parent.get(self._url_website(website_id, "/visitors/count")) end |
#create_new_conversation(website_id) ⇒ Object
139 140 141 |
# File 'lib/resources/website.rb', line 139 def create_new_conversation(website_id) return @parent.post(self._url_website(website_id, "/conversation")) end |
#create_website(data) ⇒ Object
62 63 64 |
# File 'lib/resources/website.rb', line 62 def create_website(data) return @parent.post("/website", data) end |
#delete_website(website_id) ⇒ Object
70 71 72 |
# File 'lib/resources/website.rb', line 70 def delete_website(website_id) return @parent.delete(self._url_website(website_id)) end |
#find_people_profile_by_email(website_id, email) ⇒ Object
251 252 253 |
# File 'lib/resources/website.rb', line 251 def find_people_profile_by_email(website_id, email) return @parent.get(self._url_people("profile", website_id, email)) end |
#get_block_status_for_conversation(website_id, session_id) ⇒ Object
219 220 221 |
# File 'lib/resources/website.rb', line 219 def get_block_status_for_conversation(website_id, session_id) return @parent.get(self._url_conversation(website_id, session_id, "/block")) end |
#get_conversation(website_id, session_id) ⇒ Object
147 148 149 |
# File 'lib/resources/website.rb', line 147 def get_conversation(website_id, session_id) return @parent.get(self._url_conversation(website_id, session_id)) end |
#get_conversation_metas(website_id, session_id) ⇒ Object
191 192 193 |
# File 'lib/resources/website.rb', line 191 def (website_id, session_id) return @parent.get(self._url_conversation(website_id, session_id, "/meta")) end |
#get_conversation_routing_assign(website_id, session_id) ⇒ Object
183 184 185 |
# File 'lib/resources/website.rb', line 183 def get_conversation_routing_assign(website_id, session_id) return @parent.get(self._url_conversation(website_id, session_id, "/routing")) end |
#get_conversation_state(website_id, session_id) ⇒ Object
211 212 213 |
# File 'lib/resources/website.rb', line 211 def get_conversation_state(website_id, session_id) return @parent.get(self._url_conversation(website_id, session_id, "/state")) end |
#get_messages_in_conversation(website_id, session_id, query) ⇒ Object
159 160 161 |
# File 'lib/resources/website.rb', line 159 def (website_id, session_id, query) return @parent.get(self._url_conversation(website_id, session_id, "/messages"), query: query) end |
#get_people_data(website_id, people_id) ⇒ Object
283 284 285 |
# File 'lib/resources/website.rb', line 283 def get_people_data(website_id, people_id) return @parent.get(self._url_people("data", website_id, people_id)) end |
#get_people_profile(website_id, people_id) ⇒ Object
255 256 257 |
# File 'lib/resources/website.rb', line 255 def get_people_profile(website_id, people_id) return @parent.get(self._url_people("profile", website_id, people_id)) end |
#get_people_statistics(website_id) ⇒ Object
231 232 233 |
# File 'lib/resources/website.rb', line 231 def get_people_statistics(website_id) return @parent.get(self._url_website(website_id, "/people/stats")) end |
#get_people_subscription_status(website_id, people_id) ⇒ Object
295 296 297 |
# File 'lib/resources/website.rb', line 295 def get_people_subscription_status(website_id, people_id) return @parent.get(self._url_people("subscription", website_id, people_id)) end |
#get_session_id_by_token(website_id, token) ⇒ Object
303 304 305 |
# File 'lib/resources/website.rb', line 303 def get_session_id_by_token(website_id, token) return @parent.get(self._url_website(website_id, "/visitors/token/#{token}")) end |
#get_website(website_id) ⇒ Object
66 67 68 |
# File 'lib/resources/website.rb', line 66 def get_website(website_id) return @parent.get(self._url_website(website_id)) end |
#get_website_availability_status(website_id) ⇒ Object
86 87 88 |
# File 'lib/resources/website.rb', line 86 def get_website_availability_status(website_id) return @parent.get(self._url_website(website_id, "/availability/status")) end |
#get_website_settings(website_id) ⇒ Object
98 99 100 |
# File 'lib/resources/website.rb', line 98 def get_website_settings(website_id) return @parent.get(self._url_website(website_id, "/settings")) end |
#initiate_conversation_with_existing_session(website_id, session_id) ⇒ Object
155 156 157 |
# File 'lib/resources/website.rb', line 155 def initiate_conversation_with_existing_session(website_id, session_id) return @parent.post(self._url_conversation(website_id, session_id, "/initiate")) end |
#list_conversation_events(website_id, session_id, page_number) ⇒ Object
203 204 205 |
# File 'lib/resources/website.rb', line 203 def list_conversation_events(website_id, session_id, page_number) return @parent.get(self._url_conversation(website_id, session_id, "/events/%d" % page_number)) end |
#list_conversation_files(website_id, session_id, page_number) ⇒ Object
207 208 209 |
# File 'lib/resources/website.rb', line 207 def list_conversation_files(website_id, session_id, page_number) return @parent.get(self._url_conversation(website_id, session_id, "/files/%d" % page_number)) end |
#list_conversation_pages(website_id, session_id, page_number) ⇒ Object
199 200 201 |
# File 'lib/resources/website.rb', line 199 def list_conversation_pages(website_id, session_id, page_number) return @parent.get(self._url_conversation(website_id, session_id, "/pages/%d" % page_number)) end |
#list_conversations(website_id, page_number = 1) ⇒ Object
135 136 137 |
# File 'lib/resources/website.rb', line 135 def list_conversations(website_id, page_number = 1) return self.search_conversations(website_id, page_number) end |
#list_helpdesk_articles(website_id, locale, page_number = 1) ⇒ Object
328 329 330 |
# File 'lib/resources/website.rb', line 328 def list_helpdesk_articles(website_id, locale, page_number = 1) return self.search_helpdesk_articles(website_id, locale, page_number) end |
#list_last_active_website_operators(website_id) ⇒ Object
94 95 96 |
# File 'lib/resources/website.rb', line 94 def list_last_active_website_operators(website_id) return @parent.get(self._url_website(website_id, "/operators/active")) end |
#list_people_conversations(website_id, people_id, page_number) ⇒ Object
271 272 273 |
# File 'lib/resources/website.rb', line 271 def list_people_conversations(website_id, people_id, page_number) return @parent.get(self._url_people("conversations", website_id, people_id, "/list/%d" % page_number)) end |
#list_people_events(website_id, people_id, page_number) ⇒ Object
279 280 281 |
# File 'lib/resources/website.rb', line 279 def list_people_events(website_id, people_id, page_number) return @parent.get(self._url_people("events", website_id, people_id, "/list/%d" % page_number)) end |
#list_people_profiles(website_id, page_number) ⇒ Object
239 240 241 |
# File 'lib/resources/website.rb', line 239 def list_people_profiles(website_id, page_number) return @parent.get(self._url_website(website_id, "/people/profiles/%d" % page_number)) end |
#list_people_segments(website_id, page_number) ⇒ Object
235 236 237 |
# File 'lib/resources/website.rb', line 235 def list_people_segments(website_id, page_number) return @parent.get(self._url_website(website_id, "/people/segments/%d" % page_number)) end |
#list_visitors(website_id, page_number) ⇒ Object
110 111 112 |
# File 'lib/resources/website.rb', line 110 def list_visitors(website_id, page_number) return @parent.get(self._url_website(website_id, "/visitors/list/%d" % page_number)) end |
#list_website_operators(website_id) ⇒ Object
90 91 92 |
# File 'lib/resources/website.rb', line 90 def list_website_operators(website_id) return @parent.get(self._url_website(website_id, "/operators/list")) end |
#mark_messages_delivered_in_conversation(website_id, session_id, data) ⇒ Object
179 180 181 |
# File 'lib/resources/website.rb', line 179 def (website_id, session_id, data) return @parent.patch(self._url_conversation(website_id, session_id, "/delivered"), data: data) end |
#mark_messages_read_in_conversation(website_id, session_id, data) ⇒ Object
175 176 177 |
# File 'lib/resources/website.rb', line 175 def (website_id, session_id, data) return @parent.patch(self._url_conversation(website_id, session_id, "/read"), data: data) end |
#remove_conversation(website_id, session_id) ⇒ Object
151 152 153 |
# File 'lib/resources/website.rb', line 151 def remove_conversation(website_id, session_id) return @parent.remove(self._url_conversation(website_id, session_id)) end |
#remove_people_profile(website_id, people_id) ⇒ Object
267 268 269 |
# File 'lib/resources/website.rb', line 267 def remove_people_profile(website_id, people_id) return @parent.remove(self._url_people("profile", website_id, people_id)) end |
#request_email_transcript_for_conversation(website_id, session_id, data) ⇒ Object
227 228 229 |
# File 'lib/resources/website.rb', line 227 def request_email_transcript_for_conversation(website_id, session_id, data) return @parent.post(self._url_conversation(website_id, session_id, "/transcript"), data: data) end |
#save_people_data(website_id, people_id, data) ⇒ Object
287 288 289 |
# File 'lib/resources/website.rb', line 287 def save_people_data(website_id, people_id, data) return @parent.put(self._url_people("data", website_id, people_id), data: data) end |
#save_people_profile(website_id, people_id, data) ⇒ Object
259 260 261 |
# File 'lib/resources/website.rb', line 259 def save_people_profile(website_id, people_id, data) return @parent.put(self._url_people("profile", website_id, people_id), data: data) end |
#search_conversations(website_id, page_number = 1, search_query = "", search_type = "", search_operator = "", include_empty = "", filter_unread = "", filter_resolved = "", filter_not_resolved = "", filter_mention = "", filter_assigned = "", filter_unassigned = "", filter_date_start = "", filter_date_end = "", order_date_created = "", order_date_updated = "") ⇒ Object
114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/resources/website.rb', line 114 def search_conversations(website_id, page_number = 1, search_query = "", search_type = "", search_operator = "", include_empty = "", filter_unread = "", filter_resolved = "", filter_not_resolved = "", filter_mention = "", filter_assigned = "", filter_unassigned = "", filter_date_start = "", filter_date_end = "", order_date_created = "", order_date_updated = "") resource_url = "" query_parameters = [] SEARCH_CONVERSATIONS_QUERY_PARAMETERS.each do |parameter| parameter_value = binding.local_variable_get(parameter) if parameter_value != "" query_parameters.push("%s=%s" % [parameter, CGI.escape(parameter_value).gsub("+", "%20")]) end end if query_parameters != [] resource_url = self._url_website(website_id, "/conversations/%d?%s" % [page_number, query_parameters.join("&")]) else resource_url = self._url_website(website_id, "/conversations/%d" % page_number) end return @parent.get(resource_url) end |
#search_helpdesk_articles(website_id, locale, page_number = 1, order_visits = "", search_title = "", filter_category_id = "", filter_section_id = "", filter_status_published = "", filter_status_draft = "", filter_visibility_visible = "", filter_visibility_hidden = "", filter_date_start = "", filter_date_end = "") ⇒ Object
307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 |
# File 'lib/resources/website.rb', line 307 def search_helpdesk_articles(website_id, locale, page_number = 1, order_visits = "", search_title = "", filter_category_id = "", filter_section_id = "", filter_status_published = "", filter_status_draft = "", filter_visibility_visible = "", filter_visibility_hidden = "", filter_date_start = "", filter_date_end="") resource_url = "" query_parameters = [] SEARCH_HELPDESK_ARTICLES_QUERY_PARAMETERS.each do |parameter| parameter_value = binding.local_variable_get(parameter) if parameter_value != "" query_parameters.push("%s=%s" % [parameter, CGI.escape(parameter_value).gsub("+", "%20")]) end end if query_parameters != [] resource_url = self._url_website(website_id, "/helpdesk/locale/%s/articles/%d?%s" % [locale, page_number, query_parameters.join("&")]) else resource_url = self._url_website(website_id, "/helpdesk/locale/%s/articles/%d" % [locale, page_number]) end return @parent.get(resource_url) end |
#send_message_in_conversation(website_id, session_id, data) ⇒ Object
163 164 165 |
# File 'lib/resources/website.rb', line 163 def (website_id, session_id, data) return @parent.post(self._url_conversation(website_id, session_id, "/message"), data: data) end |
#update_conversation_metas(website_id, session_id, data) ⇒ Object
195 196 197 |
# File 'lib/resources/website.rb', line 195 def (website_id, session_id, data) return @parent.patch(self._url_conversation(website_id, session_id, "/meta"), data: data) end |
#update_message_in_conversation(website_id, session_id, fingerprint, data) ⇒ Object
167 168 169 |
# File 'lib/resources/website.rb', line 167 def (website_id, session_id, fingerprint, data) return @parent.patch(self._url_conversation(website_id, session_id, "/message/%d" % fingerprint), data: data) end |
#update_people_data(website_id, people_id, data) ⇒ Object
291 292 293 |
# File 'lib/resources/website.rb', line 291 def update_people_data(website_id, people_id, data) return @parent.patch(self._url_people("data", website_id, people_id), data: data) end |
#update_people_profile(website_id, people_id, data) ⇒ Object
263 264 265 |
# File 'lib/resources/website.rb', line 263 def update_people_profile(website_id, people_id, data) return @parent.patch(self._url_people("profile", website_id, people_id), data: data) end |
#update_people_subscription_status(website_id, people_id, data) ⇒ Object
299 300 301 |
# File 'lib/resources/website.rb', line 299 def update_people_subscription_status(website_id, people_id, data) return @parent.patch(self._url_people("subscription", website_id, people_id), data: data) end |
#update_website_settings(website_id, data) ⇒ Object
102 103 104 |
# File 'lib/resources/website.rb', line 102 def update_website_settings(website_id, data) return @parent.patch(self._url_website(website_id, "/settings"), data: data) end |