Búsquedas recientes


No hay búsquedas recientes

Serge's Avatar

Serge

Incorporación 15 abr 2021

·

Última actividad 22 sept 2022

Seguimientos

0

Seguidores

0

Actividad total

12

Votos

0

Suscripciones

6

RESUMEN DE LA ACTIVIDAD

Última actividad de Serge

Serge creó una publicación,

Publicación Discussion - Tips and best practices from the community

Introduction

Perhaps you are faced with the problem of the CSV file request frequency limit.

To work around this, we use small javascript (bookmarklet) that receives the data via Zendesk API and saves it to a CSV file.

Visit the Round Robin app site to get the script and set it up for yourself. Its open source and free. Enjoy!

How it works

This video shows how it works.

Here's the source code

Following is the script code. Feel free to modify it for your own needs!

javascript:var win=window.open("","","width=600,height=500,scrollbars=yes");var vn=+window.location.href.replace(/(.*filters/)/,""); var w=win.document; w.write("

Export view to CSV file Created by Round Robin App team (@RoundRobinApp)

"); w.write("");var url="/api/v2/views/"+vn+"/execute.json";var l=1;f(url);function ai(a, s, p){for(var i = 0, len = a.length; i < len; i++){if (a[i][p] === s) return i;} return -1;}; function gv(o, r, a){var v=o.rows[r][a]; if (typeof v == "undefined") {v=o.rows[r][a+"_id"];}; if (v !== null) {if(a=="assignee" || a=="requester"){return o.users[ai(o.users, v, "id")].name}; if (a=="group") {return o.groups[ai(o.groups, v, "id")].name};if (a=="organization"){return o.organizations[ai(o.organizations, v, "id")].name};if (a=="via"){return v.channel}; return v;} else {return ""};};function f(u){var xh=new XMLHttpRequest();xh.onreadystatechange=function() {var obj; if(xh.readyState==4&&xh.status==200){obj=JSON.parse(xh.responseText); w.write("
"); var q=String.fromCharCode(34); var q1 =String.fromCharCode(39); var s="id,Description"; if (l == 1) {for (var j = 0; j < obj.columns.length; j++) { s += ","+q+obj.columns[j].title+q; }; l=0; w.write(s+String.fromCharCode(13,10)+"
"); }; for (var i = 0; i < obj.rows.length; i++) {var s=obj.rows[i].ticket.id+","+q+obj.rows[i].ticket.description.replace(/[\r\n]/g," ").replace(/"/g, q1).replace(/\s+/g, " ")+q; for (var j = 0; j < obj.columns.length; j++) {s += ","+q+gv(obj,i,obj.columns[j].id).toString().replace(/[\r\n]/g," ").replace(/"/g, q1).replace(/\s+/g, " ")+q; }; w.write(s+String.fromCharCode(13,10)+"
"); }; if(obj.next_page!==null){f(obj.next_page)}else{w.write("
")}; }; };xh.open("GET",u,true);xh.send();};

Publicado 21 sept 2022 · Serge

1

Seguidor

5

Votos

1

Comentario


Serge hizo un comentario,

Comentario de la comunidad Discussion - Tips and best practices from the community

@Alexander Thanks!

Last week we had found and fixed a bug in the code of this script. The double quote character was not escaped in Description field. All who are faced with the issue, please update your bookmarklet.

The fixed script is here.

Ver comentario · Publicado 13 jul 2015 · Serge

0

Seguidores

0

Votos

0

Comentarios


Serge hizo un comentario,

Comentario de la comunidad Discussion - Tips and best practices from the community

Thanks! I'm glad you liked it.

The script code with "description" is here.

 

Ver comentario · Publicado 07 may 2015 · Serge

0

Seguidores

0

Votos

0

Comentarios


Serge hizo un comentario,

Comentario de la comunidad Discussion - Tips and best practices from the community

Thanks!

I'm glad you liked it.

Following is the script code with "description".

javascript:var win=window.open("","","width=600,height=500,scrollbars=yes");var vn=+window.location.href.replace(/(.*filters\/)/,""); var w=win.document; w.write("

Export view to CSV file Created by Round Robin App team (@RoundRobinApp)

"); w.write("");var url="/api/v2/views/"+vn+"/execute.json";var l=1;f(url);function ai(a, s, p){for(var i = 0, len = a.length; i < len; i++){if (a[i][p] === s) return i;} return -1;}; function gv(o, r, a){var v=o.rows[r][a]; if (typeof v == "undefined") {v=o.rows[r][a+"_id"];}; if (v !== null) {if(a=="assignee" || a=="requester"){return o.users[ai(o.users, v, "id")].name}; if (a=="group") {return o.groups[ai(o.groups, v, "id")].name};if (a=="organization"){return o.organizations[ai(o.organizations, v, "id")].name};if (a=="via"){return v.channel}; return v;} else {return ""};};function f(u){var xh=new XMLHttpRequest();xh.onreadystatechange=function() {var obj; if(xh.readyState==4&&xh.status==200){obj=JSON.parse(xh.responseText); w.write("
"); var q=String.fromCharCode(34); var q1 =String.fromCharCode(39); var s="id,Description"; if (l == 1) {for (var j = 0; j < obj.columns.length; j++) { s += ","+q+obj.columns[j].title+q; }; l=0; w.write(s+String.fromCharCode(13,10)+"
"); }; for (var i = 0; i < obj.rows.length; i++) {var s=obj.rows[i].ticket.id+","+q+obj.rows[i].ticket.description.replace(/[\r\n]/g," ").replace(/"/g, q1).replace(/\s+/g, " ")+q; for (var j = 0; j < obj.columns.length; j++) {s += ","+q+gv(obj,i,obj.columns[j].id).toString().replace(/[\r\n]/g," ").replace(/"/g, q1).replace(/\s+/g, " ")+q; }; w.write(s+String.fromCharCode(13,10)+"
"); }; if(obj.next_page!==null){f(obj.next_page)}else{w.write("
")}; }; };xh.open("GET",u,true);xh.send();};

Ver comentario · Publicado 07 may 2015 · Serge

0

Seguidores

0

Votos

0

Comentarios


Serge creó una publicación,

Publicación Discussion - Tips and best practices from the community

Introduction

Perhaps you are faced with the problem of the CSV file request frequency limit.

To work around this, we use small javascript (bookmarklet) that receives the data via Zendesk API and saves it to a CSV file.

You can get the script HERE to set it up for yourself. It`s open source and FREE. Enjoy!

How it works

This video shows how it works.

Here's the source code

Following is the script code. Feel free to modify it for your own needs!

javascript:var win=window.open("","","width=600,height=500,scrollbars=yes");var vn=+window.location.href.replace(/(.*filters\/)/,""); var w=win.document; w.write("

Export view to CSV file Created by Round Robin App team (@RoundRobinApp)

"); w.write("");var url="/api/v2/views/"+vn+"/execute.json";var l=1;f(url);function ai(a, s, p){for(var i = 0, len = a.length; i < len; i++){if (a[i][p] === s) return i;} return -1;}; function gv(o, r, a){var v=o.rows[r][a]; if (typeof v == "undefined") {v=o.rows[r][a+"_id"];}; if (v !== null) {if(a=="assignee" || a=="requester"){return o.users[ai(o.users, v, "id")].name}; if (a=="group") {return o.groups[ai(o.groups, v, "id")].name};if (a=="organization"){return o.organizations[ai(o.organizations, v, "id")].name};if (a=="via"){return v.channel}; return v;} else {return ""};};function f(u){var xh=new XMLHttpRequest();xh.onreadystatechange=function() {var obj; if(xh.readyState==4&&xh.status==200){obj=JSON.parse(xh.responseText); w.write("
"); var q=String.fromCharCode(34); var q1 =String.fromCharCode(39); var s="id,Description"; if (l == 1) {for (var j = 0; j < obj.columns.length; j++) { s += ","+q+obj.columns[j].title+q; }; l=0; w.write(s+String.fromCharCode(13,10)+"
"); }; for (var i = 0; i < obj.rows.length; i++) {var s=obj.rows[i].ticket.id+","+q+obj.rows[i].ticket.description.replace(/[\r\n]/g," ").replace(/"/g, q1).replace(/\s+/g, " ")+q; for (var j = 0; j < obj.columns.length; j++) {s += ","+q+gv(obj,i,obj.columns[j].id).toString().replace(/[\r\n]/g," ").replace(/"/g, q1).replace(/\s+/g, " ")+q; }; w.write(s+String.fromCharCode(13,10)+"
"); }; if(obj.next_page!==null){f(obj.next_page)}else{w.write("
")}; }; };xh.open("GET",u,true);xh.send();};

Publicado 10 abr 2015 · Serge

0

Seguidores

17

Votos

13

Comentarios


Serge hizo un comentario,

Comentario de la comunidad Feedback - Ticketing system (Support)

Hi all,

Seeing the interest of Zendesk community for automatic tickets assignment and agent load balancing, I want to share our solution which solves these tasks.

Check it out  roundrobin.zendesk.com/hc/en-us/articles/202636392-How-it-works

I hope it's helpful. 

Ver comentario · Publicado 03 feb 2015 · Serge

0

Seguidores

0

Votos

0

Comentarios